可變形卷積系列(三) Deformable Kernels,創意滿滿的可變形卷積核 | ICLR 2020


論文提出可變形卷積核(DK)來自適應有效感受域,每次進行卷積操作時都從原卷積中采樣出新卷積,是一種新穎的可變形卷積的形式,從實驗來看,是之前方法的一種有力的補充。

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

論文: Deformable Kernels: Adapting Effective Receptive Fields for Object Deformation

Introduction


  傳統的卷積由於存在硬性的規則,在對於物體放大或旋轉時,不能作出適應性的改變,而可變形卷積則通過改變輸入的采樣位置來進行適應性的改變,即改變理論感受域。但理論感受域並不能度量像素對輸出的貢獻,相比理論感受域,更重要的是有效感受域(ERF),通過計算輸出對應輸入的偏導獲得(與卷積權重相關),改變理論感受域只是改變有效感受域的一種手段。
  為此,論文提出可變形卷積核(Deformable Kernels, DK),用於進行可變形建模的新型卷積操作,在推理時根據輸入直接生成新的卷積核來改變有效感受域。如圖d,DK學習卷積核的偏移來對原卷積進行重新采樣,而不改變輸入數據。從實驗結果來看,DK對分類任務和檢測任務都十分有效,結合舊的可變形卷積方法能產生更好的結果。

Approach


  對有效感受域概念不感興趣的可以直奔后面對可變形卷積核的描述,前面有效感受域的介紹不影響后面內容。

A Dive into Convolutions

  • 2D Convolution

  大小為$K\times K$,stride為1的二維卷積操作如公式1,輸出為目標區域像素與卷積核乘積的和,$\mathcal{K}=[-K/2,K/2]^2$。

  • Theoretical Receptive Field

  卷積層單個輸出相對於上一層的輸入的感受域大小為卷積核大小$K\times K$,當卷積層疊加起來時,單個輸出的對應的隔層感受域也會因此而疊加,得到的疊加區域即理論感受域,與卷積核大小$K$和網絡深度$n$線性相關。

  • Effective Receptive Field

  由於卷積的疊加以及非線性激活的引入,理論感受域內的像素對輸出的貢獻各不相同,可以使用有效感受域(ERF)來度量區域內每個像素對輸出的影響,通過計算輸出對應像素值的偏導得到,具體可以看參考論文。

Analysis on Effective Receptive Fields

  這里主要分析如何根據輸入和一系列卷積來計算有效感受域,先分析線性卷積網絡的情景,再拓展到非線性卷積網絡。

  對於線性卷積網絡,給定$I^{(0)}$為輸入圖片以及stride為1的$K\times K$卷積權重合集${W{(s)}}_{s=1}n$,公式1可以展開為公式2,特征圖$I$和卷積權重$W$的上標以及卷積核位置$k$的下標為層數$s\in [1, n]$。

  根據ERF的定義,輸出坐標$j$對應輸入坐標$i$的有效感受域值$\mathcal{R}^{(n)}(i;j)=\partial I_j^{(n)} / \partial I_i{(0)}$計算為公式3,$\Bbb{1}[\cdot]$為指示函數。公式3的意義為所有從$i$到$j$的路徑的權重和,權重的計算為卷積核權重的累積,有效感受域值跟輸出的采樣位置$j$、卷積核位置$k$以及卷積核權重${W{(s)}}$有關。

  假設將第$m$個卷積核$W^{(m)}$替換為$1\times 1$卷積核$W_{\tilde{k}_m}{(m)}$,ERF的計算會變為公式4,$S=[1,n]$ $m$即不包含$m$層,這里每條路徑權重直接乘上$W_{\tilde{k}_m}{(m)}$,因為$m$層只有一個路徑,符合指示函數的路徑必定包含$k_m$。

  $K\times K$卷積可以看成分散在矩形區域內的$K^2$個$1\times 1$卷積,因此,公式3可以改寫成公式5,將$m$層的$K\times K$卷積看成多個$1\times 1$卷積,相對的輸出位置也要進行相應的修改(這里應該為$j-k_m$比較合適)。

  對於復雜的非線性卷積,在公式1中加入ReLU激活得到公式6,即每層卷積都接激活函數。

  非線性版本的有效感受域值計算為上式,因子$\mathcal{C}$使得ERF值變成與數據相關,實際中的有效感受域是不規則的形狀,包含許多不規則分布的零值。
  需要注意,公式4和公式5的計算是線性的,使得有效感受域值計算能與內核的線性采樣操作兼容,比如使用雙線性插值獲得小數位置的內核值,即可以認為內核采樣等對數據進行線性ERF采樣(ERF與輸出的采樣位置$j$、卷積核位置$k$以及卷積核權重${W^{(s)}}$有關),這種兼容性也可以相似地推廣到非線性的情況下。基於以上的分析,論文提出可變形卷積核(Deformable Kernels, DK)。

Deformable Kernels(DK)

  DK添加了可學習的核偏移值,使得輸出的計算從公式1變為公式7,ERF的計算也變成了與核偏移值相關的公式8。由於偏移值通常包含小數,使用雙線性插值來計算偏移后的值。
  原卷積核的大小稱為score size,一般DK對scope size是沒有約束的,即可以從大小為$K{'}$的原卷積中采樣出$K2$的新卷積,然后用於大小為$K^2$區域上。這樣網絡能夠盡可能使用更大的原卷積而不會帶來太多的額外計算,論文最大的原卷積為$9\times 9$。

  如圖2,DK有兩種實現形式,全局模式和局部模式,$\mathscr{G}$為可學習的核偏移值生成器,將輸入塊轉換為內核的偏移值:

  • 全局模式$\mathscr{G}_{global}$的實現為global average pooling層+全連接層,分別用於降維以及輸出$2K^2$個偏移值。
  • 局部模式$\mathscr{G}_{local}$的實現為與目標卷積大小一樣的卷積操作,輸出為$2K2$維,最終輸出為$2K2\times 1\times 1$。

  全局模式更關注整體圖片,根據整圖進行核偏移,而局部模式則更關注圖片的局部區域,對於小物體,生成形狀特別的核(值差異大),從而使得ERF更密集,而對於大物體,生成較扁平的核(值差異小),使得ERF更廣闊。一般情況下,局部模式的自由度更高。

Computation Flow of Deformable Kernels

  圖5展示了局部DK的計算示意圖,偏移值生成器根據輸入生成偏移值,將目標卷積的點均勻平鋪在原卷積中,然后根據偏移值進行偏移,使用雙線性插值計算偏移后的權重更新目標卷積,最后使用目標卷積對輸入進行卷積輸出。

  前向時,給予原卷積$W$和學習到的卷積核偏移${ \Delta k }$,結合雙線性插值$\mathcal{B}$生成目標卷積$W^{'}$,然后使用目標卷積對輸入進行常規的卷積輸出。

  DK的反向傳播需要生成3種梯度:

  • 前一層特征圖的梯度
  • 當前層原生卷積的梯度
  • 當前層偏移值生成器的梯度

  前兩種的計算方法與普通的卷積一樣,第三種則使用公式13結合雙線性插值的計算方法。

  DK的核心是學習適應輸入的偏移值來原卷積進行采樣,從而達到可變形的目的,整體思想可能與可變形卷積類似。

  可變形卷積的計算如公式9,主要是對數據進行偏移,而有效感受域則為公式10。如前面說到的,有效感受域與輸出的采樣位置以及卷積核位置有關,這在一定程度上了解釋可變形卷積為何適用於學習形狀多變的目標。

  假設同時對數據和核進行偏移,輸出的計算以及有效感受域的計算如公式11,盡管兩種方法的目的是類似的,但在實際中發現,兩種方法協作能夠帶來很好更好的效果。

Experiments


  實驗主要針對深度卷積(depthwise convolutions)進行優化,內核偏移不能超過越過score size。基礎模型為ResNet-50-DW和MobileNetV2,對比實驗加入條件卷積(Conditional Convolutions)和可變形卷積(Deformable Convolutions)的對比。

Image Classification

Object Detection

What do Deformable Kernels Learn?

  將MobileNet-V2的最后一層卷積進行t-SNE降維得到可視化結果,點的顏色為類別(10類)或bbox尺寸(10等分),對比DK和條件卷積,條件卷積學習到語義相關的特征,而DK則學習到尺寸相關的特征,這解釋了前面的實驗兩種方法同時使用效果更好。

  對不同的卷積的有效感受域進行了可視化,可變形卷積與DK都能產生類似的適應ERF,但可變形卷積傾向於更廣闊的響應,DK則傾向於集中在物體內部,兩者結合效果最佳。

CONCLUSION


  論文提出可變形卷積核(DK)來自適應有效感受域,每次進行卷積操作時都從原卷積中采樣出新卷積,是一種新穎的可變形卷積的形式,從實驗來看,是之前方法的一種有力的補充。



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

work-life balance.


免責聲明!

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



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