为什么sigmoid会造成梯度消失?

这里仅仅做一些数学上的简单分析,首先看sigmoid的公式:

为什么sigmoid会造成梯度消失?

它的导数:

为什么sigmoid会造成梯度消失?

为什么sigmoid会造成梯度消失?的图像如下:

为什么sigmoid会造成梯度消失?

也就是说任何输入都会被缩放到0到1,如果隐层的所有layer都使用sigmoid,除了第一层的输入,最后一层的输出,其他层的输入输出都是0到1,看看为什么sigmoid会造成梯度消失?的完整图像:

为什么sigmoid会造成梯度消失?

z大概在-5到5之间,为什么sigmoid会造成梯度消失?才有值,而除第一层隐层的输入都在0到1之间,所以为什么sigmoid会造成梯度消失?的图像如下:

为什么sigmoid会造成梯度消失?

为什么sigmoid会造成梯度消失?最终取值大概0.2到0.25之间,下面以一个简单的神经原结构举例:

为什么sigmoid会造成梯度消失?

为什么sigmoid会造成梯度消失?

为什么sigmoid会造成梯度消失?

由于为什么sigmoid会造成梯度消失?会把为什么sigmoid会造成梯度消失?缩小4至5倍,而这个为什么sigmoid会造成梯度消失?又会影响前一层的为什么sigmoid会造成梯度消失?,反向下去,每一层的为什么sigmoid会造成梯度消失?在不断被缩小,深度越深这种连锁反应越明显,越靠近输入层越小,为什么sigmoid会造成梯度消失?中a又是0到1之间的梯度再次被整体缩小,这里主要考虑了为什么sigmoid会造成梯度消失?以及为什么sigmoid会造成梯度消失?的传递性以及输入a带来的影响,我认为权重w只会对局部的为什么sigmoid会造成梯度消失?带来影响,而为什么sigmoid会造成梯度消失?带来的这种连续缩小的影响将传递到计算前层的为什么sigmoid会造成梯度消失?中。

梯度消失带来的影响,靠近输入层的参数几乎不能被更新,靠近输入层的layer预测结果不准确,产生对整个后面的影响,最后无法训练。