04 InceptionV1學習筆記

論文地址:http://arxiv.org/pdf/1409.4842v1.pdf

參考文章:

  1. https://cloud.tencent.com/developer/article/1008768
  2. https://blog.csdn.net/C_chuxin/article/details/82856502

(還不錯,這兩篇文章翻譯的還是很全面的,知識一些細節上的專業詞彙有些地方需要看原文)


1、inception_v1最大的創新點就是引入了Inception模塊,使用了inception模塊的優點:①加深、加寬了網絡結構,學習了多種卷積核;②提升了計算機資源利用率。(而且參數要比VGG減少12倍)

2、基於keras的inception-v3對貓狗數據進行的分類測試(第一次發現SGD比Adam優化器好用),代碼以及手擼的inception-v1的model文件


在第二章中主要是大致介紹了一下與本文有關的相關前人工作(LeNet-5、固定大小的Gabor濾波器以及借鑑了R-CNN中將整個檢測分爲兩個子問題的思路),而且作者也表示,本文的網絡架構中大量使用了1 \times 1的卷積,主要有兩個目的:①用來作爲降維模塊來移除卷積瓶頸,否則計算量指數倍的增加會限制網絡的大小(如果不降維,inception模塊裏的池化層使得channels只能增加不能減少,幾個inception下去,計算量就會爆炸);②增加了網絡深度和寬度的同時,性能並沒有明顯的增加。

在第三章中作者指出提高網絡性能的最直接的方式(增加網絡的深度和寬度)會有更多的參數,而且網絡更容易過擬合(尤其是在訓練樣本有限的情況下,更加容易出現過擬合);此外計算資源的使用也會增加。針對這一情況作者指出用稀疏性來進行緩解,但是我沒整明白稀疏性怎麼就和作者接下來提出的inception扯上關係了。【所存在的問題】

在第四章中,作者詳細的介紹了網絡架構的細節,以及兩種inception結構(但是第一種被淘汰,因爲第一種結構會導致channels不斷遞增,從而導致計算量爆炸,所以常見的inception網絡都是用的第二種inception模塊),具體如圖1的a、b所示。第二種結構在進行3 \times 35 \times 5之前,先用1 \times 1的進行降維;在3 \times 3的max pooling後加上1 \times 1的卷積,從而實現改變輸出的通道數。此外,作者也強調了,處於技術原因(內存),只在更高層開始使用Inception模塊,而更低層仍然保持傳統的卷積形式。(具體在作者提交的22層的網絡中表現是,前三層中沒有使用inception,具體的網絡結構可以看圖2)

圖1 inception模塊的兩種形式

第五章中,講的是googlenet的一些細節。第一,所有的卷積層(包括1 \times 1)後都是用了relu激活函數;第二,在inception4a和4

b上添加了輔助分類器,具體輔助分類器有什麼用怎麼使用我沒整明白【所存在的問題】。具體的網絡結構可以看錶1和圖2(由於太大,所以放在了最下面)。

第六章中作者簡單的闡述了一下訓練方法。本文中使用的隨機梯度下降法進行優化,動量參數momentum爲0.9,固定的學習率計劃(每8個epoch,lr下降4%)。

第七章中,作者介紹了用該網絡在ILSVRC2014分類挑戰賽中的設置和結果。第一,作者訓練了個版本的GoogleNet,並且它們進行了整體預測,且它們具有相同的參數初始化和lr,區別僅在於採樣方法和隨機輸入圖像的順序上【原文中在訓練集做了哪些預處理講得很模糊,但是測試集做了哪些處理講得詳細】。第二,在測試集上做的一些預處理工作,將圖像各向同性縮放爲256、288、320、352四種,再取左中右三個方塊,對於每個方塊取其四個及中心224 \times 224及它們的鏡像,因此每張圖片有4 \times 3 \times 6 \times 2 = 144個crop圖,最後再基於softmax求平均,從而得到最終結果。其他的主要是介紹了一下這個網絡在比賽中取得的優異成果。

第八章是講該網絡在ILSVR2014檢測大賽中取得的結果。第九章是總結。

全文完。以上內容都可以在我自己做的筆記中找到,如下圖所示。

筆記1
筆記2

 

 

表一 inception_v1的細節,具體參數可以看論文或者上面附的參考文章

 

圖2 具體的網絡結構

 

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