超越StyleGAN!TransGAN更新!用純Transformer構(gòu)建高分辨率GAN | 附代碼
文末附代碼 + 論文地址 + 小彩蛋
CV 研究者對 transformer 產(chǎn)生了極大的興趣并取得了不少突破。這表明,transformer 有可能成為計算機視覺任務(wù)(如分類、檢測和分割)的強大通用模型。我們都很好奇:在計算機視覺領(lǐng)域,transformer 還能走多遠(yuǎn)?對于更加困難的視覺任務(wù),比如生成對抗網(wǎng)絡(luò) (GAN),transformer 表現(xiàn)又如何?
在今年年初的時候,德克薩斯奧斯汀分校的團隊推出了使用純Transformer構(gòu)建 Generative Adversarial Network并且在Cifar-10, STL-10, CelebA (64 x 64) 等常見benchmark中取得了不錯的成績。這幾個月以來,不同的研究人員都是用Transformer各個方向取得了極大的進展,Vision Transformer的研究獲得了計算機社區(qū)的廣泛關(guān)注。最近,TransGAN團隊更新了他們的結(jié)果,最新的結(jié)果表明,TransGAN不僅在低分辨率圖像任務(wù)中超越了StyleGAN,在更高分辨率(如256x256)圖像生成任務(wù)中也取得了優(yōu)異的成績。

使用Vision Transformer搭建GAN網(wǎng)絡(luò)不僅來源于對探索Transformer在視覺任務(wù)中表現(xiàn)力的好奇,同時也期望解決卷積神經(jīng)網(wǎng)絡(luò)(CNN)長久以來面臨的多種缺陷。例如,局部感受野不利于捕捉全局信息,以及空間不變性不利于獲取隨空間位置改變的特征。
首先讓我們簡單了解一下適用于高分辨率圖像生成任務(wù)的TransGAN具體結(jié)構(gòu)

TransGAN包含了一個內(nèi)存友好的基于 transformer 的生成器和一個多尺度金字塔結(jié)構(gòu)的判別器。其中,生成器采用逐級放大分辨率的方式減小計算量,每一個層級之間采用了上采樣模塊來提高分辨率。在低分辨率層級中,研究人員采用了簡單的Bicubic Upsample,保持模型的寬度而僅放大分辨率,在高分辨率層級中(分辨率大于32x32),則采用Pixelshuffle模塊,使得分辨率放大的同時模型寬度減小為原來的1/4。
對于判別器而言,文章采用了多尺度輸入的極聯(lián)判別器,而不是與原始ViT相同的結(jié)構(gòu)。這是因為當(dāng)分辨率繼續(xù)上升時,繼續(xù)將每一張圖片視為多個塊狀圖片的組合會面臨多種問題。具體而言,當(dāng)切割的塊狀圖片大小較小時,判別器能夠更有效地處理圖片的細(xì)節(jié)和紋理信息,然而,較小的塊狀圖片將導(dǎo)致總塊數(shù)長度較大,這將造成極大的計算量消耗。另一方面,雖然使用較大的塊狀圖片可以捕捉到豐富的結(jié)構(gòu)信息并解決計算量的問題,每一張塊狀圖片捕捉到細(xì)節(jié)信息將會損失,不利于生成細(xì)節(jié)更豐富的圖片。為了解決這個問題,研究人員提出來多尺度判別器,通過將輸入圖片切割成不同大小的塊狀圖片來同時捕捉紋理信息和結(jié)構(gòu)信息。與此同時,判別器采用了金字塔結(jié)構(gòu),不斷地降低特征的分辨率以獲取更高的計算效率。
為了將TransGAN應(yīng)用于更高的分辨率,文中提出了采用Grid Self-attention來替換standard self-attention。研究人員發(fā)現(xiàn)原始的self-attention雖然能捕捉全局信息,但是在更高的分辨率上這一優(yōu)點反而成了累贅。這是由于從低分辨率高分辨率圖像時只需要在局部區(qū)域捕捉并生成細(xì)節(jié)信息。文中提出的Grid Self-Attention通過不重疊的窗口將原始特征圖分割成同一大小的小圖,并只在小圖中使用self-attention,這種方法極大地降低了self-attention的計算消耗和顯存消耗。文中同時討論了Grid Self-attention可能帶來的潛在問題,如分割的小圖之間因為信息交互被阻礙而導(dǎo)致的邊界損失。實際上,研究人員發(fā)現(xiàn)在足夠的訓(xùn)練時間下,這種邊界損失會逐漸消失,這是由于判別器的感受野覆蓋了整張圖片,從而驅(qū)動生成器生成不包含邊界損失的圖片。


盡管上文描述的生成器和判別器在設(shè)計上擁有多種優(yōu)勢,訓(xùn)練由純Transformer構(gòu)建的GAN依舊不是一件輕而易舉的事,這主要是因為GAN和Transformer都面臨著訓(xùn)練及其不穩(wěn)定的問題。對此,研究人員提出了一系列訓(xùn)練技巧,包括數(shù)據(jù)增強,相對位置編碼,以及改進的歸一化結(jié)構(gòu)。最終,在同樣使用數(shù)據(jù)增強的設(shè)定下,TransGAN在Cifar-10,STL-10,以及Celeba (128 x 128)等常用benchmark中取得了最好的成績,并超過StyleGAN-v2等結(jié)構(gòu)。

同時,實驗結(jié)果表明提出的各種模塊的優(yōu)越性


在將應(yīng)用TransGAN于更高分辨率時,TransGAN繼續(xù)保持了優(yōu)越的性能并且生成了細(xì)節(jié)豐富的高清圖像

通過觀察比較基于Transformer和卷積神經(jīng)網(wǎng)絡(luò)的GAN,研究人員發(fā)現(xiàn),Transformer在訓(xùn)練早起并不能有效生成有意義的圖片,例如人臉的五官,這可能是由于缺失了卷積神經(jīng)網(wǎng)絡(luò)具備的歸納偏置。但是,在足夠的數(shù)據(jù)和訓(xùn)練下,Transformer逐漸學(xué)習(xí)到有意義的位置信息和歸納偏置,最終生成細(xì)節(jié)豐富的高清圖片。

在總結(jié)中,研究人員表示將繼續(xù)將純Transformer應(yīng)用于更多數(shù)據(jù)集和更高的分辨率當(dāng)中。
論文地址:https://arxiv.org/abs/2102.07074
代碼地址:https://github.com/VITA-Group/TransGAN

七月在線 【CV高級小班 第八期】將在今晚8:00開班!
如果你打算轉(zhuǎn)行CV,或者你已經(jīng)有一定基礎(chǔ)想要挑戰(zhàn)高薪,可以掃描下方二維碼試聽課程(僅限10人)!
本期CV高級8,繼續(xù)沿用上一期完整的“作業(yè)考試且批改”的教學(xué)機制,且在內(nèi)容、項目、就業(yè)三個維度上做了全新升級。
一切為了學(xué)員學(xué)的更好,最終更好的高薪就業(yè)、或跳槽漲薪/升職加薪。
618活動期間報名,還加送價值萬元【三年VIP&三年GPU】及【深度學(xué)習(xí)集訓(xùn)營】。
以下是課程大綱 ↓↓
向下滑動查看更多








學(xué)員評價

就業(yè)信息
戳↓↓“閱讀原文”搶占試聽名額!
