張營營
(1.中國科學院上海微系統與信息技術研究所上海200050;2.上海科技大學上海201210;3.中國科學院大學北京100049)
近年來,深度學習在很多領域的都取得了突破性進展,但大家似乎發現了這樣的一個現實,即深度學習取得突破性進展的工作基本都是判別模型相關的。2014年 Goodfellow等人啟發自博弈論中的二人零和博弈,開創性地提出了生成對抗網絡[5](GAN)。生成對抗網絡包含一個生成模型和一個判別模型。其中,生成模型負責捕捉樣本數據的分布,而判別模型一般情況下是一個二分類器,判別輸入是真實數據還是生成的樣本。這個模型的優化過程是一個“二元極小極大博弈”[1]問題,訓練時固定其中一方(判別網絡或生成網絡),更新另一個模型的參數,交替迭代,最終,生成模型能夠估測出樣本數據的分布。生成對抗網絡的出現對無監督學習[15],圖片生成[16]的研究起到極大的促進作用。生成對抗網絡已經從最初的圖片生成,被拓展到計算機視覺的各個領域,如圖像分割[2]、視頻預測[3]、風格遷移[4]等。
生成對抗網絡(GAN)包含一個生成模型[6]G和一個判別模型[7]D,其結構如圖1所示。生成對抗網絡的目的是學習到訓練數據的分布pg,為了學習該分布,首先定義一個輸入噪聲變量pz(z),接下來將其映射到數據空間G(z;θg),這里的G就是一個以θg作為參數的多層感知網絡構成的生成模型。此外,定義一個判別模型D(x;θd)用來判斷輸入的數據是來自生成模型還是訓練數據,D的輸出為x是訓練數據的概率。最后訓練D使其盡可能準確地判斷數據來源,訓練G使其生成的數據盡可能符合訓練數據的分布。

圖1 生成對抗網絡模型結構圖
算法1生成對抗網絡的批隨機梯度下降方法.

換句話說,D和G的優化過程是一個二元極小極大問題,其目標函數可以表示為:

值得說明的是,D和G的優化必須交替進行,因為在有限的訓練數據情況下,如果先將D優化完成會導致過度擬合,從而模型不能收斂。訓練生成對抗網絡的算法偽代碼參考算法1。
條件生成對抗網絡(CGAN)是生成對抗網絡的一個擴展,其結構圖如圖2所示,它的生成模型和判別模型都基于一定的條件信息y。這里的y可以是任何的額外信息,例如,類別標簽或者數據屬性等。這樣生成模型G就有兩個輸入:pz(z)和y。一般情況下,pz(z)和y以隱藏節點連接的方式結合在一起。因此,該二元極小極大問題的目標函數就變為:


圖2 條件生成對抗網絡模型結構圖
條件生成對抗網絡可以根據輸入條件不同生成相應類型的圖片。
深度卷積生成網絡(DCGAN)將卷積神經網絡(CNN)[12]引入到了生成模型和判別模型當中,使得生成性能有了質的提升,以至于后來很多工作都在該網絡的基礎上進行改進。該網絡結構的幾個設計要點為:1)將卷積網絡中的池化層[14]用相應步長的卷積層代替;2)在生成模型和判別模型中都使用了批歸一化層[13];3)去掉了網絡中的全連接層[11];4)在生成模型中采用ReLU[7]激活函數;5)在判別模型中采用LeakyReLU[9]激活函數。其生成模型結構圖如圖3所示。深度卷積生成網絡相對于一般的生成對抗網絡而言具有更強大的生成能力,同時訓練起來更加穩定、容易,生成樣本更加多樣化等優點。深度卷積生成網絡生成的圖片足以以假亂真,但缺點是生成圖像分辨率比較低(64*64),這也是目前各種生成對抗網絡及其變體所具有的共同問題,因此,如何生成高質量、高分辨率圖像將會是一個熱門研究方向。

圖3 深度卷積生成網絡中生成模型結構圖
半監督生成對抗網絡(SGAN)的判別模型不僅僅判斷圖像的來源(由G生成或者來自訓練數據)同時判斷圖像的類別,這樣使得判別模型具有更強的判別能力,其網絡結構圖如圖4所示。另一方面,輸入網絡的類別信息也在一定程度上提高了生成模型生成圖片的質量,因此半監督抗網絡的性能要比普通的生成對抗網絡的性能略好一些。

圖4 半監督生成對抗網絡生成結果生成
信息生成對抗網絡[10](InfoGAN),其結構圖如圖5所示,它在一般的生成對抗網絡的基礎上增加了一個潛在編碼c,其中c可以包含多種變量,比如在MNIST中,c可以一個值來表示類別,一個高斯分布的值來表示手寫體的粗細。網絡中生成模型的輸入pz(z)和y,輸出為G(z,c)。為了避免網絡沒有監督使用c,信息生成對抗網絡在優化的目標函數中增加了一項:I(c;G(z,c))用來表示共同信息的程度。因此該網絡的目標函數為:

圖5 信息生成對抗網絡模型結構圖

信息生成對抗網絡可以通過改變潛在編碼c的值來控制生成圖片的屬性,例如生成不同傾斜度或者粗細的數字。
目前對于生成圖像的質量好壞的評價沒有一個量化的標準,主要依靠個人感官評價。最早Goodfellow等人提出的生成對抗網絡其實生成圖像的能力非常有限,生成模型和判別模型都采用多層感知器,而且是首次提出該理論,實驗調參經驗缺乏一定的積累。但對后續發展的貢獻是巨大的,因為這是一個理論從無到有的過程,無論后續的工作取得什么樣的成就,都是最初生成對抗網絡理論的基礎上做的改進。半監督生成對抗網絡和條件生成對抗網絡是緊接著出現的改進工作,它們的性能比原始的生成對抗網絡略好。深度卷積生成對抗網絡的出現是一個里程碑意義的工作,它使得生成對抗網絡的性能有了質變,它首次將深度卷積網絡引入生成對抗網絡,而且為穩定訓練網絡提供一套比較完整的參數配置。在后續工作中絕大多數模型參數配置都采用它的配置。信息生成對抗網絡的主要貢獻是引入了一個能夠控制生成圖像屬性的潛在編碼,從而讓網絡生成人為規定特殊屬性的圖像。
圖像分割是指將圖像的中的內容根據不同的語義分割開來。絕大多數分割的方法是將圖像的每個像素進行分類,這樣就忽略了空間一致性這個重要信息。生成對抗網絡做圖像分割時,生成模型被圖像像素分類的網絡替換,判別模型用于判斷是網絡的分類產生的分割圖(Class predictions)還是標準的分分割圖(Ground truth)。其流程圖如圖6所示。

圖6 生成對抗網絡應用于圖像分割的流程圖
視頻預測是根據當前的幾幀視頻預測接下來的一幀或者多幀視頻。一般常用的做法是用最小二乘回歸視頻幀的逐個像素值,這樣做的一個問題就是生成視頻幀存在動作模糊(Motion blur)。一種采用生成對抗網絡的做法是,將現有視頻幀改變不同尺寸輸入生成模型G,讓其輸出接下來的真值幀(Ground truth frame)。圖7給出了生成對抗網絡應用于視頻預測時生成網絡部分示意圖。判別模型和一般生成對抗網絡相同,即判斷視頻幀是生成的還是訓練數據原有的。

圖7 視頻預測生成對抗網絡生成模型示意圖
風格遷移是指將目標圖像的風格遷移到源圖像當中,使得源圖像保留內容的同時具有目標圖像的風格,比如將卡通人物的風格遷移到真實人臉圖像使其成為卡通頭像。生成對抗網絡用于圖像風格遷移時其特點有3個:1)將源圖像輸入生成網絡后,生成網絡輸出目標圖像風格的圖片;2)生成圖像和源圖像特征相同(或者說保持內容);3)當把目標圖像輸入生成網絡后,生成網絡仍然輸出目標圖像(相當于單位映射)。風格遷移生成對抗網絡的結構如圖8所示。

圖8 風格遷移生成對抗網絡結構圖
生成對抗網絡在計算機視覺的各個領域具有廣泛的應用前景,雖然經過幾年的發展其性能有了很大程度的提升,但仍然存在以下幾個問題:1)缺乏一個量化的評價結果好壞的標準;2)生成圖片的分辨率有限,很難生成高清圖像;3)網絡訓練對參數配置敏感,不穩定。因此,如何構建一個訓練容易,能夠生成高質量高分辨率圖像的網絡是接下的研究熱點之一。鑒于目前學術界對于生成對抗網絡綜述的文章非常少,本文分析比較了生成對抗網絡及其變體,對其做了一個總結和概述,同時分析了目前存在的一些問題,展望了該領域未來的研究趨勢。本文的目的是方便研究者對生成對抗網絡有一個總體的認識和把握,希望對大家在生成對抗網絡相關領域的科研有所幫助或啟示。
參考文獻:
[1]王海軍.集值型兩個函數的極小極大定理[J].數學的實踐與認識,2015(8):293-298.
[2]宋熙煜,周利莉,李中國,等.圖像分割中的超像素方法研究綜述[J].中國圖象圖形學報,2015,20(5):599-608.
[3]齊美彬,陳秀麗,楊艷芳,等.高效率視頻編碼幀內預測編碼單元劃分快速算法[J].電子與信息學報,2014(7):1699-1705.
[4]蔡興泉,郭天航.面向手機應用的圖像色彩風格遷移系統設計與實現[J].信息通信,2016(6):139-140.
[5]Ian J.G,Jean P,Shah,Mehdi M,Bing X,Yoshua B.Generative adversarial nets.[C]//NIPS.2014:2672-2680.
[6]王軍,夏利民,夏勝平.利用生成模型的人體行為識別[J].國防科技大學學報,2016,38(2):68-74.
[7]黃利文.一種判別模型的擇優方法[J].江西理工大學學報,2013,34(1):96-99.
[8]Zeiler M D,Ranzato M,Monga R.On rectified linear units for speech processing[C]//ICASSP 2013:3517-3521.
[9]Maas A L,Hannun A Y,Ng A Y.Rectifier nonlinearities improve neural network acoustic models.[C]//ICML.2013:1152-1160.
[10]Chen X,Duan Y,Houthooft R.Infogan:Interpreta?ble representation learning by information maximiz?ing generative adversarial nets.[C]//NIPS.2016:2172-2180.
[11]李玉鑑,張婷,胡海鶴.基于多層感知器的深度核映射支持向量機[J].北京工業大學學報,2016,42(11):1652-1661.
[12]Krizhevsky A,Sutskever I,Hinton G E.Imagen?et classification with deep convolutional neural net?works[C]//NIPS.2012:1097-1105.
[13]Ioffe S,Szegedy C.Batch Normalization:Accelerat?ing Deep Network Training by Reducing Internal Covariate Shift[C]//ICML.2015:448-456.
[14]李丹,沈夏炯,張海香,等.基于Lenet-5的卷積神經網絡改進算法[J].計算機時代,2016(8):4-6.
[15]王建新,錢宇華.符號數據的無監督學習:一種空間變換方法[J].計算機科學,2016,43(1):89-93.
[16]陳中貴,歐陽永昇,曹娟.特征保持的馬賽克圖像生成方法[J].計算機輔助設計與圖形學學報,2014,26(4):520-527.