Transformer在計(jì)算機(jī)視覺領(lǐng)域走到哪了?
Transformer 模型在自然語(yǔ)言處理(NLP)領(lǐng)域已然成為一個(gè)新范式,如今越來(lái)越多的研究在嘗試將 Transformer 模型強(qiáng)大的建模能力應(yīng)用到計(jì)算機(jī)視覺(CV)領(lǐng)域。那么未來(lái),Transformer 會(huì)不會(huì)如同在 NLP 領(lǐng)域的應(yīng)用一樣革新 CV 領(lǐng)域?今后的研究思路又有哪些?微軟亞洲研究院多媒體搜索與挖掘組的研究員們基于 Vision Transformer 模型在圖像和視頻理解領(lǐng)域的最新工作,可能會(huì)帶給你一些新的理解。
作為一個(gè)由自注意力機(jī)制組成的網(wǎng)絡(luò)結(jié)構(gòu),Transformer一“出場(chǎng)”就以強(qiáng)大的縮放性、學(xué)習(xí)長(zhǎng)距離的依賴等優(yōu)勢(shì),替代卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)等網(wǎng)絡(luò)結(jié)構(gòu),“席卷”了自然語(yǔ)言處理(NLP)領(lǐng)域的理解、生成任務(wù)。
然而,Transformer 并未止步于此,2020年,Transformer 模型首次被應(yīng)用到了圖像分類任務(wù)中并得到了比 CNN 模型更好的結(jié)果。此后,不少研究都開始嘗試將 Transformer 模型強(qiáng)大的建模能力應(yīng)用到計(jì)算機(jī)視覺領(lǐng)域。目前,Transformer 已經(jīng)在三大圖像問題上——分類、檢測(cè)和分割,都取得了不錯(cuò)的效果。視覺與語(yǔ)言預(yù)訓(xùn)練、圖像超分、視頻修復(fù)和視頻目標(biāo)追蹤等任務(wù)也正在成為 Transformer “跨界”的熱門方向,在 Transformer 結(jié)構(gòu)基礎(chǔ)上進(jìn)行應(yīng)用和設(shè)計(jì),也都取得了不錯(cuò)的成績(jī)。
Transformer“跨界”圖像任務(wù)
最近幾年,隨著基于 Transformer 的預(yù)訓(xùn)練模型在 NLP 領(lǐng)域不斷展現(xiàn)出驚人的能力,越來(lái)越多的工作將 Transformer 引入到了圖像以及相關(guān)的跨模態(tài)領(lǐng)域,Transformer 的自注意力機(jī)制以其領(lǐng)域無(wú)關(guān)性和高效的計(jì)算,極大地推動(dòng)了圖像相關(guān)任務(wù)的發(fā)展。
端到端的視覺和語(yǔ)言跨模態(tài)預(yù)訓(xùn)練模型
視覺-語(yǔ)言預(yù)訓(xùn)練任務(wù)屬于圖像領(lǐng)域,其目標(biāo)是利用大規(guī)模圖片和語(yǔ)言對(duì)應(yīng)的數(shù)據(jù)集,通過設(shè)計(jì)預(yù)訓(xùn)練任務(wù)學(xué)習(xí)更加魯棒且具有代表性的跨模態(tài)特征,從而提高下游視覺-語(yǔ)言任務(wù)的性能。
現(xiàn)有的視覺-語(yǔ)言預(yù)訓(xùn)練工作大都沿用傳統(tǒng)視覺-語(yǔ)言任務(wù)的視覺特征表示,即基于目標(biāo)檢測(cè)網(wǎng)絡(luò)離線抽取的區(qū)域視覺特征,將研究重點(diǎn)放到了視覺-語(yǔ)言(vision-language,VL)的特征融合以及預(yù)訓(xùn)練上,卻忽略了視覺特征的優(yōu)化對(duì)于跨模態(tài)模型的重要性。這種傳統(tǒng)的視覺特征對(duì)于 VL 任務(wù)的學(xué)習(xí)主要有兩點(diǎn)問題:
1)視覺特征受限于原本視覺檢測(cè)任務(wù)的目標(biāo)類別
2)忽略了非目標(biāo)區(qū)域中對(duì)于上下文理解的重要信息
為了在VL模型中優(yōu)化視覺特征,微軟亞洲研究院多媒體搜索與挖掘組的研究員們 提出了一種端到端的 VL 預(yù)訓(xùn)練網(wǎng)絡(luò) SOHO ,為 VL 訓(xùn)練模型提供了一條全新的探索路徑。 該工作的相關(guān)論文“Seeing Out of tHe bOx: End-to-End Pre-training for Vision-Language Representation Learning”已收錄于CVPR 2021 Oral。
論文鏈接: https://arxiv.org/abs/2104.03135
GitHub地址: https://github.com/researchmm/soho
SOHO 模型的主要思路是: 將視覺編碼器整合到 VL 的訓(xùn)練網(wǎng)絡(luò)中,依靠 VL 預(yù)訓(xùn)練任務(wù)優(yōu)化整個(gè)網(wǎng)絡(luò),從而簡(jiǎn)化訓(xùn)練流程,緩解依賴人工標(biāo)注數(shù)據(jù)的問題,同時(shí)使得視覺編碼器能夠在 VL 預(yù)訓(xùn)練任務(wù)的指導(dǎo)下在線更新,提供更好的視覺表征。
經(jīng)驗(yàn)證, SOHO 模型不僅降低了對(duì)人工標(biāo)注數(shù)據(jù)的需求,而且在下游多個(gè)視覺-語(yǔ)言任務(wù)(包括視覺問答、圖片語(yǔ)言檢索、自然語(yǔ)言圖像推理等)的公平比較下,都取得了 SOTA 的成績(jī) 。
圖1:端到端的視覺語(yǔ)言預(yù)訓(xùn)練網(wǎng)絡(luò) SOHO
如圖1所示,SOHO 由三部分組成:1)基于卷積網(wǎng)絡(luò)的視覺編碼器(可在線更新);2)基于視覺字典(Visual Dictionary)的視覺嵌入層;3)由多層 Transformer 組成的 VL 融合網(wǎng)絡(luò)。三個(gè)部分“各司其職”,卷積網(wǎng)絡(luò)負(fù)責(zé)將一張圖像表征為一組向量,然后利用視覺字典對(duì)圖像中相近的特征向量進(jìn)行表征,最后利用 Transformer 組成的網(wǎng)絡(luò)將基于字典嵌入的視覺特征與文本特征融合到一起。
對(duì)于視覺編碼器,研究員們采用了 ResNet-101 作為基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)對(duì)輸入圖像進(jìn)行編碼,與基于目標(biāo)檢測(cè)模型的圖像編碼器相比,這種方式的好處是:可以簡(jiǎn)化操作。為了將圖像中相近的特征用統(tǒng)一的特征表征,同時(shí)為 MVM(Masked vision Modeling)提供類別標(biāo)簽,研究員們利用了視覺字典。整個(gè)字典在網(wǎng)絡(luò)學(xué)習(xí)的過程中都采用了動(dòng)量更新的方式進(jìn)行學(xué)習(xí)。基于 Transform 的特征融合網(wǎng)絡(luò)則采用了和 BERT 相同的網(wǎng)絡(luò)結(jié)構(gòu)。
為了優(yōu)化整個(gè)網(wǎng)絡(luò),研究員們利用 MVM、MLM(Masked Language Modeling) 以及 ITM(Image-Text Matching) 三個(gè)預(yù)訓(xùn)練任務(wù)進(jìn)行了模型訓(xùn)練,并將得到的參數(shù)應(yīng)用到了四個(gè)相關(guān)的 VL 下游任務(wù)上,均取得了較好的結(jié)果(如表格1-4所示)。
表格1:SOHO 在 MSCOCO 數(shù)據(jù)集上與其他方法的 text retrieval(TR)和 image retrieval(IR)的性能比較
表格2:SOHO 在 VQA 2.0 數(shù)據(jù)集上的 VQA 性能表現(xiàn)
表格3:SOHO 在 NLVR2 數(shù)據(jù)集上的 Visual Reasoning 性能表現(xiàn)
表 格4: SOHO 在 SNLI-VE 數(shù)據(jù)集上的 Visual Entailment 性能表現(xiàn)
最后,通過對(duì)視覺字典中部分 ID 對(duì)應(yīng)的圖片內(nèi)容進(jìn)行可視化(如圖2所示),研究員們發(fā)現(xiàn)即使沒有強(qiáng)監(jiān)督的視覺類別標(biāo)注,SOHO 也可以將具有相似語(yǔ)義的視覺內(nèi)容聚類到同一個(gè)字典項(xiàng)中。相對(duì)于使用基于目標(biāo)檢測(cè)的視覺語(yǔ)言模型,SOHO 擺脫了圖片框的回歸需求,推理時(shí)間(inference time)也加快了10倍,在真實(shí)場(chǎng)景應(yīng)用中更加實(shí)際和便捷。
圖2:Visual Dictionary 部分 ID 對(duì)應(yīng)圖片內(nèi)容的可視化
基于紋理 Transformer 模型的圖像超分辯率技術(shù)
從古老的膠片照相機(jī)到今天的數(shù)碼時(shí)代,人類拍攝和保存了大量的圖片信息,但這些圖片不可避免地存在各種不同程度的瑕疵。將圖片變得更清晰、更鮮活,一直是計(jì)算機(jī)視覺領(lǐng)域的重要話題。針對(duì)于圖像超分辨率的問題,微軟亞洲研究院的研究員們創(chuàng)新性地將 Transformer 結(jié)構(gòu)應(yīng)用在了圖像生成領(lǐng)域,提出了一種 基于紋理 Transformer 模型的圖像超分辯率方法 TTSR 。
該模型可以有效地搜索與遷移高清的紋理信息,最大程度地利用參考圖像的信息,并可以正確地將高清紋理遷移到生成的超分辨率結(jié)果當(dāng)中,從而解決了紋理模糊和紋理失真的問題。 該工作“Learning Texture Transformer Network for Image Super-Resolution”發(fā)表在 CVPR 2020。
論文鏈接: https://arxiv.org/pdf/2006.04139.pdf
GitHub地址: https://github.com/researchmm/TTSR
與先前盲猜圖片細(xì)節(jié)的方法不同,研究員們通過引入一張高分辨率參考圖像來(lái)指引整個(gè)超分辨率過程。高分辨率參考圖像的引入,將圖像超分辨率問題由較為困難的紋理恢復(fù)/生成轉(zhuǎn)化為了相對(duì)簡(jiǎn)單的紋理搜索與遷移,使得超分辨率結(jié)果在指標(biāo)以及視覺效果上有了顯著的提升。如圖3所示,TTSR 模型包括:可學(xué)習(xí)的紋理提取器模塊(Learnable Texture Extractor)、相關(guān)性嵌入模塊(Relevance Embedding)、硬注意力模塊(Hard Attention)、軟注意力模塊(Soft Attention)。
圖3:紋理 Transformer 模型
傳統(tǒng) Transformer 通過堆疊使得模型具有更強(qiáng)的表達(dá)能力,然而在圖像生成問題中,簡(jiǎn)單的堆疊很難產(chǎn)生很好的效果。為了進(jìn)一步提升模型對(duì)參考圖像信息的提取和利用,研究員們提出了 跨層級(jí)的特征融合機(jī)制 ——將所提出的紋理 Transformer 應(yīng)用于 x1、x2、x4 三個(gè)不同的層級(jí),并將不同層級(jí)間的特征通過上采樣或帶步長(zhǎng)的卷積進(jìn)行交叉融合。因此,不同粒度的參考圖像信息會(huì)滲透到不同的層級(jí),使得網(wǎng)絡(luò)的特征表達(dá)能力增強(qiáng),提高生成圖像的質(zhì)量。
圖4:多個(gè)紋理 Transformer 跨層級(jí)堆疊模型
研究員們?cè)?CUFED5、Sun80、Urban100、Manga109 數(shù)據(jù)集上針對(duì) TTSR 方法進(jìn)行了量化比較,具體如表格5所示。圖5展示了 TTSR 與現(xiàn)有的方法在不同數(shù)據(jù)集上的視覺比較結(jié)果,可以發(fā)現(xiàn) TTSR 顯著領(lǐng)先于其他方法的結(jié)果。
表格5:TTSR 與現(xiàn)有方法在不同數(shù)據(jù)集上的量化比較結(jié)果
圖5: TTSR 與現(xiàn)有方法在不同數(shù)據(jù)集上的視覺比較結(jié)果
Transformer“跨界”視頻任務(wù)
相對(duì)于圖像的空間信息,視頻還增加了時(shí)序維度的信息。 Transformer 可以很好地在空間-時(shí)序維度上進(jìn)行建模,進(jìn)而更好地學(xué)習(xí)圖像與特征中的長(zhǎng)距離依賴關(guān)系,有利于視頻相關(guān)任務(wù)的增強(qiáng)與提高。
視頻修復(fù):Transformer 初嘗試
視頻修復(fù)(video inpainting)是一個(gè)旨在通過視頻中已知內(nèi)容來(lái)推斷并填補(bǔ)缺失內(nèi)容的經(jīng)典任務(wù)。它在老舊視頻恢復(fù)、去除水印等視頻編輯中有著廣泛應(yīng)用。盡管視頻修復(fù)技術(shù)有很大的應(yīng)用價(jià)值,然而在復(fù)雜變化的多個(gè)視頻幀中找到相關(guān)信息,并生成在圖像空間和時(shí)序上看起來(lái)和諧、一致的內(nèi)容,仍然面臨著巨大的挑戰(zhàn)。
為了解決這樣的問題,微軟亞洲研究院的研究員們利用并重新設(shè)計(jì)了Transformer結(jié)構(gòu),提出了 Spatial-Temporal Transformer Network (STTN)。 相關(guān)論文“Learning Joint Spatial-Temporal Transformations for Video Inpainting”發(fā)表在了 ECCV 2020。
論文鏈接: https://arxiv.org/abs/2007.10247
GitHub地址: https://github.com/researchmm/STTN
STTN 模型的輸入是帶有缺失內(nèi)容的視頻幀以及每一幀的掩碼,輸出則是對(duì)應(yīng)的修復(fù)好的視頻幀。如圖6所示,STTN 模型的輸入是帶有缺失內(nèi)容的視頻幀以及每一幀的掩碼,輸出則是對(duì)應(yīng)的修復(fù)好的視頻幀。如圖6所示,STTN 模型采用了 CNN-Transformer 的混合結(jié)構(gòu)。其中,frame-level encoder 以及 frame-level decoder 采用了 CNN,分別將每個(gè)視頻幀從像素編碼成特征以及將特征解碼成視頻幀。Transformer 則作為模型的主干,它將輸入的視頻幀特征切成塊,并對(duì)塊的序列進(jìn)行建模,再通過多層時(shí)空 Transformer 層挖掘輸入幀中的已知信息來(lái)推斷缺失內(nèi)容。
圖6: Spatial-Temporal Transformer Network (STTN) 模型結(jié)構(gòu)示意圖
時(shí)空 Transformer 層繼承了經(jīng)典 Transformer 層強(qiáng)大的注意力機(jī)制,能聚焦于與缺失內(nèi)容相關(guān)的信息上,通過多層的堆疊不斷更新優(yōu)化預(yù)測(cè)的內(nèi)容。 同時(shí),不同于經(jīng)典 Transformer 層中每個(gè)頭部的是模型采用了固定的塊大小,STTN 為了捕捉到盡可能多的上下文信息,在不同的頭部上采用了不同大小的塊切取方式。 因此,當(dāng)缺失區(qū)域的特征不夠豐富時(shí),基于大的塊的注意力機(jī)制可以有效利用較多的已知信息; 當(dāng)缺失區(qū)域的特征豐富之后,基于小的塊的注意力機(jī)制有助于模型聚焦更細(xì)微的變化。 如圖7所示,通過可視化 STTN 最后一層 Transformer 的注意力圖,可以發(fā)現(xiàn) STTN 為了填補(bǔ)目標(biāo)幀中狗身上的缺失區(qū)域,能夠 “精準(zhǔn)追蹤” 到其他幀里的信息,來(lái)修復(fù)缺失區(qū)域。
圖7:Attention map 的可視化(attention 的部分用黃色高亮)。盡管視頻里狗由于奔跑,在不同的幀里形態(tài)和位置差異較大,但為了填補(bǔ)目標(biāo)幀(target frame)中狗身上缺失的部分,STTN 可以 “精準(zhǔn)追蹤” 到相關(guān)的幀里這只跑動(dòng)的狗。
除了 STTN 模型,該論文還提出了用動(dòng)態(tài)和靜態(tài)兩種不同的視頻掩碼來(lái)模擬實(shí)際應(yīng)用。 動(dòng)態(tài)掩碼指視頻每一幀的掩碼是連續(xù)變化的,用來(lái)模擬移除運(yùn)動(dòng)物體的應(yīng)用; 而靜態(tài)掩碼不會(huì)隨著視頻變化,用來(lái)模擬水印移除。 論文通過在 DAVIS 和 Youtube-VOS 數(shù)據(jù)集上定性和定量的分析,驗(yàn)證了 STTN 在視頻修復(fù)任務(wù)上的優(yōu)越性。 如視頻1所示,STTN 能夠生成視覺上更真實(shí)的修復(fù)結(jié)果。 同時(shí)得益于 STTN 強(qiáng)大的并行建模能力,它也加快了運(yùn)行速度(24.10 fps VS. 3.84 fps)。
目標(biāo)跟蹤新范式:基于時(shí)空 Transformer
視頻目標(biāo)跟蹤(Visual Object Tracking)是計(jì)算機(jī)視覺領(lǐng)域中的一項(xiàng)基礎(chǔ)且頗具挑戰(zhàn)性的任務(wù)。在過去幾年中,基于卷積神經(jīng)網(wǎng)絡(luò),目標(biāo)跟蹤迎來(lái)了快速的發(fā)展。然而卷積神經(jīng)網(wǎng)絡(luò)并不擅長(zhǎng)建模圖像與特征中的長(zhǎng)距離依賴關(guān)系,同時(shí)現(xiàn)有的目標(biāo)跟蹤器或是僅利用了空間信息,亦或是并未考慮到時(shí)間與空間之間的聯(lián)系,造成跟蹤器在復(fù)雜場(chǎng)景下性能的下降。
如何解決以上問題?微軟亞洲研究院的研究員們 提出了一種名為 STARK 的基于時(shí)空 Transformer 的目標(biāo)跟蹤器新范式 ,將目標(biāo)跟蹤建模為一種端到端的邊界框預(yù)測(cè)問題,從而徹底擺脫以往跟蹤器使用的超參敏感的后處理,該方法在多個(gè)短時(shí)與長(zhǎng)時(shí)跟蹤數(shù)據(jù)集上都取得了當(dāng)前最優(yōu)的性能。
相關(guān)論文“Learning Spatio-Temporal Transformer for Visual Tracking”
鏈接: https://arxiv.org/abs/2103.17154
GitHub地址: https://github.com/researchmm/stark
STARK 包括 Spatial-Only 和 Spatio-Temporal 兩個(gè)版本,其中 Spatial-Only 版本僅使用空間信息,Spatio-Temporal 版本則同時(shí)利用了時(shí)間和空間信息。
Spatial-Only 版本的框架圖如圖8所示。首先,第一幀的模板和當(dāng)前幀的搜索區(qū)域會(huì)一同送入骨干網(wǎng)絡(luò)提取視覺特征,然后特征圖沿空間維度展開并拼接,進(jìn)而得到一個(gè)特征序列。之后,Transformer 編碼器會(huì)建模序列元素之間的全局關(guān)聯(lián),并利用學(xué)習(xí)到的全局信息來(lái)強(qiáng)化原始特征,使得新的特征序列對(duì)目標(biāo)具有更強(qiáng)的判別力。受 DETR 的啟發(fā),研究員們使用了一個(gè)解碼器以及一個(gè)目標(biāo)查詢(Target Query)來(lái)對(duì)編碼器的輸出進(jìn)行譯碼。目標(biāo)查詢與前面提到的編碼器輸出的特征序列進(jìn)行交互,從而學(xué)習(xí)到和目標(biāo)相關(guān)的重要信息。最后,編碼器輸出的特征序列以及譯碼器輸出的新的目標(biāo)查詢特征再一同送入邊界框預(yù)測(cè)模塊,得到最終的邊界框坐標(biāo)。
圖8:Spatial-Only 版本的框架圖
邊界框預(yù)測(cè)模塊的結(jié)構(gòu)如圖9所示,首先從編碼器的輸出序列中取出搜索區(qū)域相關(guān)的特征,用該特征序列與譯碼器輸出的目標(biāo)查詢特征計(jì)算一次注意力機(jī)制,強(qiáng)化目標(biāo)所在區(qū)域的特征,削弱非目標(biāo)區(qū)域的特征。然后,經(jīng)注意力機(jī)制強(qiáng)化后的搜索區(qū)域特征序列的空間結(jié)構(gòu)被還原,并通過簡(jiǎn)單的全卷積網(wǎng)絡(luò)預(yù)測(cè)目標(biāo)左上角和右下角一對(duì)角點(diǎn)(corners)的熱力圖,最終的角點(diǎn)坐標(biāo)則通過計(jì)算角點(diǎn)坐標(biāo)的數(shù)學(xué)期望得到。不同于之前的Siamese和DCF方法,該框架將目標(biāo)跟蹤建模為一個(gè)直接的邊界框預(yù)測(cè)問題,每一幀上都可直接預(yù)測(cè)一個(gè)邊界框坐標(biāo),無(wú)需使用任何超參敏感的后處理。
圖9:邊界框預(yù)測(cè)模塊的結(jié)構(gòu)
Spatio-Temporal 版本的框架圖如圖10所示,粉色區(qū)域展示了為了利用時(shí)序信息而新加入的結(jié)構(gòu)。新框架額外加入了一個(gè) “動(dòng)態(tài)模板” 作為新輸入。動(dòng)態(tài)模板是根據(jù)中間幀跟蹤結(jié)果裁剪得到的,并隨著跟蹤的進(jìn)行動(dòng)態(tài)更新,為整個(gè)框架補(bǔ)充了之前缺少的時(shí)序信息。利用第一幀模板、當(dāng)前幀搜索區(qū)域、動(dòng)態(tài)模板同時(shí)作為 Transformer 編碼器的輸入,編碼器能夠從全局視角提取時(shí)空信息,學(xué)習(xí)到魯棒的時(shí)空聯(lián)合表示。除動(dòng)態(tài)模板之外,研究員們還引入了由多層感知機(jī)實(shí)現(xiàn)的更新控制器來(lái)更新動(dòng)態(tài)模板,它與邊界框預(yù)測(cè)頭并聯(lián),以預(yù)測(cè)當(dāng)前幀可靠程度的置信度分?jǐn)?shù)。
圖10:Spatio-Temporal 版本框架圖
STARK 在多個(gè)短時(shí)跟蹤與長(zhǎng)時(shí)跟蹤數(shù)據(jù)集上都取得了目前最先進(jìn)的性能,并且運(yùn)行速度可達(dá) 30FPS 到 40FPS。其中,在 LaSOT, GOT-10K, TrackingNet 三個(gè)大規(guī)模目標(biāo)跟蹤數(shù)據(jù)集上的結(jié)果如下所示。
圖11:LaSOT 數(shù)據(jù)集上的結(jié)果比較
表格6:GOT-10K 數(shù)據(jù)集上的結(jié)果比較
表格7:TrackingNet 數(shù)據(jù)集上的結(jié)果比較
上述四個(gè)工作將 Transformer 結(jié)構(gòu)成功地應(yīng)用于圖像內(nèi)容增強(qiáng)和視頻內(nèi)容分析, 充分地展現(xiàn)了 Transformer 的優(yōu)勢(shì)和潛力。目前研究員們已經(jīng)看到,無(wú)論是在圖像分類、物體檢測(cè)與分割等基礎(chǔ)視覺任務(wù)上,還是在 3D 點(diǎn)云分析、圖像視頻內(nèi)容生成等新興課題中,Transformer 都大放異彩。未來(lái),視覺 Transformer 結(jié)構(gòu)的設(shè)計(jì)和自動(dòng)化搜索將會(huì)是一個(gè)非常具有前景的研究課題。相信 Transformer 結(jié)構(gòu)在計(jì)算機(jī)視覺領(lǐng)域會(huì)繼續(xù)展現(xiàn)其強(qiáng)大的模型潛力。