天天看点

深度学习 || 16 神经元 修正线性单元

神经元——修正线性单元(ReLU)

修正线性单元(Rectified Linear Unit,ReLU)也叫rectifier函数,是目前深层神经网络中经常使用的激活函数。ReLU实际上是一个斜坡(ramp)函数,定义为

\begin{aligned}

\operatorname{ReLU}(x) &=\left\{\begin{array}{ll}

x & x \geq 0 \\

0 & x<0

\end{array}\right.\\

&=\max (0, x)

\end{aligned}

ReLU函数被认为有生物上的解释性,比如单侧抑制、宽兴奋边界(即兴奋程度也可以非常高)。在生物神经网络中,同时处于兴奋状态的神经元非常稀疏。人脑中在同一时刻大概只有

1 ∼ 4%

的神经元处于活跃状态。Sigmoid型激活函数会导致一个非稀疏的神经网络,而ReLU 却具有很好的稀疏性,大约50%的神经元会处于激活状态。

在优化方面,相比于Sigmoid型函数的两端饱和,ReLU函数为左饱和函数,且在

x > 0

时导数为1,在一定程度上缓解了神经网络的梯度消失问题,加速梯度下降的收敛速度。

优点: 采用ReLU的神经元只需要进行加、乘和比较的操作,计算上更加高效。

缺点: ReLU 函数的输出是非零中心化的,给后一层的神经网络引入偏置偏移,会影响梯度下降的效率。此外,ReLU神经元在训练时比较容易“死亡”。