【GAN优化】如何选好正则项让你的GAN收敛
今天講述的內容還是GAN的訓練,也是最后一期,做幾個簡單的小實驗,告訴大家怎么給GAN加正則項,使得你的GAN盡可能收斂。其實今天的內容本來還是與動力學結合很緊密,但是考慮到復雜的數學內容可能有害無益,我就將數學部分都刪除了,只展示最直觀的結果。
作者&編輯 | 小米粥
上一期我們說了關于GAN收斂的這樣一件事情:如果矢量場v的雅可比矩陣的特征值的實部為負數,且學習速率足夠小,則GAN會局部收斂到納什均衡點。假設學習速率確實足夠小,單純考慮特征值的問題。在納什均衡點,特征值的實數部分能否出現負數?這件事情是與目標函數息息相關的,因為雅可比矩陣的一般形式如下:
不難料想,如果生成器和判別器的目標函數f和g選取得當,上述矩陣的特征值的實數部分確實有可能為負數。今天用一個小實驗來盤點一下,到底哪些GAN,哪些目標函數可能收斂。
1. Dirac-GAN
我們將使用一個極其簡單的Dirac-GAN模型作為測試對象,在一維空間中,訓練數據只有一個點,其位置固定在x=0;生成器只包含一個參數θ,生成樣本的位置在x=θ,如下圖所示:
判別器為一個簡單的線性函數與激活函數復合的形式
包括一個參數φ ,其中f為激活函數。通過選擇不同的激活函數f(t)可對應于不同的GAN形式,使用Sigmoid函數
可獲得原始形式,而選擇
可以得到WGAN的形式。Dirac-GAN的納什均衡點為(0,0),即生成的樣本與訓練數據重合。
接下來,我們依次觀察不同的GAN能否收斂到均衡點。需要說明,實際情況遠遠復雜于Dirac-GAN,樣本不只是一維也不可能只存在一個樣本點,我們只是通過它來直觀說明一些問題,得到一些啟示。
2. 標準GAN與WGAN
2.1 標準GAN
標準GAN即Goodfellow首次提出的GAN的標準形式,其損失函數的表達式為:
在Dirac-GAN中,對應的損失函數成為:
相應的動力學系統:
采用梯度下降法發現其并不收斂:
2.2 WGAN
WGAN改進了概率分布之間的距離的度量,其損失函數的表達式為:
在Dirac-GAN中,對應的損失函數成為:
這里有一個簡化處理,假設當訓練到一定程度時,φ處于0附近,其值自然小于1,滿足Lipschitz限制。若只要關心其收斂情況,這樣的假設是合理的。相應的動力學系統:
采用梯度下降法則發現其并不收斂:
其實,與簡單的Dirac-GAN的實驗結果一致,無論是標準形式的GAN或者WGAN,從理論上證明,發現在納什均衡點(0,0),其特征值為f'(0)i和-f'(0)i,均不包含實部。根據之前的理論,參數軌跡確實不應該表現為收斂,而且可以進一步證明,它在(0,0)附近的軌跡表現為“圓”,缺乏向納什均衡點靠攏的“向心力”。
可以說,現在的問題不是選擇什么樣的f(t),不是用fGAN或者WGAN的問題了,而是如何調整目標函數,也就是如何添加正則項,從而能解決特征值實部為負數的問題。
3. WGAN-GP
采用懲罰項的WGAN-GP是一種解決1-Lipschitz限制的軟方法,其損失函數的表達式為:
在Dirac-GAN中,對應的損失函數成為:
相應的動力學系統:
采用梯度下降法則發現其也不收斂,說明這個正則項加的“不太好”。
4. 一致優化
一致優化是一種理論上比較“有保證”的GAN,具體內容在上一期進行過詳細描述,以標準的GAN+一致優化正則項為例,其損失函數的表達式為:
在Dirac-GAN中,對應的損失函數成為:
相應的動力學系統:
結果有點復雜,但是確實在Dirac-GAN中精確收斂至(0,0):
正如上一期所說,實際情況中必須保證學習速率要足夠小,而且要比較好地控制超參數,才可能收斂。
5. zero centered gradient
所謂zero centered gradient與WGAN-GP非常相近,就是添加正則項使判別器對輸入的梯度接近一個常數,只不過在WGAN-GP中我們選擇常數為1,而這里選擇常數為0。(至于為何選擇0,這里不展開,以后有機會補充。)再細分下來,又包括兩種添加正則項的方法,一種是在真實數據上施加懲罰項,另一種是在生成數據上施加懲罰項。
如果選擇在真實數據上施加懲罰項,則其損失函數的表達式為:
如果選擇在生成數據上施加懲罰項,則其損失函數的表達式為:
無論如何,其在Dirac-GAN中,對應的損失函數均表示為:
相應的動力學系統:
采用梯度下降法則發現其收斂:
這一個簡單將1改為0,使結果產生了巨大的變化,其實這一改變也正是Wasserstein散度的理論結果,注意這不是WGAN中的Wasserstein距離。
綜上,我們可以帶有啟發性得說,如果你的fGAN或者WGAN訓練過程不收斂,試一下一致優化正則項或者zero centered gradient正則項吧。
[1]?Mescheder L , Nowozin S , Geiger A . The Numerics of GANs[J]. 2017.
[2]?Mescheder L , Geiger A , Nowozin S . Which Training Methods for GANs do actually Converge?[J]. 2018.
總結
這篇文章用了一個非常簡單且直觀的Dirac-GAN進行實驗,首先說明了標準的GAN或者WGAN是無法收斂到納什均衡的,需要添加正則項。接下來,WGAN-GP也無法收斂,而一致優化正則項和zero centered gradient可以實現收斂,這為我們提供了很好的啟示。
下期預告:GAN中的mode collapse問題
GAN群
有三AI建立了一個GAN群,便于有志者相互交流。感興趣的同學也可以微信搜索xiaozhouguo94,備注"加入有三-GAN群"。
有三AI夏季劃
有三AI夏季劃進行中,歡迎了解并加入,系統性成長為中級CV算法工程師。
轉載文章請后臺聯系
侵權必究
往期精選
總結
以上是生活随笔為你收集整理的【GAN优化】如何选好正则项让你的GAN收敛的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中秋假期快乐!不发技术文章,有三AI知识
- 下一篇: 【NLP】 NLP领域最具影响力的国内外