【完结】12篇GAN的优化文章大盘点,浓浓的数学味儿
專欄《GAN的優(yōu)化》(第一季)正式完結(jié)啦!
?
在這一季里,我們從生成模型出發(fā),講述了GAN的基本理論,包括工作原理,更具有普適性的f散度度量和Wasserstein距離,以及IPM框架并順帶給出了一個處理WGAN的萊布尼茨限制的優(yōu)雅解決方法;接著介紹了GAN訓(xùn)練困難的原因以及幾個訓(xùn)練技巧;然后從動力學(xué)視角出發(fā)探索GAN的訓(xùn)練,將GAN與動力學(xué)方程聯(lián)系在一起,講述了一致優(yōu)化,并總結(jié)了各種GAN的正則項的優(yōu)劣;最后我們講了一下GAN中的模式崩潰問題,并介紹了幾個比較好的解決方案。
?
至此,我們再對整個GAN的優(yōu)化專欄第一季的內(nèi)容進(jìn)行一個大總結(jié)!
?
作者 | 小米粥 言有三
編輯 | 言有三
1 GAN原理
第一篇文章首先講一部分關(guān)于生成模型的內(nèi)容,從極大似然法到顯式的定義概率密度函數(shù)到隱式定義概率密度函數(shù)的GAN。接著在GAN中,我們介紹了基本結(jié)構(gòu),工作原理,推導(dǎo)了幾個基本結(jié)論,并從分布度量和博弈論兩個角度闡述了GAN。
【GAN的優(yōu)化】GAN優(yōu)化專欄上線,首談生成模型與GAN基礎(chǔ)
2 f-GAN
第二篇文章向大家介紹了概率密度函數(shù)的距離、由f散度定義的一系列距離、共軛函數(shù),之后推導(dǎo)了如何使用fGAN生成原始的GAN,最后闡述了KL散度和JS散度的一些問題。fGAN是一個具有一定“通用”意義的模型,它定義了一個框架,從這個框架中可以自然而然得衍生出其他GAN模型。
【GAN的優(yōu)化】從KL和JS散度到fGAN
3 WGAN和SNGAN
第三篇文章帶大家領(lǐng)略了一下WGAN,首先指出了之前f散度的問題,接著介紹了一種新的距離度量Wasserstein距離,并展示了使用對偶方法轉(zhuǎn)化Wasserstein距離,WGAN是一個具有重要里程碑意義的模型,非常值得反復(fù)研究。
?
第四篇文章帶領(lǐng)大家一起學(xué)習(xí)了SNGAN,學(xué)習(xí)了特征值和奇異值相關(guān)問題,學(xué)習(xí)如何使用譜范數(shù)解決1-Lipschitz限制,并推導(dǎo)了SNGAN,最后給出了一個快速求解矩陣最大奇異值的方法。SNGAN是比較重要而且優(yōu)雅得解決1-Lipschitz限制的方案。
-
【GAN優(yōu)化】詳解對偶與WGAN
-
【GAN優(yōu)化】詳解SNGAN(頻譜歸一化GAN)
4 IPM
第五篇文章向大家介紹了GAN的IPM框架。關(guān)于GAN的目標(biāo)函數(shù),除了f-divergence外還有另一大類:IPM,非常熟悉的WGAN便是屬于IPM框架下的一種GAN,IPM(integral probability metric)也是一種對于兩個概率分布之間的距離的度量,我們在這篇文章中選擇不同的函數(shù)集合F而得到不同GAN,例如FisherGAN,MMDGAN,MCGAN。
【GAN優(yōu)化】一覽IPM框架下的各種GAN
5 訓(xùn)練問題
第六篇文章重點講述了GAN訓(xùn)練中4個問題。第一個部分介紹了最優(yōu)判別器引發(fā)的梯度消失問題,第二部分使用一個例子介紹距離計算時的問題,接著第三部分將介紹優(yōu)化問題的困惑以及給出模式崩潰一個簡單解釋,最后一部分簡單談一下參數(shù)空間的問題。
【GAN優(yōu)化】GAN訓(xùn)練的幾個問題
6 訓(xùn)練小技巧
第七篇文章主要向大家介紹了GAN訓(xùn)練時的一些tricks。GAN的訓(xùn)練其實是一個尋找納什均衡狀態(tài)的過程,然而想采用梯度下降達(dá)到收斂是比較難的,先講述了GAN的納什均衡狀態(tài)以及達(dá)到此狀態(tài)的難點,然后介紹了特征匹配、歷史均值、單側(cè)標(biāo)簽平滑等幾個技巧,可以盡量保證GAN進(jìn)入收斂的狀態(tài)。
【GAN優(yōu)化】GAN訓(xùn)練的小技巧
7 GAN與動力學(xué)
第八篇文章帶大家領(lǐng)略了GAN與動力學(xué)的結(jié)合,這篇文章首先介紹了常微分方程以及如何使用歐拉法得到常微分方程的數(shù)值解,接著描述了歐拉法與動力學(xué)系統(tǒng)之間的內(nèi)在聯(lián)系,然后從動力學(xué)的系統(tǒng)重新看梯度下降算法,最后從動力學(xué)視角重新表述了GAN,提供一個新穎的視角,這是接下來兩篇分析GAN訓(xùn)練過程的理論基礎(chǔ)。
【GAN優(yōu)化】從動力學(xué)視角看GAN是一種什么感覺?
8 一致優(yōu)化
第九篇文章介紹了一個非常優(yōu)雅的GAN優(yōu)化算法,一致優(yōu)化。先從一個關(guān)于動力學(xué)系統(tǒng)收斂的重要命題出發(fā),將其與GAN對接起來,然后進(jìn)入動力學(xué)系統(tǒng)的特征值分析,最后介紹一致優(yōu)化的所提出的正則項,而且最重要的是,這里給出了一定條件下,使用一致優(yōu)化算法可收斂到納什均衡狀態(tài)的理論保證。
【GAN優(yōu)化】詳解GAN中的一致優(yōu)化問題
9 GAN的正則項
第十篇文章里用了一個非常簡單且直觀的Dirac-GAN進(jìn)行實驗收斂性,首先說明了標(biāo)準(zhǔn)的GAN或者WGAN是無法收斂到納什均衡的,需要添加正則項。接下來,WGAN-GP也無法收斂,而一致優(yōu)化正則項和zero centered gradient可以實現(xiàn)收斂,這為我們提供了很好的訓(xùn)練GAN的啟示指導(dǎo)。
【GAN優(yōu)化】如何選好正則項讓你的GAN收斂
10 模式崩潰
第十一篇文章首先講了GAN的模式崩潰問題,并用一個簡單的例子做了過程示意,接著重點描述了通過修改目標(biāo)函數(shù)來解決模式崩潰的方法,著重介紹了unrolled GAN的思想,并同樣進(jìn)行了過程示意描述,最后又比較簡單地描述了另一種方案:DRAGAN。
?
第十二篇文章首先將說明模式崩潰問題的本質(zhì)是GAN無法通過訓(xùn)練達(dá)到最優(yōu)納什均衡狀態(tài),并介紹兩種解決模式崩潰問題的思路:修改目標(biāo)函數(shù)和網(wǎng)絡(luò)結(jié)構(gòu),然后介紹了一種簡單而有效的解決方案MAD-GAN,最后一部分給出MAD-GAN的強(qiáng)化版本MAD-GAN-Sim。
-
【GAN優(yōu)化】什么是模式崩潰,以及如何從優(yōu)化目標(biāo)上解決這個問題
-
【GAN優(yōu)化】解決模式崩潰的兩條思路:改進(jìn)優(yōu)化和網(wǎng)絡(luò)架構(gòu)
總結(jié)
?
12篇文章,說多不多,說少也不少,真的是花了自己非常大的心血,質(zhì)量不敢說多高,但是自己確實是在認(rèn)認(rèn)真真、絞盡腦汁做這件事情。同時也非常感謝
有三AI,給了我一個寫東西的平臺,感謝給我的寬松自由的環(huán)境。
?
要忙于實驗、論文,忙于其他的事情,公眾號的部分暫時就先寫到這里吧,其實,關(guān)于GAN的知識內(nèi)容非常非常多,遠(yuǎn)非幾篇文章能描述,每次涉及到到的內(nèi)容我也只能淺嘗輒止,或者選擇具有代表性的內(nèi)容聊一聊。
?
說一下,關(guān)于GAN的其他內(nèi)容,網(wǎng)絡(luò)結(jié)構(gòu)或者隱空間,應(yīng)用等等之類,我以后還會繼續(xù)涉及到,之前相關(guān)內(nèi)容也會加強(qiáng)完善,可能會用別的形式展示出來,敬請期待。
?
Ps:大家一定要持續(xù)關(guān)注有三AI哦!
?
?
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的【完结】12篇GAN的优化文章大盘点,浓浓的数学味儿的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【AutoML】优化方法可以进行自动搜索
- 下一篇: 【NLP】ALBERT:更轻更快的NLP