ECCV | 數(shù)據(jù)高效的Transformer目標(biāo)檢測(cè)器
Detection Transformer于2020年ECCV被提出,作為一種新興的目標(biāo)檢測(cè)方法,Detection Transformers以其簡(jiǎn)潔而優(yōu)雅的框架取得了越來(lái)越多的關(guān)注。本工作由京東探索研究院和中科大聯(lián)合完成。
01
研究動(dòng)機(jī)
Detection Transformer的開(kāi)山之作是DETR[1],在常用的目標(biāo)檢測(cè)數(shù)據(jù)集COCO[2]上,DETR取得了比Faster RCNN[3]更好的性能,但其收斂速度顯著慢于基于CNN的檢測(cè)器。為此,后續(xù)的工作大多致力于提升DETR的收斂性[4,5,6,7]。在COCO數(shù)據(jù)集上這些后續(xù)方法能夠在訓(xùn)練代價(jià)相當(dāng)?shù)那闆r下取得比Faster RCNN更好的性能,表現(xiàn)出了Detection Transformers的優(yōu)越性。
圖1:不同目標(biāo)檢測(cè)模型在數(shù)據(jù)量充足的COCO和小數(shù)據(jù)集Cityscapes上的性能對(duì)比,模型名稱下方的數(shù)字表示訓(xùn)練周期數(shù)。
目前的研究似乎表明Detection Transformers能夠在性能、簡(jiǎn)潔性和通用性等方面全面超越基于CNN的目標(biāo)檢測(cè)器。但我們研究發(fā)現(xiàn),只有在COCO這樣訓(xùn)練數(shù)據(jù)豐富(約118k訓(xùn)練圖像)的數(shù)據(jù)集上Detection Transformers能夠表現(xiàn)出性能上的優(yōu)越,而當(dāng)訓(xùn)練數(shù)據(jù)量較小時(shí),大多數(shù)Detection Transformers的性能下降顯著。如圖1所示,在常用的自動(dòng)駕駛數(shù)據(jù)集Cityscapes[8](約3k訓(xùn)練圖像)上,盡管Faster RCNN能夠穩(wěn)定的取得優(yōu)良的性能,大多數(shù)Detection Transformers的性能顯著下降。并且盡管不同Detection Transformers在COCO數(shù)據(jù)集上性能差異不到2AP,它們?cè)谛?shù)據(jù)集Cityscapes上的性能有大于15AP的顯著差異。
這些發(fā)現(xiàn)表明Detection Transformers相比于基于CNN的目標(biāo)檢測(cè)器更加依賴標(biāo)注數(shù)據(jù)(data hungry)。然而標(biāo)注數(shù)據(jù)的獲得并非易事,尤其是對(duì)于目標(biāo)檢測(cè)任務(wù)而言,不僅需要標(biāo)出多個(gè)物體的類別標(biāo)簽,還需要準(zhǔn)備的標(biāo)出物體的定位框。同時(shí),訓(xùn)練數(shù)據(jù)量大,意味著訓(xùn)練迭代次數(shù)多,因此訓(xùn)練Detection Transformers需要消耗更多的算力,增加了碳排放。可見(jiàn),要滿足現(xiàn)有Detection Transformers的訓(xùn)練要求需要耗費(fèi)大量的人力物力。
02
消融探究
表1:從SparseRCNN(表中縮寫為SRCN)到DETR的模型轉(zhuǎn)化
為了尋找影響Data-efficiency的關(guān)鍵因素,我們將data efficient的RCNN逐步轉(zhuǎn)化為data hungry的Detection Transformer檢測(cè)器,來(lái)消融不同設(shè)計(jì)的影響。值得一提的是,ATSS[9]和Visformer[10]采用了類似的模型轉(zhuǎn)化實(shí)驗(yàn),但ATSS旨在尋找anchor free檢測(cè)器和anchor-based檢測(cè)器之間的本質(zhì)區(qū)別,Visformer旨在尋找對(duì)分類任務(wù)有利的transformer backbone結(jié)構(gòu),而我們致力于尋找影響Detection Transformers數(shù)據(jù)效率的主要因素。
為了從模型轉(zhuǎn)化中獲得insightful的結(jié)果,我們需要選擇合適檢測(cè)器展開(kāi)實(shí)驗(yàn)。綜合一下因素,我們選擇Sparse RCNN和DETR來(lái)展開(kāi)實(shí)驗(yàn):(1)它們分別是RCNN和Detection Transformer中有代表性的檢測(cè)器;(2)二者有很多相似的地方,比如相同的優(yōu)化器、標(biāo)簽匹配、損失設(shè)計(jì)、數(shù)據(jù)增強(qiáng)和端到端等,這有利于我們盡可能排除其他影響因素的干擾,專注于核心的區(qū)別;(3)二者在data efficiency上存在顯著差異。模型轉(zhuǎn)化過(guò)程如表1所示,接下來(lái),我們挑選模型轉(zhuǎn)化中的關(guān)鍵步驟進(jìn)行介紹:
去除FPN。由于CNNs具有局部性,F(xiàn)PN中能夠以較小的計(jì)算代價(jià)實(shí)現(xiàn)多尺度特征融合,從而在少量數(shù)據(jù)的情況下提升目標(biāo)檢測(cè)的性能。對(duì)比之下,DETR中的attention機(jī)制具有全局感受野,導(dǎo)致其在高分辨率的特征圖上需要消耗大量的運(yùn)算資源,因此在DETR上做多尺度特征的建模往往是難以實(shí)現(xiàn)的。在本步中,我們?nèi)コ齊CNN中的FPN,并且與DETR一致,我們僅將backbone中32倍下采樣的特征送入檢測(cè)頭做RoI Align和后續(xù)解碼和預(yù)測(cè)。和預(yù)期的一樣,去除FPN的多尺度建模作用,在50代的訓(xùn)練周期下模型性能下降顯著by 7.3 AP。
加入Transformer編碼器。在DETR中,transformer編碼器可以看作是檢測(cè)器中的neck,用來(lái)對(duì)backbone提取的特征做增強(qiáng)。在去除FPN neck后,我們將DETR的編碼器加入模型得到表1中的Net3。有趣的是,Net3在50個(gè)訓(xùn)練周期下的性能下降,而在300個(gè)訓(xùn)練周期下性能有所提升。我們猜想像ViT[11]一樣,****中的attention具有平方復(fù)雜度,因此需要更長(zhǎng)的訓(xùn)練周期來(lái)收斂并體現(xiàn)其優(yōu)勢(shì)。
將動(dòng)態(tài)卷積替換為自注意力機(jī)制。SparseRCNN中一個(gè)非常有趣的設(shè)計(jì)是****中的動(dòng)態(tài)卷積,它的作用和DETR中的cross-attention作用十分相似,即根據(jù)圖像特征和特定object candidate的相似性,自適應(yīng)地將圖像中的信息聚合到object candidate中。在本步驟中,我們將動(dòng)態(tài)替換為cross-attention,對(duì)應(yīng)的結(jié)果如表中Net4所示。反直覺(jué)的,參數(shù)量大并不一定會(huì)使模型更依賴數(shù)據(jù)。事實(shí)上,含有大量參數(shù)的動(dòng)態(tài)卷積能夠比參數(shù)量很小的cross-attention表現(xiàn)出了更好的數(shù)據(jù)效率。
去除RoIAlign。SparseRCNN和RCNNs family中的其他檢測(cè)器一樣根據(jù)目標(biāo)檢測(cè)的候選框?qū)D像中指定區(qū)域的特征做采樣,再基于采樣后的特征做預(yù)測(cè)。對(duì)比之下,DETR中content query直接從圖像的全局特征中聚合特定物體的信息。在本步驟,我們?nèi)コ齊oI Align操作。可以看到,模型的性能發(fā)生了顯著下降。我們猜想從全局特征中學(xué)習(xí)如何關(guān)注到包含特定物體的局部區(qū)域是non-trivial的,因此模型需要從更多的數(shù)據(jù)和訓(xùn)練周期中學(xué)習(xí)到locality的特性。而在見(jiàn)過(guò)的數(shù)據(jù)量小的情況下性能會(huì)顯著下降。
去除初始的proposal。最后,DETR直接預(yù)測(cè)normalized檢測(cè)框中心坐標(biāo)和寬度和高度,而RCNNs預(yù)測(cè)gt檢測(cè)框相較于初始proposal檢測(cè)框的offsets。在本步驟中,我們消除此差異。這一微小的區(qū)別使得模型性能顯著下降,我們猜想這是因?yàn)槌跏嫉膒roposal能夠作為一種空間位置上的先驗(yàn),幫助模型關(guān)注特定的物體區(qū)域,從而降低了從大量數(shù)據(jù)中學(xué)習(xí)關(guān)注局部區(qū)域的需要。
總結(jié):綜上,可以看出以下因素對(duì)模型的data efficiency其關(guān)鍵作用:(1)從局部區(qū)域的稀疏特征采樣,例如采用RoIAlign;(2)多尺度特征融合,而這依賴于稀疏特征采樣使得其運(yùn)算量變得可接受;(3)相較于初始的空間位置先驗(yàn)作預(yù)測(cè)。其中(1)和(3)有利于模型關(guān)注到特定的物體區(qū)域,緩解從大量數(shù)據(jù)中學(xué)習(xí)locality的困難。(2)有利于充分利用和增強(qiáng)圖像的特征,但其也依賴于稀疏特征。
值得一提的是,在DETR family中,Deformable DETR[4]是一個(gè)特例,它具有較好的數(shù)據(jù)效率。而我們基于Sparse RCNN和DETR的模型轉(zhuǎn)化實(shí)驗(yàn)得到的結(jié)論同樣也能夠說(shuō)明為什么Deformable DETR的具有較好的數(shù)據(jù)集效率:Multi-scale Deformable Attention從圖像局部區(qū)域內(nèi)做特征的稀疏采樣,并運(yùn)用了多尺度特征,同時(shí)模型的預(yù)測(cè)是相對(duì)于初始的reference point的。
03
我們的方法
模型增強(qiáng)
圖2:我們的數(shù)據(jù)高效Detection Transformer模型結(jié)構(gòu)。我們力求在盡可能少改動(dòng)原模型的情況下,提升其數(shù)據(jù)效率。模型的backbone、transformer編碼器和第一個(gè)****層均未變化
局部特征采樣。從模型轉(zhuǎn)化中的分析中可以看出,從局部物體區(qū)域做特征采樣對(duì)實(shí)現(xiàn)數(shù)據(jù)效率是至關(guān)重要的。幸運(yùn)的是,在Detection Transformer中,由于Deep Supervision[12]的存在,每一層****層中都為我們提供了物體檢測(cè)框的信息。因此,我們可以在不引入新的參數(shù)的情況下,借助這些物體定位框來(lái)做局部特征采樣。盡管可以采用更成熟的特征采用方法,我們采用最常用的RoI Align。從第二層****層開(kāi)始,我們借助前一層****的輸出來(lái)做稀疏特征采樣。
迭代式預(yù)測(cè)和初始參考點(diǎn)。此外,Detection Transformer中級(jí)聯(lián)的結(jié)構(gòu)很自然地適合使用迭代式的檢測(cè)框refinement來(lái)提升檢測(cè)的性能。我們?cè)谀P娃D(zhuǎn)換中的實(shí)驗(yàn)也表明,迭代式的預(yù)測(cè)以及相對(duì)于初始的空間參考做預(yù)測(cè)有利于實(shí)現(xiàn)更準(zhǔn)確的目標(biāo)檢測(cè)。為此,我們引入檢測(cè)框的迭代式refinement和初始參考點(diǎn)。
多尺度特征融合。多尺度特征的運(yùn)用有利于特征的高效利用,能夠在數(shù)據(jù)量小的情況下提升檢測(cè)性能。而我們的稀疏特征采樣也使得在Detection Transformer中使用多尺度特征成為可能。盡管更成熟的多尺度融合技術(shù)可能被使用,我們僅僅利用bbox作為指導(dǎo),對(duì)不同尺度的特征做RoIAlign,并將得到的序列concatenate在一起。
標(biāo)簽增強(qiáng)
圖3:(a)現(xiàn)有Detection Transformer的標(biāo)簽分配方式;(b)使用標(biāo)簽增強(qiáng)后的標(biāo)簽分配。圓圈和矩形框分別表示模型的預(yù)測(cè)和圖片上的物體標(biāo)注。通過(guò)復(fù)制橙色方框表示的物體標(biāo)注,藍(lán)色圓圈表示的模型預(yù)測(cè)也在標(biāo)簽分配中匹配到了正樣本,因此得到了更豐富的監(jiān)督信號(hào)。
盡管一對(duì)一的標(biāo)簽匹配形式簡(jiǎn)單,并能夠避免去重過(guò)程,但也使得在每次迭代中,只有少量的檢測(cè)候選能夠得到有效的監(jiān)督。模型不得不從更大量的數(shù)據(jù)或者更多的訓(xùn)練周期中獲得足夠的監(jiān)督信號(hào)。為了解決這一問(wèn)題,我們提出一種標(biāo)簽增強(qiáng)策略,通過(guò)在二分圖匹配過(guò)程中重復(fù)正樣本,來(lái)為Detection Transformer提供更豐富的監(jiān)督信號(hào),如圖3所示。
在實(shí)現(xiàn)過(guò)程中,我們考慮兩種不同的方式來(lái)復(fù)制正樣本的標(biāo)簽,即(1)固定重復(fù)次數(shù)(Fixed Repeat Time):我們對(duì)所有正樣本標(biāo)簽重復(fù)相同的次數(shù);(2)固定正負(fù)樣本標(biāo)簽的比例(Fixed positive-negative ratio):我們對(duì)正樣本的標(biāo)簽進(jìn)行重復(fù)采樣,最終保證標(biāo)簽集合中正樣本的比例固定。默認(rèn)的,我們采用固定重復(fù)兩次的標(biāo)簽增強(qiáng)方式。
04
實(shí)驗(yàn)
表2:不同方法在小數(shù)據(jù)集Cityscapes上的性能比較
在本部分,我們首先將我們的方法和現(xiàn)有的Detection Transformer進(jìn)行比較。如表2所示,大部分Detection Transformer面臨數(shù)據(jù)效率低下的問(wèn)題。而我們的DE-CondDETR在對(duì)CondDETR模型做微小改動(dòng)的情況下能夠取得和Deformable DETR相當(dāng)?shù)臄?shù)據(jù)效率。而輔助以標(biāo)簽增強(qiáng)提供的更豐富的監(jiān)督,我們的DELA-CondDETR能夠取得比Deformable DETR更佳的性能。同樣的,我們的方法也能夠與其他Detection Transformer結(jié)合來(lái)顯著提升其data efficiency,例如我們的DE-DETR和DElA-DETR能夠在以僅僅50周期取得比DETR 500個(gè)周期要顯著優(yōu)越的性能。
圖4:不同方法在下采樣的COCO數(shù)據(jù)集上的性能比較。橫軸表示數(shù)據(jù)下采樣的比例(對(duì)數(shù)scale)。
此外我們對(duì)COCO 2017中的訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練圖像0.1,0.05,0.02和0.01倍的采樣,來(lái)觀察模型在不同數(shù)據(jù)量下的性能。如圖4所示,在不同的訓(xùn)練數(shù)據(jù)量下,我們的方法始終能夠取得顯著優(yōu)于基線方法的性能。特別的,僅用0.01倍的數(shù)據(jù)DELA-DETR的性能顯著優(yōu)于使用五倍數(shù)據(jù)的DETR基線。類似的,DELA-CondDETR性能始終優(yōu)于用兩倍數(shù)據(jù)訓(xùn)練的CondDETR基線。
表3:對(duì)模型中不同組件的消融實(shí)驗(yàn)
我們首先消融我們方法中各個(gè)模塊的作用,如表3所示。使用局部特征采樣和多尺度特征均能夠顯著提升模型的性能,分別帶來(lái)8.3 AP和6.4 AP的提升。此外,使用標(biāo)簽增強(qiáng)能夠進(jìn)一步帶來(lái)2.7 AP的性能提升。并且單獨(dú)使用標(biāo)簽增強(qiáng)也能夠帶來(lái)2.6的性能提升。
對(duì)標(biāo)簽增強(qiáng)的消融研究
如方法部分中討論的,我們考慮了兩種標(biāo)簽增強(qiáng)策略。包括固定重復(fù)次數(shù)和固定正負(fù)樣本比例。在本部分,我們對(duì)這兩種策略進(jìn)行消融。如上表中左表所示,使用不同的固定重復(fù)倍數(shù)均能夠提升DE-DETR的性能,但隨重復(fù)次數(shù)增加,性能提升呈下降趨勢(shì)。我們默認(rèn)采用重復(fù)正樣本標(biāo)簽2次。此外,如右表所示,盡管使用不同正負(fù)樣本比例均能帶來(lái)性能提升,在正負(fù)樣本比例為1:3時(shí),其取得的性能最佳,有趣的是,這也是RCNN系列檢測(cè)器如Faster RCNN中最常用正負(fù)樣本采樣比例。
在訓(xùn)練數(shù)據(jù)充足的COCO 2017上的性能比較,所有模型都訓(xùn)練50個(gè)周期
盡管以上實(shí)驗(yàn)說(shuō)明了我們的方法能夠在數(shù)據(jù)量有限的情況下顯著提升模型性能,它并不能表明我們的方法在數(shù)據(jù)量充足時(shí)依然有效。為此,我們?cè)跀?shù)據(jù)量充足的COCO2017上測(cè)試我們方法的性能。有趣的是,我們的方法不僅不會(huì)降低模型在COCO 2017上的性能,還能帶來(lái)不小的提升。具體來(lái)說(shuō),DELA-DETR和DELA-CondDETR分別相較于它們的baseline提升8.1AP和2.8AP。
圖5:不同模型在Cityscapes數(shù)據(jù)集上的收斂曲線,橫軸表示訓(xùn)練周期數(shù),縱軸表示mAP
最后,為了對(duì)本文方法帶來(lái)的性能提升有一個(gè)直觀的感受,我們提供了不同DETR變種在Cityscapes數(shù)據(jù)集上的收斂曲線,如圖5所示??梢钥闯?,我們的方法能夠以更少的訓(xùn)練代價(jià)取得更加優(yōu)越的性能,展示了其優(yōu)越的數(shù)據(jù)效率。更多實(shí)驗(yàn)結(jié)果請(qǐng)參考原文及其附加材料。
05
總結(jié)
在本文中,我們指出了Detection Transformer數(shù)據(jù)效率低下的問(wèn)題,并通過(guò)逐步的模型轉(zhuǎn)化找了影響數(shù)據(jù)效率的關(guān)鍵因素。隨后,我們以盡可能小的模型改動(dòng)來(lái)大幅提升現(xiàn)有Detection Transformer的數(shù)據(jù)效率,并提出一種標(biāo)簽增強(qiáng)策略進(jìn)一步提升其性能。隨著Transformer在視覺(jué)任務(wù)中越發(fā)流行,我們希望我們的工作能夠激發(fā)社區(qū)探究和提升Transformer在不同任務(wù)上的數(shù)據(jù)效率。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。