文章目录
- 反向传播算法大揭秘
- 符号说明
- 反向传播的四个基本公式
- 反向传播算法
- 推导过程
- 对于公式BP1的推导
- 对于公式BP2的推导
- 对于公式BP3的推导
- 对于公式BP4的推导
反向传播算法大揭秘
注: 该篇博文是我阅读《How the backpropagation algorithm works》一文的笔记,该博文详细介绍了反向传播算法,并给出了反向传播算法四个基本公式中的前两个证明,我顺着作者的思路证明了后面两个,并记录了证明过程,希望能帮助到需要了解反向传播算法数学原理的童鞋。
符号说明
表示
层的第
个神经元到
层的第
个神经元连接的权重.
表示
层的第
个神经元的偏置,
表示
层的第
个神经元作用于激活函数以后的取值.
- 对于
的计算,我们可以使用如下公式计算:KaTeX parse error: Expected group after '_' at position 19: …_j=\sigma (\sum_̲\limits{k}w^l_{…,其中,
表示的是激活函数,求和符号表示的是第
层的所有神经元与
层第
个神经元连接的加权和.
- 上式使用矩阵表示则有:
,其中,
表示
层的权重矩阵,矩阵的第
行第
列的元素为
,类似的,
和
用列向量表示第
层神经元的偏置和激活值.
- 对于
我们称之为
层的加权输出.
- 设推导反向传播过程中的代价函数为
.
- 我们使用
表示两个矩阵对应元素的乘积,即
,称之为Hadamard乘积.
反向传播的四个基本公式
反向传播过程中的四个基本公式:
反向传播算法
- 输入
:输入层的激活值
可以假定就是其输入
- 前向传播:对于
,依次通过
和
公式进行计算激活值
- 计算最终输出误差
:通过公式计BP1算误差向量
- 反向误差传播:对于
,使用公式分BP2别计算每层神经元对应的误差
- 更新权重和增益:根据代价函数的梯度更新权重和增益,如公式BP3和BP4所示
推导过程
下面我们来进行公式的推导
对于公式BP1的推导
设最后一层的第
个神经元的误差是
通过链式法则,我们可以得到
将带入可得
公式BP1即是上式的矩阵形式
对于公式BP2的推导
对于层的第
个神经元,我们使用链式法则有:
此外,我们有
对上式微分,得
带入公式4,可得
对于公式BP3的推导
对于层的第
个神经元,我们使用链式法则有:
由于恒等于1,所以有
对于公式BP4的推导
因为,取导数有
对于层的第
个神经元,我们使用链式法则有:
将和
带入公式11,得
终于,推导完毕!