在用Keras来实现CNN等一系列网络时,我们经常用ReLU作为激活函数,一般写法如下:

from keras import layers
from keras import modelsmodel = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

上面这段代码实现了一个基本的卷积神经网络,用ReLU作为激活函数,关于ReLU具体内容不做详细介绍。还有一些常用的主流激活函数:

  1. softmax: 在多分类中常用的激活函数,是基于逻辑回归的。
  2. Softplus:softplus(x)=log(1+e^x),近似生物神经激活函数,最近出现的。
  3. Relu:近似生物神经激活函数,最近出现的。
  4. tanh:双曲正切激活函数,也是很常用的。
  5. sigmoid:S型曲线激活函数,最常用的。
  6. hard_sigmoid:基于S型激活函数。
  7. linear:线性激活函数,最简单的。

主流的激活函数可以如上述例子一样通过名称直接使用,但是还有一些复杂的激活函数如:Leaky ReLU、PReLU是不可以这样直接使用的,必须使用add方法将高级激活函数作为层(layer)来使用,举例如下:

from keras import layers
from keras import models
from keras.layers import LeakyReLUmodel = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), input_shape=(28, 28, 1)))
model.add(LeakyReLU(alpha=0.05))
model.add(layers.MaxPooling2D((2, 2))) model.add(layers.Conv2D(64, (3, 3)))
model.add(LeakyReLU(alpha=0.05))
model.add(layers.MaxPooling2D((2, 2)))model.add(layers.Conv2D(64, (3, 3))
model.add(LeakyReLU(alpha=0.05))

这里我们在卷积层中去掉激活函数的参数,并在卷积层后加入高级激活层,下面来测试:

>>model.summary()

这里从整个网络结构的结果可以看出,卷积层后确实加入了一层新的激活层,使用的是LeakyReLU函数。

Keras中使用如Leaky ReLU等高级激活函数的方法相关推荐

  1. 实现keras中ConvLSTM2D中recurrent_activation和activation的设置

    LSTM结构如下图 一种常见的写法为如下,每个门的生成除了当前时刻的信息Xt和上一个时刻的输出ht-1外,还外加了一个小尾巴 Ct-1,即上一个时刻的状态. 但是这个写法其实太过复杂,而且不易理解LS ...

  2. 【Deep Learning 三】神经网络中的非线性激活函数之间的优缺点:sigmoid、tanh、ReLu、Leaky ReLu...

    1 什么是激活函数? 激活函数,并不是去激活什么,而是指如何把"激活的神经元的特征"通过函数把特征保留并映射出来(保留特征,去除一些数据中是的冗余),这是神经网络能解决非线性问题关 ...

  3. tensorflow中Leaky Relu激活函数

    tensorflow中Leaky Relu激活函数 引用API:tensorflow.nn.leaky_relu(x) Leaky Relu激活函数 Leaky Relu激活函数引入一个固定斜率a,具 ...

  4. 机器学习中的数学——激活函数(四):Leaky ReLU函数

    分类目录:<机器学习中的数学>总目录 相关文章: · 激活函数:基础知识 · 激活函数(一):Sigmoid函数 · 激活函数(二):双曲正切函数(Tanh函数) · 激活函数(三): 线 ...

  5. 深度学习中的一些常见的激活函数集合(含公式与导数的推导)sigmoid, relu, leaky relu, elu, numpy实现

    文章目录 Sigmoid(x) 双曲正切 线性整流函数 rectified linear unit (ReLu) PReLU(Parametric Rectified Linear Unit) Lea ...

  6. Which is Better? Leaky ReLU or ReLU

    使用 ReLU 激活函数与 LReLU 激活函数时模型性能是否存在明显差异? 介绍 作为数据科学家,我们不断寻求改进并为我们的机器学习 (ML) 模型找到最佳参数.我们将研究人们可能希望将两种不同的激 ...

  7. 使用keras进行深度学习_如何在Keras中通过深度学习对蝴蝶进行分类

    使用keras进行深度学习 A while ago I read an interesting blog post on the website of the Dutch organization V ...

  8. Keras使用Leaky_Relu等高级激活函数

    在Keras中,Leaky_Relu等高级激活函数需要通过额外增加层来使用,而不能像RELU之类的激活函数可以作为参数初始化全连接层. 具体用法如下: from keras.layers import ...

  9. 深度学习布料交换:在Keras中实现条件类比GAN

    2017年10月26日SHAOANLU 条件类比GAN:交换人物形象的时尚文章(链接) 给定三个输入图像:人穿着布A,独立布A和独立布B,条件类比GAN(CAGAN)生成穿着布B的人类图像.参见下图. ...

最新文章

  1. 【控制】《多智能体系统的协同群集运动控制》陈杰老师-第4章-连通性保持下多移动机器人群集控制
  2. 角色与网站地图的结合
  3. MyBatis 集成到Spring 的原理是什么?
  4. 线上服务被干爆了,竟然是日志的锅!!
  5. Ora-00600 错误的代码含义及常用查询
  6. java的弱索引是什么_Java从零开始学 - 第76篇:什么是索引?
  7. 上海Apple面试php,面试Apple苹果APO的MQE经验
  8. 微信小程序如何快速增长独立访客数(UV)
  9. 10种网站数据的采集方法
  10. 从年轻大学教师待遇说到大学教学质量
  11. 【项目实战】批量导出excel,并打包zip文件【连载中】
  12. 人脸识别原理:(初级篇)内含PPT
  13. webworker应用场景_JavaScript 工作原理之七-Web Workers 分类及 5 个使用场景
  14. AI综述专栏 | 朱松纯教授浅谈人工智能:现状、任务、构架与统一
  15. mac浏览器打不开java_苹果电脑Mac打不开网页怎么办?Mac打不开网页的解决方法...
  16. JavaScript如何截取字符串的最后一位
  17. 20145204 张亚军《信息安全系统设计基础》第12周学习总结
  18. Windows命令:ipconfig
  19. 华为手机怎么变鸿蒙系统,刚公布,未来你的华为手机将迎来这些改变→
  20. 【开源免费】微软官方推荐的桌面小工具

热门文章

  1. 编译原理学习(二)--终结符和非终结符
  2. Unirech阿里云国际站轻量应用服务器简介
  3. Erebus 0.5 发布,2D 实时角色扮演游戏
  4. Linux操作系统的pstack工具
  5. 【江苏大学研究生小记】各方面都不太如意
  6. 微信小程序图片等比缩放显示正中间
  7. 【Python】Numpy数组的切片、索引详解:取数组的特定行列
  8. volatile限定符
  9. 串口调试助手中设置快捷键
  10. ubuntu conda 更新、下载模块包权限问题 'Permission denied'