反向传播是用来训练神经网络的一种方法,一般与最优化方法(如梯度下降法)结合使用
目标:
最小化损失函数C
神经网络:
[z{_i^l}=sum limits_{j}w{_{ij}^l}a{_j^{l-1}}+b^l
]
[a{_j^l} = sigma(z{_j^l})
]
最优化方法:
梯度下降法
[ heta^n = heta^{n-1} - eta
abla C( heta^{n-1})
]
在神经网络中( heta)具体为weight (w)和bias (b)
[frac{partial C}{partial w{_{ij}^l}} =
frac{partial z{_i^l}}{partial w{_{ij}^l}}
frac{partial C}{partial z{_i^l}}
= a{_j^{l-1}} delta{_i^l}]
[frac{partial C}{partial b^l} =
frac{partial z{_i^l}}{partial b^l}
frac{partial C}{partial z{_i^l}}
= delta{_i^l}]
[delta{_i^l}=frac{partial C}{z{_i^l}} = ... =
acute sigma (z{_i^l}) sumlimits_{k}w{_{ki}^{l+1}} delta{_k^{l+1}} ]
Ref.
维基百科 反向传播
李宏毅 ppt