<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          收藏 | 計算機視覺中的Transformer

          共 4843字,需瀏覽 10分鐘

           ·

          2021-12-14 21:01

          點擊上方小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時間送達

          僅作學(xué)術(shù)分享,不代表本公眾號立場,侵權(quán)聯(lián)系刪除
          轉(zhuǎn)載于:作者丨Cheng He
          來源丨AI公園

          Transformer結(jié)構(gòu)已經(jīng)在許多自然語言處理任務(wù)中取得了最先進的成果。Transformer 模型的一個主要的突破可能是今年年中發(fā)布的GPT-3,被授予NeurIPS2020“最佳論文“。

          在計算機視覺領(lǐng)域,CNN自2012年以來已經(jīng)成為視覺任務(wù)的主導(dǎo)模型。隨著出現(xiàn)了越來越高效的結(jié)構(gòu),計算機視覺和自然語言處理越來越收斂到一起,使用Transformer來完成視覺任務(wù)成為了一個新的研究方向,以降低結(jié)構(gòu)的復(fù)雜性,探索可擴展性和訓(xùn)練效率。

          以下是幾個在相關(guān)工作中比較知名的項目:

          • DETR(End-to-End Object Detection with Transformers),使用Transformers進行物體檢測和分割。
          • Vision Transformer?(AN IMAGE IS WORTH 16X16 WORDS: Transformer FOR IMAGE RECOGNITION AT SCALE),使用Transformer 進行圖像分類。
          • Image GPT(Generative Pretraining from Pixels),使用Transformer進行像素級圖像補全,就像其他GPT文本補全一樣。
          • End-to-end Lane Shape Prediction with Transformers,在自動駕駛中使用Transformer進行車道標(biāo)記檢測

          結(jié)構(gòu)


          總的來說,在CV中采用Transformer的相關(guān)工作中主要有兩種模型架構(gòu)。一種是純Transformer結(jié)構(gòu),另一種是將CNNs/主干網(wǎng)與Transformer相結(jié)合的混合結(jié)構(gòu)。

          • 純Transformer
          • 混合型:(CNNs+ Transformer)

          Vision Transformer是基于完整的自注意力的Transformer結(jié)構(gòu)沒有使用CNN,而DETR是使用混合模型結(jié)構(gòu)的一個例子,它結(jié)合了卷積神經(jīng)網(wǎng)絡(luò)(CNNs)和Transformer。


          一些問題


          • 為什么要在CV中使用Transformer?如何使用
          • benchmark上的結(jié)果是什么樣的?
          • *What are the constraints and challenges of using Transformer in CV?*
          • 哪種結(jié)構(gòu)更高效和靈活?為什么?

          你會在ViT、DETR和Image GPT的下面的深入研究中找到答案。


          Vision Transformer


          Vision Transformer(ViT)將純Transformer架構(gòu)直接應(yīng)用到一系列圖像塊上進行分類任務(wù),可以取得優(yōu)異的結(jié)果。它在許多圖像分類任務(wù)上也優(yōu)于最先進的卷積網(wǎng)絡(luò),同時所需的預(yù)訓(xùn)練計算資源大大減少(至少減少了4倍)。

          Vision Transformer模型結(jié)構(gòu)

          圖像序列patches


          它們是如何將圖像分割成固定大小的小塊,然后將這些小塊的線性投影連同它們的圖像位置一起輸入變壓器的。然后剩下的步驟就是一個干凈的和標(biāo)準(zhǔn)的Transformer編碼器和解碼器。

          在圖像patch的嵌入中加入位置嵌入,通過不同的策略在全局范圍內(nèi)保留空間/位置信息。在本文中,他們嘗試了不同的空間信息編碼方法,包括無位置信息編碼、1D/2D位置嵌入編碼和相對位置嵌入編碼。

          不同位置編碼策略的對比

          一個有趣的發(fā)現(xiàn)是,與一維位置嵌入相比,二維位置嵌入并沒有帶來顯著的性能提升。

          數(shù)據(jù)集

          該模型是從多個大型數(shù)據(jù)集上刪除了重復(fù)數(shù)據(jù)預(yù)訓(xùn)練得到的,以支持微調(diào)(較小數(shù)據(jù)集)下游任務(wù)。

          • ILSVRC-2012 ImageNet數(shù)據(jù)集有1k類和130萬圖像
          • ImageNet-21k具有21k類和1400萬圖像
          • JFT擁有18k類和3.03億高分辨率圖像


          模型的變體


          像其他流行的Transformer 模型(GPT、BERT、RoBERTa)一樣,ViT(vision transformer)也有不同的模型尺寸(基礎(chǔ)型、大型和巨大型)和不同數(shù)量的transformer層和heads。例如,ViT-L/16可以被解釋為一個大的(24層)ViT模型,具有16×16的輸入圖像patch大小。

          注意,輸入的patch尺寸越小,計算模型就越大,這是因為輸入的patch數(shù)目N = HW/P*P,其中(H,W)為原始圖像的分辨率,P為patch圖像的分辨率。這意味著14 x 14的patch比16 x 16的圖像patch在計算上更昂貴。


          Benchmark結(jié)果


          圖像分類的Benchmark

          以上結(jié)果表明,該模型在多個流行的基準(zhǔn)數(shù)據(jù)集上優(yōu)于已有的SOTA模型。

          在JFT-300M數(shù)據(jù)集上預(yù)訓(xùn)練的vision transformer(ViT-H/14, ViT-L/16)優(yōu)于所有測試數(shù)據(jù)集上的ResNet模型(ResNet152x4,在相同的JFT-300M數(shù)據(jù)集上預(yù)訓(xùn)練),同時在預(yù)訓(xùn)練期間占用的計算資源(TPUv3 core days)大大減少。即使是在ImageNet-21K上預(yù)訓(xùn)練的ViT也比基線表現(xiàn)更好。

          模型性能 vs 數(shù)據(jù)集大小


          預(yù)訓(xùn)練數(shù)據(jù)集大小VS模型性能

          上圖顯示了數(shù)據(jù)集大小對模型性能的影響。當(dāng)預(yù)訓(xùn)練數(shù)據(jù)集的大小較小時,ViT的表現(xiàn)并不好,當(dāng)訓(xùn)練數(shù)據(jù)充足時,它的表現(xiàn)優(yōu)于以前的SOTA。

          哪種結(jié)構(gòu)更高效?

          如一開始所提到的,使用transformer進行計算機視覺的架構(gòu)設(shè)計也有不同,有的用Transformer完全取代CNNs (ViT),有的部分取代,有的將CNNs與transformer結(jié)合(DETR)。下面的結(jié)果顯示了在相同的計算預(yù)算下各個模型結(jié)構(gòu)的性能。

          不同模型架構(gòu)的性能與計算成本

          以上實驗表明:

          • 純Transformer架構(gòu)(ViT)在大小和計算規(guī)模上都比傳統(tǒng)的CNNs (ResNet BiT)更具效率和可擴展性
          • 混合架構(gòu)(CNNs + Transformer)在較小的模型尺寸下性能優(yōu)于純Transformer,當(dāng)模型尺寸較大時性能非常接近

          ViT (vision transformer)的重點


          • 使用Transformer架構(gòu)(純或混合)
          • 輸入圖像由多個patch平鋪開來
          • 在多個圖像識別基準(zhǔn)上擊敗了SOTA
          • 在大數(shù)據(jù)集上預(yù)訓(xùn)練更便宜
          • 更具可擴展性和計算效率


          DETR


          DETR是第一個成功地將Transformer作為pipeline中的主要構(gòu)建塊的目標(biāo)檢測框架。它與以前的SOTA方法(高度優(yōu)化的Faster R-CNN)的性能匹配,具有更簡單和更靈活的pipeline。

          DETR結(jié)合CNN和Transformer的pipeline的目標(biāo)檢測

          上圖為DETR,一種以CNN和Transformer為主要構(gòu)建塊的混合pipeline。以下是流程:

          1. CNN被用來學(xué)習(xí)圖像的二維表示并提取特征
          2. CNN的輸出是扁平化的,并輔以位置編碼,以饋入標(biāo)準(zhǔn)Transformer的編碼器
          3. Transformer的解碼器通過輸出嵌入到前饋網(wǎng)絡(luò)(FNN)來預(yù)測類別和包圍框


          更簡單的Pipeline


          傳統(tǒng)目標(biāo)檢測pipeline和DETR的對比

          傳統(tǒng)的目標(biāo)檢測方法,如Faster R-CNN,有多個步驟進行錨的生成NMS。DETR放棄了這些手工設(shè)計的組件,顯著地簡化了物體檢測pipeline。

          當(dāng)擴展到全景分割時,驚人的結(jié)果

          在這篇論文中,他們進一步擴展了DETR的pipeline用于全景分割任務(wù),這是一個最近流行和具有挑戰(zhàn)性的像素級識別任務(wù)。為了簡單解釋全景分割的任務(wù),它統(tǒng)一了2個不同的任務(wù),一個是傳統(tǒng)的語義分割(為每個像素分配類標(biāo)簽),另一個是實例分割(檢測并分割每個對象的實例)。使用一個模型架構(gòu)來解決兩個任務(wù)(分類和分割)是非常聰明的想法。

          像素級別的全景分割

          上圖顯示了全景分割的一個例子。通過DETR的統(tǒng)一pipeline,它超越了非常有競爭力的基線。


          注意力可視化


          下圖顯示了Transformer解碼器對預(yù)測的注意力。不同物體的注意力分數(shù)用不同的顏色表示。

          通過觀察顏色/注意力,你會驚訝于模型的能力,通過自注意在全局范圍內(nèi)理解圖像,解決重疊的包圍框的問題。尤其是斑馬腿上的橙色,盡管它們與藍色和綠色局部重疊,但還是可以很好的分類。

          預(yù)測物體的解碼器注意力可視化

          DETR的要點
          • 使用Transformer得到更簡單和靈活的pipeline
          • 在目標(biāo)檢測任務(wù)上可以匹配SOTA
          • 并行的更有效的直接輸出最終的預(yù)測集
          • 統(tǒng)一的目標(biāo)檢測和分割架構(gòu)
          • 大目標(biāo)的檢測性能顯著提高,但小目標(biāo)檢測性能下降


          Image GPT


          Image GPT是一個在像素序列上用圖像補全訓(xùn)練的GPT-2 transformer 模型。就像一般的預(yù)訓(xùn)練的語言模型,它被設(shè)計用來學(xué)習(xí)高質(zhì)量的無監(jiān)督圖像表示。它可以在不知道輸入圖像二維結(jié)構(gòu)的情況下自回歸預(yù)測下一個像素。

          來自預(yù)訓(xùn)練的圖像GPT的特征在一些分類基準(zhǔn)上取得了最先進的性能,并在ImageNet上接近最先進的無監(jiān)督精度。

          下圖顯示了由人工提供的半張圖像作為輸入生成的補全模型,隨后是來自模型的創(chuàng)造性補全。

          來自Image GPT的圖像補全

          Image GPT的要點:

          • 使用與NLP中的GPT-2相同的transformer架構(gòu)
          • 無監(jiān)督學(xué)習(xí),無需人工標(biāo)記
          • 需要更多的計算來生成有競爭力的表示
          • 學(xué)習(xí)到的特征在低分辨率數(shù)據(jù)集的分類基準(zhǔn)上實現(xiàn)了SOTA性能
          總結(jié)

          Transformer在自然語言處理中的巨大成功已經(jīng)在計算機視覺領(lǐng)域得到了探索,并成為一個新的研究方向。

          • Transformer被證明是一個簡單和可擴展的框架,用于計算機視覺任務(wù),如圖像識別、分類和分割,或僅僅學(xué)習(xí)全局圖像表示。
          • 與傳統(tǒng)方法相比,在訓(xùn)練效率上具有顯著優(yōu)勢。
          • 在架構(gòu)上,可以采用純Transformer的方式使用,也可以與cnn結(jié)合使用混合的方式使用。
          • 它也面臨著挑戰(zhàn),比如在DETR中檢測小目標(biāo)的性能較低,在Vision Transformer (ViT)中,當(dāng)預(yù)訓(xùn)練數(shù)據(jù)集較小時,性能也不是很好。
          • Transformer正在成為學(xué)習(xí)序列數(shù)據(jù)(包括文本、圖像和時間序列數(shù)據(jù))的更通用的框架。

          英文原文:

          https://towardsdatascience.com/transformer-in-cv-bbdb58bf335e

          下載1:OpenCV-Contrib擴展模塊中文版教程
          在「小白學(xué)視覺」公眾號后臺回復(fù):擴展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實戰(zhàn)項目52講
          小白學(xué)視覺公眾號后臺回復(fù):Python視覺實戰(zhàn)項目即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學(xué)校計算機視覺。

          下載3:OpenCV實戰(zhàn)項目20講
          小白學(xué)視覺公眾號后臺回復(fù):OpenCV實戰(zhàn)項目20講即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學(xué)習(xí)進階。

          交流群


          歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~


          瀏覽 44
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  丁香五月婷婷情 | 欧美性爱免费网站 | 在线免费观看a视频 | 大秀蕉丝袜国产 | 亚洲AV成人无码精品区 |