Sigmoid型和ReLU型激活函数

1.Sigmoid型函数

Sigmoid 型函数是指一类S 型曲线函数,为两端饱和函数.常用的Sigmoid型函数有Logistic 函数和Tanh 函数.

1.1 Hard-Logistic 函数和Hard-Tanh 函数

        图4.2给出了Logistic 函数和Tanh 函数的形状.Tanh 函数的输出是零中心化的(Zero-Centered),而Logistic函数的输出恒大于0.非零中心化的输出会使得其后一层的神经元的输入发生偏置偏移(Bias Shift),并进一步使得梯度下降的收敛速度变慢.

        Logistic 函数和Tanh 函数都是Sigmoid 型函数,具有饱和性,但是计算开销较大.因为这两个函数都是在中间(0 附近)近似线性,两端饱和.因此,这两个函数可以通过分段函数来近似.

Logistic 函数

 \sigma(x)=\frac{1}{1+\exp(-x)}

\sigma^\prime= \sigma(x)(1-\sigma(x))

\text{hard-logistic}(x)=\left\{ \begin{array}{rcl} 1 & & {g_l(x) \geq 1}\\ g_l & & {0 < g_l(x) < 1}\\ 0 & & {g_l(x) \leq 0} \end{array} \right.

图4.3给出了Hard-Logistic 函数和Hard-Tanh 函数的形状.

 

2.1 ReLU 函数

ReLU(Rectified Linear Unit,修正线性单元)[Nair et al., 2010],也叫Rectifier 函数[Glorot et al., 2011],是目前深度神经网络中经常使用的激活函数.ReLU 实际上是一个斜坡(ramp)函数,定义为

\begin{align*} \text{ReLU}(x) &=\left\{ \begin{array}{rcl} x & & {x \geq 0}\\ 0 & & {x < 0} \end{array} \right. \\ &= \text{max}(0, x)\end{align*}

优点  采用ReLU 的神经元只需要进行加、乘和比较的操作,计算上更加高效.ReLU 函数也被认为具有生物学合理性(Biological Plausibility),比如单侧抑制、宽兴奋边界(即兴奋程度可以非常高).在生物神经网络中,同时处于兴奋状态的神经元非常稀疏.人脑中在同一时刻大概只有1% ∼ 4% 的神经元处于活跃状态.Sigmoid 型激活函数会导致一个非稀疏的神经网络,而ReLU 却具有很好的稀疏性,大约50% 的神经元会处于激活状态.

        在优化方面,相比于Sigmoid 型函数的两端饱和,ReLU 函数为左饱和函数,且在𝑥 > 0 时导数为1,在一定程度上缓解了神经网络的梯度消失问题,加速梯度下降的收敛速度.

缺点  ReLU 函数的输出是非零中心化的,给后一层的神经网络引入偏置偏移,会影响梯度下降的效率.此外,ReLU 神经元在训练时比较容易“死亡”.在训练时,如果参数在一次不恰当的更新后,第一个隐藏层中的某个ReLU 神经元在所有的训练数据上都不能被激活,那么这个神经元自身参数的梯度永远都会是0,在以后的训练过程中永远不能被激活.这种现象称为死亡ReLU问题(Dying 参见公式(4.66).ReLU Problem),并且也有可能会发生在其他隐藏层.

        在实际使用中,为了避免上述情况,有几种ReLU 的变种也会被广泛使用.

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值