圖像分割論文 | DRN膨脹殘差網絡 | CVPR2017

文章轉自:同作者個人微信公衆號【機器學習煉丹術】。歡迎交流溝通,共同進步,作者微信:cyx645016617

0 綜述

這篇文章的最大特色自然是提出了DRN,Dilated Residual Networks,在殘差網絡的基礎上加入了膨脹卷積。

膨脹卷積,又叫做空洞卷積,是在卷積核參數不變的基礎上,增加視野域的一種手段。通過使用膨脹卷積,可以放大最深層特徵圖的尺寸並且保持視野域大小不變,說白了就是少了幾個池化層,然後用膨脹卷積維持同樣大小的視野域。比方說,resnet衆所周知,包括stem中的下采樣和4個layer的下采樣,5次下采樣,整體的步長爲32;但是DRN中,整體步長僅爲8。

當然文章如果僅僅是把碰撞卷積代替一般卷積,那麼這篇文章就毫無特色了。碰撞卷積會引出一個degridding效應,如何解決這個問題纔是文章的核心。

再加上一句,雖然模型的參數沒有改變,但是因爲增加了特徵圖的尺寸,計算量和內存消耗必然有增加,請大家仁者見仁。

1 空洞卷積

這個長話短說,直接看圖:

dilation是一個參數,如果是1的話,就是上圖左圖的常規卷積核,如果dilation是2的畫,就變成右邊的膨脹卷積的樣子。dilation表示卷積核中參數相鄰的距離。

2 結構變化

先來看Resnet的結構圖:

輸入的圖片是224x224大小的,第一次下采樣在stem中(圖中的conv1),隨後的下采樣在每一層layer的第一個卷積層前面。

DRN結構沒有了resnet最後的兩次下采樣,也就是說,特徵圖在28x28的大小之後就不再變小了。不再減小特徵圖尺寸,那麼就要增加捲積核的膨脹係數

上圖中展示的是後兩次下采樣的resnet和DRN的區別,可以看到,DRN沒有後兩次下采樣,因此特徵圖的尺寸都相同。

  • 但是DRN在本該第四次採樣的卷積過程中,將膨脹係數改成2,這樣保持相同的視野域;
  • 在本該第五次採樣的卷積過程中,將膨脹係數改成4,這樣保持相同的視野域。

3 degridding

使用膨脹卷積來代替下采樣,會產生degriding柵格化問題

這種情況產生的原因在原文中有這樣的一句解釋:

Gridding artifacts occur when a feature map has higher-frequency content than the sampling rate of the dilated convolution.

就是說,當一某一個特徵的重要性超過採樣率。作者給出了這樣的一個例子:

上面圖(a)是一個單個像素異常重要的特徵圖,然後經過一個膨脹卷積,變成(c),變成網格狀的輸出。可以說gridding artifiacts是膨脹卷積性質產生的現象。

爲了解決這樣的問題,作者對DRN作出了改進:

  1. DRN-B,DRN-C取消了pooling層,改用stride=2的卷積作爲下采樣,因爲作者發現pooling會讓degridding更加嚴重
  2. 此外,作者在DRN-B和DRN-C的最後加上了膨脹係數爲2和1的幾層卷積層,來消除degridding現象。其中DRN-C取消了最後幾層卷積的跳層結構。這個非常好理解,畢竟膨脹卷積會產生degridding,那麼我就讓最後的輸出是用一般的卷積輸出就避免了這種結構,然後跳層結構會讓degridding直接連入最後的輸出結果,所以取消了

因此在上面的展示圖匯中,DRN-C的輸出的語義分割效果圖,非常絲滑。

4 總結

效果有非常大的提高。這個不降低特徵圖的尺寸,從而提高了小物體的目標檢測的效果。值得嘗試。

5 如何實現

這個也挺好實現的,我們記住:

  1. 用stride=2的卷積層代替pooling層;
  2. 後面兩個下采樣取消,使用膨脹係數2和4的卷積代替;
  3. 最後在加上膨脹係數爲2和1的卷積層消除degridding現象。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章