超越BigGAN,DeepMind提出「史上最強非GAN生成器」VQ-VAE-2
能生成逼真圖像的不只有 GAN。
去年 9 月,BigGAN 橫空出世,被譽為「史上最強 GAN 生成器」,其逼真程度眾多研究者高呼「鵝妹子嚶」!相關論文也被 ICLR 2019 接收為 Oral 論文。
今年 2 月,BigGAN 的一作又發布了更新版論文,提出了新版 BigGAN——BigGAN-deep,其訓練速度、FID 和 IS 都優於原版。
BigGAN 及其加強版的問世讓我們看到了生成對抗網路在圖像生成方面的巨大威力,但 GAN在生成圖像方面真的無懈可擊嗎?它是生成圖像的最佳方式嗎?
近日,DeepMind 的研究人員發表論文表示,他們利用 VQ-VAE 生成了可以媲美當前最佳 GAN 模型(BigGAN-deep)的圖像,而且圖像多樣性上要優於 BigGAN-deep。該模型藉助圖像壓縮方面的概念,將像素空間映射到量化的離散空間,從而進一步藉助自編碼器的結構學習怎樣生成高清大圖。
此外,VQ-VAE 尤其適用於生成較大的圖像。研究者表明,VQ-VAE 多尺度層級結構能從局部的紋理到全局的形狀慢慢完善生成效果,生成的樣本質量能夠在 ImageNet 等多層面數據集上與當前最優的生成對抗網路媲美,同時不會出現生成對抗網路中模式崩塌和多樣性缺失等已知的缺陷。
- 論文地址:https://arxiv.org/pdf/1906.00446.pdf
- 更多樣本地址:https://drive.google.com/file/d/1H2nr_Cu7OK18tRemsWn_6o5DGMNYentM/view
生成效果
即使不採用生成對抗網路架構,只使用自編碼器結構與 PixelCNN,VQ-VAE 也能分層地生成真正高清大圖。也許它和 BigGAN的效果差不多,但生成樣本的多樣性肯定是更有優勢的。
VQ-VAE 這種模型在生成真實高清樣本時,它能捕捉數據集中展示的多樣性。這種多樣性可能體現在年齡、性別、膚色和發色等特徵上,這些是 BigGAN 很難顯式捕捉到的。如下展示了 VQ-VAE 在 FFHQ-1024 高清數據集上訓練後的生成效果,細節都非常合理:
那麼 VQ-VAE 和 BigGAN 的直觀對比是什麼樣的?如下左邊 16 張圖為 VQ-VAE 的生成效果,右邊 16 張為 BigGAN 的生成效果。它們都是根據 ImageNet 中的同一類別生成的,但我們會發現 VQ-VAE 不僅在多樣性上非常強,在生成細節上也非常厲害。BigGAN 生成的人臉並不是太自然,五官錯位有些嚴重。
深度生成模型都有什麼問題
研究者將常見的生成模型分為兩種:一種是基於似然的模型,包括 VAE 及其變體、基於流的模型、以及自回歸(autoregressive)模型,另一種是隱式生成模型,如生成對抗網路(GAN)。這些模型都會存在某些方面的缺陷,如樣本質量、多樣性、生成速度等。
GAN 利用生成器和判別器來優化 minimax 目標函數,前者通過將隨機雜訊映射到圖像空間來生成圖像,後者通過分辨生成器生成的圖像是否為真來定義生成器的損失函數。大規模的 GAN 模型已經可以生成高質量和高清晰度的圖片。然而,眾所周知,GAN 生成的樣本並不能完全捕捉真實分布中的多樣性。另一方面,針對生成對抗網路的評價非常困難,目前依然不存在一個較通用的度量標準,用於在測試集中判斷模型是否過擬合。
與生成對抗網路不同的是,基於似然的模型在訓練集上優化一個負對數似然函數(negative log-likelihood)。這一目標函數可以對模型進行對比並度量在未見數據上的泛化能力。此外,由於模型在訓練集上對所有樣本分配的概率都達到最大,理論上基於似然的模型可以覆蓋數據的所有模式,不存在像生成對抗網路那樣的模式崩塌(mode collapse)和多樣性缺失(lack of diversity)問題。
但是在這些優點之外,直接最大化像素空間的似然是困難的。首先,像素空間上的負對數似然不一定是對生成樣本質量的良好評估方式;其次對於這些模型而言,它們不一定會關注圖像的全局結構,因此生成效果也不是很好。
「最強非 GAN 生成器」
在這篇論文中,研究者們利用了有損壓縮的思想,令生成模型可以忽略對不重要信息的建模。事實上,JPEG 等圖像壓縮技術已經表明,在不對圖像質量產生顯著影響的情況下,我們可以移除超過 80% 以上的數據。正如以前研究所提出的,我們能將圖像壓縮到離散隱變數空間,這隻需要通過自編碼器的中間表徵就能完成,即一種經量化的向量。
這些中間表徵要比原始圖像小三十多倍,但仍然能解碼並重建為極其逼真的圖像。這些離散表徵的先驗知識能利用當前最優的 PixelCNN(帶自注意力機制)建模,其可以稱為 PixelSnail。當模型從這些先驗中採樣時,解碼的圖像也會展現出高質量與重建的一致性。
圖 1:帶類別約束的圖像生成樣本(256x256),它們通過 ImageNet 上訓練的兩階段模型可以生成逼真且一致的圖像。
除了逼真以外,該生成模型在離散空間上的訓練和採樣也非常快,它比以前直接在像素空間運算要快 30 倍,這也就意味著能訓練更高解析度的圖像。最後,該研究中的編碼器和解碼器都保留了原始 VQ-VAE 的簡單性與速度,這意味著這種方法對於需要快速、低開銷的大圖編碼、解碼過程具有很大的吸引力。
生成圖像兩步走
具體而言,提出的方法遵循兩階段過程:首先我們需要訓練一個分層的 VQ-VAE,我們需要用它將圖像編碼到離散的隱空間;其次我們需要在離散的隱空間擬合一個強大的 PixelCNN 先驗,這個隱空間是通過所有圖像數據構建的。
如上演算法 1 和演算法 2 為兩階段過程,其中在第一階段學習層次化隱編碼中,我們可以藉助層次結構建模大圖像。其主要思想即將局部信息(例如紋理)與目標的幾何形狀等全局信息分開建模。在第二階段中,為了進一步壓縮圖像,並且能夠從第一階段學習到的模型中採樣,我們需要在隱編碼中學習一種先驗知識。
下圖展示了該模型的訓練和生成過程,它們的過程基本和自編碼器類似。如下左圖所示為分層 VQ-VAE 的整體架構,它是由編碼器和解碼器組成的深度神經網路。模型輸入是一張 256×256 的圖像,它會分別壓縮為 64×64 的底層量化隱層和 32×32 的高層量化隱層。解碼器從兩個隱層中重建圖像。
下圖右側為多階段圖像生成。高層 PixcelCNN 先驗會通過類別標籤進行約束,底層的 PixcelCNN 會以類別標籤和第一級編碼作為約束。由於前饋解碼器的存在,隱層向像素的映射速度很快。(圖 1 中的鸚鵡就是根據這個模型生成的)
當然我們也可以用更多的層級來生成更清晰的大圖。如下所示為利用不同層級編碼所生成的圖像結果。
圖 3:從多層 VQ-VAE 的三種隱層中重建圖像。最右邊的是原圖。對於每一個隱層,都會在重建中增加額外的細節。這些隱層的尺寸大約比原圖分別小 3072x,768x,192x 倍。
實驗
實驗部分展示了模型在 ImageNet 256 × 256 上訓練得到的定性和定量結果。從圖 5 中的類別條件樣本中可以看出,多個代表性類的樣本質量確實非常高。在多樣性方面,研究者提供了可以與 BigGAN-deep(當前的 SOTA GAN 模型)相媲美的模型樣本(如圖 5 所示)。從這些對照比較中可以看出,VQ-VAE 可以生成媲美 GAN 保真度的樣本,但多樣性更高。
圖 5:本文提到的方法與 BigGAN Deep 模型在生成樣本多樣性方面的比較。我們會發現即使在 BigGAN 擁有最大多樣性的情況下,VQ-VAE 生成圖像的多樣性也要顯著多一些。如果讀者放大原論文中的原圖,就會發現更多的生成細節。
建模高解析度人臉圖像
為了進一步評估文中方法在獲取數據中超長依賴方面的有效性,研究者在解析度為 1024 × 1024 的 FFHQ 數據集上訓練了一個三級分層模型。
圖 6:在 FFHQ-1024 × 1024 數據集上訓練得到的三級分層模型中的代表性樣本。該模型可以生成逼真的人臉,這些人臉符合長距離依賴,如匹配眼睛顏色或對稱的人臉特徵,同時還覆蓋了數據集中的低密度模式(如綠色頭髮)。
定量評估
本實驗中的定量評估旨在度量生成樣本的質量和多樣性。
- 負對數似然和重建誤差
表 1 為文中模型 top 先驗和 bottom 先驗的 NLL 值,在訓練和驗證方面都很接近,表示兩個網路都沒有過擬合。
表 1:top 先驗和 bottom 先驗設定下訓練和驗證的夫多數似然與均方誤差值。
- 精度-召回率(recall)度量
圖 7b:利用精度/召回率度量對多樣性—質量權衡進行定量評估
分類準確度分數(CAS)
研究者還利用最近提出的分類準確率分數(CAS)對他們的方法進行評估,這隻需要在候選模型的樣本上訓練一個 ImageNet 分類器即可,但還要評估該分類器在測試集真實圖像中的分類準確度,這樣就可以衡量樣本質量和多樣性。利用 CAS 度量的評估結果如下表所示:
表 2:真實數據集、BigGAN-deep 和 VQ-VAE 模型的分類準確率分數(CAS)
1.FID 和 Inception 分數(IS)
圖 7a:利用 FID 和 IS 對多樣性—質量權衡進行定量評估
※結合符號主義和深度學習,DeepMind提出新型端到端神經網路架構 PrediNet
※解讀目標檢測新範式:Segmentations is All You Need
TAG:機器之心 |