YotoR:融合 Swin Transformer 和YoloR 的混合架構(gòu),提升目標(biāo)檢測(cè)性能
本文經(jīng)計(jì)算機(jī)視覺(jué)研究院公眾號(hào)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)聯(lián)系出處。
- 論文地址:https://arxiv.org/pdf/2405.19629
PART/1
摘要
Transformers是自然語(yǔ)言處理領(lǐng)域的一項(xiàng)革命性技術(shù),它也對(duì)計(jì)算機(jī)視覺(jué)產(chǎn)生了重大影響,有可能提高準(zhǔn)確性和計(jì)算效率。YotoR將堅(jiān)固的Swin Transformer主干與YoloR頸部和頭部相結(jié)合。在實(shí)驗(yàn)中,YotoR模型TP5和BP4在各種評(píng)估中始終優(yōu)于YoloR P6和Swin Transformers,比Swin Transformer模型提供了改進(jìn)的目標(biāo)檢測(cè)性能和更快的推理速度。這些結(jié)果突出了進(jìn)一步的模型組合和改進(jìn)Transformer實(shí)時(shí)目標(biāo)檢測(cè)的潛力。最后強(qiáng)調(diào)了YotoR的更廣泛含義,包括它在增強(qiáng)基于Transformer的圖像相關(guān)任務(wù)模型方面的潛力。
PART/2
背景&動(dòng)機(jī)
在過(guò)去的十年里,卷積神經(jīng)網(wǎng)絡(luò)徹底改變了計(jì)算機(jī)視覺(jué)應(yīng)用,實(shí)現(xiàn)了目標(biāo)檢測(cè)、圖像分割和實(shí)例分割等任務(wù)求解。盡管近年來(lái)卷積網(wǎng)絡(luò)主干得到了改進(jìn),甚至在一些任務(wù)上超過(guò)了人類的性能,但Transformer在計(jì)算機(jī)視覺(jué)任務(wù)中的使用在幾年內(nèi)仍然難以捉摸。Transformer在計(jì)算機(jī)視覺(jué)任務(wù)中的首次應(yīng)用于2020年提出。然而,由于圖像的高分辨率,Transformers的使用僅限于圖像分類等低分辨率應(yīng)用。像物體檢測(cè)這樣的高分辨率任務(wù)需要開(kāi)發(fā)更專業(yè)的Transformer架構(gòu),比如Swin Transformer,它通過(guò)動(dòng)態(tài)改變注意力窗口來(lái)規(guī)避變形金剛的計(jì)算限制,并允許它們用作多視覺(jué)任務(wù)的通用主干。此外,基于DETR等Transformer的目標(biāo)檢測(cè)頭在以前由卷積神經(jīng)網(wǎng)絡(luò)主導(dǎo)的任務(wù)中已經(jīng)成為最先進(jìn)的。
另一方面,以Yolo/YoloR家族為例的實(shí)時(shí)目標(biāo)檢測(cè)器對(duì)于依賴高幀率的任務(wù)(如自動(dòng)駕駛)或受有限硬件資源限制的平臺(tái)上的任務(wù)仍然是必不可少的。盡管計(jì)算機(jī)視覺(jué)的Transformer最近取得了進(jìn)展,但實(shí)時(shí)物體檢測(cè)主要依賴于卷積神經(jīng)網(wǎng)絡(luò)。它們?cè)谔卣魈崛≈薪⒌目煽啃院陀?jì)算效率一直是Transformers需要克服的挑戰(zhàn)。然后,將Transformer與類Yolo目標(biāo)檢測(cè)器相結(jié)合,可以提供能夠?qū)崿F(xiàn)高幀率和高檢測(cè)精度的新型架構(gòu)。
PART/3
新框架
多任務(wù)架構(gòu)的使用前景看好,因?yàn)樗鼈兛梢哉隙喾N信息模態(tài)以提高所有任務(wù)的性能。然而,設(shè)計(jì)能夠在實(shí)時(shí)中執(zhí)行多任務(wù)的建筑結(jié)構(gòu)是具有挑戰(zhàn)性的,因?yàn)槭褂妹總€(gè)任務(wù)的網(wǎng)絡(luò)集合會(huì)負(fù)面影響系統(tǒng)的運(yùn)行時(shí)間。
在這項(xiàng)工作中,引入了一系列網(wǎng)絡(luò)體系結(jié)構(gòu),將Swin Transformer主干與YoloR頭融合在一起。受Yolo命名法的啟發(fā),這些架構(gòu)被命名為YotoR:You Only Transform One Representation。這反映了使用由Transformer塊生成的單一統(tǒng)一表示,該表示通用且適用于多個(gè)任務(wù)。該提案背后的想法是使用強(qiáng)大的Swin Transformers特征提取來(lái)提高檢測(cè)精度,同時(shí)還能夠通過(guò)使用YoloR頭以快速推理時(shí)間解決多個(gè)任務(wù)。
Backbone
與YoloR及其基本模型P6之間的關(guān)系類似,YotoR TP4是YotoR模型的起點(diǎn),代表了最基本的組件組合。使用不變的SwinT主干也有一個(gè)顯著的優(yōu)勢(shì),可以應(yīng)用遷移學(xué)習(xí)技術(shù)。這是因?yàn)椋ㄟ^(guò)不改變Swin Transformer的結(jié)構(gòu),可以使用其創(chuàng)建者公開(kāi)提供的重量。這簡(jiǎn)化了將預(yù)先訓(xùn)練的Swin-Transformer權(quán)重轉(zhuǎn)移到其他數(shù)據(jù)集的過(guò)程,加快了訓(xùn)練過(guò)程并提高了性能。
Head
為了構(gòu)建YoloR模型,決定以Scaled YoloV4的架構(gòu)為基礎(chǔ)。特別是,他們從YoloV4-P6光作為基礎(chǔ)開(kāi)始,并依次對(duì)其進(jìn)行修改,以創(chuàng)建不同版本的YoloR:P6、W6、E6和D6。這些版本之間的變化如下:
–YoloR-P6:用SiLU替換了YoloV4-P6-light的Mish激活功能
–YoloR-W6:增加了主干塊輸出中的通道數(shù)量
–YoloR-E6:將W6的通道數(shù)乘以1.25,并用CSP卷積代替下采樣卷積
–YoloR-D6:增加了骨干的深度
YotoRmodels
選擇YotoR模式進(jìn)行實(shí)施涉及到兩個(gè)重要方面。首先,分析了Swin Transformer主干生成的特征金字塔尺寸與YoloR頭所需尺寸之間的差異。這些維度之間的顯著差異可能會(huì)在網(wǎng)絡(luò)中造成瓶頸,從而限制其性能。其次,為了調(diào)整連接,Swin Transformer的功能必須重新整形為帶有注意力圖的圖像。然后將其歸一化并通過(guò)1×1卷積來(lái)調(diào)整通道的數(shù)量。這樣做是為了使YoloR頭具有與DarknetCSP主干相同的功能大小,并軟化連接之間的信息瓶頸。
顯示了YotoR BP4體系結(jié)構(gòu)。它介紹了STB(Swin Transformer Block),代表了不同YotoR架構(gòu)中使用的Swin TransformerBlock。此外,在這些組件之間還包含一個(gè)線性嵌入塊。這個(gè)線性嵌入塊來(lái)自用于目標(biāo)檢測(cè)的Swin Transformer實(shí)現(xiàn),并在沒(méi)有更改的情況下被合并到Y(jié)otoR實(shí)現(xiàn)中。之所以選擇這四個(gè)模型,是因?yàn)樗鼈冇蒠oloR和Swin Transformer的基本架構(gòu)組成,從而可以進(jìn)行有效的比較來(lái)評(píng)估所提出的模型的有效性。雖然考慮了對(duì)YotoR BW4或YotoR BW 5等大型模型進(jìn)行訓(xùn)練和評(píng)估,但V100 GPU的資源限制使此選項(xiàng)不可行。
PART/4
實(shí)驗(yàn)及可視化
訓(xùn)練參數(shù):
左圖:val2017和testdev的圖片。右圖:YotoR BP4的預(yù)測(cè)。
與開(kāi)始時(shí)的狀態(tài)比較(批次=1,GPU=V100)。*表示我們自己使用16GBV100GPU確認(rèn)的測(cè)量結(jié)果