Lenet、Alexnet 、VGG、 GoogleNet、ResNet模型

各個模型的對比


LeNet:

       該模型主要是用於識別10個手寫數字的。

AlexNet:

        


     換個視角:

該模型的貢獻有:

      1.使用RELU作爲激活單元。

      2.使用Dropout選擇性忽略單個神經元,避免過擬合。

      3.選擇最大池化,避免平均池化的平均化效果。

網絡整體上包含三個結構模塊:

  image


VGG:

       該模型在2014年提出的,整個模型在卷積層採用3*3濾波器,步長爲2,在池化層採用2*2池化窗口,步長爲2。D(VGG16)和E(VGG19)的性能比較好。
   
      E(VGG19)模型:
 
       

VGG是把網絡分爲5組(模仿AlexNet的五層),然而它使用了3*3的濾波器,並把它們組合起來作爲一個卷積序列進行處理。特徵:

1.網絡更深DCNN,channel數目更大。

2.採用多個3*3的卷積,模仿出更大的感受野的效果。這些思想也被用在了後續的網絡架構中,如 Inception 與 ResNet。

GoogLeNet:

                   這裏寫圖片描述

        該模型的創新在於Inception,這是一種網中網的結構,即原來的結點也是一個網絡。Inception一直在不斷髮展,目前已經V2、V3、V4了,感興趣的同學可以查閱相關資料。Inception的結構如圖所示,其中1*1卷積主要用來降維,用了Inception之後整個網絡結構的寬度和深度都可擴大,能夠帶來2-3倍的性能提升。

                      

                                                                        Inception結構圖

      對Inception的結構做以下說明: 

       1. 採用不同大小的卷積核意味着不同大小的感受野,最後拼接意味着不同尺度特徵的融合; 

       2. 之所以卷積核大小採用1、3和5,主要是爲了方便對齊。設定卷積步長stride=1後,只要分別設定pad=0、1、2,那麼卷積後便可以得到相同維度的特徵,然後這些特徵就可以直接拼接在一起了; 

       3 . 文章說很多地方都表明pooling挺有效,所以Inception裏面也嵌入了;

       4 . 網絡越到後面,特徵越抽象,而且每個特徵所涉及的感受野也更大了,因此隨着層數的增加,3x3和5x5卷積的比例也要增加。

       5. 使用5x5的卷積核仍然會帶來巨大的計算量。 爲此,文章借鑑NIN2,採用1x1卷積核來進行降維。 例如:假定上一層的輸出爲100x100x128,經過具有256個5x5卷積核的卷積層處理之後(stride=1,pad=2),輸出數據爲100x100x256,其中,卷積層的參數爲128x5x5x256。假如上一層輸出先經過具有32個1x1卷積核的卷積層,再經過具有256個5x5卷積核的卷積層,那麼最終的輸出數據仍爲爲100x100x256,但卷積層參數量已經減少爲128x1x1x32 + 32x5x5x256,大約減少了4倍。

       此外,該模型最後採用了average pooling來代替全連接層。但是,實際在最後還是加了一個全連接層,主要是爲了方便以後大家finetune。

ResNet:

      ResNet:沒有最深,只有更深(152層),聽說目前層數已突破一千。該模型要學習的是殘差函數:F(x)=H(x)-x殘差塊的結構如圖所示:

                                     20160907100309_40

     實際中,考慮計算的成本,對殘差塊做了計算優化:將兩個3x3的卷積層替換爲1x1 + 3x3 + 1x1, 如下圖所示:

                                                          20160907100309_801











發佈了81 篇原創文章 · 獲贊 51 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章