Searching Parameterized AP Loss for object detection 為目標檢測搜索參數化平均準確率損失函數
背景介紹: 損失函數(loss function)在基于深度學習的目標檢測領域一直起著至關重要的作用。對于目標檢測任務一般使用的則是一個同時考慮定位和分類子任務的評估指標:平均準確率(AP)。然而由于AP計算的不可導性,傳統的目標檢測網絡對兩個子任務采用分離的可導損失函數,這一不對齊問題導致了網絡表現的退化。為了解決該問題,一些現有的工作人為地設計了一系列AP的替代損失函數,這一過程一般需要專業知識且結果通常仍是次優的。本工作中我們提出參數化平均準確率損失函數(Parameterized AP Loss),使用參數化損失函數替代AP計算中的不可導部分,將不同的AP近似方法統一到一個參數化函數族下,之后利用搜索算法搜索最優的參數形式。我們的貢獻有以下幾點:
通過數學上推導AP計算并引入可導的參數化損失函數,提出的Parameterized AP Loss可以在一個統一的形式下表示大量的可能的AP近似,該近似式即可作為一個同時優化目標檢測任務的定位子任務與分類子任務的損失函數。
不同于手工設計AP損失函數或損失函數梯度的近似,我們的方法框架通過在一個目標檢測網絡訓練的搜索任務上迭代優化,自動地搜索損失函數中參數化函數族需要的最優參數。
基于不同的目標檢測網絡結構的實驗證明,搜索到的Parameterized AP Loss的表現可以穩定地超過一系列現有的損失函數。
知識蒸餾是一種模型壓縮的有效手段,但是適用于目標檢測的知識蒸餾方法卻很少被研究。而且,我們通過實驗發現,在分類任務上主導的soft label蒸餾,并不適用于目標檢測,只能帶來很小的提升。因此,設計一種適用于目標檢測的知識蒸餾方法很有必要。
//www.zhuanzhi.ai/paper/b867f1778005b17a1547c8f74353158b
我們從特征、網絡預測和NMS之后的檢測結果這三方面,詳細比較了教師檢測器和學生檢測器的差異到底在哪里。我們發現,在一些困難樣本上,教師模型和學生模型的表現非常不一致,它們最終的檢測結果(after NMS),往往是從不同的anchor進行預測。這個現象表明,教師網絡和學生網絡在anchor的排序上存在差異。教師網絡有更強的表征能力,能更加準確地建模出anchor之間的語義關系,讓檢測結果從語義信息最強的anchor輸出,并能抑制其他弱一些的anchors;而學生網絡在這方面,會表現得差一些。基于這個發現,我們設計了一種新的知識蒸餾方法:Rank Mimicking (排序蒸餾)。
特征蒸餾的目的,是想讓學生模型能夠產生和教師一樣準確的預測。但是,通過可視化,我們發現,在一些區域上,盡管學生模型的特征和教師模型的特征,有很大不同(如下圖第二行黃框所示),但在這些區域,學生模型自己也可以產生準確的預測,并不需要依賴教師模型的指導(如下圖第一行黃框所示)。這個現象就導致了特征蒸餾過程中,有很多無效的梯度,并不能幫助學生模型產生準確的預測。因此,我們提出了Prediction-guided feature imitation,利用預測的差異來反向引導特征蒸餾,讓特征蒸餾直接拉近學生預測和教師預測之間的距離。
在識別和檢測等實質性視覺任務中,Vision Transformer顯示了強大的視覺表示能力,因此在手工設計更有效的架構方面吸引了快速增長的努力。在本文中,我們提出使用神經體系結構搜索來自動化這個過程,不僅搜索體系結構,而且搜索搜索空間。其核心思想是通過使用權重共享超級網絡計算出的E-T誤差,逐步演化出不同的搜索維度。根據空間搜索過程,給出了一般視覺變換器的設計指南,并進行了廣泛的分析,促進了對視覺變換器的認識。值得注意的是,在ImageNet上進行評估時,來自搜索空間的搜索模型S3 (Search Space的簡稱)的性能優于最近提出的模型,如Swin、DeiT和ViT。S3在目標檢測、語義分割和視覺問題回答方面的有效性也得到了說明,說明了它對下游視覺和視覺語言任務的通用性。代碼和模型可以在//github.com/microsoft/Cream上找到。
論文標題:Rank & Sort Loss for Object Detection and Instance Segmentation
論文鏈接://arxiv.org/abs/2107.11669
代碼鏈接:
漲點神器!RS Loss:新損失函數!可助力現有目標檢測和實例分割網絡漲點,如應用于Cascade R-CNN、SOLOv2等,優于QFL、AP和Focal Loss等損失,代碼剛剛開源!
本文提出 Rank & Sort (RS) Loss,作為基于ranking的損失函數來訓練深度目標檢測和實例分割方法(即視覺檢測器)。RS Loss 監督分類器,這些方法的一個子網絡,將每個positive 排名高于所有負面,并根據(wrt.)它們的連續定位質量(例如 Intersection-over-Union - IoU)對它們之間的positive 進行排序.為了解決排序和排序的不可區分性,我們重新制定了錯誤驅動更新與反向傳播的結合作為身份更新,這使我們能夠對正樣本中的新排序錯誤進行建模。使用 RS 損失,我們顯著簡化了訓練:(i)由于我們的排序目標,分類器優先考慮正數,而無需額外的輔助頭(例如,對于中心度、IoU、mask-IoU),(ii)由于其排名 -基于性質,RS 損失對類不平衡具有魯棒性,因此,不需要采樣啟發式,并且(iii)我們使用無調整任務平衡系數來解決視覺檢測器的多任務性質。使用 RS 損失,我們僅通過調整學習率來訓練七個不同的視覺檢測器,并表明它始終優于基線:例如我們的 RS 損失在 COCO 數據集上將 (i) Faster R-CNN 提高了約 3 個框 AP 和 aLRP 損失(基于排名的基線)提高了約 2 個框 AP,(ii)具有重復因子采樣(RFS)的 Mask R-CNN 提高了 3.5 LVIS 數據集上的掩碼 AP(稀有類約為 7 個 AP);并且也優于所有同行。
由于距離度量學習與深度神經網絡的無縫結合,近年來深度度量學習受到了廣泛的關注。許多人致力于設計不同的基于成對的角損失函數,將嵌入向量的大小和方向信息解耦,保證訓練和測試測度的一致性。但是,這些傳統的角度損失并不能保證在訓練階段所有的樣本嵌入都在同一個超球面上,這會導致批量優化時梯度不穩定,影響嵌入學習的快速收斂。本文首先研究了嵌入范數對角距離深度度量學習的影響,然后提出了一個球面嵌入約束(SEC)來規范范數的分布。SEC自適應地調整嵌入,以落在同一個超球體上,并執行更平衡的方向更新。在深度度量學習、人臉識別和對比自監督學習方面的大量實驗表明,基于SEC的角空間學習策略顯著提高了最先進的性能。