[論文閱讀] Going Deeper with Convolutions
阿新 • • 發佈:2019-01-10
- 一般來說更深的網路具有更好效果,更深的網路也面臨兩個問題。
- 更深的網路擁有更多的引數,更容易過擬合。
- 更深的網路對計算的要求也更高。
- 針對上述問題的一個解決方法就是使用稀疏連線(convolutional layer),而不是dense connection。
- 此外,同一類的物體在不同圖片中的大小差距也比較大,如下圖所示,從左到右影象需要的kernel size依次遞減。
- 為了解決這個問題,作者創新性的提出了不僅僅more deeper而且可以讓網路更wider。也就是最原始的Inception Module,如下圖所示。
- 但是上面結構有一個致命的問題就是channel的個數會爆炸式增長,這就限制了我們網路結構不能太深,因為我們在設計網路的時候總要在channel的個數和網路的深度之間平衡。,為了解決該問題,作者使用了
的卷積來做dimension reduction。⚠️
的卷積也跟的有ReLU,這樣可以提高整個模型的非線性。
- 這裡其實還有一個問題就是為什麼不統一在filter concatenation後跟一個1x1的卷積,而是在module內的每個branch跟了一個1x1的卷積,個人感覺是因為這樣更適合multi-scale的初衷。通過這樣可以使得每個scale可以提取到適合自己的特徵。
- 作者還在開始的兩個convolutional layer跟了LRN Block(Local Response Normalization)。他是Alex net中使用的歸一化方法,定義如下
其中N表示channel的個數,n表示adjacent的個數。x,y表示座標。總的來說就是對每個位置的特徵,計算他在相同位置先後多個特徵下的歸一化後的值。也是計算的特徵之間的歸一化。每個位置之間是獨立的。 - ensemble,作者使用了multi-crop,multi-modelensemble的方式來進一步改善測試集上的效果
- multi-model, 作者用相同的網路結構,引數初始化方式訓練來7個模型,他們之間的不同僅僅在於隨機打亂來輸入的順序,以及sampleing的方法不同。
- multi-crop,作者最多crop出來144個影象。首先將最短邊放縮到256, 288,320和352。然後再提取square從left,center 或者是right(或者對稱的top, center或者是right)。再然後將square的四個角,中間crop出224x224或者是將square resize到224x224。所以每幅影象crop得到影象的個數是436*2=144。
- 最後ensemble的方式也是對得到的softmax probabilities計算平均值。
- 效果如下表所示,我們可以看到通過test階段的multi-scale,效果還是有顯著提升的。