曾經(jīng)大紅大紫的GAN 已過時。
馬里蘭大學(xué)副教授 Tom Goldstein 最近發(fā)表的一個推文,可謂是一石激起千層浪。
就連科技圈的大佬們也紛紛前來關(guān)注:

話題里 " 劍指 " 的關(guān)鍵詞則是 Diffusion Model,用 Tom 的話來說就是:
在 2021 年,它甚至可以說是聞所未聞。
但其實這個算法并不陌生,因為它正是 AI 作畫神器DALL · E的核心。
而且 DALL · E 的作者打一開始就 " 沒看上 "GAN,直接將其放棄。
無獨有偶,同樣的話題在國內(nèi)也引發(fā)了不小的討論:

那么圖像生成領(lǐng)域的這波 " 后浪推前浪 ",究竟是為何?
咱們這就來盤一盤。
什么是 Diffusion Model?
Diffusion Model 這次被拉進聚光燈之下,不得不歸功于各類 "AI 一句話作圖 " 神器的火爆。
例如 OpenAI 家的 DALL · E 2:

谷歌家的 Imagen:

不難看出,這些近期大流行的圖像生成神器,不論是真實程度亦或是想象、理解能力,都是比較符合人類的預(yù)期。
因此它們也成為了這屆網(wǎng)友們把玩的 " 新寵 "(當(dāng)年 GAN 出道的時候也是被玩壞了)。
而如此能力背后的關(guān)鍵,便是 Diffusion Model。
它的研究最早可以追溯到 2015 年,當(dāng)時,斯坦福和伯克利的研究人員發(fā)布了一篇名為 Deep Unsupervised Learning using Nonequilibrium Thermodynamics 的論文:

但這篇研究和目前的 Diffusion Model 非常不一樣;而真正使其發(fā)揮作用的研究是 2020 年,一項名為 Denoising Diffusion Probabilistic Models 的研究:

我們可以先來看一下各類生成模型之間的對比:

不難看出,Diffusion Model 和其它模型的不同點在于,它的 latent code ( z ) 和原圖是同尺寸大小的。
若是簡單來概括 Diffusion Model,就是存在一系列高斯噪聲(T 輪),將輸入圖片 x0 變?yōu)榧兏咚乖肼?xT。
再細分來看,Diffusion Model 首先包含一個前向過程(Forward diffusion process)。
這個過程的目的,就是往圖片上添加噪聲;但在這一步中還無法實現(xiàn)圖片生成。

其次是一個逆向過程(Reverse diffusion process),這個過程可以理解為 Diffusion 的去噪推斷過程。

最后在訓(xùn)練階段,則是通過對真實數(shù)據(jù)分布下,最大化模型預(yù)測分布的對數(shù)似然。
上述的過程是基于 DDPM 這項研究展開。
不過知乎用戶" 我想唱 high C"(TSAIL 博士)認為:
DDPM 提出的時候,領(lǐng)域里的研究者其實并不完全清楚這個模型背后的數(shù)學(xué)原理,所以文章里的描述沒有探尋到更本質(zhì)的數(shù)學(xué)原理。
在他看來,直到斯坦福大學(xué) Yang Song 等在 Score-Based Generative Modeling through Stochastic Differential Equations 中,才首次揭示了 diffusion model 的連續(xù)版本對應(yīng)的數(shù)學(xué)背景。
并且將統(tǒng)計機器學(xué)習(xí)中的 denoising score matching 方法與 DDPM 中的去噪訓(xùn)練統(tǒng)一起來。

更多細節(jié)過程可以參考文末鏈接中的論文詳情。
那么接下來需要探討的一個問題是:
為什么 GAN 這么快會被取代?
用 OpenAI 的一篇論文內(nèi)容來講,用 Diffusion Model 生成的圖像質(zhì)量明顯優(yōu)于 GAN 模型。
DALL · E 是個多模態(tài)預(yù)訓(xùn)練大模型," 多模態(tài) " 和 " 大 " 字都說明,訓(xùn)練這個模型的數(shù)據(jù)集十分龐大冗雜。
發(fā)表這篇推特的 Tom Goldstein 教授提到,GAN 模型訓(xùn)練過程有個難點,就是眾多損失函數(shù)的鞍點(saddle-point)的最優(yōu)權(quán)重如何確定,這其實是個蠻復(fù)雜的數(shù)學(xué)問題。

在多層深度學(xué)習(xí)模型的訓(xùn)練過程中,需通過多次反饋,直至模型收斂。
但在實際操作中發(fā)現(xiàn),損失函數(shù)往往不能可靠地收斂到鞍點,導(dǎo)致模型穩(wěn)定性較差。即使有研究人員提出一些技巧來加強鞍點的穩(wěn)定性,但還是不足以解決這個問題。
尤其面對更加復(fù)雜、多樣化的數(shù)據(jù),鞍點的處理就變得愈加困難了。
與 GAN 不同,DALL · E 使用 Diffusion Model,不用在鞍點問題上糾結(jié),只需要去最小化一個標(biāo)準(zhǔn)的凸交叉熵損失(convex cross-entropy loss),而且人已經(jīng)知道如何使其穩(wěn)定。
這樣就大大簡化了模型訓(xùn)練過程中,數(shù)據(jù)處理的難度。說白了,就是用一個新的數(shù)學(xué)范式,從新穎的角度克服了一道障礙。
此外,GAN 模型在訓(xùn)練過程中,除了需要 " 生成器 ",將采樣的高斯噪聲映射到數(shù)據(jù)分布;還需要額外訓(xùn)練判別器,這就導(dǎo)致訓(xùn)練變得很麻煩了。
和 GAN 相比,Diffusion Model 只需要訓(xùn)練 " 生成器 ",訓(xùn)練目標(biāo)函數(shù)簡單,而且不需要訓(xùn)練別的網(wǎng)絡(luò)(判別器、后驗分布等),瞬間簡化了一堆東西。
目前的訓(xùn)練技術(shù)讓Diffusion Model 直接跨越了 GAN 領(lǐng)域調(diào)模型的階段,而是直接可以用來做下游任務(wù)。

△Diffusion Model 直觀圖
從理論角度來看,Diffusion Model 的成功在于訓(xùn)練的模型只需要 " 模仿 " 一個簡單的前向過程對應(yīng)的逆向過程,而不需要像其它模型那樣 " 黑盒 " 地搜索模型。
并且,這個逆向過程的每一小步都非常簡單,只需要用一個簡單的高斯分布(q ( x ( t-1 ) | xt ) )來擬合。
這為 Diffusion Model 的優(yōu)化帶來了諸多便利,這也是它經(jīng)驗表現(xiàn)非常好的原因之一。
Diffushion Model 是否就是完美?
不見得。
從趨勢上來看,Diffushion Model 領(lǐng)域確實正處于百花齊放的狀態(tài),但正如 " 我想唱 high C" 所述:
這個領(lǐng)域有一些核心的理論問題還需要研究,這給我們這些做理論的人提供了個很有價值的研究內(nèi)容。>
并且,哪怕對理論研究不感興趣,由于這個模型已經(jīng)很 work 了,它和下游任務(wù)的結(jié)合也才剛剛起步,有很多地方都可以趕緊占坑。
我相信 Diffusion Model 的加速采樣肯定會在不久的將來徹底被解決,從而讓 Diffusion Model 占據(jù)深度生成模型的主導(dǎo)。
而對于 Diffusion Model 的有效性以及很快取代 GAN 這件事,馬毅教授認為充分地說明了一個道理:
幾行簡單正確的數(shù)學(xué)推導(dǎo),可以比近十年的大規(guī)模調(diào)試超參調(diào)試網(wǎng)絡(luò)結(jié)構(gòu)有效得多。
不過對于這種 " 前浪推后浪 " 的火熱,馬毅教授也有不一樣的觀點:
希望年輕的研究員端正研究的目的和態(tài)度,千萬不要被目前熱的東西忽悠。
包括 Diffusion Process,這其實也是好幾百年 old 的想法,只是老樹發(fā)新芽,找到新的應(yīng)用。
原文地址:http://www.myzaker.com/article/630106b58e9f0952772e2329
轉(zhuǎn)載請注明:Diffusion Model一發(fā)力,GAN就過時了??? | 快導(dǎo)航網(wǎng)







川公網(wǎng)安備51012402001058號