Introduction
从文章《梯度弥散》摘来的一段话:
梯度下降法(以及相关的L-BFGS算法等)在使用随机初始化权重的深度网络上效果不好的技术原因是:梯度会变得非常小。具体而言,当使用反向传播方法计算导数的时候,随着网络的深度的增加,反向传播的梯度(从输出层到网络的最初几层)的幅度值会急剧地减小。结果就造成了整体的损失函数相对于最初几层的权重的导数非常小。这样,当使用梯度下降法的时候,最初几层的权重变化非常缓慢,以至于它们不能够从样本中进行有效的学习。这种问题通常被称为“梯度的弥散”.
Summary
- 最早期的神经网络往往都只有两三层,最大的瓶颈就在于梯度弥散;
- 2012年有了 合理的参数初始化 & 提出 Relu激活函数 后,成功 **“ 缓解 ”**了该问题,深度的天花板第一次被打破;
- 但网络更深的时候,梯度弥散就会死灰复燃。这时候就需要 identity mapping 来第二次打破深度的天花板;
- BN因为在前馈的时候缩放了输入空间,而前馈时的输入空间又直接影响了反馈计算时的梯度状况。所以说,BN其实帮助减缓了梯度问题。