作者:路雪
近日,帝國理工學院、蒙特利爾大學等研究機構(gòu)共同發(fā)表論文并梳理了生成對抗網(wǎng)絡(luò),該論文從最基本的 GAN 架構(gòu)及其變體到訓練過程和訓練技巧全面概述了生成對抗網(wǎng)絡(luò)的概念、問題和解決方案。下面,我們將為各位讀者介紹該綜述論文。
生成對抗網(wǎng)絡(luò)(GAN)提供了一種不需要大量標注訓練數(shù)據(jù)就能學習深度表征的方式。它們通過反向傳播算法分別更新兩個網(wǎng)絡(luò)以執(zhí)行競爭性學習而達到訓練目的。GAN 學習的表征可用于多種應用,包括圖像合成、語義圖像編輯、風格遷移、圖像超分辨率技術(shù)和分類。這篇論文的目的是為信號處理社區(qū)做一個 GAN 的綜述。除了介紹訓練和構(gòu)建 GAN 的不同方法以外,我們還討論了其理論和應用中尚存在的挑戰(zhàn)。
1. 引言
生成器和判別器通常由包含卷積和(或)全連接層的多層網(wǎng)絡(luò)構(gòu)成。生成器和判別器必須是可微的,但并不必要是直接可逆的(理論分析上必須可逆)。如果生成網(wǎng)絡(luò)由某些表征空間映射得到,即映射一個隱空間到數(shù)據(jù)空間中(我們需要把注意力集中在圖像上),用更加形式化的表示為:G : G(z) → R^|x|,其中 z ∈ R^|z|是隱空間中的一個樣本,x ∈ R^|x|是一張圖像,| · |表示維數(shù)。
原始 GAN 的判別網(wǎng)絡(luò) D 可以看成是將圖像數(shù)據(jù)映射到(該圖像是來自真實數(shù)據(jù)分布,而不是生成器分布)判別概率的函數(shù) D : D(x) → (0, 1)。對于一個固定的生成器 G,判別器 D 可能被訓練用于分辨圖像是來自訓練數(shù)據(jù)(真,概率接近 1)還是來自生成器(假,概率接近 0)。若判別器已經(jīng)是最好的,它將變得無法被欺騙,而這時生成器 G 需要繼續(xù)訓練以降低判別器的準確率。如果生成器分布足以完美匹配真實數(shù)據(jù)分布,那么判別器將會被最大地迷惑而對所有輸入給出 0.5 的概率值。在實踐中,判別器可能無法訓練到理想狀態(tài),我們將在第 4 節(jié)更深入地探索訓練過程。
圖 1. 這張圖分別展示了 GAN 中的判別器 D 和生成器 G 的訓練流程。通常利用神經(jīng)網(wǎng)絡(luò)實現(xiàn),但實際上它們可以用任意形式的(將數(shù)據(jù)從一個空間映射到另一個的)可微系統(tǒng)實現(xiàn)。
3.GAN 架構(gòu)
圖 2. 在 GAN 的訓練過程中,生成器可以生成一個樣本分布 p_g(x)以匹配真實數(shù)據(jù) p_data(x)。通過適當參數(shù)化并訓練 GAN,這些分布將變得難以區(qū)分。GAN 的表征分布可以通過生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò)的學習參數(shù)(權(quán)重)而構(gòu)建。
A. 全連接 GAN
首個 GAN 架構(gòu)在生成器與鑒別器上皆使用全連接神經(jīng)網(wǎng)絡(luò)。這種架構(gòu)類型被應用于相對簡單的圖像數(shù)據(jù)庫,即 MNIST(手寫數(shù)字)、CIFAR-10(自然圖像)和多倫多人臉數(shù)據(jù)集(TFD)。
B. 卷積 GAN
因為 CNN 非常適合處理圖像數(shù)據(jù),所以從全連接到卷積神經(jīng)網(wǎng)絡(luò)是一個自然的擴展。早期在 CIFAR-10 上進行的試驗表明,用監(jiān)督學習相同水平和表征能力的 CNN 訓練生成器和鑒別器網(wǎng)絡(luò)會更加困難。
通過使用多尺度分解生成過程的形式,拉普拉斯金字塔形對抗網(wǎng)絡(luò)(LAPGAN)[13] 為這一問題貢獻了一個方案:真值圖像本身被分解成拉普拉斯金字塔(Laplacian pyramid),并且條件性卷積 GAN 被訓練在給定上一層的情況下生成每一層。
此外,Radford et al.[5](為「深度卷積 GAN」)提出了一種稱之為 DCGAN 的網(wǎng)絡(luò)架構(gòu)族,它允許訓練一對深度卷積生成器和判別器網(wǎng)絡(luò)。DCGAN 在訓練中使用帶步長的卷積(strided convolution)和小步長卷積(fractionally-strided convolution),并在訓練中學習空間下采樣和上采樣算子。這些算子處理采樣率和位置的變化,這是圖像空間到低維潛在空間、從圖像空間到判別器映射的重要要求。Section IV-B 將詳細介紹 DCGAN 架構(gòu)和訓練。
作為 2D 圖像合成的擴展,Wu et al. [14] 展示了使用體積卷積(volumetric convolution)合成 3D 數(shù)據(jù)樣本的 GAN。Wu et al. [14] 合成包括新物體,如椅子、桌子和汽車;此外,他們還展示了一種從 2D 圖像映射到 3D 圖像的方法。
C. 條件 GAN
Mirza 等人通過將生成器和判別器改造成條件類(class-conditional)而將(2D)GAN 框架擴展成條件設(shè)置。條件 GNN 的優(yōu)勢在于可以對多形式的數(shù)據(jù)生成提供更好的表征。條件 GAN 和 InfoGAN[16] 是平行的,它可以將噪聲源分解為不可壓縮源和一個「隱編碼」(latent code),并可以通過最大化隱編碼和生成器之間的交互信息而發(fā)現(xiàn)變化的隱藏因子。這個隱編碼可用于在完全無監(jiān)督的數(shù)據(jù)中發(fā)現(xiàn)目標類,即使這個隱編碼是不明確的。由 InfoGAN 學到的表征看起來像是具備語義特征的,可以處理圖貌中的復雜糾纏因素(包括姿勢變化、光照和面部圖像的情緒內(nèi)容)。
D.GAN 推斷模型
GAN 的初始形式無法將給定的輸入 x 映射為隱空間中的向量(在 GAN 的文獻中,這通常被稱為一種推斷機制)。人們提出了幾種反轉(zhuǎn)預訓練 GAN 的生成器的技術(shù),比如各自獨立提出的對抗性學習推斷(Adversarially Learned Inference,ALI)和雙向 GAN(Bidirectional GANs),它們能提供簡單而有效的擴展,通過加入一個推斷網(wǎng)絡(luò),使判別器共同測試數(shù)據(jù)空間和隱空間。
這種形式下的生成器由兩個網(wǎng)絡(luò)組成:即編碼器(推斷網(wǎng)絡(luò))和解碼器。它們同時被訓練用于欺騙判別器。而判別器將接收到一個向量對(x,z)(見圖 4 所示),并決定其是否包含一個真實圖像以及其編碼,或者一個生成的圖像樣本以及相關(guān)的生成器的隱空間輸入。
理想情況下,在一個編碼-解碼模型中的輸出(作為輸入的重構(gòu))應該和輸入相似。通常情況下,使用 ALI/BiGAN 合成的重構(gòu)數(shù)據(jù)樣本的保真度都很低。通過額外添加(數(shù)據(jù)樣本和它們的重構(gòu)的)對抗代價函數(shù)可以提高樣本的保真度。
E. 對抗自編碼器(AAE)
自編碼器是由編碼器和解碼器組成的網(wǎng)絡(luò),學習將數(shù)據(jù)映射到內(nèi)部隱表征中,再映射出來,即從數(shù)據(jù)空間中學習將圖像(或其它)通過編碼映射到隱空間中,再通過解碼從隱空間映射回數(shù)據(jù)空間。這兩個映射形成了一種重構(gòu)運算,而這兩個映射將被訓練直到重構(gòu)圖像盡可能的接近初始圖像。
圖 3. 圖左,條件 GAN(Conditional GAN),由 Mirza 等人提出,可以根據(jù)條件(class-condition)合成圖像;判別器根據(jù)條件類判定圖像為真或假。圖右,InfoGAN,其判別器還可以估計類別標簽。
圖 4. ALI/BiGAN 的結(jié)構(gòu),由三個網(wǎng)絡(luò)構(gòu)成。其中一個是判別器,還有一個網(wǎng)絡(luò)將噪聲向量從隱空間映射到圖像空間(解碼器,以 G 表示),最后一個網(wǎng)絡(luò)(編碼器,以 E 表示)將真實圖像從圖像空間映射到隱空間。
4. 訓練 GAN
A. 引言
GAN 的訓練目標是獲得令判別器分類準確率最大化的參數(shù),以及獲得最大化欺騙判別器的生成器參數(shù)。訓練過程已在圖 5 中總結(jié)。
訓練的代價由一個價值函數(shù) V(G,D) 評估,其包含了生成器和判別器的參數(shù)。
訓練過程可表示如下:
訓練過程中,其中一個模型的參數(shù)被更新,同時另一個模型的參數(shù)固定不變。Goodfellow 等人證明對于一個固定的生成器存在唯一的最優(yōu)判別器 D? (x) = p_data(x) /(p_data(x)+p_g(x))。他們還證明了生成器 G 在 pg(x) = pdata(x) 的時候是最優(yōu)的,這等價于最優(yōu)判別器對所有的樣本 x 都給出 0.5 的概率值。換個說法就是當判別器 D 被最大化迷惑而無法區(qū)分真假樣本的時候,生成器 G 是最優(yōu)的。
理想情況下,判別器將被訓練到對當前生成器為最優(yōu);然后生成器再次被更新。然而實際情況下,判別器可能無法訓練到最優(yōu),因此常用的策略是,判別器只會經(jīng)過少量的迭代訓練,而且生成器和判別器同步更新。此外,生成器通常使用一種交替的、非飽和的訓練規(guī)范,即使用 max_G log D(G(z)),而不使用 min_G log(1 ? D(G(z)))。
盡管理論上存在唯一的解,GAN 的訓練還是存在著挑戰(zhàn),經(jīng)常出現(xiàn)不穩(wěn)定的狀況,原因有好幾個。一種提升 GAN 訓練效率的辦法是追蹤訓練過程中可能遇到的經(jīng)驗癥狀,這包括:
兩個模型(生成器、判別器)無法收斂 [5];生成器「崩潰」,即用不同的輸入生成相似的樣本 [25];判別器的損失很快收斂為零,從而沒有足夠強的梯度路徑可以繼續(xù)更新生成器。圖 5. GAN 訓練的主要循環(huán)。新型數(shù)據(jù)樣本 x’ 可以通過傳遞隨機樣本得出,z 為抽取的隨機噪聲并作為生成器網(wǎng)絡(luò)的輸入。生成器更新一次之前,判別器可能需要更新 k 次。
B. 訓練技巧
用于圖像生成的 GAN 訓練的第一個重大改進是 Radford et al. [5] 提出的 DCGAN 架構(gòu)。該研究是計算機視覺領(lǐng)域之前使用的 CNN 架構(gòu)的進一步探索,并且?guī)砹艘幌盗袠?gòu)建和訓練生成器、判別器的準則。在 Section III-B 中,我們提到帶步長的卷積和小步長卷積的重要性 [27],它們是架構(gòu)設(shè)計的重要組件。這允許生成器和判別器學習優(yōu)秀的上采樣和下采樣操作,這些操作可能提升圖像合成的質(zhì)量。具體到訓練中,研究者推薦在兩種網(wǎng)絡(luò)中使用批量歸一化 [28],以穩(wěn)定深層模型中的訓練。另一個建議是最小化用于提升深層模型訓練可行性的全連接層的數(shù)量。最后,Radford et al. [5] 認為在判別器中間層使用 leaky ReLU 激活函數(shù)的性能優(yōu)于使用常規(guī)的 ReLU 函數(shù)。
Salimans et al. [25] 進一步提出穩(wěn)定 GAN 訓練的啟發(fā)式方法。首先,特征匹配稍稍改變生成器的目標,以增加可獲取的信息量。具體來說,判別器仍然需要訓練來區(qū)分真樣本和假樣本,但是生成器的訓練目標是匹配判別器中假樣本和真樣本的期望中間激活值(特征)。第二,小批量判別(mini-batch discrimination)向判別器額外添加輸入,該特征對小批量中的給定樣本和其他樣本的距離進行編碼。目的在于防止模式崩潰(mode collapse),因為判別器能夠輕易判斷生成器是否生成同樣的輸出。
第三個啟發(fā)式技巧是啟發(fā)式平均(heuristic averaging),如果網(wǎng)絡(luò)參數(shù)偏離之前值的運行平均值,則會受到懲罰,這有助于收斂到平衡態(tài)。第四個技巧是虛擬批量歸一化(virtual batch normalization),它可減少小批量內(nèi)樣本對其他樣本的依賴性,方法是使用訓練開始就確定的固定參考小批量(reference mini-batch)樣本計算歸一化的批量統(tǒng)計(batch statistics)。
最后,單邊標簽平滑(one-sided label smoothing)將判別器的目標從 1 替換為 0.9,使判別器的分類邊界變得平滑,從而阻止判別器過于自信,為生成器提供較差的梯度。S?nderby et al. [29] 改進了這個想法,他在將樣本饋送至判別器之前向樣本中添加噪聲來挑戰(zhàn)判別器。S?nderby et al. [29] 認為單邊標簽平滑偏向最佳判別器,而他們的技術(shù)——樣本噪聲(instance noise)使真樣本和假樣本的流形(manifold)更加接近,同時防止判別器輕易找到完全分離真假樣本的判別器邊界。該技巧在實踐中可以通過向合成圖像和真實圖像中添加高斯噪聲來實現(xiàn),使標準差隨著時間逐漸減小。后來 Arjovsky et al. [26] 把向數(shù)據(jù)樣本添加噪聲來穩(wěn)定訓練的過程形式化。
C. 成本函數(shù)的修正
1)GAN 成本函數(shù)的泛化:Nowozin et al. [30] 認為 GAN 訓練可以泛化至不僅最小化 JS 散度(Jensen-Shannon divergence),同時還最小化 f 散度的估計值。這些可以稱為 f-GAN。
2)防止梯度消失的其他成本函數(shù):Arjovsky et al. [32] 提出 WGAN,一種帶有其他成本函數(shù)的 GAN 網(wǎng)絡(luò),該函數(shù)從近似 Wasserstein 距離中推導出。
7. 討論
A. 開放性問題
Mode Collapse:如第四章所述,GAN 的普遍問題是生成器崩潰(generator collapsing),只能輸出一小類類似樣本(部分崩潰),最壞的情況是僅能生成一個簡單樣本(完全崩潰)[26], [48]。訓練不穩(wěn)定——鞍點:在 GAN 中,損失函數(shù)的海森矩陣(Hessian)變得非正定。因此,二階矩陣非正定只能找到一個鞍點而不是局部極小值。B. 結(jié)論
對 GAN 的研究興趣不只是因為它們可以從潛在空間和數(shù)據(jù)空間之間的映射和逆映射中學習深度、高度非線性的映射,還因為它們可以利用大量非標注圖像數(shù)據(jù),這種操作類似深度表征學習。在 GAN 訓練中,存在很多理論和算法的發(fā)展機會。有了深度網(wǎng)絡(luò)的幫助,新應用存在大量機會。
- 蜜度索驥:以跨模態(tài)檢索技術(shù)助力“企宣”向上生長
- 密態(tài)計算技術(shù)助力農(nóng)村普惠金融 螞蟻密算、網(wǎng)商銀行項目入選大數(shù)據(jù)“星河”案例
- 專利糾紛升級!Netflix就虛擬機專利侵權(quán)起訴博通及VMware
- 兩大難題發(fā)布!華為啟動2024奧林帕斯獎全球征集
- 2025年工業(yè)軟件市場格局:7個關(guān)鍵統(tǒng)計數(shù)據(jù)與分析
- Commvault持續(xù)業(yè)務策略:應對現(xiàn)代數(shù)據(jù)保護挑戰(zhàn)的新范式
- 2025年網(wǎng)絡(luò)安全主要趨勢
- 2025年值得關(guān)注的數(shù)據(jù)中心可持續(xù)發(fā)展趨勢
- 量子計算火熱,投資者又在大舉尋找“量子概念股”
- 從量子威脅到人工智能防御:2025年網(wǎng)絡(luò)安全將如何發(fā)展
- 后人工智能時代:2025年,在紛擾中重塑數(shù)據(jù)、洞察和行動
免責聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。