OpenAI新論文打敗GAN達到SOTA!這個霸氣擴散模型是噱頭還是干貨
FaceAPP最近又小火了一把,小編也下載體驗了一下。

還行,有點兒意思。
FaceAPP的背后便是基于生成對抗網絡(GAN)的圖像生成技術。
自從2014年誕生以來,尤其是在人臉生成方面的Deepfake,GAN幾乎完全主導了圖像生成領域的研究和應用。
但是,GAN很難訓練,并且容易出現模式崩潰等問題。
別人用Deepfake「模型」生成的視頻和我自己用Deepfake「魔性」生成的視頻
于是,新的SOTA模型誕生了
針對GAN的這些問題,OpenAI的兩位研究人員Prafulla Dhariwal和Alex Nichol便著眼于其他體系架構。
在他們發布的最新論文「擴散模型在圖像合成方面擊敗了GAN」中,稱提出的擴散模型架構解決了GAN的缺點,并且在圖像生成任務中擊敗了GAN,達到了SOTA的水平。
不得不說,他們在題目中便用到「Beat」(擊敗)這個詞,野心還是很大的啊!
「在ImageNet 512x512上獲得了3.85 FID。不僅可以保持與BigGAN相當的水準,還可以將每個采樣的前向傳播降低到25個,同時對分布有更好的覆蓋。」
無意中搜了一下,全文有15個「state-of-the-art」,除了個別兩三個是形容GAN(不是被打敗,就是有轉折),其他基本全是形容他們自己新模型的。不管這個是不是SOTA,反正作者覺得肯定是了。
時間回溯到三個月前
非常有趣的是,在引用中,有一篇論文的作者同樣是這兩位。
今年2月的時候他們發表了一篇名為「改進的降噪擴散概率模型」的論文,這其中也有和GAN的對比,不過這個時候還沒有將GAN「擊敗」。
沒想到,三個月后他們在新的論文中就表示自己成功了,看來效率還挺快的。
同樣是1億個參數的模型,BigGAN-Deep在FID上的表現上要明顯優于作者此時訓練的DDPM。不過這二位用2.7億個參數訓練的模型強行勝利了一波。
去噪擴散概率模型(DDPM)——改進版
擴散模型是另一類深度學習模型,在圖像生成任務中表現也很出色。
與GAN學會學習將隨機噪聲圖像映射到訓練分布中的某個點不同,擴散模型會獲取噪聲圖像,然后執行一系列降噪步驟,逐步減少噪聲并生成屬于訓練數據分布的圖像。
DDPM可以更快地采樣并獲得更好的對數似然率,同時對采樣質量的影響很小。而通過增加訓練計算量可以帶來更好的樣本質量和對數似然性。
這二位作者表示:「我們驚奇地發現,經過改進的模型可以使用更少的采樣次數」。也難怪作者會把25次的前向采樣作為重點宣傳對像。
進一步了解可以參考論文:
https://arxiv.org/pdf/2102.09672.pdf
「全新」的擴散模型
三個月后,Dhariwal和Nichol決定一雪前恥,再次對擴散模型的體系結構進行改進,從而使得模型的性能能夠得到進一步提升。
- 等比例增加深度與寬度,使模型尺寸相對恒定。
- 增加注意力頭(attention head)的數量。
- 在32×32、16×16和8×8中加入注意力層(attention)。
- 使用BigGAN的殘差模塊(residual module)對激活進行上采樣和下采樣。
- 調整殘差連接(residual connections)的尺度。
增加注意力頭的數量或減少每個頭的通道數都可以改善FID。
經過對比,模型最后選擇使用128個基本通道,每個分辨率2個殘差模塊,多分辨率注意力和BigGAN上/下采樣,并且訓練模型進行700K次迭代,每個注意力頭部64個通道。
對于ImageNet 128×128模型,隨著分類器梯度的變化,樣本質量也會發生變化。梯度在1.0以上時可以在準確率和召回率之間得到一個平滑的trade off。
BigGAN-deep截斷變化時的trade off。
結果與評估
OpenAI的擴散模型在每項任務中都得到了最高的FID評分,除一項任務外的所有任務也都得到了最高的sFID評分。
改進的模型結構在LSUN和ImageNet 64×64上可以得到SOTA的圖像生成結果。
對于更高分辨率的ImageNet,模型要優于最佳的GAN。此時模型可以獲得類似于GAN的感知質量,同時保持較高的覆蓋率(以召回率衡量),甚至只需要25次擴散。看來作者對這25次前向傳播的結果是真的十分滿意啊。
生成模型的樣本質量之間的比較。ADM是指文中的擴散模型,ADM-G則是加上分類器的。
左邊是BigGAN-deep模型的結果,中間是OpenAI擴散模型的結果,右邊是原始訓練集中的圖像。
上面的圖像給人的是差不多的,但是研究人員解釋說,擴散模型從訓練集中獲得了更多的信息:
「雖然樣本的感知質量相似,但是擴散模型包含的內容比GAN要多,例如鴕鳥頭部的特寫,單只的火烈鳥,不同角度的芝士漢堡以及沒有人握著的魚。」
作者的結論
擴散模型與GAN相比,可以獲得更好的樣本質量。
經過改進的體系結構足以在無條件圖像生成任務上實現SOTA,分類器引導技術使模型可以進一步提高類條件任務的樣本質量。
擴散模型可以減少GAN與擴散模型之間的采樣用時的差距,但是在采樣過程中仍然需要多次前向傳播。
最后,通過將引導與上采樣相結合,可以使高分辨率條件下圖像合成的結果達到SOTA。
此時,又是一個轉折。
其實作者自己也承認,現在的擴散模型在訓練計算量上要高于GAN,采樣速度也不如GAN,而且在單步模型上無法與GAN相競爭。
最重要的是,文章中的分類器引導技術僅限于被標記的數據集,并且作者并沒有提供有效的策略在未標記的數據集中做準確性和多樣性之間的trade off。
網友也評論說「從計算角度看,無論是在內存還是在步數上,擴散模型都要比GAN的消耗大得多。」
這么看來,GAN在短時間內依然會稱霸圖像生成領域。