文章目錄
- 反向傳播算法大揭秘
- 符号說明
- 反向傳播的四個基本公式
- 反向傳播算法
- 推導過程
- 對于公式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的推導
因為,取導數有
對于層的第個神經元,我們使用鍊式法則有: