transformer in cv

transformer是一種主要基于自注意力機制的深度神經網絡,最初應用于自然語言處理領域。受到transformer強大的表示能力的啟發,研究人員提議將transformer擴展到計算機視覺任務。與其他網絡類型(例如卷積網絡和循環網絡)相比,基于transformer的模型在各種視覺基準上顯示出競爭甚至更好的性能。在本文中,我們通過將這些視覺轉換器模型分類為不同的任務,并分析了這些方法的優缺點,提供了文獻綜述。特別地,主要類別包括基本圖像分類,高級視覺,低級視覺和視頻處理。由于自注意力是transformer的基本組成部分,因此也簡要回顧了計算機視覺中的自注意力。包括有效的transformer方法,可將transformer推入實際應用。最后,我們討論了視覺transformer的進一步研究方向。

1.簡介

深度神經網絡已成為現代人工智能系統中的基本基礎結構。已經提出了用于解決不同任務的各種網絡類型。多層感知(MLP)或完全連接(FC)網絡是經典的神經網絡,它由多個線性層和非線性活動堆疊而成[104,105]。卷積神經網絡(CNN)引入了卷積層和池化層,用于處理圖像等不變數據[68,65]。遞歸神經網絡(RNN)利用遞歸細胞來處理順序數據或時間序列數據[106,49]。transformer是一種新近提出的神經網絡,主要利用自我注意機制[5,90]提取內在特征[123]。在這些網絡中,transformer是一種最近發明的神經網絡,在廣泛的人工智能應用中顯示出巨大的潛力。

Transformer最初應用于自然語言處理(NLP)任務,并帶來了顯著的進步[123,29,10]。例如,Vaswani等。 [123]首先提出了僅基于機器翻譯和英語選區解析任務的注意力機制的轉換器。 Devlin等。 [29]引入了一種稱為BERT的新語言表示模型,該模型通過共同在左,右上下文上進行條件預處理來訓練來自未標記文本的轉換器。 BERT在當時的11個NLP任務上獲得了最新的結果。布朗等。 [10]在45TB壓縮明文數據上預訓練了基于巨型transformer的GPT-3模型,該模型具有1,750億個參數,并且無需微調即可在不同類型的下游自然語言任務上實現出色的性能。這些基于Transformer的模型顯示了強大的表示能力,并在NLP領域取得了突破。

受NLP中transformer功能的啟發,最近的研究人員將transformer擴展到計算機視覺(CV)任務。 CNN曾經是視覺應用的基本組成部分[47,103],但變形金剛顯示出了其作為CNN替代品的能力。 Chen等。 [18]訓練序列轉換器來自動回歸預測像素,并在圖像分類任務上與CNN取得競爭性結果。 ViT是Dosovitskiy等人最近提出的視覺轉換器模型。文獻[31]將純transformer直接應用于圖像補丁序列,并在多個圖像識別基準上獲得了最新的性能。除了基本的圖像分類,轉換器還用于解決更多的計算機視覺問題,例如目標檢測[14,155],語義分割,圖像處理和視頻理解。由于出色的性能,提出了越來越多基于transformer的模型來改善各種視覺任務。

基于transformer的視覺模型如雨后春筍般冒起,這導致難以跟上新進展的速度。因此,對現有作品的調查是有益的,并且對社區有益。在本文中,我們專注于對視覺轉換器的最新進展進行全面概述,并討論進一步改進的潛在方向。為了更好地存檔并方便研究人員研究不同的主題,我們按transformer模型的應用場景對它們進行了分類,如表1所示。特別是,主要主題包括基本圖像分類,高級視覺,低級視覺和視頻處理。高級視覺處理圖像[121]中看到的內容的解釋和使用,例如對象檢測,分割和車道檢測。已經有許多用于解決這些高級視覺任務的transformer模型,例如DETR [14],可變形DETR [155]用于物體檢測,以及Max-DeepLab [126]用于分割。低級圖像處理主要涉及從圖像中提取描述(通常表示為圖像本身)[35],其典型應用包括超分辨率,圖像去噪和樣式轉換。在低視力視覺領域很少使用transformer[17,92],需要進行更多的研究。除了基于圖像的任務之外,視頻處理也是計算機視覺的重要組成部分。由于視頻的順序特性,transformer可以自然地應用于視頻[154,144]。與傳統的CNN或RNN相比,Transformer開始在這些任務上顯示出具有競爭力的性能。在這里,我們對基于transformer的視覺模型的這些作品進行了調查,以跟上該領域的進展。視覺transformer的發展時間表如圖1所示,我們相信越來越多的優秀作品將被刻在里程碑上。

本文的其余部分安排如下。第2節首先闡述了自注意力機制和標準transformer。我們將在第3節中介紹NLP中的transformer方法,因為研究經驗可能有助于視覺任務。接下來,第四部分是本文的主要部分,其中我們總結了有關圖像分類,高級視覺,低級視覺和視頻任務的視覺轉換器模型。我們還將簡要回顧CV和高效transformer方法的自注意力機制,因為它們與我們的主要主題密切相關。最后,我們給出一個結論并討論幾個研究方向和挑戰。

2.transformer的配方

transformer[123]首先應用于神經語言處理(NLP)的機器翻譯任務。如圖2所示,它包含一個編碼器模塊和一個解碼器模塊,以及幾個具有相同架構的編碼器/解碼器。每個編碼器由一個自我注意層和一個前饋神經網絡組成,而每個解碼器由一個自我注意層,一個編碼器-解碼器關注層和一個前饋神經網絡組成。在使用轉換器翻譯句子之前,將句子中的每個單詞嵌入到dmodel = 512維的向量中。

2.1。自我注意層

在自我注意層中,輸入向量首先被轉換為三個不同的向量,即查詢向量q,鍵向量k和維數向量v,維數為dq = dk = dv = dmodel = 512。然后將不同的輸入打包到三個不同的矩陣Q,K和V中。然后,通過以下步驟計算不同輸入向量之間的注意力函數(如圖3左所示):

?步驟1:計算不同輸入向量之間的分數,S = Q·K?;

?步驟2:使用Sn = S /歸一化梯度穩定性的分數

?步驟3:使用softmax函數P = softmax(Sn)將分數轉換為概率;

?步驟4:獲得Z = V·P的加權值矩陣。

該過程可以統一為一個功能:

等式背后的直覺。 1很簡單。步驟1計算兩個不同向量之間的分數,分數是確定在當前位置對單詞進行編碼時我們對其他單詞的關注程度。步驟2將分數標準化以具有更穩定的梯度以進行更好的訓練,而步驟3將分數轉換為概率。最后,將每個值向量乘以總和概率,隨后的幾層將把更多概率集中在向量上。

解碼器模塊中的編碼器-解碼器關注層與編碼器模塊中的自我關注層幾乎相同,除了密鑰矩陣K和值矩陣V是從編碼器模塊派生而查詢矩陣Q是從前一個層。

注意,上述過程與每個單詞的位置無關,因此,自我注意層缺乏捕獲句子中單詞的位置信息的能力。為了解決這個問題,將尺寸為dmodel的位置編碼添加到原始輸入嵌入中,以獲取單詞的最終輸入向量。具體來說,該位置使用以下等式進行編碼:

其中pos表示單詞在句子中的位置,i表示位置編碼的當前維度。

2.2。多頭注意力

通過增加一種稱為多頭注意的機制,以提高香草自我注意層的性能,進一步改善了自我注意層。請注意,對于給定的參考詞,我們在遍歷句子時通常希望專注于其他幾個詞。因此,單頭自我注意層限制了專注于特定位置(或幾個特定位置)的能力,而不會影響同時對其他位置同樣重要的注意力。這是通過為注意力層提供不同的表示子空間來實現的。具體來說,不同的查詢,鍵和值矩陣用于不同的頭,由于隨機初始化,它們在訓練后可以將輸入向量投影到不同的表示子空間中。

詳細地,給定輸入向量和頭數h,首先將輸入向量變換成三個不同的向量組,即查詢組,關鍵字組和值組。每組中有h個向量,維數dq'= dk'= dv'= dmodel / h =64。然后,將來自不同輸入的向量打包到三個不同的矩陣組{Qi} hi = 1,{Ki}中hi = 1和{Vi} hi = 1。然后,多頭關注的過程如下所示:

MultiHead(Q,K,V)= Concat(head1,···,headh)W,

其中headi = Attention(Qi,Ki,Vi),(4)

其中Q'是{Qi} hi = 1的串聯(K'和V'也是),W o∈Rdmodel×dmodel是線性投影矩陣。

2.3。transformer中的其他零件

殘留在編碼器和解碼器中。如圖4所示,在編碼器和解碼器的每個子層中都添加了剩余連接,以增強信息流并獲得更好的性能。隨后進行層歸一化[4]。上述操作的輸出可以描述為:

LayerNorm(X + Attention(X))。 (5)

請注意,由于查詢,鍵矩陣和值矩陣Q,K和V均從同一輸入矩陣X派生,因此X用作此處的自注意力層。

前饋神經網絡。在每個編碼器和解碼器中的自注意力層之后應用前饋NN。具體而言,前饋NN由兩個線性變換層和其中的ReLU激活函數組成,可以將其表示為以下函數:

FFNN(X)=W2σ(W1X),(6)

其中W1和W2是兩個線性變換層的兩個參數矩陣,而σ表示ReLU激活函數。隱藏層的維數為dh = 2048。

解碼器中的最后一層。解碼器的最后一層旨在將向量堆棧變回一個單詞。這是通過線性層,然后是softmax層來實現的。線性層將向量投影到具有dword維度的logits向量中,其中dword是詞匯表中的單詞數。然后,使用softmax層將logits向量轉換為概率。

計算機視覺任務中使用的大多數transformer都使用原始transformer的編碼器模塊。簡而言之,可以將其視為不同于卷積神經網絡(CNN)和遞歸神經網絡(RNN)的新特征選擇器。與僅關注局部特征的CNN相比,transformer可以捕獲遠距離特征,這意味著可以輕松地通過transformer獲取全局信息。與必須按順序計算隱藏狀態的RNN相比,transformer效率更高,因為可以并行計算并輕松加速自注意力層和完全連接層的輸出。因此,有必要進一步研究transformer在自然語言處理領域以及計算機視覺領域的應用。

3.回顧NLPTransformer

在Transformer問世之前,受到更多關注的遞歸神經網絡(例如GRU [26]和LSTM [50])為大多數最新的語言模型提供了支持。但是,在RNN中,信息流需要從先前的隱藏狀態到下一個隱藏狀態進行順序處理,這排除了訓練期間的加速和并行化,從而阻礙了RNN處理更長序列或建立更大模型的潛力。在2017年,Vaswani等人。 [123]提出了Transformer,這是一種新穎的編碼器-解碼器體系結構,僅基于多頭自注意力機制和前饋神經網絡構建,旨在通過獲取全局相關性來解決逐序列自然語言任務(例如機器翻譯) -放輕松。 Transformer的成功表明,僅利用注意力機制,就可以通過細心的RNN獲得可比的性能。此外,Transformer的體系結構支持大規模并行計算,從而可以在較大的數據集上進行訓練,從而導致用于自然語言處理的大型預訓練模型(PTM)的爆發。

BERT [29]及其變體(例如SpanBERT [63],RoBERTa [82])是建立在多層Transformer編碼器體系結構上的一系列PTM。在BERT的訓練前階段,對BookCorpus [156]和英語Wikipedia數據集執行了兩項任務:1)掩蓋語言建模(MLM),方法是首先隨機掩蓋輸入中的某些標記,然后訓練模型進行預測; 2)使用成對句子作為輸入的下一句預測,并預測第二句是否是文檔中的原始句。經過預訓練后,可以通過在一系列下游任務上單獨添加一個輸出層來對BERT進行微調。更具體地,當執行序列級任務(例如,情感分析)時,BERT使用第一令牌的表示進行分類;而對于令牌級別的任務(例如,名稱實體識別),所有令牌都饋入softmax層進行分類。在發布之時,BERT在11種自然語言處理任務上取得了最新的成果,為預訓練的語言模型樹立了里程碑。生成式預訓練transformer系列(例如,GPT [99],GPT-2 [100])是另一種基于Transformer解碼器架構的預訓練模型,該模型使用屏蔽的自我關注機制。 GPT系列和BERT之間的主要區別在于預訓練的方式。與BERT不同,GPT系列是一種由左至右(LTR)語言建模預先訓練的單向語言模型。此外,句子分隔符([SEP])和分類器標記([CLS])僅參與GPT的微調階段,而BERT在預訓練期間學習了這些嵌入。由于GPT的單向預訓練策略,它在許多自然語言生成任務中顯示出優越性。最近,一個巨大的基于transformer的模型GPT-3被引入,其參數高達1750億[10]。通過對45TB壓縮后的明文數據進行預訓練,GPT-3聲稱能夠直接處理不同類型的下游自然語言任務而無需進行微調,從而在許多NLP數據集上均表現出色,包括自然語言理解和生成。除了上述基于transformer的PTM之外,自Transformer推出以來,還提出了許多其他模型。由于這不是我們調查的主要主題,因此我們在表2中僅列出了一些代表性模型供感興趣的讀者使用。

除了在大型語料庫上接受過一般自然語言處理任務訓練的PTM之外,基于轉換器的模型已應用于許多其他NLP相關領域或多模式任務。 BioNLP域。基于Transformer的模型已經超越了許多傳統的生物醫學方法。 BioBERT [69]使用Transador架構進行生物醫學文本挖掘任務; SciB-ERT [7]是通過對Transformer進行有關生物醫學和計算機科學領域的114M篇科學文章的培訓而開發的,旨在更精確地執行與科學領域相關的NLP任務;黃等。 [55]提出利用Transformer開發和評估臨床筆記的連續表示形式的Clinical-BERT,并且作為副作用,ClinicalBERT的注意力圖可用于解釋預測,從而發現不同醫學內容之間的高質量聯系。多模式任務。由于Transformer跨基于文本的NLP任務取得了成功,因此許多研究致力于利用Transformer的潛力來處理多模式任務(例如,視頻文本,圖像文本和音頻文本)。 VideoBERT [115]使用基于CNN的模塊對視頻進行預處理,以獲取表示令牌,基于該模塊,對Transformer編碼器進行了訓練,以學習下游任務(例如視頻字幕)的視頻文本表示。 VisualBERT [72]和VL-BERT [114]提出了單流統一transformer,以捕獲視覺元素和圖像-文本關系,以處理諸如視覺問答(VQA)和視覺常識推理(VCR)之類的下游任務。此外,SpeechBERT等[24]等研究還探討了使用Transformer編碼器對音頻和文本對進行編碼以處理自動文本任務(如語音問題解答(SQA))的可能性。

基于transformer的各種自然語言處理模型以及與NLP相關的任務的快速發展證明了其結構優勢和多功能性。這使Transformer成為自然語言處理之外的許多其他AI領域的通用模塊。本調查的以下部分將重點介紹Transformer在過去兩年中出現的各種計算機視覺任務中的應用。

4.視覺變形金剛

在本節中,我們將對基于transformer的計算機視覺模型進行全面回顧,包括圖像分類,高級視覺,低級視覺和視頻處理中的應用。我們還簡要總結了自注意力機制和模型壓縮方法在高效transformer中的應用。

4.1。影像分類

受到transformer在自然語言處理方面的巨大成功的啟發,一些研究人員試圖檢驗相似的模型是否可以學習圖像的有用表示。作為一種比文本更高維度,更嘈雜,更冗余的形式,人們認為圖像難以生成模型。 iGPT [18]和ViT [31]是僅使用transformer進行圖像分類的兩個作品。

4.1.1 iGPT

自從最初的圖像生成訓練方法問世以來,已經有很長時間了,Chen等人。 [18]重新檢查這類方法,并結合自我監督方法的最新進展。該方法包括一個預訓練階段,然后是一個微調階段。在預訓練中,會嘗試使用自回歸和BERT目標。此外,在NLP中采用了序列轉換器架構來預測像素而不是語言標記。當與早期停止結合使用時,預訓練可被視為有利的初始化或正則化。在微調期間,他們為模型添加了一個小的分類頭,該分類頭用于優化分類目標并適應所有權重。

給定一個未標注的數據集X,該數據集X由高維數據x =(x1,...,xn)組成。他們通過最小化數據的負對數似然來訓練模型:

其中1??i??n采用單位置換πi= i,也稱為柵格順序。他們還考慮了BERT目標,該目標對子序列M?[1,n]進行采樣,以使每個索引i在M中獨立出現的概率為0.15。M稱為BERT掩碼,模型為通過最小化以“未屏蔽”元素x [1,n] \ M為條件的“屏蔽”元素xM的負對數似然來進行訓練:

在預訓練中,他們選擇LAR或LBERT中的一種,并在預訓練數據集上最大程度地減少損失。

他們使用transformer解碼器模塊的GPT-2 [100]公式表示。特別是,層規范先于注意力和多層感知器(MLP)操作,并且所有操作都嚴格位于剩余路徑上。注意操作中唯一發生在序列元素之間的混合,并且為了確保在訓練AR目標時進行適當的調節,他們將標準的上三角遮罩應用于注意邏輯的n×n矩陣。當使用BERT物鏡時,不需要注意登錄屏蔽:將內容嵌入應用于輸入序列后,它們會將位置清零。

在最后一個轉換器層之后,他們應用層范數并從輸出中學習一個投影,以對參數進行參數化,以對每個序列元素處的條件分布進行參數化。訓練BERT時,他們只是忽略未掩蓋位置的logit。

在微調期間,它們平均將最終層范數nL的輸出跨序列維合并以提取每個示例的特征的d維向量:

fL =?nLi?i(10)

他們學習了從fL到類logit的投影,該投影用于最小化交叉熵損失LCLF。在實踐中,他們從經驗上發現聯合目標LGEN + LCLF的效果更好,其中LGEN∈{LAR,LBERT}。

4.1.2 ViT

最近,Dosovitskiy等人。 [31]提出了一種純transformer,即視覺transformer(ViT),當直接應用于圖像序列的序列時,它在圖像分類任務上表現良好。它們遵循原始transformer的設計。圖5顯示了Vision Transformer的框架。

為了處理2D圖像,將圖像x∈RH×W×C整形為一系列平坦的2D斑塊xp∈N×(P2·C),(H,W)是原始圖像的分辨率,而(P ,P)是每個圖像補丁的分辨率。那么N = HW / P2是該transformer的有效序列長度。由于transformer的所有層都使用恒定的寬度,因此可訓練的線性投影將每個矢量化路徑映射到模型尺寸D,它們的輸出稱為貼片嵌入。

與BERT的[class]令牌類似,可學習的嵌入被用于嵌入補丁序列,其在transformer編碼器輸出處的狀態用作圖像表示。在預訓練和微調過程中,分類頭的尺寸均相同。另外,將一維位置嵌入添加到補丁嵌入中以保留位置信息。他們試用了位置嵌入的2D感知的不同變體,這些變體沒有比標準的1D位置嵌入獲得明顯的收益。關節嵌入作為編碼器的輸入。值得注意的是,視覺transformer僅使用標準transformer的編碼器,而MLP磁頭后面是transformer編碼器的輸出。

通常,首先在大型數據集上對ViT進行預訓練,然后對較小的下游任務進行微調。為此,去除了訓練有素的預測頭,并附加了一個零初始化的D×K前饋層,其中K是下游類的數量。以比預訓練更高的分辨率進行微調通常是有益的。喂入更高分辨率的圖像時,色塊大小保持不變,這會導致更大的有效序列長度。視覺變形器可以處理任意序列長度,但是,預訓練的位置嵌入可能不再有意義。因此,作者根據預訓練的位置嵌入在原始圖像中的位置執行2D插值。請注意,只有將分辨率調整和色塊提取手動插入有關圖像2D結構的感應偏置時,才能將其手動注入到Vision Transformer中。

當在中等大小的數據集(如ImageNet)上訓練時,此類模型產生適度的結果,其準確性比同等大小的ResNet低了幾個百分點。transformer缺乏CNN固有的一些電感性偏差,例如翻譯等方差和局部性,因此在訓練不足的數據量時不能很好地概括。但是,如果在大型數據集上訓練模型(14M-300M圖像),則圖片會發生變化。作者發現,大規模訓練勝過歸納偏差。當進行足夠規模的預培訓并轉移到數據點較少的任務時,transformer將獲得出色的結果。在JFT-300M數據集上經過預訓練的視覺transformer在多個圖像識別基準上達到或超越了最新技術,在ImageNet上達到88.36%,在CIFAR-10上達到99.50%,在CIFAR-100上達到94.55%,以及在VTAB套件(包含19個任務)上占77.16%。表3列出了iGPT和ViT的詳細結果。

總之,iGPT回顧了生成式預訓練方法,并將其與自我監督方法相結合,結果并不十分令人滿意。 ViT取得了更好的結果,特別是當它使用更大的數據集(JFT-300)時。但是,ViT的結構與NLP中的transformer基本相同,如何在片內和片間明確相關性仍然是一個難題。此外,在ViT中將相同大小的補丁視為相等。眾所周知,每個補丁的復雜性是不同的,并且該特性目前尚未得到充分利用。

4.2。高層視野

最近,人們對采用transformer執行高級計算機視覺任務(例如對象檢測[15、155、23],車道檢測[81]和分段[129、126])的興趣日益濃厚。在本節中,我們將對這些方法進行回顧。

4.2.1對象檢測

根據采用transformer架構的模塊,可以將基于transformer的對象檢測方法粗略地分為基于頸部的方法,基于頭部的方法和基于框架的方法。

多尺度特征融合模塊(在現代檢測框架中稱為頸部),例如特征金字塔網絡(FPN)[77],已廣泛用于對象檢測中,以實現更好的檢測性能。張等。 [145]建議傳統方法無法交互跨尺度特征,因此提出了特征金字塔transformer(FPT)來充分利用跨空間和尺度的特征相互作用。 FPT由三種類型的transformer組成,即自耦transformer,接地transformer和渲染transformer,它們分別對特征金字塔的自水平,自頂向下和自底向上路徑的信息進行編碼。 FPT基本上利用transformer中的自注意模塊來增強特征金字塔網絡的特征融合。

預測頭對于物體檢測器起著重要的作用。先前的檢測方法通常利用單個視覺表示(例如邊界框和角點)來預測最終結果。 Chi等。 [23]提出了橋接視覺表示(BVR),通過多頭注意力模塊將不同的異構表示組合成一個單一的表示。具體而言,將主表示形式視為查詢輸入,將輔助表示形式視為鍵輸入。通過類似于transformer中的注意模塊,可以獲得用于主表示的增強功能,該功能將來自輔助表示的信息橋接起來并有利于最終檢測性能。

與上述利用transformer的方法增強了現代檢測器的特定模塊不同,Carion [15]重新設計了物體檢測框架,并提出了檢測transformer(DETR),它是一種簡單且完全端到端的物體檢測器。 DETR將對象檢測任務視為一個直觀的集合預測問題,并擺脫了錨定生成和非最大抑制(NMS)后處理等傳統的手工組件。如圖6所示,DETR從CNN主干開始以從輸入圖像中提取特征。為了用位置信息補充圖像特征,將固定的位置編碼添加到平面特征中,然后再輸入到編碼解碼器轉換器中。轉換器解碼器將編碼器的嵌入與N個學習的位置結束編碼(對象查詢)一起使用,并生成N個輸出嵌入,其中N是預定義參數,通常大于圖像中對象的數量。最終預測是通過簡單前饋網絡(FFN)計算的,其中包括邊界框坐標和類別標簽以指示對象的特定類別或沒有對象。與原始轉換器順序生成預測的原始轉換器不同,DETR同時解碼N個對象。 DETR采用兩部分匹配算法來分配預測對象和真實對象。如方程式所示。 (11),匈牙利損失被用來計算所有匹配對象對的損失函數。

其中y和y?是地面真相和物體的預測

σ?是最優分配,ci和p?σ?(i)(ci)是目標類別標簽和預測標簽,bi和?bσ?(i))分別是地面實況和預測邊界框。 DETR在物體檢測方面表現出令人印象深刻的性能,其精度和速度與在COCO基準上廣受歡迎且公認的Faster R-CNN基線相當。

DETR是基于transformer的對象檢測框架的新設計,為社區開發完整的端到端檢測器提供了參考。但是,香草DETR也面臨一些挑戰,例如,訓練時間較長,小物件的性能較差。 Zhu等人提出的可變形DETR。 [155]是解決上述問題的一種流行方法,并且大大提高了檢測性能。代替通過transformer中的原始多頭注意力在圖像特征圖上查看所有空間位置,建議使用可變形注意力模塊關注參考點周圍的一小組關鍵位置。這樣,大大降低了計算復雜度,也有利于快速收斂。更重要的是,可變形注意力模塊可以輕松應用于融合多尺度特征。與DETR相比,可變形DETR的性能更好,訓練成本降低了10倍,推理速度提高了1.6倍。可變形DETR還應用了一些其他改進,包括有效的迭代邊界框優化方法和兩階段方案,從而進一步提高了性能。

針對DETR的高計算復雜性問題,Zheng等人。 [153]提出了一種自適應聚類transformer(ACT)來減少預訓練的DETR的計算成本,而無需任何訓練過程。 ACT使用局部敏感度哈希方法自適應地對查詢特征進行聚類,并將注意力輸出廣播到由選定原型表示的查詢。通過在不進行任何重新訓練的情況下用擬議的ACT替換預訓練DETR模型的自我注意模塊,可以顯著降低計算成本,而準確性幾乎不會降低。此外,可以通過使用多任務知識蒸餾(MTKD)方法進一步降低性能下降,該方法利用原始transformer以少量的調整時間來蒸餾ACT模塊。

Sun等。 [117]研究了DETR模型的慢收斂問題,并揭示了transformer解碼器中的交叉注意模塊是其背后的主要原因。為此,提出了DETR的僅編碼器版本,并且在檢測精度和訓練收斂性上實現了相當大的改進。此外,設計了一種新的二分匹配方案,以實現更穩定的訓練和更快的收斂。提出了兩種基于transformer的集合預測模型,以改進具有特征金字塔的純編碼器DETR,即TSP-FCOS和TSP-RCNN,它們的性能要優于原始DETR模型。

Dai等人受到自然語言處理中的預訓練轉換器方案的啟發。 [28]提出了一種用于對象檢測的無監督預訓練DETR(UP-DETR)的方法。具體而言,提出了一種新的無監督借口任務,即隨機查詢補丁檢測,以預訓練DETR模型。通過這種方案,UP-DETR可以在較大的范圍內提高相對較小數據集(即PASCAL VOC)的檢測精度。在具有足夠培訓數據的COCO基準上,UP-DETR仍然優于DETR,這證明了無監督的預培訓方案的有效性。

4.2.2細分

DETR [15]可以自然地擴展到全景分割任務,方法是在解碼器上附加一個遮罩頭,從而獲得有競爭力的結果。 Wang等。 [126]提出了Max-DeepLab可以直接通過蒙版轉換器預測全景分割結果,而無需替代諸如盒檢測之類的子任務。與DETR類似,Max-DeepLab以端到端的方式簡化了全景分割任務,并直接預測了一組不重疊的蒙版和相應的標簽。使用全景質量(PQ)樣式損失來訓練模型。此外,與現有的將transformer堆疊在CNN主干網上方的方法不同,Max-DeepLab采用雙路徑框架將CNN與transformer更好地結合在一起。

Wang等。 [129]提出了一種基于transformer的視頻實例分割(VisTR)模型,該模型將一系列圖像作為輸入并產生相應的實例預測結果。提出了實例序列匹配策略,為預測分配地面真理。為了獲得每個實例的遮罩序列,VisTR利用實例序列分割模塊從多個幀和分段中累積遮罩特征

3D CNN的遮罩序列。

還有一種嘗試使用變換器進行細胞實例分割[95],該方法基于DETR全景分割模型。所提出的Cell-DETR還添加了跳過連接,以在分段頭中從主干CNN和CNN解碼器橋接功能,以獲得更好的融合功能。 Cell-DETR顯示了顯微鏡圖像中細胞實例分割的最新性能。

趙等。 [150]設計了一種新穎的transformer架構(Point Transformer)來處理點云。建議的自我注意層對于點集的排列是不變的,因此適用于點集處理任務。 Point Transformer對于3D點云的語義分割任務顯示出強大的性能。

4.2.3車道檢測

Liu等基于PolyLaneNet [119]。 [81]提出通過學習transformer網絡的全局上下文來提高曲線車道檢測的性能。與Poly- LaneNet相似,所提出的方法(LSTR)將車道檢測視為將車道與多項式擬合的任務,并使用神經網絡預測多項式的參數。為了捕獲用于車道和全局環境的細長結構,LSTR將transformer網絡引入到體系結構中,以處理通過卷積神經網絡提取的低級特征。此外,LSTR使用匈牙利損失來優化網絡參數。如[81]所示,與僅使用0.2倍參數的PolyLaneNet相比,LSTR可以實現2.82%的更高精度和3.65倍FPS。transformer網絡,卷積神經網絡和匈牙利損失的結合實現了一個微小,快速而精確的車道檢測框架。

4.3。低層視野

除了高級視覺任務外,很少有作品將transformer應用于低級視覺領域,例如圖像超分辨率,生成等。與以標簽或框為輸出的分類,分割和檢測相比,低級任務通常將圖像作為輸出(例如,高分辨率圖像或去噪圖像),這更具挑戰性。

Parmar等。 [92]邁出第一步,推廣transformer模型,以制定圖像轉換和生成任務,并提出圖像transformer。圖像轉換器由兩部分組成:用于提取圖像表示的編碼器和用于生成像素的解碼器。對于每個值為0-255的像素,學習了256×d的維嵌入,用于將每個值編碼為d維矢量,將其作為編碼器的輸入。編碼器和解碼器的架構與[123]中的相同。解碼器中每一層的詳細結構如圖7所示。每個輸出像素q'是通過計算輸入像素q與先前生成的像素m1,m2 ...之間的自注意力而生成的,其中位置嵌入p1,p2,...。 ...對于圖像條件化的生成,例如超分辨率和修復,使用了編碼器-解碼器體系結構,其中編碼器的輸入是低分辨率圖像或損壞的圖像。對于無條件和分類條件的產生(即圖像噪聲),僅解碼器用于輸入噪聲向量。由于解碼器的輸入是先前生成的像素,當生成高分辨率圖像時,這會帶來較大的計算成本,因此提出了一種局部自注意方案,該方案僅使用最近生成的像素作為解碼器的輸入。結果,圖像transformer可以在基于CNN的圖像生成和翻譯任務模型上獲得競爭性能,這表明基于transformer的模型在低級視覺任務上的有效性。

與將每個像素用作transformer模型的輸入相比,最近的工作使用補丁(像素集)作為輸入。楊等。 [135]提出了用于圖像超分辨率的紋理transformer網絡(TTSR)。他們在基于參考的圖像超分辨率問題中使用了轉換器架構,該問題旨在將相關紋理從參考圖像轉移到低分辨率圖像。以低分辨率圖像和參考圖像作為查詢Q和關鍵字K,計算每個補丁qi inQ和ki inK之間的相關性ri,j,

然后,提出了一種高度關注的模塊,以利用參考圖像根據參考圖像選擇高分辨率特征V以匹配低分辨率圖像。硬注意力圖是通過

嗨= argmaxri,j(13)j

那么來自的最相關的參考補丁是ti = vhi,其中T中的ti是轉移的特征。之后,使用軟關注模塊將V傳輸到低分辨率特征F。可以通過以下方式計算軟注意力:

si = maxri,j。 (14)j

因此,將高分辨率紋理圖像轉換為低分辨率圖像的公式可以表示為:

Fout = F + Conv(Concat(F,T))⊙S,(15)

其中Fout和F表示低分辨率圖像的輸出和輸入特征,S是柔和注意力,T是從高分辨率紋理圖像傳遞的特征。通過引入基于transformer的體系結構,TTSR可以成功地將紋理信息從高分辨率參考圖像傳輸到低分辨率圖像,以進行超分辨率任務。

上述方法在單個任務上使用transformer模型,而Chen等人。 [17]提出了圖像處理transformer(IPT),通過使用大規模的預訓練來充分利用transformer的優勢,并在包括超分辨率,降噪和除水在內的多種圖像處理任務中實現最先進的性能。如圖8所示,IPT由多頭,編碼器,解碼器和多尾組成。介紹了針對不同圖像處理任務的多頭多尾結構和任務嵌入。將功能分為補丁以放入編碼器-解碼器體系結構,然后將輸出重塑為具有相同大小的功能。由于transformer模型在大規模預訓練中顯示出優勢,因此IPT使用ImageNet數據集進行預訓練。具體來說,通過手動添加噪聲,雨滴或下采樣,可以將ImageNet數據集中的圖像降級為生成的損壞圖像。然后將降級的圖像作為IPT的輸入,將干凈的圖像作為輸出的優化目標。還引入了一種自我監督的方法來增強IPT模型的泛化能力。然后使用相應的頭部,尾部和任務嵌入對每個任務微調訓練后的模型。 IPT極大地提高了圖像處理任務的性能(例如,圖像降噪任務中為2dB),這證明了基于transformer的模型在低視場中的巨大潛力。

4.4。視頻處理

transformer在基于序列的任務(特別是在NLP任務)上表現出奇的出色。在計算機視覺中,視頻任務中青睞時空維度信息。因此,transformer被應用于許多視頻任務,例如幀合成[83],動作識別[41]和視頻檢索[80]。

4.4.1高級視頻處理

人體動作識別。視頻人類行為任務是指識別和定位視頻中的人類行為。上下文的內容在識別人類行為中起著至關重要的作用。 Rohit等。提出了一種行動變換器[41]來對感興趣的人和周圍事物之間的潛在關系進行建模。具體而言,I3D用作提取高級特征圖的主干。通過ROIPooling從中間要素地圖中提取的要素被視為查詢(Q)。鍵(K),值(V)是根據中間特征計算得出的。自我注意機制在三個組成部分上進行,并輸出分類和回歸預測。 Lohit等。 [84]提出了一個可解釋的微分模塊,稱為時間互感器網絡,以減少類內方差并增加類間方差。 Fayyaz和Gall建議了一個臨時transformer,以在弱監督的環境下執行動作識別任務。

面部對齊。基于視頻的面部對齊任務旨在定位面部標志。時間依賴性和空間信息對于最終性能很重要。但是,前一種方法無法同時捕獲連續幀上的時間信息和靜止幀上的互補空間信息。因此,劉等。 [80]使用兩流transformer網絡分別學習時間和空間特征。以端到端的方式共同優化兩個流,并對特征進行加權以獲得最終預測。

視頻檢索。基于內容的視頻檢索的關鍵是找到視頻之間的相似性。為了克服缺點,僅利用視頻級功能的圖像級,Shao等人。 [110]建議使用轉換器來建模長范圍語義依賴性。此外,引入了有監督的對比學習策略來執行硬否定挖掘。基準數據集上的結果證明了性能和速度優勢。 Gabeur等。 [39]提出了一種多模態transformer,以學習不同的跨模態線索,以表示視頻。

活動識別。活動識別是指識別一組人的活動。解決此問題的前一種方法基于各個演員的位置。 Gavrilyuk等。提出了一個actor-transformer [40]體系結構來學習表示。角色轉換器將2D和3D網絡生成的靜態和動態表示作為輸入。transformer的輸出是預測活動。視頻對象檢測。要從視頻中檢測對象,需要全局和本地信息。 Chen等。引入了內存增強的全局局部聚合(MEGA)[19]以捕獲更多內容。具有代表性的功能可提高整體性能,并解決無效和不足的問題。 Yin等。 [138]提出了一種時空transformer來聚合時空信息。與另一個空間特征編碼組件一起,這兩個組件在3D視頻對象檢測任務上表現良好。

多任務學習。未修剪的視頻通常包含許多與目標任務無關的幀。因此,挖掘相關信息并刪除冗余信息至關重要。為了應對未修剪視頻上的多任務學習,Seong等人(2002年)采用視頻多任務轉換器網絡[109]提取信息。對于CoVieW數據集,任務是場景識別,動作識別和重要性分數預測。 ImageNet和Places365上的兩個經過預先訓練的網絡提取了場景特征和對象特征。堆疊多任務transformer以借助類轉換矩陣(CCM)融合功能。

4.4.2低級視頻處理

幀/視頻合成。幀合成任務是指在兩個連續幀之間或幀序列之后合成幀。視頻合成任務旨在合成視頻。劉等。提出了ConvTransformer [83],它包含五個組件:特征嵌入,位置編碼,編碼器,查詢解碼器和綜合前饋網絡。與基于LSTM的作品相比,ConvTransformer通過更可并行化的體系結構實現了卓越的效果。 Schatz等。 [108]使用循環transformer網絡從新穎的觀點綜合人類的行動。

視頻修復。視頻修補任務旨在完成幀中的缺失區域。這項艱巨的任務需要沿空間和時間維度合并信息。 Zeng等。為此任務提出了一個時空transformer網絡[144]。所有輸入幀均作為輸入,并被并行填充。時空對抗損失用于優化transformer網絡。

4.4.3多模式

視頻字幕/摘要。視頻字幕任務的目標是為未修剪的視頻生成文本。事件檢測和描述模塊是兩個主要部分。周等。 [154]提出了一種端到端的優化transformer來解決密集的視頻字幕任務。編碼器將視頻轉換為表示形式。提議解碼器從編碼中生成事件提議。字幕解碼器用建議掩蓋編碼并輸出描述。 Bilkhu等。 [9]使用C3D和I3D網絡提取特征,并使用transformer生成預測。該算法在單個摘要任務和密集摘要任務上均表現良好。 Li等。 [71]利用基于糾纏注意力(ETA)模塊的transformer來解決圖像字幕任務。 Sun等。 [29]提出了一種視覺語言框架來學習表示而無需監督。該模型可以應用于許多任務,包括視頻字幕,動作分類等。

4.5。自我關注的計算機視覺

在以上各節中,我們回顧了使用transformer體系結構進行視覺任務的方法。自我注意是transformer的關鍵部分。在本節中,我們將深入研究基于自我注意的方法,以解決計算機視覺中的挑戰性任務,例如語義分割,實例分割,對象檢測,關鍵點檢測和深度估計。我們在第4.5.1節中制定自注意力算法開始,并在第4.5.2節中總結使用針對計算機視覺的自注意力的現有應用程序。

4.5.1自我注意的一般表述

用于機器翻譯的自注意模塊[123]通過關注所有位置并在嵌入空間中對它們進行加權求和,從而對序列中某個位置的響應進行計算,這可以看作是非本地過濾操作的一種形式[128] ,11]適用于計算機視覺。我們遵循慣例[128]來制定自我注意模塊。給定輸入信號(例如,圖像,序列,視頻和特征)X∈Rn×c,其中n = h×w表示特征中的像素數,而c是通道數,則生成輸出信號如:

yi = C(xi)f(xi,xj)g(xj),(16)

其中xi∈R1×c和yi∈R1×c分別表示輸入信號X和輸出信號Y的第i個位置(例如,時空,時空)。下標j是枚舉所有位置的索引。成對函數f(·)計算表示關系,例如i與所有j之間的親和力。函數g(·)計算位置j處輸入信號的表示形式。響應通過因子C(xi)歸一化。

請注意,成對函數f(·)有很多選擇,例如,可以使用高斯函數的簡單擴展來計算嵌入空間中的相似度,因此函數f(·)可以表示為:

其中wθ,i∈Rc×1是權重矩陣Wθ的第i行。

對于給定的索引i,1 f(x,x)成為沿維度j輸出的softmax C(xi)i j,因此公式可以進一步重寫為:

Y = softmax(QKT)V = Attention(Q,K,V),(20)

其中為機器翻譯提議的自我注意模塊[?]與上述為計算機視覺提出的非本地過濾操作完全相同。

通常,用于計算機視覺的自注意力模塊的最終輸出信號將包裝為:

Z = Y WZ + X(21)

Y是通過E.q. 19.如果WZ初始化為零,則可以將此自注意模塊插入任何現有模型,而不會破壞其初始行為。

4.5.2視覺任務上的應用

自我注意模塊被認為是卷積神經網絡體系結構的構建塊,該卷積神經網絡體系結構在涉及大接收域方面具有較低的縮放特性。始終在網絡頂部使用該構造塊來捕獲計算機視覺任務的遠程交互。在下文中,我們將對基于圖像的任務(例如圖像分類,語義分割和對象檢測)提出的基于自我注意的方法進行回顧。

圖像分類。可訓練的分類注意力包括兩個主要方面:關于圖像區域使用的辛勤注意[3,87,134]和產生非剛性特征圖的軟注意[125,60,43,102]。 Ba等。 [3]首先提出了圖像分類任務的視覺注意力術語,并利用注意力來選擇輸入圖像內的相關區域和位置,這也可以降低所提出模型的計算復雜度。輸入圖像的大小。 AG-CNN [42]提出通過關注熱圖從全局圖像中裁剪一個子區域,以進行醫學圖像分類。 SENet [54]并沒有用力地關注和重新校準特征圖的裁剪,而是提出了一種軟性的自我注意,以重新加權卷積特征的通道方向響應。 Jetley等。 [60]使用相應估計器生成的注意力圖來加權深度神經網絡中的中間特征。 Han等。 [43]利用屬性感知的注意力來增強CNN的表示。

語義分割。 PSANet [151],OCNet [139],DANet [38]和CFNet [147]是將自我注意模塊引入語義分割任務的第一批作品,它們考慮并增強了關系和相似性[146、74、46, 89、130]。 DANet [38]同時在空間和渠道維度上利用了自我注意模塊。 A2Net [20]建議將像素分組為一組區域,然后通過將區域表示與生成的注意力權重相加來增強像素表示。為了減輕通過計算自注意模塊中的像素相似度帶來的大量參數,提出了幾項工作[140、59、58、75、66],以提高自注意模塊進行語義分割的效率。例如,CGNL [140]應用RBF核函數的泰勒級數來近似像素相似度。 CCNet [59]通過兩個連續的縱橫交錯的關注來近似原始的自我關注方案。 ISSA [58]提出將稠密的親和矩陣分解為兩個稀疏親和矩陣的乘積。還有其他使用基于注意力的圖形推理模塊[76、21、75]來增強局部和全局表示的相關工作。

對象檢測。 Ramachandran等。 [102]提出了一個基于注意的層來構建完全注意的模型,該模型在COCO [79]基準上優于卷積RetinaNet [78]。 GCNet [13]發現,對于圖片中的不同查詢位置,通過非本地操作建模的全局上下文幾乎相同,并建議將簡化的表述和SENet [54]統一為用于全局上下文建模的通用框架[73, 52,34,93]。 Vo等。 [124]設計了一種雙向操作來收集信息并將其從查詢位置分發到所有可能的位置。 Hu等。 [53]提出了一種基于自我注意的關系模塊,通過它們的外觀特征之間的交互來同時處理一組對象。程等。提出了帶有基于注意力的解碼器模塊的RelationNet ++ [23],該模塊將其他表示形式橋接到基于單個表示形式格式的典型對象檢測器中。

其他視覺任務。張等。 [148]提出了一種分辨率方面的注意模塊,以學習增強的分辨率方面的特征圖,以進行精確的姿態估計。黃等。 [57]提出了一種基于transformer的網絡[56],用于3D手-物體姿勢估計。 Chang等。文獻[16]在基于注意力機制的特征融合模塊的幫助下,提高了精度并加快了關鍵點檢測模型的收斂速度。

4.6。高效transformer

盡管Transformer模型在各種任務中都取得了成功,但是仍然需要高內存和計算資源,這阻礙了在資源受限的設備(例如,移動電話)上的實現。在本節中,我們回顧了有關為有效實施而壓縮和加速transformer模型的研究,包括網絡修剪,低秩分解,知識蒸餾,網絡量化,壓縮架構設計。表4列出了一些用于壓縮基于transformer的模型的代表性作品。

4.6.1修剪和分解

在基于transformer的預訓練模型(例如BERT)中,并行進行多個注意操作以獨立地建模不同令牌之間的關系[123、29],而對于特定任務則不需要所有的負責人。 Michel等。 [85]從經驗上觀察到,在測試時可以去除很大一部分注意力,而不會顯著影響性能。所需的磁頭數量在不同的層上有所不同,甚至對于某些層來說,一個磁頭就足夠了。考慮到注意頭上的冗余,在[85]中定義了重要性分數以估計每個頭對最終輸出的影響,并且可以刪除不重要的頭以進行有效部署。 Dalvi等。 [96]進一步從兩個角度分析了預訓練transformer模型中的冗余,即一般冗余和特定于任務的冗余。按照彩票假說等。 [36],Prasanna等。 [96]分析了BERT中的彩票,并表明在基于Transformer的模型中也存在良好的子網。在[96]中減少了FFN層和注意頭,以實現高壓縮率。

除了transformer模型的寬度外,還可以減小深度(即層數)以加快推理過程[32]。與可以并行計算transformer模型中的不同關注點不同,由于下一層的輸入取決于前一層的輸出,因此必須順序計算不同的層。范等。 [32]提出了一種逐層丟棄的策略來規范模型的訓練,然后在測試階段將整個層次一起刪除。考慮到不同設備中的可用資源可能會有所不同,Hou等人。 [51]提出自適應地減小預定義transformer模型的寬度和深度,并同時獲得具有不同尺寸的多個模型。重要的注意頭和神經元通過重新布線機制在不同的子網之間共享。

除了直接在transformer模型中丟棄零件模塊的修剪方法之外,矩陣分解的目的是根據低秩假設近似大型矩陣與多個小型矩陣。例如,Wang等。 [131]分解transformer模型中的標準矩陣乘法,并實現更有效的推理。

4.6.2知識蒸餾

知識蒸餾的目的是通過從巨大的教師網絡中轉移知識來訓練學生網絡[48、12、2]。與教師網絡相比,學生網絡通常具有較薄和較淺的體系結構,更易于在資源受限的資源上部署。神經網絡的輸出和中間特征都可以用于將有效信息從教師傳遞給學生。 Mukherjee等人著重于變換模型。 [88]使用經過預訓練的BERT [29]作為老師,借助大量未標記的數據來指導小型模型的訓練。Wang等。 [127]訓練學生網絡以模仿預訓練教師模型中的自我注意層的輸出。價值觀之間的點積被引入作為指導學生的一種新的知識形式。在[127]中也引入了一個助教[86],它可以減小大型預訓練的Transformer模型與緊湊的學生網絡之間的差距,從而使模仿變得更加容易。考慮到transformer模型中的各種類型的層(即,自我注意層,嵌入層,預測層),Jiao等人。 [62]設計不同的目標功能,以將知識從教師傳授給學生。例如,學生模型的嵌入層的輸出將通過MSE損失來模仿教師的輸出。還施加了可學習的線性變換,以將不同的特征映射到同一空間。對于預測層的輸出,采用KL散度來度量不同模型之間的差異。

4.6.3量化

量化的目的是減少表示網絡權重或中間特征的位數[122,137]。通用神經網絡的量化方法已得到充分討論,其性能可與原始網絡相比[91、37、6]。最近,如何特別量化transformer模型已引起了廣泛關注[8,33]。 Shridhar等。 [112]建議將輸入嵌入到二進制高維向量中,然后使用二進制輸入表示來訓練二進制神經網絡。 Cheong等。 [22]通過低位(例如4位)表示來表示transformer模型中的權重。趙等。 [152]對各種量化方法進行了實證研究,結果表明k均值量化具有巨大的發展潛力。針對機器翻譯任務,Prato等人。 [97]提出了一種完全量化的轉換器,這是第一個8位質量模型,而沒有論文中要求的翻譯質量損失。

4.6.4緊湊架構設計

除了將預定義的transformer模型壓縮為小型transformer模型外,一些作品還嘗試直接設計緊湊型模型[132,61]。江等。 [61]通過提出一個名為基于跨度的動態卷積的新模塊,簡化了自動注意力的計算,該模塊將全連接層和卷積層進行了組合,如圖9所示。計算了來自不同標記的表示之間的局部依賴性通過卷積運算,這比標準transformer中密集的全連接層有效得多。深度卷積還用于進一步降低計算成本。在[1]中提出了有趣的漢堡包層,它們使用矩陣分解來代替原始的自我注意層。矩陣分解可以比標準的自我注意操作更有效地計算,同時很好地反映了不同標記之間的依賴性。

Transformer模型中的自注意操作會計算給定序列(圖像識別任務[31]中的補丁)中來自不同輸入令牌的表示形式之間的點積,其復雜度為O(N),其中N是序列的長度。最近,大量方法致力于將復雜度降低到O(N),以使transformer模型可擴展到長序列。例如,Katharopoulos等。 [64]將自我注意近似為內核特征圖的線性點積,并通過遞歸神經網絡揭示標記之間的關系。 Zaheer等。 [143]將每個令牌視為圖形中的一個頂點,兩個令牌之間的內積計算稱為邊。啟發圖理論[113,25],將各種稀疏圖組合在一起,以近似transformer模型中的稠密圖,這也實現了O(N)的復雜性。從理論上講,Yun等。 [141]證明了具有O(N)復雜度的稀疏變換器足以反映令牌之間的任何類型的關系并且可以進行通用逼近,這為進一步研究具有O(N)復雜度的變換器提供了理論保證。

5.結論與未來展望

與卷積神經網絡相比,由于其具有競爭力的性能和巨大的潛力,transformer正成為計算機視覺領域的熱門話題。正如調查總結的那樣,為了發現和利用transformer的功率,近年來提出了許多解決方案。這些方法在各種視覺任務(包括基本圖像分類,高級視覺,低級視覺和視頻處理)上均表現出出色的性能。然而,transformer在計算機視覺中的潛力尚未得到充分的探索,還有一些挑戰有待解決。

盡管研究人員提出了許多基于transformer的模型來解決計算機視覺任務,但這些工作是開創性的解決方案,還有很大的改進空間。例如,ViT [31]中的transformer架構遵循NLP [123]的標準transformer。專門針對CV的改進版本仍有待探索。此外,還需要將transformer用于除上述任務之外的更多任務。

此外,大多數現有的視覺transformer模型都設計用于處理單個任務。許多NLP模型(例如GPT-3 [10])已顯示出transformer可以在一個模型中處理多個任務的能力。 CV領域的IPT [17]也能夠處理多種低級視覺任務,例如超分辨率,圖像降噪和排水。我們相信,只有一種模型可以涉及更多任務。

最后但并非最不重要的一點是,為CV開發有效的transformer模型也是一個未解決的問題。transformer模型通常很大且計算量很大,例如,基本的ViT模型[31]需要18B FLOP來處理圖像。相比之下,輕巧的CNN模型GhostNet [44、45]僅用大約600M FLOP就能達到類似的性能。盡管已經提出了幾種壓縮transformer的方法,但是它們的復雜性仍然很大。這些最初為NLP設計的方法可能不適用于CV。因此,高效的transformer模型是在資源受限的設備上部署可視transformer的代理。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,563評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,694評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,672評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,965評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,690評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,019評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,013評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,188評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,718評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,438評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,667評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,149評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,845評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,252評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,590評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,384評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容

  • Seq2Seq(Sequence To Sequence) Seq2seq 由Google首次引入機器翻譯。在此之...
    leon_kbl閱讀 2,044評論 0 1
  • 夜鶯2517閱讀 127,749評論 1 9
  • 版本:ios 1.2.1 亮點: 1.app角標可以實時更新天氣溫度或選擇空氣質量,建議處女座就不要選了,不然老想...
    我就是沉沉閱讀 6,936評論 1 6
  • 我是一名過去式的高三狗,很可悲,在這三年里我沒有戀愛,看著同齡的小伙伴們一對兒一對兒的,我的心不好受。怎么說呢,高...
    小娘紙閱讀 3,413評論 4 7
  • 那一年,我選擇了獨立遠行,火車帶著我在前進的軌道上爬行了超過23個小時; 那一年,我走過泥濘的柏油路,在那個遠離故...
    木芽閱讀 1,655評論 4 5