前言:
这里主要通过反向传播,更新网络层的权重系数
目录
- 算法流程
- 权重系数更新原理
- 灵敏度更新原理
一 算法流程
输入: m个样本
for iter in range(Max)
for i to 1 to m:
#### 前向传播计算误差####
for l in range(2,L)
####反向计算输出层的灵敏度####
for l = L-1 to 2
####反向传播更新权重系数####
for l = 2 to L
二 权重系数更新原理
损失函数 是一个标量
某一层的权重系数为
求该层的 ,可以看出标量对矩阵的求导
利用矩阵链式求导原理 )
可以得到
其中 称为该层的灵敏度
三 灵敏度计算
3.1 先计算最后一层的灵敏度
设
整个过程是标量对向量求导的链式过程
利用链式求导原理
其中
标量对向量求导,分母形式
为[n,1] 的向量对 [n,1]的向量求导,为[n*n]雅克比矩阵,单位矩阵
为[n,n]的对角矩阵
所以
根据左行右列性质
3.2 递归推导当层的
其中
(向量对向量求导)
所以