BP算法的文章很多,但是说明白BP算法中的链式求导法则应该只此一家了。
西瓜书,李宏毅的网课,考研时的高数资料,高赞博客,甚至Hinton的原始论文,对链式求导法则也只是一带而过。
文章先从简化版本的链式法则讲起,再将其应用到BP算法中。
简化版本的链式法则
两层嵌套(复合)函数
如上图所示,E是A1,A2,A3的函数,A1,A2,A3都是B1函数。此时,简单的运用链式求导法则即可求得E关于B1的偏导:
d E d B 1 = d E d A 1 ∗ d A 1 d B 1 + d E d A 2 ∗ d A 2 d B 1 + d E d A 3 ∗ d A 3 d B 1 \frac{dE}{dB_1}=\frac{dE}{dA_1}*\frac{dA_1}{dB_1}+\frac{dE}{dA_2}*\frac{dA_2}{dB_1}+\frac{dE}{dA_3}*\frac{dA_3}{dB_1} dB1dE=dA1dE∗dB1dA1+dA2dE∗