1. 程式人生 > >【GAN ZOO翻譯系列】基於能量的生成對抗網路 Energy-Based Generative Adversarial Networks

【GAN ZOO翻譯系列】基於能量的生成對抗網路 Energy-Based Generative Adversarial Networks

趙俊博, Michael Mathieu, Yann LeCun
紐約大學計算機科學系
Facebook人工智慧研究院
{jakezhao, mathieu, yann}@cs.nyu.edu
原文連結https://arxiv.org/abs/1609.03126
引用請註明出處

摘要

本文提出“基於能量的生成對抗網路”模型(EBGAN),它將判別器視為能量函式,將低能量賦予資料所在流形附近的區域,將高能量賦予其他區域。類似於概率GAN的思想,能量GAN的生成器用於訓練產生具有最小能量的對比樣本,而判別器被訓練為將高能量分配給這些產生的樣本。將判別看作能量函式,除了具有邏輯輸出的通常的二元分類器以外,還可以使用各種各樣的網路結構和損失函式。其中,作者使用自動編碼器實現了EBGAN框架的一個例項,將重構誤差視為樣本能量,而不是使用二元分類器。作者表明,這種形式的EBGAN在訓練期間表現出比常規GAN更穩定的行為。本文還證實了可以通過訓練單一尺度的網路架構來生成高解析度的影象。

1、引言

1.1 基於能量的模型

基於能量的模型的本質(LeCun等,2006)是建立一個函式,將輸入空間的每個點對映到一個標量,這就是所謂的“能量”。能量模型的學習是一個數據驅動的過程,它能夠將低能量分配給正確的資料集,而將高能量分配給不正確的資料集。監督學習的能量模型可以歸納於這個框架:對於訓練集中的每個 XX ,當 YY 是正確的標籤時,對 (X,Y)(X,Y) 的能量取低值,反之對能量取高值。類似地,當在無監督的學習環境中單獨建模 XX 時,高密度流形上的資料被賦予較低的能量。術語“對比樣本”(contrastive sample)用來指代導致能量上升的資料點,如監督學習中的不正確的 Y

Y 和來自無監督學習中低資料密度區域的點。

1.2 生成對抗網路

生成對抗網路(Goodfellow等,2014)導致了影象生成(Denton等,2015;Radford等,2015;Im等人,2016;Salimans等,2016),視訊預測(Mathieu等,2015) 和其他一些領域的重要改進。GAN的基本思想是同時訓練一個判別器和一個生成器。 判別器的訓練目標是將由生成器產生的樣本與來自真實資料集的樣本區分開來。生成器使用來自易於取樣的隨機源作為輸入,並被訓練產生判別器不能從真實資料樣本中區分出的假樣本。在訓練期間,生成器接收判別器相對於假樣本輸出的梯度。在GAN的原始形式中(Goodfellow等,2014),判別器產生概率,並在與生成器產生的分佈匹配時發生收斂。從博弈論的角度來看,當生成器和判別器達到納什均衡時,GAN便會收斂。

1.3 基於能量的生成對抗網路

本文建議把判別器看作是一個沒有明確的概率解釋的能量函式(或對比函式)。由判別器計算的能量函式可被看作是生成器的可訓練成本函式。判別器被訓練為將低能量值分配給高資料密度的區域,並在這些區域之外分配更高的能量值。相反地,發生器可以被看作是可訓練的引數化函式,其在判別器分配低能量的空間區域中產生樣本。雖然通常可以通過吉布斯分佈將能量轉換成概率(LeCun等,2006), 這種缺乏歸一化的方式使得基於能量的生成對抗網路在訓練過程的選擇方面提供了更大的靈活性。

GAN的原始公式中的二分類概率判別器可以被看作是定義對比函式和損失函式的一種方式,如LeCun等人(2006) 對於監督和弱監督的設定,和Ranzato等人(2007) 用於無監督學習。本文通過實驗證明了這個概念,在判別器是自動編碼器架構的情況下,能量就是重構誤差。附錄B提供了EBGAN解釋的更多細節(附錄未翻譯)。

本文的主要貢獻總結如下: (1)基於能量的生成對抗網路的訓練公式。 (2)證明在簡單的hinge loss下,當系統達到收斂時,EBGAN的生成器生成與給定資料同分布的樣本。 (3)一種使用自動編碼器作為判別器的EBGAN架構,其中能量是重建誤差。 (4)一系列系統性的實驗來探索對EBGAN和概率GAN產生良好結果的超引數和架構選擇。EBGAN框架無需使用多尺度方法,可從256位畫素解析度的ImageNet資料集中生成看起來合理的高解析度影象。

2、EBGAN模型

pdatap_{data} 是產生資料集的分佈的概率密度。生成器 GG 被訓練成從已知分佈 pzp_z (例如 N(0,1)\mathcal N(0,1) )取樣的隨機向量 zz 中去產生樣本 G(z)G(z),例如影象。判別器 DD 獲取原始樣本或生成的影象,並相應地估計能量值 ERE\in\mathbb R 。為了簡單起見,此處假設 DD 產生非負值,但是隻要能量值是有界的,本文的分析就可以進行。

2.1 目標函式

判別器的輸出經過一個目標函式,以便形成能量函式,將低能量分配給真實的資料樣本,將更高的能量分配給所生成的(“假”)樣本。 在這項工作中,作者使用了邊距損失,但是其他許多選擇也是可以解釋的(LeCun 等,2006)。類似於對概率GAN所做的工作(Goodfellow等,2014),作者使用了兩種不同的損失,一種是用於訓練DD ,另一種是訓練 GG ,以便在生成器遠離收斂時獲得更好的質量梯度。

給定正邊距 mm ,資料樣本 xx 和生成樣本 G(z)G(z) ,鑑別器損失 LD\mathcal L_D 和生成器損失 LG\mathcal L_G 在形式上由以下定義: (1)LD(x,z)=D(x)+[mD(G(z))]+\mathcal L_D(x,z)=D(x)+[m-D(G(z))]^+\tag{1} (2)LG(z)=D(G(z))\mathcal L_G(z)=D(G(z))\tag{2} 其中, []+=max(0,)[·]^+=\max(0,·)

使 LG\mathcal L_G 相對於 GG 引數最小化類似於使 LDL_D 的第二項最大化。當 D(G(z))mD(G(z))≥m 時,它具有最小但非零的相同梯度。

2.2 此方法的改進之處

本節對 2.1 進行理論分析,說明如果系統達到納什均衡,則生成器 GG 產生與原始資料集的分佈無法區分的樣本。這部分是在非引數設定下完成的,假設 DDGG 具有無限容量。給定一個生成器 GG,令 pGp_GG(z)G(z) 的密度分佈,其中 zpzz\sim p_z。換言之, pGp_G 是由 GG 生成的樣本的密度分佈。

V(G,D)=x,zLD(x,z)pdata(x)pz(z)dxdzV(G,D)=\int_{x,z}\mathcal L_D(x,z)p_{data}(x)p_z(z)dxdzU(G,D)=zLG(z)pz(z)dzU(G,D)=\int_z \mathcal L_G(z)p_z(z)dz。作者訓練判別器 DD 以最小化 VV ,訓練生成器 GG 以最小化 UU 。系統的納什均衡是一對 (G,D)(G^∗,D^∗) ,滿足: (3)V(G,D)V(G,D),DV(G^∗,D^∗)≤V(G^∗,D),\forall D\tag{3} (4)U(G,D)V(G,D),GU(G^∗,D^∗)≤V(G,D^*),\forall G\tag{4} 定理1 如果 (D,G)(D^*,G^*) 是一個使得系統達到納什均衡的狀態,那麼在幾乎所有地方 pG=pdatap_{G^*}=p_{data} ,並且 V(G,D)=mV(G^∗,D^∗)=m證明 首先考察 (5)V(G,D)=xpdata(x)D(x)dx+zpz(z)[mD(G(z))]+dzV(G^*,D)=\int_xp_{data}(x)D(x)dx+\int_zp_z(z)[m-D(G(z))]^+dz\tag{5} (6)=x(pdata(x)D(x)+pG(x)[mD(G(z))]+)dx=\int_x(p_{data}(x)D(x)+p_{G^*}(x)[m-D(G(z))]^+)dx\tag{6} 函式 φ(y)=ay+b(my)+φ(y)=ay+b(m-y)^+ 的分析(詳情見附錄A的引理1)表明了: (a)在幾乎任何地方,D(x)mD^∗(x)≤m 。下面對其進行驗證,假設存在一組非零的度量,使得 D(x)>mD^∗(x)>m 。若 D~=min(D(x),m)\tilde D=\min(D^*(x),m) ,則 V(G,D~)<V(G,D)V(G^*,\tilde D)<V(G^*,D^*) 違反了 式子(3) 。 (b)如果 a<ba <b