1. 程式人生 > 實用技巧 >【論文筆記】Pyramidal Convolution: Rethinking Convolutional Neural Networks for Visual Recognition

【論文筆記】Pyramidal Convolution: Rethinking Convolutional Neural Networks for Visual Recognition

地址:https://arxiv.org/pdf/2006.11538.pdf

github:https://github.com/iduta/pyconv

目前的卷積神經網路普遍使用3×3的卷積神經網路,通過堆疊3×3的卷積核和下采樣層,會在減少影象的大小的同時增加感受野,使用小尺度的卷積核存在兩個問題:

  • 實際感受野的大小比理論上的感受野大小要小得多。
  • 在沒有獲得足夠的上下文資訊之前就對輸入影象進行下采樣,會影響學習過程和網路的識別效能。由於感受野不足夠大來捕獲場景中不同的依賴,以至於有用的細節就損失掉了。

大體來說就是不同物件在不同場景中可能出現各種各樣的大小,或者在同一場景中,相同物件也可能出現不同的大小,使用傳統的3×3卷積就不能夠學習到這種多樣性。

主要貢獻:提出了金字塔卷積,能夠捕獲不同層級的細節資訊,該網路是有效的,與標準的卷積相比只增加了少量的引數量和計算量,並將該網路擴充套件到了影象分類、場景識別、語義分割、目標檢測、視訊分類中。

直接看金字塔卷積,很直觀的就是在空間維度上,卷積核大小從上至下依次減少,在通道維度上,卷積核的數量(通道的數目)依次增加,最後這些特徵圖拼接起來。

這裡要提一下引數量parameters和浮點數計算量FLOPs的計算公式:

$K_{1}$表示的是卷積核的大小,$FM_{i}$表示輸入特徵圖的通道數,$FM_{o}$表示輸出的通道數,W、H表示輸出特徵圖的寬和高。

另一個就是組卷積:

將特徵按通道進行分組,然後分別進行卷積操作。

上述分別說明瞭每一個層的卷積操作所帶來的引數量和浮點數計算量。

另外還強調了,為了簡便創造出不同的金字塔卷積的網路,每層的金字塔卷積輸入的特徵圖數目、每層的金字塔的分組通道數、每層的金字塔卷積的輸出特徵圖數目最好是2的冪。

金字塔卷積網路應用在影象分類中?

瓶頸金字塔殘差塊:

所提出的網路結構:

需要注意的是該網路與原始的殘差網路相比,去掉了最初的max pooling。也就是說現在4組卷積塊都是在第一個block是進行下采樣的。具體原因還是直接看英文比較好:

其餘的任務就不仔細看了,知道大體架構差不多了。

金字塔卷積網路應用在語義分割中?

金字塔卷積網路應用在目標檢測中?

部分結果: