淺談卷積神經網路的模型結構
其它機器學習、深度學習演算法的全面系統講解可以閱讀《機器學習與應用》,清華大學出版社,雷明著,由SIGAI公眾號作者傾力打造,自2019年1月出版以來已重印3次。
- 書的購買鏈接
- 書的勘誤,優化,源代碼資源
PDF全文鏈接:淺談卷積神經網路的模型結構
淺談卷積神經網路的模型結構
本文特約作者 vicFigure
上海交通大學
20世紀末,卷積神經網路就已經在MNIST手寫體數字識別任務上展現出了優勢,但由於數據量和硬體性能的限制,始終沒有在其他任務中發揮作用。隨著硬體計算能力,存儲能力的提升,卷積神經網路在21世紀取得了爆發性的進展。同時訓練數據量也在成百倍甚至千倍的增長,更促進了卷積神經網路的進步。從LeNet5,到AlexNet,經過了20年的探索,而從AlexNet開始之後的短短几年,VGG,GoogLeNet,ResNet,DensNet等結構紛紛湧現,不斷刷新卷積神經網路在各種標準數據集上的精度,同時也拓寬了卷積神經網路的應用範圍:從分類任務,物體識別,圖像分割這些基本任務,拓展到人臉識別,人體關鍵點檢測,三維重建等實際的應用場景。今天筆者就來淺談一下最近幾年卷積神經網路的經典結構。
AlexNet
AlexNet是2012年ILSVRC分類任務比賽的冠軍,首次證明了卷積神經網路在更加複雜的分類任務(相比於MNIST和Cifar數據集)上有著極大的優勢。AlexNet的結構特徵如下:
第一,AlexNet網路由有5層卷積層,和3層全聯接層構成,最後一個全聯接層得到各類別概率。第二,AlexNet使用ReLU作為激活層,代替tanh,作者經過實驗,發現ReLU激活層的網路相對於tanh,在cifar10數據集上收斂速度更快。此後ReLU便成為了卷積神經網路標準的激活函數,在後面的結構中依然使用ReLU激活函數。第三,AlexNet使用LRN(Local Response Normalization)作為歸一化函數,如式1.1所示。第四,AlexNet使用了3個max pooling層來做下採樣,同時第一層卷積的卷積核大小設定為 ,滑動步長為4,也有下採樣的作用。第五,AlexNet採用Dropout層來減少過擬合問題。
式中 表示特徵圖中第 i個通道,(x,y)位置的值,N表示當前特徵圖的通道數,k,n,α,β是預先定好的超參數,其中n表示利用相鄰的n個通道來做歸一化。在AlexNet 中作者取 。雖然式子看起來比較複雜,其本質就是特徵圖每個位置的值,僅利用其相鄰通道對應位置處的值來做歸一化,而不依賴同通道總相鄰像素位置的值。在AlexNet中LRN接在ReLU激活層之後。(在BN層出現之後,BN層基本取代了LRN層的地位)