CNN模型-AlexNet VGG googleNet ResNet

最近一直在學習目標檢測,計算機視覺的一個重要領域。而cnn是現在語音分析和圖像識別的一個研究重點,它的共享權值策略不僅降低了網絡模型的複雜度,也減少了訓練的權值的數量。

CNN網絡的訓練

第一階段,向前傳播階段:

a)從樣本集中取一個樣本(X,Yp),將X輸入網絡;
b)計算相應的實際輸出Op。

在此階段,信息從輸入層經過逐級的變換,傳送到輸出層。這個過程也是網絡在完成訓練後正常運行時執行的過程。在此過程中,網絡執行的是計算(實際上就是輸入與每層的權值矩陣相點乘,得到最後的輸出結果):

          Op=Fn(…(F2(F1(XpW(1))W(2))…)W(n))

第二階段,向後傳播階段

a)算實際輸出Op與相應的理想輸出Yp的差;
b)按極小化誤差的方法反向傳播調整權矩陣

本文主要介紹LeNet5,Alexnet,Googlenet,VGG

   LeNet5:

         是用於手寫字體識別的一個經典CNN,曾用於銀行簽名識別。

 

    AlexNet:(7層+softmax層用於分類)

        2012年,Imagenet比賽冠軍的model-Alexnet (以第一作者alex命名),是Alex在寢室熬出來的模型。

 

 

1)con - relu - pooling - LRN

具體計算都在圖裏面寫了,要注意的是input層是227*227,而不是paper裏面的224*224,這裏可以算一下,主要是227可以整除後面的conv1計算,224不整除。如果一定要用224可以通過自動補邊實現,不過在input就補邊感覺沒有意義,補得也是0。

2)conv - relu - pool - LRN

和上面基本一樣,唯獨需要注意的是group=2,這個屬性強行把前面結果的feature map分開,卷積部分分成兩部分做。

3)conv - relu

4)conv-relu

5)conv - relu - pool

6)fc - relu - dropout

這裏有一層特殊的dropout層,在alexnet中是說在訓練的以1/2概率使得隱藏層的某些neuron的輸出爲0,這樣就丟到了一半節點的輸出,BP的時候也不更新這些節點。

7)fc - relu - dropout 

8)fc - softmax 


 

GoogleNet(22層):

   14年比賽冠軍的model,它證明,使用更多的卷積,更深的層次可以得到更好的結構。

    

 VGG(Visual Geometry Group)(19層):

     在ILSVRC上定位第一,分類第二,ILSVRC——ImageNet Large-Scale Visual Recongnition Challenge)

     vgg和googlenet是2014年imagenet競賽的雙雄,這兩類模型結構有一個共同特點是  go deeper

     VGG有很多個版本,也算是比較穩定和經典的model。它的特點也是連續conv多,計算量巨大

VGGNet改進點總結
一、使用了更小的3*3卷積核,和更深的網絡。兩個3*3卷積核的堆疊相對於5*5卷積核的視野,三個3*3卷積核的堆疊相當於7*7卷積核的視野。這樣一方面可以有更少的參數(3個堆疊的3*3結構只有7*7結構參數數量的(3*3*3)/(7*7)=55%);另一方面擁有更多的非線性變換,增加了CNN對特徵的學習能力。
二、在VGGNet的卷積結構中,引入1*1的卷積核,在不影響輸入輸出維度的情況下,引入非線性變換,增加網絡的表達能力,降低計算量。
三、訓練時,先訓練級別簡單(層數較淺)的VGGNet的A級網絡,然後使用A網絡的權重來初始化後面的複雜模型,加快訓練的收斂速度。
四、採用了Multi-Scale的方法來訓練和預測。可以增加訓練的數據量,防止模型過擬合,提升預測準確率

 


參考文獻:https://www.jianshu.com/p/bf398d78aedc

                 https://blog.csdn.net/dcrmg/article/details/79254654

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章