下图为四层神经网络,它包括输入层,输出层,两个隐层
![](https://i-blog.csdnimg.cn/blog_migrate/209f0b58f0f985654de6311973520bf6.png)
假设输入层到第一个隐层的权值为,偏置值为
。两个隐层之间的权值为
,偏置值为
。第二个隐层到输出层的权值为
,偏置值为
。现在假设输入的值为
,输出为
,标签值为
。前一层的输出为后一层的输入则输出层输出为:
(f为激活函数)
代价函数我们使用常用的方差函数:
我们知道利用梯度下降法更新权值的公式为:
现在我们想更新的权值,根据权值更新公式则和链式法则有:
假设我们的激活函数为sigmoid函数,他的表达式和导函数为:
,
函数图像,和导函数图像为:
可知他的导函数最大值为0.25<1,我们的例子是四层神经网络,如果是很多层呢,那么多小于1的数连乘,很可能导致梯度消失。