論文提出DCNv2,不僅對DCNv1的結構進行了改進,還使用了有效的蒸餾學習策略,使得性能有很大的提升,各個方面都值得借鑒
來源:曉飛的算法工程筆記 公眾號
論文: Deformable ConvNets v2: More Deformable, Better Results
Introduction
在提出可變形卷積DCNv1后,論文提出新版本的可變形卷積DCNv2,通過兩種互補的策略以及蒸餾學習來增強模型的性能:
- 增加可變形卷積的層數,使得DCNv2擁有更強的幾何變換的學習能力,能夠進行准確地預測。
- 在可變形卷積模塊中增加調制機制,每次采樣不僅進行偏移,還會使用學習到的權重進行調節,能夠進行更復雜的幾何變換學習。
- 為了充分榨干DCNv2提升的能力,借用知識蒸餾的方法進行訓練,以R-CNN作為指導網絡(teacher network),在訓練時模仿其特征值。
Analysis of Deformable ConvNet Behavior
Spatial Support Visualization
論文從3個互補的視角來了解圖像區域對輸出的影響:
- Effective sampling / bin locations,通過計算輸出值對應像素位置上的梯度來表示像素的重要程度。
- Effective receptive fields,理論感受域內的像素對輸出的貢獻是不一樣的,貢獻可以通過有效感受域來表示,通過計算輸出值對應每個像素的值擾動時的梯度得出,具體可以看參考內容文章。
- Error-bounded saliency regions,通過逐步掩蓋圖片的部分區域並計算輸出值,找到與整圖輸出值差異在閾值范圍內的最小顯著區域。
Spatial Support of Deformable ConvNets
對conv5階段的最后一層輸出進行了上述的3個視角計算,圖1從左往右目標的逐漸變大,每個子圖從上往下分別為關於綠點輸出的3種指標的可視化結構,可以得出以下結論:
- 得益於深度卷積網絡強大的表達能力,常規卷積能在一定程度上對幾何變換進行建模學習,主要受卷積權重的影響。
- 通過引入可變形卷積,綜合卷積核權重以及偏移值,模型能夠很好地對幾何變換進行建模學習,輸出關聯了更多的目標區域,但也會包含較多不相關的物體的區域。
論文繼續對RoI區域也進行了上述3個視角的計算,對於常規RoI pooling和可變形RoI pooling,目標區域內的bin對輸出的貢獻更高,在可變形RoI pooling更為明顯。但兩種方法的顯著區域同樣都不夠准確,造成有較多的額外內容干擾着輸出。
More Deformable ConvNets
Stacking More Deformable Conv Layers
由於可變形卷積能夠更好地學習幾何變換,因此大膽地將ResNet-50中的conv3、conv4和conv5中的所有$3\times 3$卷積替換成可變形卷積,共12層。DCNv1僅使用了3層,主要由於當時替換實驗是在比較簡單的VOC數據集上進行的,效果很快就飽和了,而當時在COCO上的偏移值可視化有一定的誤導性,本文補充了更准確的實驗。
Modulated Deformable Modules
為了進一步加強可變形卷積對幾何變換學習的能力,加入調制機制,可變形卷積不僅能對輸入進行偏移,還可以調整各位置輸入的權重。極端地,當權重為0則忽略該位置輸入,為模型提供了另一種調整目標區域的方式。
可調制變形卷積如公式1,$\Delta p_k$和$\Delta m_k$分別為$k$位置的可學習偏移值和權重標量,$\Delta m_k$的范圍為$[0,1]$,偏移后的值的計算依然用雙線性插值計算。$\Delta p_k$和$\Delta m_k$通過相同旁路卷積層計算,旁路輸出channel為$3K$,$K$為主干的卷積核大小,前$2K$維是每個位置的x和y偏移,后$K$維通過sigmoid層獲得每個位置的權重。旁路卷積的參數初始為0,所以$\Delta p_k$和$\Delta m_k$初始為0和0.5,學習率為主干學習率的0.1倍。
可調制的變形RoI pooling單個bin的計算如公式2,$n_k$為bin內的像素總數,$\Delta p_k$和$\Delta m_k$對應整個bin的偏移和權重。$\Delta p_k$和$\Delta m_k$通過旁路RoI pooling+2 x 1024-D fc + 3k-D fc計算,前$2K$維是歸一化的bin偏移值,與RoI區域相乘后得到最終的bin偏移值,后$K$維通過sigmoid層獲得每個bin的權重,初始化和學習率與上面的一致。
R-CNN Feature Mimicking
從圖2的Error-bounded saliency regions結果看到,不管常規卷積還是可變形卷積都會包含部分非目標區域,對最終的結果造成影響。論文通過實驗發現,可調制變形卷積雖然有更強的幾何變換建模能力,但常規的訓練沒有特定的損失,很難引導可調制變形卷積的學習。因此,考慮到性能和准確率的取舍,論文加入特征模仿(feature mimicking)引導可變形卷積生成類似R-CNN從croped圖片中提取到的特征。由於背景的內容較為復雜,特征模仿損失僅用於正樣本。
整體的訓練架構如圖3,添加額外R-CNN分支用於特征模仿,分支的結構與主干網絡類似。對於RoI區域$b$,從原圖中crop下來並Resize后送到R-CNN分支得到$14\times 14$的特征圖,再進行整圖的可調制變形RoI pooling,通過兩層全連接得到1024-D特征$f_{RCNN}(b)$,最后接$C+1$-way Sfotmax分類器預測分類結果。
特征模仿損失通過余弦相似度的計算,如公式3,$\Omega$為用於特征模仿的所有RoI區域。在訓練時,每次隨機采樣32個RPN生成的正樣本構成$\Omega$,同時計算特征模塊損失和R-CNN分支的分類交叉熵損失。RCNN分支的兩個新損失的權重為主干對應項權重的0.1倍,RCNN分支除了最后的classification head外的模塊均與主干共享。在推理時,僅使用Faster R-CNN模塊。
Experiments
Enriched Deformation Modeling
對DCNv2的兩個結構改進進行了對比實驗,表1和表2分別為短邊1000和短邊800的實驗,結合圖1和圖2的可視化結果,兩個改進都能有效地提高准確率。
R-CNN Feature Mimicking
對於特征模仿學習,僅模仿正樣本的效果最好。
Application on Stronger Backbones
Conclusion
論文提出DCNv2,不僅對DCNv1的結構進行了改進,還使用了有效的蒸餾學習策略,使得性能有很大的提升,各個方面都值得借鑒。
參考內容
- Understanding the Effective Receptive Field in Deep Convolutional Neural Networks -https://arxiv.org/pdf/1701.04128.pdf
如果本文對你有幫助,麻煩點個贊或在看唄~
更多內容請關注 微信公眾號【曉飛的算法工程筆記】