作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客
本文網址:https://blog.csdn.net/HiWangWenBing/article/details/120734529
目錄
第1章 預備核心概念
1.1 單個神經元的一維矩陣運算模型
1.2 神經網路(多個神經元)的二維矩陣運算模型
第2章 單個卷積核的本質是一個神經元
2.1 卷積核的來源
2.2 卷積核的本質是:三維(長度 * 寬度 * 通道)輸入的神經元
2.3 卷積核的直觀運算:“積” = 算術乘 + 累加和
2.4 卷積核線性化后的運算:“積” = 一維矩陣相乘
第3章 卷積運算平移:“卷”
3.1 卷積程序
3.2卷積的串行計演算法:回圈法
3.3 卷積的并行計演算法:批量樣本擴展法
3.4 卷積神經元的本質:三維輸入,二維輸出的神經元,
第4章 多個卷積核卷積神經網路
4.1 多個卷積核并發計算的原理
4.2 卷積神經網路與全連接神經網路
第1章 預備核心概念
1.1 單個神經元的一維矩陣運算模型
[人工智能-深度學習-21]:卷積神經網路CNN -- 多維輸入的神經元模型及其本質:一維矩陣的點乘_文火冰糖(王文兵)的博客-CSDN博客第1章 神經元的一維輸入模型1.1 一維線性輸入的原始神經元模型[人工智能-深度學習-6]:神經網路基礎 - 人工神經元數學模型、激活函式_文火冰糖(王文兵)的博客-CSDN博客第1章 人的神經系統1.1人體神經系統/神經網路的功能神經系統(nervoussystem)是機體內起主導作用的系統,(1)神經系統調節和控制人體各其他系統的復雜活動,使機體成為一個完整的統一有機體,例如,當參加體育運動時,隨著骨骼肌的收縮,出現呼吸加快加深、心跳加速、出汗等一系列變化,(2)神經系統通過調整機體功能活動..https://blog.csdn.net/HiWangWenBing/article/details/120795317
1.2 神經網路(多個神經元)的二維矩陣運算模型
[人工智能-深度學習-22]:卷積神經網路CNN -- 單層神經網路的本質是矩陣相乘_文火冰糖(王文兵)的博客-CSDN博客作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文網址:目錄第1章 單個神經的本質是一維矩陣(向量)內積(點乘)1.1 任意維度輸入形態的神經元本質:算術乘+累加和1.2 任意維度形態的神經元都可以轉換成一維輸入的神經元:一維矩陣相乘1.3 多樣本輸入并發運算的神經元模型第2章 神經網路模型(多個獨立的神經元)2.1 單樣本,多個神經元輸出并發運算的模型2.2 多樣本,多個神經元輸出并發運算的模型第1章 單個神經的本質是一維https://blog.csdn.net/HiWangWenBing/article/details/120798249
第2章 單個卷積核的本質是一個神經元
2.1 卷積核的來源
卷積來自于卷積神經網路,而卷積神經網路中核心是卷積層,卷積層的核心是卷積核,卷積層是由多個卷積核組成的神經網路,
卷積核的維度是3維:圖片像素的長度 、寬度 、通道數這三個維度,
卷積核每個維度的長度(size):并不是整個圖片每個維度的長度,而是卷積核本身每個維度的長度,如下圖所示,紅色的圓圈就是一個卷積核,

2.2 卷積核的本質是:三維(長度 * 寬度 * 通道)輸入的神經元
卷積核首先是一個三個維度輸入形態的神經元,如下圖所示:

由于卷積核在x軸和y軸方向上,其長度都遠遠小于原始圖片本身的長度,
因此,卷積核本身并沒有與原始的輸入的所有像素相連,而是部分相連,卷積核的引數矩陣的形狀,決定了與之連接的輸入屬性的形狀(維度+每個維度的長度),
卷積核的大小又稱為感受野(野:范圍),它是指卷積核一次運算所能感受到輸入屬性的大小,這個大小遠遠小于圖片本身的大小,
2.3 卷積核的直觀運算:“積” = 算術乘 + 累加和

備注:
假設圖片的張量為:64 * 64 * 3
假設圖片的張量為: 5 * 5 * 3
則卷積核神經元的W矩陣為: 5 * 5 * 3 (暫忽略引數b)
那么卷積核的運算是:
(1)按位矩陣的算術乘:Z(5 * 5 * 3) = X (5 * 5 * 3) * W (5 * 5 * 3)
(2)對矩陣的所有位進行累加和
2.4 卷積核線性化后的運算:“積” = 一維矩陣相乘

假設卷積核為(5 * 5 * 3),則:
n = 5 * 5 * 3 = 45
x 是(1 * 45) 矩陣,矩陣的像素值來自于與整個原始圖片的部分輸入,
w 是(45 * 1)矩陣,引數的形狀(shape)決定了W引數的個數,也決定了一次性與該神經元連接的輸入屬性的個數,
Y 是(1 * 1) 矩陣,一個卷積核為一個神經元,一個輸出,
第3章 卷積運算平移:“卷”
3.1 卷積程序

3.2卷積的串行計演算法:回圈法
回圈法比較直觀,就是執行多次回圈:
(1)每一次執行一次“內積”的運算,每一次內積就是一次神經元的運算,
(2)存盤一次執行結果(內積)
(3)按照步長,移動輸入資料指標,選擇新一批與感受野大小相等的資料,
(4)重復1-3操作,直到完成所有步長(完成“卷”的程序)
這種方法的優點:
- 簡單
- 直觀
- 節省記憶體(記憶體復用,用時間換區空間)
這種方法的缺點:
- 串行執行,非并行執行,執行效率低下,
3.3 卷積的并行計演算法:批量樣本擴展法

(1)擴展步驟:
- 把整個圖片展現成一維資料
- 上圖中樣本1->n,并不是不同的樣本圖片資料,而是一張圖片中的子圖片,即部分資料,
- 根據相鄰子圖片之間的重疊關系(即步長與卷積核的大小關系)由分為三種情形,
(2)擴展型別
- 不重疊,中間也沒有間隔:構建的擴展網路的連接數與全連接網路的連接數相同, 如下圖所示:

從計算量角度看, 這種方式類似于全連接,神經元與所有的輸入資料進行一次計算,
但從網路結構來看,又不同于全連接:
a) W, B引數的個數不同于全連接,每個樣本與神經元計算時,共享相同的W引數,
b) 輸出個數:全連接模式是只有一個輸出,多樣本模式有多個不同的輸出,
- 不重疊,中間有間隔:構建的擴展網路連接數小于全連接網路的的連接數

- 重疊:構建的擴展網路連接數大于全連接網路的連接數

3.4 卷積神經元的本質:三維輸入,二維輸出的神經元,

“卷”:把輸入尺寸變換成輸出尺寸:長度1 * 寬度1 =》 長度2 * 寬度2
“積”:把三維的卷積核大小的資料“積”(合并)成一個點,
卷積神經元是:三維輸入 (X, Y, Z),通過動態“卷積”的方式,實作二維輸出(X,Y)的神經元,
全連接神經元是:一維輸入(X * Y * Z),通過靜態“內積”的方式,實作一維單點輸出(1*1)的神經元,
第4章 多個卷積核卷積神經網路
4.1 多個卷積核并發計算的原理
每個卷積核相當于一個神經元,多個卷積核與多個“子樣本”組成如下能夠支持并發運算的神經網路,

(1)圖中的“樣本“就是一個子圖片,與卷積核感受野的大小相當,所有的子圖片組合成一張大圖片,
(2)圖中的神經元就是”卷積核“,每一路卷積核都有一組輸出,而不是一個輸出,輸出的個數取決于卷積的次數,
(3)卷積中的“卷”的程序,就是用小尺寸的卷積核,發現或過濾大圖片中一個個小區間的特征,
(3)每個卷積核的一個個的卷積輸出,本質就是發現一張圖片中的一個個“小圖片/子圖片”的規律或輸出特征,

(4)不同卷積核的每一次卷積輸出,本質就是發現一張圖片中的一個個“小圖片/子圖片"的不同規律或不同輸出特征,
4.2 卷積神經網路與全連接神經網路

(1)卷積神經元網路是:
- 三維輸入 (X, Y, Z)
- 通過動態、并行“卷積”的方式,實作三維輸出(X,Y, Z)的神經元,
- 由卷積核尺寸、移動步長、填充大小決定輸出支持(X,Y) ,
- 卷積核的個數決定輸出尺寸(Z),
(2)全連接神經元是:
- 一維輸入 (X * Y * Z),等效的三維輸入為(X, Y, Z),
- 通過靜態、并行“內積”的方式,實作一維多點輸出(Z), 等效的三維輸出為(1*1*Z)的神經元,
- 由全連接的一次性全累加和的方式,決定單個神經元的輸出(1*1)
- 神經元的個數決定輸出尺寸(Z),
至于,如何對卷積核的一個個的輸出進行一下一步的處理(比如挑選出較大的一個或求平均),就是pool層的任務了,其網路的基本原理卷積核一致,
作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客
本文網址:https://blog.csdn.net/HiWangWenBing/article/details/120734529
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/321496.html
標籤:其他
上一篇:python-語音識別
