劉宇晶
摘? 要: 基于Transformer的目標(biāo)檢測(cè)方法因其突出的性能引起了眾多研究者的關(guān)注。文章從作為Neck的Transformer 和作為Backbone的Transformer兩類框架在目標(biāo)檢測(cè)領(lǐng)域的研究狀況、幾種常見模型的基本原理以及在COCO 2017 ValSet上的對(duì)比實(shí)驗(yàn)三個(gè)方面做出了綜述。
關(guān)鍵詞: 目標(biāo)檢測(cè); Transformer; 計(jì)算機(jī)視覺(jué); 深度學(xué)習(xí)
中圖分類號(hào):TP391? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ?文章編號(hào):1006-8228(2023)05-06-05
Summary of research on target detection based on Transformer
Liu Yujing
(Information Science and Engineering, Shanxi Agricultural University, Taigu, Shanxi 030801, China)
Abstract: Transformer based target detection methods have attracted the attention of many researchers due to their outstanding performance. In this paper, the research status of Transformer as Neck and Transformer as Backbone in the field of target detection, the basic principles of several common models, and the comparative experiments on COCO 2017 ValSet are summarized.
Key words: target detection; Transformer; computer vision; deep learning
0 引言
在基于深度學(xué)習(xí)的目標(biāo)檢測(cè)研究中,主要有兩種算法:?jiǎn)坞A段檢測(cè)算法和雙階段檢測(cè)算法。隨著研究者將Transformer結(jié)構(gòu)從自然語(yǔ)言處理領(lǐng)域引入到計(jì)算機(jī)視覺(jué)領(lǐng)域,Transformer 結(jié)構(gòu)打破了 CNN有限的感受野限制,憑借與Faster R-CNN相比沒(méi)有proposal、與YOLO相比沒(méi)有Anchor、與CenterNet相比沒(méi)有center也沒(méi)有NMS后處理步驟、能夠直接預(yù)測(cè)檢測(cè)框和類別的優(yōu)點(diǎn),引起了廣泛的關(guān)注[1]。
基于Transformer的圖像檢測(cè)的總體框架如圖1所示。輸入的圖像首先要經(jīng)過(guò)CNN骨干網(wǎng)絡(luò)完成特征提取工作,通過(guò)Transformer對(duì)其進(jìn)行編碼和解碼,再通過(guò)前饋網(wǎng)絡(luò)對(duì)圖像中的對(duì)象進(jìn)行預(yù)測(cè)并輸出類別邊界框。當(dāng)前基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法多數(shù)主要由Backbone(主干網(wǎng)絡(luò))、Neck和Head三部分組成。Backbone作為特征提取網(wǎng)絡(luò),主要作用是為后面網(wǎng)絡(luò)提取圖像中的特征信息,常用的Backbone主要有:VGG(16,19)、ResNet(18,50,100)等。Neck部分的主要作用是將Backbone提取的特征信息融合和增強(qiáng),然后提供給后續(xù)的Head進(jìn)行檢測(cè),常用的Neck主要有:SPP、ASPP、RFB等。Head利用之前提取的特征來(lái)預(yù)測(cè)目標(biāo)的位置和類別。最近,有大量學(xué)者將Transformer移植到目標(biāo)檢測(cè)工作中并取得了非常理想的研究結(jié)果。本文主要介紹幾種常見的作為Neck的Transformer 和作為Backbone的Transformer二維目標(biāo)檢測(cè)方法。
1 作為Neck的Transformer目標(biāo)檢測(cè)方法
Neck作為Backbone和Head的中間部分,是由一系列混合和組合圖像特征的網(wǎng)絡(luò)層組成,可以從加速收斂或提高性能的角度更好的利用Backbone提取的特征解決檢測(cè)問(wèn)題。
1.1 DETR
DEtection Transformer(DETR)是一種基于Transformer的端到端進(jìn)行目標(biāo)檢測(cè)的方法,也是最早將Transformer帶入到目標(biāo)檢測(cè)領(lǐng)域并取得較好性能的目標(biāo)檢測(cè)框架[2]。它主要由CNN主干網(wǎng)、Transformer編解碼結(jié)構(gòu)和前饋網(wǎng)絡(luò)(FFN)組成。首先,采用CNN主干網(wǎng)絡(luò)提取輸入圖像的特征。然后,將提取的特征轉(zhuǎn)換為一維特征映射,并發(fā)送給Transformer編碼器。利用多頭自注意機(jī)制和編碼器-解碼器注意機(jī)制,對(duì)尺寸均為d的N個(gè)嵌入塊進(jìn)行了轉(zhuǎn)換。最后,前饋網(wǎng)絡(luò)(FFN)完成檢測(cè)目標(biāo)類型和邊界框的預(yù)測(cè)[3]。DETR的檢測(cè)流程如圖2所示。
在COCO數(shù)據(jù)集上,DETR在AP值上表現(xiàn)效果與Faster R-CNN幾乎相當(dāng),但結(jié)構(gòu)卻得到了極大簡(jiǎn)化,DETR還可延伸到全景分割等領(lǐng)域,經(jīng)實(shí)驗(yàn)驗(yàn)證都取得了良好的收益。但是,DETR在訓(xùn)練、優(yōu)化以及小目標(biāo)檢測(cè)方面的性能還有待提高。針對(duì)這些問(wèn)題,2020年10月Zhu等人在經(jīng)過(guò)大量研究后提出一種新的方法:Deformable DETR,該方法能夠改進(jìn)DETR存在的問(wèn)題[4]。
1.2 Deformable DETR
DETR的缺陷主要有:訓(xùn)練收斂較慢、計(jì)算復(fù)雜度高、訓(xùn)練時(shí)間較長(zhǎng)以及小目標(biāo)檢測(cè)的性能較差。針對(duì)這些問(wèn)題,研究者提出Deformable DETR這一新的模型,在Deformable DETR中,最明顯的特點(diǎn)是使用(多尺度)可變形注意模塊取代了原有Transformer的注意力模塊??勺冃巫⒁饽K通常只是關(guān)注特征圖上一小部分關(guān)鍵的采樣點(diǎn)。該模塊無(wú)需FPN的幫助就可以自然地?cái)U(kuò)展到聚合多尺度特征。Deformable DETR比DETR(特別是在小物體上)可以獲得更好的性能,訓(xùn)練epoch減少到十分之一,同時(shí)小目標(biāo)檢測(cè)AP值也提升3.9%,而與 Faster RCNN相比,大目標(biāo)檢測(cè)AP值提高4.6%[4]。盡管該模型在訓(xùn)練速度方面和小目標(biāo)檢測(cè)上得到了比較明顯的改進(jìn),但在遮擋目標(biāo)的檢測(cè)上仍然需要進(jìn)一步研究提高檢測(cè)效果。
1.3 ATC/TSP
Zheng等人經(jīng)研究提出了自適應(yīng)聚類變換器ATC,該變換器的特點(diǎn)主要是:通過(guò)局部敏感哈希(LSH)方法聚類查詢特征,使注意力輸出廣播到可選原型表示的查詢和ATC作為取代預(yù)先訓(xùn)練的DETR模型的自我注意模塊,不再需要任何再訓(xùn)練。所以能夠顯著降低預(yù)訓(xùn)練DETR的計(jì)算成本,同時(shí)還能保證一定的精度[5]。
Sun等人通過(guò)測(cè)試每個(gè)Transformer層中注意力圖的稀疏性,發(fā)現(xiàn)交叉注意收斂速度慢是導(dǎo)致訓(xùn)練過(guò)程較長(zhǎng)的主要原因,在此基礎(chǔ)上提出僅采用編碼器的TSP-FCOS和TSP-RCNN[6]。實(shí)驗(yàn)結(jié)果顯示比原始DETR訓(xùn)練速度更快,準(zhǔn)確性方面也優(yōu)于DETR。
1.4 Conditional DETR
Conditional DETR將條件交叉注意機(jī)制用于快速DETR訓(xùn)練,可以緩解DETR收斂速度慢的情況[7]。它從解碼器嵌入中學(xué)習(xí)條件空間查詢,用于解碼器的多頭交叉注意。每個(gè)交叉注意頭可以聚焦于包含不同區(qū)域的波段,有效縮小不同區(qū)域的空間范圍,用于定位對(duì)象分類和幀回歸,從而緩解對(duì)內(nèi)容嵌入的依賴,簡(jiǎn)化訓(xùn)練。實(shí)驗(yàn)表明,在各種骨干網(wǎng)絡(luò)(R50、R101、DC5-R50、DC5-R101)上的收斂速度約為DETR的6.7-10倍。
1.5 SMCA
為了加速DETR的收斂,SMCA將響應(yīng)限制在初始估計(jì)邊界框附近的較高位置,回歸并感知DETR中的共同注意,是一種空間調(diào)制協(xié)同注意(SMCA)機(jī)制[8]。該機(jī)制通過(guò)用SMCA代替DETR中的共同注意機(jī)制來(lái)提高模型的收斂速度。算法在COCO數(shù)據(jù)集上經(jīng)過(guò)實(shí)驗(yàn)證明能夠?qū)崿F(xiàn)45.6%的精確度。
1.6 UP-DETR
Dai等人提出一種針對(duì)DETR的無(wú)監(jiān)督預(yù)訓(xùn)練轉(zhuǎn)換器(UP-DETR),基本思想是在圖像中隨機(jī)選擇query patch對(duì)Transformer進(jìn)行預(yù)訓(xùn)練,用來(lái)檢測(cè)和預(yù)測(cè)給定圖像中query patch的邊界框,該算法主要解決多任務(wù)學(xué)習(xí)和多查詢定位兩個(gè)問(wèn)題,經(jīng)該團(tuán)隊(duì)在COCO等數(shù)據(jù)集上實(shí)驗(yàn)驗(yàn)證,在收斂速度和精度上UP-DETR都有效提高了DETR的性能[9]。
1.7 YOLOS
YOLOS是一系列基于樸素ViT的應(yīng)用比較廣泛的目標(biāo)檢測(cè)模型,將ViT中的圖像分類損失替換為bipartite matching loss,可以避免將ViT的輸出序列重新解釋為2D特征圖,并防止在標(biāo)簽分配期間手動(dòng)注入啟發(fā)式和對(duì)象2D空間結(jié)構(gòu)的先驗(yàn)知識(shí)[10]。YOLOS顯著特點(diǎn) 是能夠很快的適應(yīng)不同的Transformer結(jié)構(gòu),進(jìn)行任意尺寸的目標(biāo)檢測(cè)任務(wù),而不要求精確的空間結(jié)構(gòu)或幾何結(jié)構(gòu)。在COCO數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),發(fā)現(xiàn)在中等大小數(shù)據(jù)集ImageNet上進(jìn)行預(yù)訓(xùn)練的YOLOS能夠取得比較高的性能。
2 作為Backbone的Transformer目標(biāo)檢測(cè)方法
2.1 PVT
Wang等提出了Pyramid Vision Transformer(PVT),該模型是一種用于密集預(yù)測(cè)無(wú)CNN的簡(jiǎn)單Backbone結(jié)構(gòu)[11]。與純Transformer模型的ViT相比,PVT通過(guò)將特征金字塔結(jié)構(gòu)引入Transformer結(jié)構(gòu)完成如目標(biāo)檢測(cè)、目標(biāo)分割等下游密集預(yù)測(cè)任務(wù)??偟膩?lái)說(shuō),PVT的優(yōu)勢(shì)表現(xiàn)在通過(guò)對(duì)圖像密集預(yù)測(cè)而獲得高輸出分辨率以及使用一個(gè)逐漸縮小的金字塔來(lái)達(dá)到減少計(jì)算量的效果。經(jīng)過(guò)大量實(shí)驗(yàn)驗(yàn)證在COCO數(shù)據(jù)集上PVT作為通用的無(wú)卷積backbone比大部分的CNN backbone都有更好的效果[12]。
2.2 Swin transformer
Swin transformer是微軟2021年3月月25日公布的一篇利用Transformer架構(gòu)處理計(jì)算機(jī)視覺(jué)任務(wù)的論文,文章提出可以把Transformer作為計(jì)算機(jī)視覺(jué)任務(wù)的通用backbone。文章在圖像分割、目標(biāo)檢測(cè)等各個(gè)領(lǐng)域都引起了關(guān)注。Swin transformer的總體結(jié)構(gòu)如圖3所示[13]。作者提出使用移動(dòng)窗口的方式來(lái)減少序列長(zhǎng)度,即hierarchical Transformer,將特征圖劃分成了多個(gè)不相交的區(qū)域(Window),并且Multi-Head Self-Attention只在每個(gè)窗口(Window)內(nèi)進(jìn)行。這使得計(jì)算效率更高(只在窗口內(nèi)做注意力計(jì)算,而不是計(jì)算全局,計(jì)算復(fù)雜度隨圖片大小線性增長(zhǎng),而不是平方增長(zhǎng)),同時(shí)這種窗口的移動(dòng)也使得相鄰的窗口之間有了交互,上下層之間就具有了cross-window connection,從而變相地達(dá)到了一種全局建模的能力[13]。
Swin Transformer迅速引起學(xué)者追捧的主要原因是使用了基于 Shifted Window的自注意力,它在有效減少計(jì)算量的同時(shí),還能夠保持良好的效果,因此對(duì)很多視覺(jué)的任務(wù),尤其是對(duì)下游密集預(yù)測(cè)型的任務(wù)是非常有幫助的。但是如果Shifted Window操作不能用到NLP領(lǐng)域里,優(yōu)勢(shì)就會(huì)減弱,所以把Shifted Windows應(yīng)用到 NLP里是該方向未來(lái)的研究工作。
3 對(duì)比實(shí)驗(yàn)
本文統(tǒng)計(jì)了一些Transformer在COCO 2017ValSet上的目標(biāo)檢測(cè)模型、骨干網(wǎng)絡(luò)、參數(shù)、計(jì)算和性能,作為Neck的Transformer目標(biāo)檢測(cè)模型實(shí)驗(yàn)對(duì)比數(shù)據(jù)如表1所示。作為Backbone的Transformer目標(biāo)檢測(cè)模型實(shí)驗(yàn)對(duì)比數(shù)據(jù)如表2所示。這部分旨在為研究目標(biāo)檢測(cè)的研究人員提供參考。
4 結(jié)論
Transformer結(jié)構(gòu)中的全局接收域解決了基于CNN方法的接收域有限的難題,所以目標(biāo)檢測(cè)中引入Transformer可以節(jié)省目標(biāo)檢測(cè)中NMS、區(qū)域建議等大量的人工操作過(guò)程。作為Neck的Transformer目標(biāo)檢測(cè)方法,DETR是開啟了將Transformer應(yīng)用于目標(biāo)檢測(cè)的研究工作。YOLOS是一系列盡可能少的修改和歸納偏差的基于ViT的目標(biāo)檢測(cè)模型。此外,DETR還有許多相關(guān)變體。針對(duì)DETR收斂速度慢的問(wèn)題,研究人員提出了Deformable DETR以及TSP-FCOS和TSP-RCNN。Deformable DETR采用可變形卷積,有效地解決了稀疏空間定位中DETR收斂速度慢和小目標(biāo)檢測(cè)精度低的問(wèn)題。ACT主要緩解DETR中注意圖的冗余,以及隨著編碼器的深入,特征冗余的問(wèn)題。作為Backbone的Transformer目標(biāo)檢測(cè)方法,PVT提出了一個(gè)用于密集預(yù)測(cè)任務(wù)的、無(wú)CNN的簡(jiǎn)單backbone;Swin Transformer使用了基于Shifted Window的自注意力,在保證預(yù)測(cè)效果的同時(shí)有效地減少了計(jì)算量。雖然有眾多的研究者在進(jìn)行Transformer Backbone工作,但針對(duì)密集預(yù)測(cè)任務(wù)研究仍然很少,這可能成為一個(gè)未來(lái)Transformer Backbone主要的研究趨勢(shì)之一。
參考文獻(xiàn)(References):
[1] 祝星馗,蔣球偉.基于CNN與Transformer的無(wú)人機(jī)圖像目標(biāo)檢測(cè)研究[J].武漢理工大學(xué)學(xué)報(bào):信息與管理工程版,2022(2):44
[2] N.Carion,F(xiàn).Massa,G.Synnaeve,N.Usunier,A.Kirillov,andS.
Zagoruyko[C]//End-to-endobjectdetection with transformers.Glasgow: in European Conference on Computer Vision. Springer,2020:213-229(in UK)
[3] 尹航,范文婷.基于Transformer目標(biāo)檢測(cè)研究綜述[J].現(xiàn)代信息科技,2021,5(7):14-17
[4] X.Zhu,W.Su,L.Lu, B.Li,X.Wang,and J. Dai.
Deformabledetr: Deformable transformers for end-to-end object detection[J].arXivpreprint arXiv:2010.04159,2020
[5] M. Zheng, P. Gao, R. Zhang, K. Li, X. Wang, H. Li, and H.
Dong.End-to-end object detection with adaptive clusteringtransformer[J].arXivpreprint arXiv:2011.09315,2020
[6] Z. Sun, S. Cao, Y. Yang, and K. M. Kitani[C]//Rethinking
transformerbased set prediction for object detection.Montreal:in Proceedings of theIEEE/CVF International Conference on Computer Vision, 2021:3611-3620(in Canada)
[7] D. Meng, X. Chen, Z. Fan, G. Zeng, H. Li, Y. Yuan, L.
Sun,and J. Wang[C]//Conditional detr for fast training convergence.Montreal:inProceedings of the IEEE/CVF International Conference on ComputerVision, 2021:3651-3660(in Canada)
[8] P. Gao, M. Zheng, X. Wang, J. Dai, and H. Li.Fast
convergence of detr with spatially modulated co-attention[J].arXiv preprintarXiv:2101.07448,2021
[9] Z. Dai, B. Cai, Y. Lin, and J. Chen[C]//Up-detr:
Unsupervised pretraining for object detection with transformers.Montreal:in Proceedings of theIEEE/CVF Conference on Computer Vision and Pattern Recognition,2021:1601-1610(in Canada)
[10] Y. Fang, B. Liao, X. Wang, J. Fang, J. Qi, R. Wu, J. Niu,
and W. Liu.You only look at one sequence: Rethinking transformer in visionthrough object detection[J].arXiv preprint arXiv:2106.00666, 2021
[11] W. Wang, E. Xie,X. Li, DP Fan, L. Shao.Pyramid Vision
Transformer: A Versatile Backbone for Dense Prediction without Convolutions[J].arXiv:2102.12122,2021
[12] K. He,X. Zhang, et al. Deep residual learning for image
recognition.Las Vegas: In CVPR,2016:770-778(in USA)
[13] Z. Liu et al. Swin transformer: Hierarchical vision
transformer usingshifted windows.Montreal: In ICCV,2021:10012-10022(in Canada)