目錄
0. 前言
1. 單層卷積網絡
2. 各參數次元
3. CNN 前向傳播反向傳播
如果這篇文章對你有一點小小的幫助,請給個關注,點個贊喔~我會非常開心的~
花書+吳恩達深度學習(十)卷積神經網絡 CNN 之卷積層
花書+吳恩達深度學習(十一)卷積神經網絡 CNN 之池化層
花書+吳恩達深度學習(十二)卷積神經網絡 CNN 之全連接配接層
花書+吳恩達深度學習(十三)卷積神經網絡 CNN 之運算過程(前向傳播、反向傳播)
花書+吳恩達深度學習(十四)卷積神經網絡 CNN 之經典案例(LetNet-5, AlexNet, VGG-16, ResNet, Inception Network)
0. 前言
本篇文章主要介紹卷積神經網絡的運算過程。
整體卷積神經網絡的運算趨勢,是行和列逐漸減小,通道數逐漸增加。
1. 單層卷積網絡
此處以單個樣本為例子。
- 原始圖像(上一層輸出)作為 。
- 每一個過濾器的參數疊加在一起,組成這一層的權重 。
- 為每個過濾器加上偏差,組成偏差 ,在卷積之後的 2D 圖像的每一個像素上加上偏差。
- 通過激活函數 ,激活函數同樣針對 2D 圖像的每一個像素。
- 則,每一個過濾器計算出來為 2D 圖像,多個過濾器組合起來作為 3D 圖像,下一層的輸入。
2. 各參數次元
3. CNN 前向傳播反向傳播
對于每一個 3D 圖像,可以看成是,行(長),列(寬),通道(高)。
定義一個 4 維張量
(也就是每一層的權重
),
表示位于,輸出通道
(這層第
個過濾器,輸出的第
個通道),輸入通道
(每個過濾器的第
個通道),
行,
列的值。
定義一個 3 維張量
(也就是輸入資料
),
表示位于,通道
(上層的第
個過濾器,輸入的第
個通道),
行,
列的值。
定義一個 3 維張量
(也就是輸出的 3D 資料),
表示位于,通道
(這層的第
個過濾器,輸出的第
個通道),
行,
列的值。
則前向傳播的卷積運算表示為:
在反向傳播中,對
的求梯度為:
使用梯度下降,對權重
求梯度為:
如果不是神經網絡的第一層,則需要對輸入
求梯度:
如果這篇文章對你有一點小小的幫助,請給個關注,點個贊喔~我會非常開心的~