DRConv:曠視提出區域感知動態卷積,多任務性能提升 | CVPR 2020


論文提出DRConv,很好地結合了局部共享的思想並且保持平移不變性,包含兩個關鍵結構,從實驗結果來看,DRConv符合設計的預期,在多個任務上都有不錯的性能提升

來源:曉飛的算法工程筆記 公眾號

論文: Dynamic Region-Aware Convolution

Introduction


  目前主流的卷積操作都在空間域進行權值共享,而如果想得到更豐富的信息,只能通過增加卷積的數量來實現,這樣不僅計算低效,也會帶來網絡優化困難。與主流卷積不同,local conv在不同的像素位置使用不同的權值,這樣能夠高效地提取豐富的信息,主要應用在人臉識別領域,但local conv不僅會帶來與特征圖大小相關的參數量,還會破壞平移不變性。

  考慮到以上兩種卷積的優劣,論文提出了DRConv(Dynamic Region-Aware Convolution),DRConv的結構如圖1,首先通過標准卷積來生成guided feature,根據guided feature將空間維度分成多個區域,卷積核生成模塊$G(\cdot)$根據輸入圖片動態生成每個區域對應的卷積核。DRConv能夠可學習地為不同的像素位置匹配不同的卷積核,不僅具有強大的特征表達能力,還可以保持平移不變性。由於卷積核是動態生成的,能比local conv減少大量的參數,而整體計算量幾乎和標准卷積一致。
  論文的主要貢獻如下:

  • 提出DRConv,不僅具有強大的語義表達能力,還能很好地維持平移不變性。
  • 巧妙的設計了可學習guided mask的反向傳播,明確區域共享的規則(region-sharing-pattern),並根據損失函數回傳的梯度進行更新。
  • 只需簡單地替換,DRConv就能在圖片分類,人臉識別,目標檢測和語義分割等多個任務上達到很好的性能。

Our Apporach


Dynamic Region-Aware Convolution

  對於標准卷積,定義輸入$X\in \mathbb{R}^{U\times V\times C}$,空間維度$S\in \mathbb{R}^{U\times V}$,輸出$Y\in \mathbb{R}^{U\times V\times O}$,權重$W\in \mathbb{R}^C$,輸出的每個channel的計算如公式1,$*$為二維卷積操作。

  對於基礎的local conv,定義非共享權重$W\in \mathbb{R}^{U\times V\times C}$,輸出的每個channel計算如公式2,其中$W_{u,v,c}^{(o)}$表示位置$(u,v)$上的獨立非共享卷積核,即卷積在特征圖上移動時,每次更換不同的卷積核。

  結合以上公式,定義guided mask$M={S_0, \cdots,S_{m-1}}$用來表示空間維度划分的$m$個區域,$M$根據輸入圖片的特征進行提取,每個區域$S_t(t\in [0, m-1])$僅使用一個共享的卷積核。定義卷積核集$W=[W_0,\cdots,W_{m-1}]$,卷積核$W_t \in \mathbb{R}^C$對應於區域$S_t$。輸出的每個channel的計算如公式3,即卷積在特征圖上移動時,每次根據guided mask更換對應的卷積核。
  從上面的描述可以看到,DRConv包含兩個主要部分:

  • 使用可學習的guided mask來將空間維度划分為多個區域,如圖1所示,guided mask中相同顏色的像素歸為同一區域,從語義的角度來看,即將語義相似的特征歸為統一區域。
  • 對於每個共享區域,使用卷積核生成模塊來生成定制的卷積核來進行常規的2D卷積操作,定制的卷積核能夠根據輸入圖片的重要特征自動地進行調節。

Learnable guided mask

  作為DRConv的重要部分,guided mask決定了卷積核在空間維度上的分布,該模塊由損失函數指導優化,從而能夠適應輸入的空間信息變化,從而改變卷積核的分布。

  對於包含$m$個channel的$k\times k$DRConv,定義$F$為guided feature,$M$為guided mask,$M$上的每個位置$(u,v)$的值計算如公式4,函數$argmax(\cdot)$輸出最大值的下標,$F_{u,v}$為位置$(u,v)$上的guided feature向量,所以$M$的值為$[0, m-1]$,用來指示該位置對應的卷積下標。

  為了讓guided mask可學習,必須得到用來生成guided feature的權值的梯度,但由於$argmax(\cdot)$的使用導致guided feature的梯度無法計算,所以論文設計了類似的梯度。

  • Forward propagation

  根據公式4獲得guided mask,根據公式5得到每個位置$(u,v)$得到卷積核$\tilde{W}{u,v}$,其中$W{M_{u,v}}$是$G(\cdot)$生成的卷積核集$[W_0, \cdots, W_{m-1}]$中的一個,$M_{u,v}$是guided feature在位置$(u,v)$上值最大的channel下標,通過這種方式來$m$個卷積核與所有位置的關系,將空間像素分為$m$個組。使用相同卷積核的像素包含相似的上下文信息,主要由於具有平移不變性標准卷積將這些信息傳遞給了guided feature。

  • Backward propagation

  為了使梯度得到回傳,首先用$\hat{F}$來代替guided mask的one-hot表示,計算如公式6所示,在channel維度上進行$softmax(\cdot)$,期望$\hat{F}{u,v}j$能盡可能地接近0和1,這樣$\hat{F}_{u,v}j$與guided mask的one-hot表示將非常相似。公式5可以看作是卷積核集$[W_0,\cdots,W{m-1}]$乘以$M_{u,v}$的one-hot表示,這里替換為$\hat{F}_{u,v}^j$。

  $\hat{F}{u,v}^j$的梯度計算如公式7,$\langle, \rangle $為點積,$\bigtriangledown{\cdot} \mathcal{L}$表示guided mask對應loss函數的梯度,如圖a,公式7近似於公式5的反向傳播。

  公式8為公式6的反向傳播,$\odot$為逐元素相乘,如果不設計特殊的反向傳播,SGD將不能對相關的參數進行優化,因為函數$argmax(\cdot)$是不可導的。因此,$softmax(\cdot)$是用來接近$argmax(\cdot)$,通過替換函數將梯度回傳到guided feature,是的guided mask可學習。

Dynamic Filter: Filter generator module

  在DRConv中,使用卷積核生成模塊來生成不同區域的卷積核,由於不同圖片的特征不同,在圖片間共享的卷積核不能高效地提取其獨有的特征,需要定制化的特征來專注不同圖片的特性。

  定義輸入$X\in \mathbb{R}^{U\times V\times C}$,包含兩層卷積的卷積核生成模塊$G(\cdot)$,$m$個卷積$W=[W_0,\cdots,W_{m-1}]$,每個卷積僅用於區域$R_t$。如圖b所示,為了獲得$m$個$k\times k$卷積,先使用自適應平均池化將$X$下采樣為$k\times k$,然后使用兩個連續的$1\times 1$卷積,第一個使用$sigmoid(\cdot)$進行激活,第二個設定$group=m$,不使用激活。卷積核生成模塊能夠增強網絡獲取不同圖片特性的能力,由於根據輸入的特征生成卷積核,每個卷積核的關注點能夠根據輸入的特性進行自動地調整。

Experiments


Classification

Face Recognition

COCO Object Detection and Segmentation

Ablation Study


Visualization of dynamic guided mask

Different model size

Different region number

Different spatial size

CONCLUSION


  論文提出DRConv,很好地結合了局部共享的思想並且保持平移不變性,包含兩個關鍵結構,首先使用guided mask對特征圖中的像素划分到不同的區域,其次使用卷積核生成模塊動態生成區域對應的卷積核。從實驗結果來看,DRConv符合設計的預期,特別是圖3的guided mask的可視化結果,在多個任務上都有不錯的性能提升。



如果本文對你有幫助,麻煩點個贊或在看唄~
更多內容請關注 微信公眾號【曉飛的算法工程筆記】

work-life balance.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM