深度学习之激活函数小结

深度学习之激活函数小结

激活函数的作用和意义:引入非线性,增加网络表达能力;

基本激活函数介绍

首先看一下一些常见的激活函数:

深度学习之激活函数小结_第1张图片

  • Sigmoid:

总结:第一个出现的激活函数,存在以下问题,所以后面基本不使用了

1、梯度消失的情况

2、不是以0为对称中心(梯度下降比较慢)

3、计算公式相对复杂,比较慢

  • tanh:

总结:为了解决Sigmoid中不以0为对称中心的问题,但还是没能解决梯度消失的问题;

  • ReLU:

总结:最经常使用的激活函数,计算简单,小于0的情况下神经元会失活;

  • Leaky ReLU:

总结:对于ReLU激活函数的改进,在小于0部分取0.1x,小于0时不完全失活;(提升不大)

  • Maxout:

总结:不常见,训练两个表达式,计算量大;

  • ELU:

总结:也是对ReLU的改进,在小于0部分采用幂函数的方式;

  • CRelu:

简介:这是一个作用在网络中间的一个小trick,利用网络在浅层信息有重复的特点,将其ReLU的正反结果进行concat;

深度学习之激活函数小结_第2张图片

计算公式: CReLU ⁡ ( x ) = [ ReLU ⁡ ( x ) , ReLU ⁡ ( − x ) ] \operatorname{CReLU}(x)=[\operatorname{ReLU}(x), \operatorname{ReLU}(-x)] CReLU(x)=[ReLU(x),ReLU(x)]

总结:能够减少一个卷积层的计算量,从而达到压缩模型的作用,并且精度也有一定提升(也需要看具体任务和模型)

  • ReLU6

深度学习之激活函数小结_第3张图片

总结:Relu的改进,将最大值限制到6,在mobilenet中使用,一般用于轻量级网络中;

激活函数关于0对称的问题

深度学习之激活函数小结_第4张图片

激活函数的特征

  • 非线性
  • 几乎处处可微
  • 计算简单
  • 非饱和性
  • 单调性
  • 输出范围有限
  • 参数少
  • 归一化

你可能感兴趣的:(CV—baseline,深度学习,人工智能,激活函数,程序员)