一、梯度弥散和爆炸
1. 梯度弥散的解释
梯度弥散的问题很大程度上是来源于激活函数的“饱和”。因为在后向传播的过程中仍然需要计算激活函数的导数,所以一旦卷积核的输出落入函数的饱和区,它的梯度将变得非常小。
使用反向传播算法传播梯度的时候,随着传播深度的增加,梯度的幅度会急剧减小,会导致浅层神经元的权重更新非常缓慢,不能有效学习。这样一来,深层模型也就变成了前几层相对固定,只能改变最后几层的浅层模型。
梯度爆炸的情况正好相反。
2. 防止梯度弥散的方法
BN。加入BN层之前,反向传播的梯度为:
∂l∂hk=∂l∂hl∏l