在卷积神经网络(CNN)前向传播算法中,我们对CNN的前向传播算法做了总结,基于CNN前向传播算法的基础,我们下面就对CNN的反向传播算法做一个总结。在阅读本文前,建议先研究DNN的反向传播算法:深度神经网络(DNN)反向传播算法(BP)
1. 回顾DNN的反向传播算法
我们首先回顾DNN的反向传播算法。在DNN中,我们是首先计算出输出层的δLδL:
δL=∂J(W,b)∂zL=∂J(W,b)∂aL⊙σ′(zL)δL=∂J(W,b)∂zL=∂J(W,b)∂aL⊙σ′(zL)
利用数学归纳法,用δl+1δl+1的值一步步的向前求出第l层的δlδl,表达式为:
δl=(∂zl+1∂zl)Tδl+1=(Wl+1)Tδl+1⊙σ′(zl)δl=(∂zl+1∂zl)Tδl+1=(Wl+1)Tδl+1⊙σ′(zl)
有了δlδl的表达式,从而求出W,bW,b的梯度表达式:
∂J(W,b)∂Wl=δl(al−1)T∂J(W,b)∂Wl=δl(al−1)T
∂J(W,b,x,y)∂bl==δl∂
本文详细介绍了卷积神经网络(CNN)的反向传播算法,包括回顾DNN的反向传播,分析CNN反向传播算法的思想,并针对池化层和卷积层的反向传播过程进行深入讲解。通过实例解析了如何从已知的δl计算δl-1和卷积层权重的梯度。最后总结了CNN反向传播算法的基本步骤。
订阅专栏 解锁全文
1832

被折叠的 条评论
为什么被折叠?



