【AI學習筆記10】卷積神經網絡CNN反向傳播原理 The principle of CNN backpropagation
卷積神經網絡CNN反向傳播原理 The principle of CNN backpropagation
一、鏈式法則Chain rule
開始推導反向傳播原理之前,先回顧一下偏導數(Partial Derivatives)的鏈式法則:【1】【2】【3】


圖中, L代表損失函數(Loss Function),對x的偏導數為:

二、反向傳播backpropagation公式推導 【4】【5】
- 以如下卷積為例:

- 卷積運算的動態圖:


- 對Filter F的鏈式求導公式如下:




- 對Input X的鏈式求導公式如下:


用矩陣表示:

- 總結鏈式求導公式如下:

三、Pooling的反向傳播 【6】
- max pooling
max pooling在前向傳播中,把一個patch中最大的值傳遞給下一層,其他值會被舍棄掉。因此,在反向傳播中,就是將當前梯度直接傳遞給前一層的某個像素,而讓同一個patch中的其他像素值為0。

- average pooling
在反向傳播中,就是把某個像素的值平均分成 n 份分配給上一層。

參考文獻(References):
【1】 Fei-Fei Li & Andrej Karpthy & Justin Johnson 《Lecture 4: Backpropagation and Neural Networks part 1》
https://github.com/maxim5/cs231n-2016-winter/blob/master/lecture-slides/winter1516_lecture4.pdf
【2】Andrej Karpathy 《CS231n Winter 2016: Lecture 4: Backpropagation, Neural Networks 1》 https://www.youtube.com/watch?v=i94OvYb6noo
【3】Pavithra Solai 《Convolutions and Backpropagations》
https://pavisj.medium.com/convolutions-and-backpropagations-46026a8f5d2c
【4】Rukayat Sadiq 《CNN BackPropagation Fall 2021》
https://deeplearning.cs.cmu.edu/F21/document/recitation/Recitation5/CNN_Backprop_Recitation_5_F21.pdf
【5】ESRSchao 《【CNN基礎知識】一文詳解反向傳播(Backpropagation)在CNN中如何具體實現——卷積、池化(上)》
https://blog.csdn.net/qq_45912037/article/details/128073903
【6】Jackie_AI 《Pooling層的作用以及如何進行反向傳播》
https://blog.csdn.net/purple_love/article/details/134487445
posted on 2025-03-02 23:55 JasonQiuStar 閱讀(339) 評論(0) 收藏 舉報
浙公網安備 33010602011771號