目錄
- 鍊式反向梯度傳導
- 卷積神經網絡一卷積層
- 卷積神經網絡一功能層
- 經典的卷積網絡模型結構
-
- AlexNet
- VGG
- GoogLeNet
- ResNet
- DeepFace
- U-Net
鍊式反向梯度傳導
1、鍊式法則的計算
2、神經網絡中鍊式法則
3、神經網絡中鍊式法則
- 計算順序:從loss向輸入傳播;
- 導數存儲:每層的導數 ( δ y , δ x ) (\delta y, \delta x) (δy,δx)結果進行存儲,用于下一層導數的計算。
卷積神經網絡一卷積層
1、什麼是卷積層
- 卷積神經網絡的基本結構;
- 由多個卷積核組合形成;
- 每個卷積核同輸入資料卷積運算,形成新的特征“圖”。
2、什麼是卷積核
- 同輸入資料進行計算的二維(一維,三維)算子;
- 大小(size)由使用者定義,深度由輸入資料定義;
- 卷積核“矩陣”值:卷積神經網絡的參數;
- 卷積核初值随機生成,通過反向傳播更新。
3、卷積核大小
- 奇偶選擇:一般奇數,滿足對稱;
- 大小選擇:根據輸入資料,根據圖像特征;
- 厚度确定:與輸入資料一緻;
- 覆寫範圍:一般覆寫全部輸入,特殊情況覆寫局部區域。
4、卷積核組合方式
5、卷積層關鍵參數
- 步長:對輸入特征圖的掃描間隔;
- 邊界擴充(pad):在卷積計算過程中,為了允許邊界上的資料也能作為中心參與卷積運算,将邊界假裝延伸。這樣可以確定卷積後特征圖尺度一緻,卷積核的寬度為2i+1,則添加pad寬度為i;
- 卷積核數目:常見參數為64,128,256,GPU并行計算更加高效;
卷積神經網絡一功能層
1、非線性激勵層
激活函數是用來加入非線性因素的,因為線性模型的表達力不夠。
常用的激活函數有:
- Sigmoid函數
- Tanh函數
- ReLU函數
- Leaky ReLU函數
- Maxout函數
2、池化層(Pooling layer)
對輸入的特征圖進行壓縮,一方面使特征圖變小,簡化網絡計算複雜度,另一方面進行特征壓縮,提取主要特征。
3、歸一化層(Normalization Layer)
由于特征數值标準不一緻,對其進行歸一化可以加速訓練、提高精度。
4、融合層
對獨立進行特征學習的分支進行融合,建構高效而精簡的特征組合。
上圖為Google Inception module、GoogleLeNet的基本子產品,用多種分辨率對目标特征進行學習之後進行多分辨率特征的融合。
上圖為ResNet的融合。
經典的卷積網絡模型結構
AlexNet
AlexNet為現代神經網絡起源,是深度學習開始的标志。AlexNet的基本構成為卷積層、池化層及全連接配接層。
AlexNet結構:
大約6千萬參數。
VGG
VGG為AlexNet的增強版,有以下特點。
- 結構簡單:同AlexNet結構類似,均為卷積層、池化層和全連接配接層的組合;
- 性能優異:同Alexnet提升明顯,同GoogleNet、ResNet相比表現接近;
- 選擇最多:友善進行結構的優化設計, SSD、RCNN等其他任務的基本模型。
VGG結構:
GoogLeNet
GoogLeNet是多分辨率融合網絡,且使用了全卷積結構,試使輸入圖檔大小無限制、空間資訊沒有丢失且參數更少表達力更強。
GoogLeNet結構:
ResNet
從ResNet開始機器人超越人類識别。
ResNet的優勢:
- 前向計算:低層卷積網絡高層卷積網絡資訊融合,層數越深,模型的表現力越強;
- 反向計算:導數傳遞更直接,越過模型,直達各層。
ResNet的結構:
DeepFace
人臉識别資料特點:
- 結構化:所有人臉,組成相似,理論上能夠實作對齊;
- 差異化:相同位置,形貌不同。
一般神經網絡處理人臉識别的問題:
卷積核同整張圖檔卷積運算,卷積核參數共亨,不同局部特性對參數影響互相削弱。
DeepFace——結構化圖檔的特殊處理:
- 人臉對準
- 局部卷積:每個卷積核固定某一區域不移動,不同區域之間不共享卷積核,卷積核參數由固定區域資料确定。
缺陷:
- 大量對準,對準要求高,原始資訊可能丢失;
- 卷積參數數量很大,模型收斂難度大,需要大量資料(Facebook資料不公開);
- 模型可擴充性差,基本限于人臉計算。
U-Net
通過卷積神經網絡生成特殊類型的圖檔,圖檔所有pixel需要生成,多目标回歸。
反池化:
記住原有位置,不是resize。
逆卷積:
有學習能力的上采樣。
VGG U-Net結構:
圖檔分割圖生成: