【模型解读】GoogLeNet中的inception结构,你看懂了吗
文章首發于微信公眾號《與有三學AI》
【模型解讀】GoogLeNet中的inception結構,你看懂了嗎
這是深度學習模型解讀第3篇,本篇我們將介紹GoogLeNet?v1到v3。
作者&編輯 | 言有三
?
01 Inception?V1【1】
GoogLeNet首次出現在2014年ILSVRC?比賽中獲得冠軍。這次的版本通常稱其為Inception?V1。Inception?V1有22層深,參數量為5M。同一時期的VGGNet性能和Inception?V1差不多,但是參數量也是遠大于InceptionV1。
Inception?Module是GoogLeNet的核心組成單元。結構如下圖:
Inception?Module基本組成結構有四個成分。1*1卷積,3*3卷積,5*5卷積,3*3最大池化。最后對四個成分運算結果進行通道上組合。這就是Inception?Module的核心思想。通過多個卷積核提取圖像不同尺度的信息,最后進行融合,可以得到圖像更好的表征。
如上圖所示,假設我們要提取貓臉特征,而上面兩張圖的貓臉占比顯然不一樣,那么我們就得用不同卷積核提取不同信息。信息分布比較全局性的圖像采用大卷積核,信息分布比較局部性的圖像采用小卷積核。
圖b是對圖a的改進,即在3*3卷積,5*5卷積前加1*1卷積,目的是為了先進行降維,相比較于原來結構減少了較多參數。而把1*1卷積放在3*3最大池化之后,相比較放在前面,也是為了參數量的減少。
由Inception?Module組成的GoogLeNet如下圖:
對上圖做如下說明:
1.??采用模塊化結構,方便增添和修改。其實網絡結構就是疊加Inception?Module。
2.采用Network?in?Network中用Averagepool來代替全連接層的思想。實際在最后一層還是添加了一個全連接層,是為了大家做finetune。
3.依然使用Dropout層,防止過擬合。
4.另外增加了兩個輔助的softmax分支,作用有兩點,一是為了避免梯度消失,用于向前傳導梯度。反向傳播時如果有一層求導為0,鏈式求導結果則為0。二是將中間某一層輸出用作分類,起到模型融合作用。最后的loss=loss_2?+?0.3?*?loss_1?+?0.3?*?loss_0。實際測試時,這兩個輔助softmax分支會被去掉。
?
02 Inception?V2【2】
1.學習VGGNet的特點,用兩個3*3卷積代替5*5卷積,可以降低參數量。
2.提出BN算法。BN算法是一個正則化方法,可以提高大網絡的收斂速度。簡單介紹一下BN算法。就是對輸入層信息分布標準化處理,使得規范化為N(0,1)的高斯分布,收斂速度大大提高。
?
03 nception?V3【3】
學習Factorization?into?small?convolutions的思想,將一個二維卷積拆分成兩個較小卷積,例如將7*7卷積拆成1*7卷積和7*1卷積。這樣做的好處是降低參數量。paper中指出,通過這種非對稱的卷積拆分,比對稱的拆分為幾個相同的卷積效果更好,可以處理更多,更豐富的空間特征。
本來還有Inception?V4【4】的,考慮到借鑒了微軟的ResNet網絡結構思想,在后面介紹Resnet中的殘差結構時再做介紹。
?
參考文獻
【1】Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE, 2015:1-9.
Ioffe S, Szegedy C.?
【2】Batch?Normalization:?Accelerating?Deep?Network?Training?by?Reducing?Internal?Covariate?Shift[J].2015:448-456.
【3】Szegedy?C,?Vanhoucke?V,?Ioffe?S,?et?al.?Rethinking?the?Inception?Architecture?for?ComputerVision[J].?2015:2818-2826.
【4】Szegedy C, Ioffe S, Vanhoucke V, et al. Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning[J]. 2016.
?
同時,在我的知乎專欄也會開始同步更新這個模塊,歡迎來交流
https://zhuanlan.zhihu.com/c_151876233
注:部分圖片來自網絡
—END—
轉載請留言,侵權必究
本系列的完整目錄:
【模型解讀】從LeNet到VGG,看卷積+池化串聯的網絡結構
【模型解讀】network in network中的1*1卷積,你懂了嗎
【模型解讀】GoogLeNet中的inception結構,你看懂了嗎
【模型解讀】說說移動端基準模型MobileNets
【模型解讀】pooling去哪兒了?
【模型解讀】resnet中的殘差連接,你確定真的看懂了?
【模型解讀】“不正經”的卷積神經網絡
【模型解讀】“全連接”的卷積網絡,有什么好?
【模型解讀】從“局部連接”回到“全連接”的神經網絡
【模型解讀】深度學習網絡只能有一個輸入嗎
【模型解讀】從2D卷積到3D卷積,都有什么不一樣
【模型解讀】淺析RNN到LSTM
感謝各位看官的耐心閱讀,不足之處希望多多指教。后續內容將會不定期奉上,歡迎大家關注有三公眾號 有三AI!
?
?
?
總結
以上是生活随笔為你收集整理的【模型解读】GoogLeNet中的inception结构,你看懂了吗的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【模型解读】network in net
- 下一篇: 【模型解读】说说移动端基准模型Mobil