(本文假设读者已经了解梯度下降法及的推导过程,仅对
的作用和意义进一步讨论)
神经网络使用误差反向传播法更新权重和偏置参数的过程中,引入了一个重要的参数,这个
到底是什么?
是通过梯度下降法更新权重
和偏置
的过程中引入的,目的是计算权重
或偏置
的对损失函数
的偏微分,来更新
或
。在这个过程中,直接计算
或
对
的偏微分太困难,于是便引入
这样一个中间变量,这样可以简化计算的过程,并且在后续反向回推的过程中可以复用之前求出的
。我们先来看看输出层
的表达式:
这里是损失函数,
是输出层的加权输入:
,
的直观含义是输入函数对输出函数的偏微分,也就是输出的变化率(变化量),可以理解为误差函数中预测值和真实值的偏差,本质上是损失函数对每一层加权输入的敏感度,描述了当前层输入的变化对整体的损失,所以通常称
为“误差”,这个“误差”会通过激活函数传播到隐藏层。隐藏层的
表达式复杂一些:
但仍然可以理解为某一层加权输入对于损失函数的偏导、变化率,其中为激活函数,
为下一层的权重矩阵,通过梯度传播机制,整个网络的优化是协同的。
注意,损失函数、激活函数
都是确定已知的,权重
、偏置
都设置了初始值,输入
已知,所以
是可以具体求得的。求出了每一层的
,就可以用
对每一层的参数进行更新了。