梯度不稳定概念和解决方法
梯度消失和梯度爆炸问题
概念
- 梯度消失是因为随着网络深度的加深,网络反向传播的小于1的导数经过逐层累积而导致其越靠近输入层,其值越小,因此靠近输入层的权值更新就会非常缓慢甚至停滞不前,那么网络深度的加深就失去了其意义,网络只等价于后面基层浅层网络的学习。
- 梯度爆炸一般出现深层网络和权值初始化值太大的情况下。随着网络的深度的加深,大于1的导数经过逐层累积,变得非常大,梯度值太大,会导致权值瞬间跳跃,指向不应该指向的位置,导致训练收敛缓慢,甚至陷入局部最小值。
原理详解
以梯度消失中的Sigmoid激活函数为例,下面四个图分别是Sigmod原函数公式及曲线和其导数公式及曲线。




观察Sigmoid函数曲线,可以知道其输出分布在【0,1】区间,而且在输入值较大和较小的情况,其输出值变化都

本文详细介绍了梯度消失和梯度爆炸的问题,包括它们的概念、原理和解决方法。提出了解决方案,如更换激活函数(如ReLU系列)、权重初始化、引入BN层、梯度剪切、权重正则以及使用ResNet的残差结构。建议避免使用Sigmoid函数,推荐使用ReLU及其变体,并讨论了不同初始化方法和BN层的作用。
最低0.47元/天 解锁文章
2072

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



