優必選悉尼大學人工智慧中心提出Evolutionary GAN: 基於演化演算法的GAN模型
下載地址: https://github.com/WANG-Chaoyue/EvolutionaryGAN
1. 簡介
生成對抗網路(GAN)在近些年中取得了快速的發展和廣泛的關注,並被應用於一系列現實世界的任務中,例如影象生成,影象編輯,視訊預測等等。具體來說,現有的GAN演算法大多是在生成器 G 和判別器 D 之間執行一個two-player adversarial game。 在對抗過程中,生成器 G 致力於不斷地‘騙過’判別器 D ,並最終生成服從真實分佈的樣本。雖然對抗學習在許多問題上都取得了不錯的表現,但很多現有的GAN模型也都面臨訓練難的問題,例如梯度消失和模式崩潰(mode collapse)。在本文中,受到自然演化過程的啟發,作者們提出了Evolutionary GAN (E-GAN),一個基於演化演算法的GAN框架,以提升GAN訓練的穩定性並期望得到更好的生成效果。
2. Evolutionary GAN
與以往的1vs1的對抗演算法不同,E-GAN設計了一個判別器 D 與生成器‘種群’(population)之間的對抗框架。具體來說,作者假設生成器 G 不再以個體的形式存在,而是以‘種群’(population)的形態與判別器 D 進行對抗。從演化的角度,判別器 D 可以被視為演化過程中不斷變化的環境,根據優勝劣汰的原則,生成器‘種群’中表現不好的個體(individual)被不斷淘汰,只有表現優異的individual才會被保留以進一步的適應環境 (i.e., 與判別器 D 進行對抗)。這樣,每次更新產生的生成器G都將是當下所有策略中最優的選項,從而我們不必再去小心翼翼的維持訓練過程中 D 和 G 的平衡,避免了梯度消失,模式崩潰等一系列訓練不穩定的問題。具體的訓練方法入框架圖所示:
在每一次對抗過程中,生成器的演化過程由三個步驟組成,分別是變異(Variation),評估(Evaluation)和選擇(Selection)。
2.1. 變異(Variation)
在對抗過程中,為了可以持續更新並得到合適的生成器 G ,首先需要對現有的生成器‘種群’進行變異操作,併產生新的後代(offspring)。通過觀察和對比現有的GAN training loss,作者發現不同的loss function具有不同的優勢和劣勢,因而採用他們作為不同的變異操作 (mutations)將可以得到不同的offspring。具體在試驗中,三種變異操作被採納,分別是 Minimax mutation,
Heuristic mutation,
和Least-squares mutation:
通過觀察這三種變異的損失函式曲線,並輔助以理論分析,作者表示這三種mutations具有互補的優勢,可以用於產生不同的特性的offspring。
2.2. 評估(Evaluation)
對變異後得到的新offspring, 先要對其生成效能進行評估,並量化為相應的適應性分數 (Fitness score ):
在提出的E-GAN框架中,適應性分數(i.e.,生成效能)主要有兩方面決定,生成樣本的質量:Quality fitness score , 和生成樣本的多樣性:Diversity fitness score
,
是平衡他們所佔比重的超參。其中,質量分數
衡量了候選生成器所生成的樣本能否成功的‘騙過’判別器D,
給定當下的判別器 D ,如果生成的樣本能夠取得較高的 ,則可假定其生成的樣本質量更高。另外,多樣性分數
衡量了根據候選生成器,再次更新判別器 D 時所產生梯度的大小。如果候選生成器生成的樣本相對集中(i.e., 缺乏多樣性),則相應在更新判別器 D 時更容易引起大幅度的梯度波動。因此,
被用以衡量生成樣本的多樣性。
2.3. 選擇(Selection)
在衡量過所有offspring的生成效能後,作者們根據優勝劣汰的原則擇優選取更新過後的生成器 G 進行新一輪的訓練。綜上所說,整個演化訓練過程總結在下表中:
3. 實驗
E-GAN在混合高斯分佈,cifar10,LSUN bedroom,SVNH等多個數據集上進行了實驗。先後驗證了E-GAN網路的生成多樣性,生成質量,訓練效率,結構魯棒性和生成連續性的各項效能。結合定性的生成樣本感官和定量的Inception score, FID, E-GAN均表現出了優於已有two-player GAN模型的效能。部分實驗結果如下所示: