- 推导出前向传播算法和反向传播算法公式
,根据梯度下降法,以目标的负梯度对目标进行更新。 ,其中
如果要更新第二层的权重, , 就是对激活函数求导,如果此部分大于1,随着层数的增多就会发生梯度爆炸,如果此部分小于1,就会发生梯度消失
- 反向传播具体过程
每一层的线性变换是: ,输出为: 其中 f 为非线性变换(如 sigmoid、tanh、relu),输出直接作为下一层输入
通过梯度下降法对参数进行更新:
为得到递推公式,先计算损失函数对隐藏层的偏导:
其中 是第 l+1层的节点数,而 ,其中 ,所以
记 为 ,从而递推公式可以表示为
所以
对两种不同的损失函数计算最后一层的残差:
平方损失误差:
交叉熵损失:
在分类问题中,仅在一个类别 k 时取值为1,其余为0,所以
当 取 SoftMax 激活函数时,有: