論文原址:https://arxiv.org/abs/1903.00621
摘要
本文提出了基於無anchor機制的特征選擇模塊,是一個簡單高效的單階段組件,其可以結合特征金字塔嵌入到單階段檢測器中。FSAF解決了傳統基於anchor機制的兩個限制:(1)啟發式的特征選擇(2)overlap-based anchor采樣。FSAF的通用解釋是將在線特征選擇應用於與anchor無關的分支的訓練上。即無anchor的分支添加到特征金字塔的每一層,從而可以以任意層次對box進行編碼解碼。訓練過程中,將每個實例動態的放置在最適合的特征層次上。在進行inference時,FSAF可以結合帶anchor的分支並行的輸出預測結果。FSAF主要包含無anchor分支的實現及在線特征選擇兩部分。FSAF結合RetinaNet在COCO檢測任務上實現更高的准確率及速度,獲得了44.6%的mAP,超過了當前存在的單階段檢測網絡。
介紹
目標檢測中存在尺寸變化的問題,為了實現尺寸不變性,目前流行的檢測網絡都構建特征金字塔,同時,金字塔的每層都可以並行的進行預測輸出。另外,anchor可以更進一步的解決尺寸變化的問題。anchor框的作用是將所有可能的實例框的連續空間離散化為一些預定義尺寸,及寬高比的有限數量的框。實例框與anchor box基於IOU進行匹配。較大的anchor一般作用於特征金字塔的頂層,小的anchor作用於金字塔的底層,這是因為金字塔的上層特征具有更加抽象的特征信息可以檢測較大的實例,而下層相反適用於檢測小的實例。如下圖所示。anchor+特征金字塔的方式取得了較好的結果。
但上述方法存在兩點限制:(1)啟發式的特征選擇(2)overlap-based的anchor 采樣 訓練時,實例通過IOU與最接近的anchor box進行匹配,同時,一個anchor box通過人為預先定義的尺寸被安排到特征層的feature map上。因此,挑選的特征完全基於臨時啟發所得。比如,一個50x50大小的小車與60x60的小車可能被歸為不同的特征層中,而40x40與50x50的通過人為定義會歸為同一個層次中。換言之,anchor機制一定程度上受到潛在的啟發因素影響。因此,用大量這樣挑選的特征訓練實例可能並不是最優的。、
本文提出的FSAF模型用於解決上述問題。該模型主要是讓實例選擇最合適的特征層次進而來優化網絡,因此,在該模型中不應該存在anchor限制特征的選擇。本文以無anchor機制的方法對分類及回歸參數進行學習。網絡結構如下圖
在特征金字塔的每一層構建一個無anchor的分支,並獨立於基於anchor的分支。無anchor分支也包含分類與回歸兩個子網絡。一個實例可以被放到任意層的無anchor分支上。訓練時,基於實例的內容而不是實例框的大小動態的為每個實例選擇最適合的特征層次。選擇后的特征用於檢測相應的實例。inference時,FASA可以單獨預測結果或者結合anchor-based分支。FSAF與backbone無關,同時可以應用在具有特征金字塔的單階段檢測中。此外,anchor-free分支與在線特征選擇可以多種多樣。
FSAF
(1)介紹如何創建anchor-free分支(2)產生anchor-free分支的監督信號(3)如何為每個實例動態選擇特征。(4)如何聯合訓練anchor分支及anchor-free分支。
網絡結構
基於RetinaNet+FSAF的網絡結構如下圖,RetinaNet由一個backbone網絡及兩個任務明確的自網絡組成。特征金字塔基於backbone進行構建,P3~P7,金字塔的每一層用於檢測物體的不同尺寸。在每層Pl的后面添加分類及回歸子網絡,二者都為全卷積網絡。分類網絡預測每個位置的A個anchor及K個類別的分數值,回歸分支預測每個anchor框距離最近實列的偏差值,在RetinaNet的輸出端,FSAF在每層引入了額外的兩層卷積層,分別用於基於anchor-free分支的分類及回歸。一個3x3XK的卷積層添加到分類分支的輸出,后接sigmoid函數,與基於anchor分支的部分相互平行,其預測目標物在每個位置上K個類別的概率值。相似的,3x3x4的卷積層添加到回歸分支的輸出,與anchor-based分支的部分相呼應,其后接ReLU函數。其作用是以anchor-free的方式預測框的偏移量。anchor-based與anchor-free共享每層特征以多任務的方式進行運作。
GroundTruth and Loss
對於給定的一個實例,我們知道其類別k,及bounding box坐標,在訓練時,該實例可以被放到任意一層中。定義b在Pl層上的映射為
,比如,
,同時定義了有效區域
及忽略區域
作為
的比例區域,其通過比例系數
及
進行成比例的縮放,如下,本文分別設置為0.2及0.5.一個小車的groundtruth生成例子如下。
分類的輸出
ground-truth針對分類的輸出為K個maps,每個map對應一個類別。實例通過三種方式影響第K個ground truth map,首先,有效區域是正樣本區域,通過在“car”這個類別的Map對應區域覆蓋一個白色區域,代表該實例的存在。而忽略區域
,即上圖的灰色區域,該區域內的像素在進行網絡的反向傳播時不參與貢獻。最后,ignore 區域的相鄰層的區域
特征也是被看作是忽略的,如果同一層中有兩個實例發生了重疊,則以小區域的優先級較高。而ground truth map剩下的區域為負樣本,用0填充。應用了Focal loss,
,
anchor free分支的總損失是圖像中所有非忽略區域的focal loss的和,同時通過有效區域內的像素個數來進行正則化處理。
框回歸的輸出
回歸輸出的ground truth是與類別無關的4個offset maps,實例只作用於offeset maps上的有效區域,對於該區域內的每個像素,用一個四維的向量表示映射框。
,
,分別代表當前像素與上,左,下,右邊的距離。該向量做了一個正則化處理
,分別作用於四個offset maps中的每一個,其中,S根據經驗設置為4.0,超出有效框的位置為ignore 區域,即灰色區域,該區域的梯度值被忽略。anchor-free回歸分支的總損失為所有有效框區域IOU損失的平均值。
在進行Inference時,需要將分類及回歸分支的預測結果進行解碼,假設對於某個位置(i,j),預測的偏移量為,則預測得到的距離為
,同時預測得到的映射框的左上角及右下角的位置為
然后進一步通過進行縮放得到最終的預測框。某個位置的分數及類別可以通過在類別輸出maps上計算該位置對應類別的K維向量的最大值獲得。
在線特征選擇
anchor-free分支可以利用任意特征金字塔的體征對實例進行學習。本文基於實例的內容而不是實例的大小來確定適合的某一層金字塔特征。對於給定實例I,定義在特征金字塔某層的損失為,通過計算有效區域的平均focal loss及Iou損失得到。損失定義如下
下圖展示了在線特征選擇過程。首先,實例I通過特征金字塔的每一層。然后,基於上式計算所有anchor-free分支的和,最好的層的定義是所有的損失最小,則用該層特征學習實例。如等式。
訓練時,根據遇到的instance動態的調整選擇的特征。選擇出來的特征對實例建模是最優的,其損失可以使特征空間的邊界更低。在進行Inference時,並不進行在線特征選擇,這是因為大部分合適的特征層會輸出較高的confidence scores。
聯合training 及 inference
基於RetinaNet時,本文結合了anchor-based分支,將該分支作為原始的,同時,所有參數都不發生變化。
Inference:FSAS模型在全卷積的RetinaNet網絡上增加了幾層卷積網絡,對於anchor-free分支,通過設定閾值0.05來解碼每層前1k個位置的box預測。最后通過0.5的NMS結合anchor-based分支的結果來獲得最終的預測結果。
Initialization:backbone 網絡在ImageNet1k上進行預訓練。FSAF中的卷積層偏差初始化為,權重初始化為
的高斯分布,代表在訓練剛開始時,每個像素位置處預測分數值的大小,本文設置其值為0.01,對於回歸分支的初始化偏差設置為b=0.1及高斯分布的權重。初始化可以使網絡在開始時保持穩定,防止較大的損失產生。
Optimization:整體優化損失函數為,分別代表anchor-based的所有損失,及anchor-free分支的分類及回歸損失,控制系數
,控制anchor-free分支的權重,本文設置為0.5,基於SGD優化,8塊GPU,每張卡訓練2張圖片,迭代90k,初始學習率為0.01,在60k及80k步時衰減10倍,權重衰減為0.0001動量為0.9.
實驗
Reference
[1] C. Bhagavatula, C. Zhu, K. Luu, and M. Savvides. Faster than real-time facial alignment: A 3d spatial transformer network
approach in unconstrained poses. In The IEEE International Conference on Computer Vision (ICCV), Oct 2017.1
[2] N. Bodla, B. Singh, R. Chellappa, and L. S. Davis. Softnmsimproving object detection with one line of code. In
Computer Vision (ICCV), 2017 IEEE International Conference on, pages 5562–5570. IEEE, 2017. 8
[3] Z. Cai and N. Vasconcelos. Cascade r-cnn: Delving into high quality object detection. arXiv preprint arXiv:1712.00726,2017. 8
[4] J. Dai, H. Qi, Y. Xiong, Y. Li, G. Zhang, H. Hu, and Y. Wei.Deformable convolutional networks. In Computer Vision (ICCV), 2017 IEEE International Conference on, pages 764–773. IEEE, 2017. 8