from:https://zhuanlan.zhihu.com/p/44163528
哪些问题?
- 梯度消失会导致我们的神经网络中前面层的网络权重无法得到更新,也就停止了学习。
- 梯度爆炸会使得学习不稳定, 参数变化太大导致无法获取最优参数。
- 在深度多层感知机网络中,梯度爆炸会导致网络不稳定,最好的结果是无法从训练数据中学习,最坏的结果是由于权重值为NaN而无法更新权重。
- 在循环神经网络(RNN)中,梯度爆炸会导致网络不稳定,使得网络无法从训练数据中得到很好的学习,最好的结果是网络不能在长输入数据序列上学习。
3. 原因何在?
让我们以一个很简单的例子分析一下,这样便于理解。
如上图,是一个每层只有一个神经元的神经网络,且每一层的激活函数为sigmoid,则有:
(
是sigmoid函数)。
我们根据反向传播算法有:
而sigmoid函数的导数公式为: 它的图形曲线为:
由上可见,sigmoid函数的导数 的最大值为