深入浅出——网络模型中Inception的作用与结构全解析
一 論文下載
本文涉及到的網絡模型的相關論文以及下載地址:?
?
[v1] Going Deeper with Convolutions, 6.67% test error?
http://arxiv.org/abs/1409.4842?
[v2] Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift, 4.8% test error?
http://arxiv.org/abs/1502.03167?
[v3] Rethinking the Inception Architecture for Computer Vision, 3.5% test error?
http://arxiv.org/abs/1512.00567?
[v4] Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning, 3.08% test error?
http://arxiv.org/abs/1602.07261
二 Inception結構引出的緣由
先引入一張CNN結構演化圖:?
2012年AlexNet做出歷史突破以來,直到GoogLeNet出來之前,主流的網絡結構突破大致是網絡更深(層數),網絡更寬(神經元數)。所以大家調侃深度學習為“深度調參”,但是純粹的增大網絡的缺點:
//1.參數太多,容易過擬合,若訓練數據集有限; //2.網絡越大計算復雜度越大,難以應用; //3.網絡越深,梯度越往后穿越容易消失(梯度彌散),難以優化模型- 1
- 2
- 3
那么解決上述問題的方法當然就是增加網絡深度和寬度的同時減少參數,Inception就是在這樣的情況下應運而生。
三 Inception v1模型
Inception v1的網絡,將1x1,3x3,5x5的conv和3x3的pooling,堆疊在一起,一方面增加了網絡的width,另一方面增加了網絡對尺度的適應性;?
第一張圖是論文中提出的最原始的版本,所有的卷積核都在上一層的所有輸出上來做,那5×5的卷積核所需的計算量就太大了,造成了特征圖厚度很大。為了避免這一現象提出的inception具有如下結構,在3x3前,5x5前,max pooling后分別加上了1x1的卷積核起到了降低特征圖厚度的作用,也就是Inception v1的網絡結構。?
?
下面給出GoogLeNet的結構圖:?
三 Inception v2模型
一方面了加入了BN層,減少了Internal Covariate Shift(內部neuron的數據分布發生變化),使每一層的輸出都規范化到一個N(0, 1)的高斯;?
另外一方面學習VGG用2個3x3的conv替代inception模塊中的5x5,既降低了參數數量,也加速計算;?
?
使用3×3的已經很小了,那么更小的2×2呢?2×2雖然能使得參數進一步降低,但是不如另一種方式更加有效,那就是Asymmetric方式,即使用1×3和3×1兩種來代替3×3的卷積核。這種結構在前幾層效果不太好,但對特征圖大小為12~20的中間層效果明顯。?
?
四 Inception v3模型
v3一個最重要的改進是分解(Factorization),將7x7分解成兩個一維的卷積(1x7,7x1),3x3也是一樣(1x3,3x1),這樣的好處,既可以加速計算(多余的計算能力可以用來加深網絡),又可以將1個conv拆成2個conv,使得網絡深度進一步增加,增加了網絡的非線性,還有值得注意的地方是網絡輸入從224x224變為了299x299,更加精細設計了35x35/17x17/8x8的模塊。
五 Inception v4模型
v4研究了Inception模塊結合Residual Connection能不能有改進?發現ResNet的結構可以極大地加速訓練,同時性能也有提升,得到一個Inception-ResNet v2網絡,同時還設計了一個更深更優化的Inception v4模型,能達到與Inception-ResNet v2相媲美的性能。?
待補充..
六 參考文獻
1.http://blog.csdn.net/stdcoutzyx/article/details/51052847
2.http://blog.csdn.net/cv_family_z/article/details/50789805
3.http://blog.csdn.net/sunbaigui/article/details/50807418
4.http://blog.csdn.net/bea_tree/article/details/51784026
版權聲明:本文為博主原創文章,未經博主允許不得轉載。轉載請標注原地址http://blog.csdn.net/u010402786 https://blog.csdn.net/u010402786/article/details/52433324總結
以上是生活随笔為你收集整理的深入浅出——网络模型中Inception的作用与结构全解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CNN经典网络模型:LeNet,Alex
- 下一篇: OpenCV实现最大最小距离聚类算法