Transformer又來搞事情!百萬像素高清圖輕鬆合成,效果迷人

2021-02-16 機器學習算法工程師

點藍色字關注「機器學習算法工程師

設為星標,乾貨直達!


你上一次聽到用Transformer生成圖像,應該還是iGPT剛問世的時候吧?當時OpenAI用GPT-2來分類和補全圖像,取得了令人驚豔的成果。遺憾在於,iGPT生成的圖像最大只有64x64像素。現在,我要告訴你,最上面這張圖像也是Transformer生成的,解析度有1280x460之高。合成這張圖像的模型名叫VQGAN,而且,它能做的事情遠不止於此。先看看VQGAN和iGPT的對比,前者生成的圖像明顯高清得多。最後再展示一些用語義圖引導合成的樣本,從上往下的解析度分別是:1280×832、1024×416、1280×240。VQGAN功能多,生成的圖像又高清,就用下圖來總結一下。本文提出的Transformers統一了廣泛的圖像合成任務。圖中展示了在不同條件輸入和數據集上的256×256合成結果,所有這些結果都是用同樣的方法獲得的,即VQGAN——利用基於CNN的有效歸納偏置,並結合Transformer結構的表達能力。然後,我們來比較一下模型尺寸。iGPT提出了四個模型,即iGPT-S、iGPT-M、iGPT-L、iGPT-XL,參數數量分別為76M、455M、14 億、68億,而VQGAN的參數數量則在85M到470M之間。如下表所示,作者在多個數據集上(比如CIFAR-10、DeepFashion等)訓練了不同大小的模型,表中列出了模型的超參數。參數數量遠低於iGPT,生成的圖像解析度又遠高於iGPT,VQGAN是怎麼做到的?

Transformer:從NLP走向CV

Transformer最初應用於自然語言處理(NLP)任務,並帶來了顯著的進步。例如,「Attention is all you need」首先提出了僅基於注意力機制的用於機器翻譯和英語選區解析任務的Transformer。BERT通過共同在左和右上下文進行條件預處理,以通過未標記文本訓練Transformer,BERT在當時的11個NLP任務上獲得了SOTA。OpenAI在45TB數據上預訓練了基於巨型Transformer的GPT-3模型,該模型具有1,750億個參數,並且無需微調即可在各種類型的下遊自然語言任務上實現出色的性能。這些基於Transformer的模型都顯示了強大的表示能力。受此啟發,最近人們開始將Transformer擴展到計算機視覺(CV)任務。CNN曾經是計算機視覺網絡架構的基本組成部分,但Transformer顯示出了替代CNN的潛力。iGPT訓練序列Transformer來自回歸地預測像素,並在圖像分類任務上與CNN取得相近結果。ViT將純Transformer直接應用於圖像補丁序列,並在多個圖像識別基準上獲得了SOTA。除了基本的圖像分類,Transformer還被用於解決更多的計算機視覺問題,例如目標檢測、語義分割、圖像處理和視頻理解,並且都得到了出色的結果。基於Transformer的視覺模型如雨後春筍般冒起,下表按照應用場景對視覺Transformer模型進行了分類。其中主要的研究主題包括基本圖像分類、高級視覺、低級視覺和視頻處理。高級視覺處理是指對圖像關鍵內容的標記,例如目標檢測、語義分割和車道檢測。人們已經提出了許多用於解決高級視覺任務的Transformer模型,例如DETR、deformable  DETR用於目標檢測,以及Max-DeepLab用於語義分割。低級圖像處理的典型應用包括超解析度、圖像去噪和風格遷移。在這個領域很少使用到Transformer,不過近期華為諾亞、北大等在論文「Pre-Trained Image Processing Transformer」中提出了IPT模型,在降噪、去雨、超分等底層視覺任務上刷榜,再次刷新人們認知。此外,由於視頻的順序特性,Transformer可以自然地應用於視頻。與傳統的CNN或RNN相比,Transformer開始在這些任務上顯示出具有競爭力的性能。下圖展示了視覺Transformer關鍵工作的時間表,相信未來會有越來越多的優秀工作將被刻在裡程碑上。Transformer的裡程碑,視覺Transformer模型為紅色。那麼,Transformer能取代CNN的秘密在哪裡呢?

不一定要完全替代CNN 

CNN由於可以搭配GPU進行有效的並行卷積計算而獲得了無數成功。此外,CNN也具有平移不變性和局部敏感性的歸納偏置。但是,後者也決定了卷積神經網絡只能關注局部信息的網絡結構。它的這種計算機制導致了它在文本信息處理上難以捕捉和存儲長距離的依賴信息,也就是缺乏對數據本身的整體把握。人們一方面想擴大卷積核、增加通道數來捕捉長期依賴,一方面還害怕由於擴大模型所導致的維度災難。相比之下,Transformer背後的Self Attention除了兼具並行計算的優點,還能挖掘長距離依賴,不受優先考慮局部相互作用的歸納偏置的限制,從而具有很強的表達性。此外,由於不存在這種限制,自注意力機制還能根據任務目標和自注意力層的位置來學習最合適的歸納偏置。在「ON THE RELATIONSHIP BETWEEN SELF-ATTENTION AND CONVOLUTIONAL LAYERS」這篇發表在ICLR 2020的論文中,作者提出了理論和經驗證據,表明自注意力層可以(並且確實)像卷積層那樣起作用:人們近期一直在探索極端的替代方案,就是用Transformer完全替代CNN。然而,對於高解析度的輸入來說,自注意力機制層的計算量很大,因此它只適用於較小的空間維度輸入的數據場景。比如,iGPT補全的圖像最大只有64x64像素,而於2018年提出的「Image Transformer」生成的也是解析度很低的圖像,如下圖所示。這是因為,自注意力機制相對於CNN存在普遍性,也意味著它必須學習所有的關係,而CNN被設計成利用圖像中強局部相關性的先驗知識。因此,由於考慮了所有成對的相互作用,Transformers表達能力的增加相應地帶來了計算成本的二次增加。因此,目前的Transformers SOTA模型由於高耗能和高耗時,為將其擴展到處理高解析度圖像帶來了根本性的問題。

Transformer傾向於學習卷積結構 

實際上,基於自注意力機制和卷積層的相似性,Transformer和CNN也可以結合應用,今天要介紹的這篇論文就採用了這樣的思想。此外,這也是第一個語義引導生成百萬像素圖像的Transformer架構。論文:Taming Transformers for High-Resolution Image Synthesis論文連結:https://arxiv.org/pdf/2012.09841.pdf項目主頁:https://compvis.github.io/taming-transformers/作者受到上文提到的「Transformers傾向於學習卷積結構」的現象的啟發,提出了這個問題:「我們是否在每次訓練視覺模型時,必須從頭開始重新學習已知的關於圖像局部結構和規律性的所有知識,或者我們是否能夠有效地編碼歸納偏置,同時仍然保持Transformers的靈活性?」作者假設低層次的圖像結構是由局部連通性即卷積結構來描述的,而這種結構假設在更高的語義層次上不再有效。進一步說,CNN不僅表現出很強的局部性偏差,而且通過在所有位置使用共享的權值,還表現出對空間不變性的偏差。而如果需要對輸入進行更全面的理解,這些偏差將變得無效。高解析度圖像合成需要一個能夠理解圖像全局組件的模型,使其能夠生成局部真實和全局一致的模式。因此,本文不是用像素來表示圖像,而是將其表示為codebook的感知豐富的圖像成分的合成。這些思想綜合起來就是,卷積和Transformer架構可以共同用於建模視覺世界的組成性質:我們使用卷積方法高效地學習上下文豐富的視覺部分的codebook,然後學習其全局組成的模型。這些組合中的遠程交互需要一個富有表達力的Transformer 架構來對其一致的可視部分上的分布進行建模。此外,作者利用對抗性的方法來確保局部部分的字典捕獲感知上重要的局部結構,以減輕用Transformer架構建模低層統計的需要。從而讓Transformers專注於其獨特的優勢——建模遠程關係——使其能夠生成高解析度圖像。作者提出的公式通過調節有關所需目標類別或空間布局的信息,可以直接控制生成的圖像內容。通過學習如3.1節所述的高效的編碼,可以顯著縮短合成的描述長度,從而能夠有效地用3.2節中描述的Transformer架構在圖像中建模它們的全局相互關係。在下圖中總結的這種方法能夠在無條件和有條件的設置中生成真實和一致的高解析度圖像。作者使用卷積VQGAN來學習上下文豐富的視覺部分的codebook,codebook的組件隨後用自回歸transformer 架構來建模。離散的codebook提供了這些架構之間的接口,基於patch的判別器實現了強大的壓縮能力,同時保持了較高的感知質量。該方法引入了卷積方法在基於transformer的高解析度圖像合成中的有效性。VQGAN編碼解碼器的高級結構。網絡的設計遵循「Denoisingdiffusionprobabilisticmodels」中提出的架構,沒有跳躍連接(skip-connections)。對於判別器,本文使用了一個基於patch的模型,參見「Image-to-ImageTranslationwithConditionalAdversarialNetworks」。其中。實驗證明,本文的方法保留了Transformers的優點,並優於以前基於卷積結構和codebook的SOTA方法。https://arxiv.org/pdf/2012.12556v1.pdf https://cdn.openai.com/papers/Generative_Pretraining_from_Pixels_V2.pdfhttps://arxiv.org/pdf/1802.05751.pdfhttps://arxiv.org/pdf/1911.03584.pdfhttps://arxiv.org/abs/2012.00364

推薦閱讀

PyTorch 源碼解讀之 torch.autograd

SWA:讓你的目標檢測模型無痛漲點1% AP

CondInst:性能和速度均超越Mask RCNN的實例分割模型

centerX: 用新的視角的方式打開CenterNet

mmdetection最小復刻版(十一):概率Anchor分配機制PAA深入分析

MMDetection新版本V2.7發布,支持DETR,還有YOLOV4在路上!

CNN:我不是你想的那樣

TF Object Detection 終於支持TF2了!

無需tricks,知識蒸餾提升ResNet50在ImageNet上準確度至80%+

不妨試試MoCo,來替換ImageNet上pretrain模型!

重磅!一文深入深度學習模型壓縮和加速

從源碼學習Transformer!

mmdetection最小復刻版(七):anchor-base和anchor-free差異分析

mmdetection最小復刻版(四):獨家yolo轉化內幕

機器學習算法工程師

                                    一個用心的公眾號

 

相關焦點

  • 視覺Transformer最新綜述
    VideoBERT 使用基於 CNN 的 module 將圖像轉化為 token,然後使用 transformer 的 encoder 來為下遊任務學習一個 video-text representation。
  • A Survey on Visual Transformer及引文理解
    然後使用transformer來建模token之間的關係。最後輸出的tokens直接被用來做分類或者處理一下恢復成特徵圖用於實例分割。Pretrain:傳統情況下ViT也是要預訓練的,不同於iGPT,這不是一個生成式的模型,只採用了transformer的encoder,因此直接在imagenet做分類任務進行pretrain。文章顯示數據集小的時候效果一般,數據集大的時候因為data bias已經被消除了很多,此時效果非常好。Evaluation:分類任務的評價不再多說。
  • 向圖像進擊的Transformer! OpenAI提出Image GPT實現高質量圖像補全和樣本生成
    而像素序列針對其所屬的圖像卻沒有非常明顯的標籤。即使沒有這種隱式的監督,GPT-2在圖像任務上成功的原因也不難發現:一個足夠大的transformer模型,用於訓練針對下一個像素的預測,最終能夠學會生成豐富的可以清晰辨認的目標樣本。當模型可以有效合成圖像時,研究人員開始思考是不是可以通過「基於合成的分析」來嘗試利用模型識別目標的分類。
  • 熱門的模型跨界,Transformer、GPT做CV任務一文大盤點
    如果說將 NLP 領域的模型應用到 CV 領域,或反之,那效果該如何呢?模型跨界是否可行?答案是肯定的。下面我們來盤點一下模型的跨界、破界表現如何?將 DETR 的結構具體化,如下圖所示:DETR 使用常規的 CNN 主幹來學習輸入圖像的 2D 表示。模型將其展平並在將其傳遞到 transformer 編碼器之前進行位置編碼補充。然後,transformer 解碼器將少量固定數量的學得位置嵌入作為輸入,稱為對象查詢,並另外參與編碼器的輸出。
  • 策劃:我又來搞事情了,新版本裝備合成!所有主動裝備調整!直接無敵!
    不得不說最近策劃準備搞一波大事情。我估計下個賽季絕對翻天覆地的變化。本來我以為今天應該爆料就是新版本主宰以及暴君的進化。 先給大家去細講一下,策劃到底搞了什麼事情! 唯一被動-寒霜:普攻會給目標附加寒霜效果,可疊加4層,每層減少15%攻速,持續1秒。達到4層寒霜效果時還會對目標繳械1秒,同一目標5秒內只會受一次寒霜繳械的影響。該效果的冷卻時間:0.2秒。
  • ...利用基於遷移學習策略的transformer 模型進行Heck反應預測
    但是受限於化學數據的規模較小,對於小數據反應transformer模型的預測效果並不顯著。該文研究者創新性地提出使用遷移學習(transfer learning)來突破這個困局,使小數據的高精度預測能夠成為現實。值得注意的是,該文所使用的遷移學習,是一類經典的機器學習優化手段。該方法通過將化學領域的基礎知識轉移到特定的小數據預測,可以有效地提高模型對於小數據集的知識理解和性能預測。
  • |利用基於遷移學習策略的transformer 模型進行Heck...
    但是受限於化學數據的規模較小,對於小數據反應transformer模型的預測效果並不顯著。該文研究者創新性地提出使用遷移學習(transfer learning)來突破這個困局,使小數據的高精度預測能夠成為現實。值得注意的是,該文所使用的遷移學習,是一類經典的機器學習優化手段。該方法通過將化學領域的基礎知識轉移到特定的小數據預測,可以有效地提高模型對於小數據集的知識理解和性能預測。
  • 【transformer】 你應該知道的 transformer
    為什麼需要用transformer在提到為什麼需要用transformer的時候,我們需要了解,在沒有transformer的時候,我們都是用什麼來完成這系列的任務的呢?我們來看看transformer的具體結構圖。由下圖所示,它主要由左邊的encoder+input以及右邊的decoder+input+output組成。我們將會一一介紹。
  • 【綜述專欄】3W字長文帶你輕鬆入門視覺transformer
    地址:https://www.zhihu.com/people/huanghaian01transformer結構是google在17年的Attention Is All You Need論文中提出,在NLP的多個任務上取得了非常好的效果,可以說目前NLP發展都離不開transformer。
  • (圖文版)C4D+AE教程:像素入侵的效果是如何製作的
    然後把視頻中的一些內容變成像素。關於實景合成以及像素化,我之前也分享過幾篇內容:所以自己也很想動手試試這種像素入侵的效果,無奈水平有限,對於處理比較複雜的場景,還是有點力不從心。好了,準備工作就這麼多,今天我們就來看看這種像素入侵的效果是如何製作的吧!首先第一步還是需要進行攝像機反求,但是由於我們的畫面幾乎沒有透視變化。所以這裡我們用的是以前實景照片合成中的方法而不是使用運動跟蹤。
  • Transformer在CV領域有可能替代CNN嗎?
    唯有寄希望於巨頭公司和機構有更大的擔當,當好這個時代的領頭羊和風向標,在制度的籠子下引領著這個時代朝著健康向上的道路去發展,而不是諸如一窩蜂的跑到菜市場去搞「社區團購」之類的割韭菜活動,而是應該做到真正意義上的「科技向善」。
  • 千萬像素就夠用 為何大家還惦記著高像素?
    高像素,一個老生常談的問題。相機發展,像素自然是越來越高,但是從一百萬像素到一千萬像素,像素的進步優勢是明顯的,從兩千萬像素到五千萬像素,似乎像素的提升對攝影的直接改變並不明顯。今天這篇文章,我們就來看一下相機發展路上,多少萬像素可以對應什麼事情,我們又應該怎麼看到高像素。
  • 蘋果和谷歌證明手機相機軟體比百萬像素更重要
    在數字理論市場,智慧型手機提供48、64和10800萬像素的傳感器。他們運用了一個古老的理論,即數字越大越好。但如果問蘋果、谷歌和三星,他們會告訴你,你只需要1200萬像素,事實真是如此嗎。雖然百萬像素在數據看起來沒有什麼邏輯問題,但將它們轉換成好看的圖像是另一項工作。
  • 華為引發CMOS軍備競賽,像素越高效果越好嗎?
    10月30日上午,三星電子今天發布兩款新的ISOCELL CMOS傳感器,分別是4800萬像素的Bright GM1和3200萬像素的Bright GD1。GM1和GD1的單個像素尺寸為0.8μm,定位是在小模組下提供高像素解析力。
  • transformer什麼意思
    transformer什麼意思transform,我們前面背過,意思是變形、變樣,尤其是好的改變。transformer(配色不錯,很工業)transformer (像一隻鳥)transformer學單詞,只記住意思可不行,會用才行,小夥伴們可以在評論區造句,我們一起學習哦!
  • 千萬像素就夠用 為何大家還惦記著高像素?(全文)_佳能數位相機...
    高像素,一個老生常談的問題。相機發展,像素自然是越來越高,但是從一百萬像素到一千萬像素,像素的進步優勢是明顯的,從兩千萬像素到五千萬像素,似乎像素的提升對攝影的直接改變並不明顯,今天這篇文章,我們就來看一下相機發展路上,多少萬像素可以對應什麼事情,我們又應該怎麼看到高像素。
  • 列印高像素! 從輸出看高像素相機有多強
    現如今相機的解析度越來越高,像素數更是與日俱增。那麼既然如今相機的像素數如此之高,我們如果將這些高像素的照片列印出來,能夠達到怎樣水平的效果呢?這一次,我們就離開電腦屏幕,用印表機真實列印的照片,來看看如今的這些高像素135相機究竟能達到怎樣的水平!
  • 圖解OpenAI的秘密武器GPT-2:可視化Transformer語言模型
    在隨後的許多研究工作中,這種架構要麼去掉了encoder,要麼去掉了decoder,只使用其中一種transformer堆棧,並儘可能高地堆疊它們,為它們提供大量的訓練文本,並投入大量的計算機設備,以訓練其中一部分語言模型,這一研究需要花費數十萬美元,就像在研究AlphaStar時也投入了數百萬美元的資金。
  • 網站廣告1像素1美元 21歲少年竟狂賺百萬
    許多人可能聽過MillionDollarHomePage(百萬美元主頁)這個網站。與一般的網站運營方式不同,這個網站不提供任何形式的信息服務以吸引訪問量,它的整個主頁全是廣告。他製作了MillionDollarHomePage這個網站,並將網頁劃分成10000個方格廣告位,每個廣告位僅10x10像素。
  • NLP攜手Transformer跨界計算機視覺,DETR:目標檢測新範式
    論文 4:《End-to-End Object Detection with Adaptive Clustering Transformer》,來自北京大學與香港中文大學的研究者提出了一種新的 transformer 變體:自適應聚類 Transformer(ACT),解決了 DETR 需要大量的計算資源來進行訓練和推理的計算成本。