深度学习基础:激活函数、正则化与应用
1. 深度网络训练难题与激活函数改进
深度网络训练困难的一个主要挑战是梯度消失问题。以使用反向传播训练具有多个隐藏层且每层采用逻辑Sigmoid激活函数的常规多层感知器(MLP)为例,Sigmoid函数的表达式为 $\sigma(x) = \frac{1}{1 + e^{-x}}$。
梯度消失主要体现在以下两个方面:
- 前向传播阶段 :第一个Sigmoid层的输出落在(0, 1)范围内,后续连续层的Sigmoid激活会将数据“挤压”在一个狭窄范围内。例如,若第一层输入值为2,$\sigma(2) = 0.881$,$\sigma(\sigma(2)) = 0.71$,$\sigma(\sigma(\sigma(2))) = 0.67$ ,这使得Sigmoid函数会抹去前层传来的信息。
- 反向传播阶段 :Sigmoid函数的导数在以0为中心的非常狭窄区间内有显著值,在其他情况下趋近于0。在多层网络中,导数传播到网络的第一层时很可能趋近于0,导致无法将误差传播到这些层,也就无法有意义地更新它们的权重。
1.1 ReLU激活函数
ReLU(Rectified Linear Unit)激活函数可以一次性解决上述两个问题。ReLU的表达式及导数图像如下:
ReLU具有以下优点:
- 幂等性 :任意数量的ReLU激活操作不会改变输入值,如ReLU(2)
超级会员免费看
订阅专栏 解锁全文

982

被折叠的 条评论
为什么被折叠?



