張德浩,王佳松,陳禹平,王 帥
(1.中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所,長春 130033;2.中國科學(xué)院大學(xué),北京 100049)
現(xiàn)階段深度神經(jīng)網(wǎng)絡(luò)在特定行業(yè)應(yīng)用時(shí)圖像訓(xùn)練樣本較少,采用生成式對抗技術(shù)實(shí)現(xiàn)圖像訓(xùn)練樣本的生成可以增加圖像集中圖像的多樣性,并對圖像數(shù)據(jù)集中圖像數(shù)量進(jìn)行增廣,減輕在搜集和標(biāo)記圖像中使用的工作量。生成式對抗網(wǎng)絡(luò)模型(Generative Adversarial Net?works.GANs)相較于自回歸模型和自動編碼器模型需要大量先驗(yàn)知識和大量參數(shù),可以實(shí)現(xiàn)無監(jiān)督學(xué)習(xí),同時(shí)能夠反映數(shù)據(jù)內(nèi)在的概率分布規(guī)律并生成全新數(shù)據(jù),因而在圖像生成、圖像修補(bǔ)[1]、圖像超分辨[2-3]、草稿圖復(fù)原[4]、圖像上色[5-6]、圖像風(fēng)格變換[7-9]、視頻生成[10]和文字生成圖像領(lǐng)域有著廣泛應(yīng)用。
近年來,GAN的發(fā)展日新月異,國內(nèi)外對于GAN進(jìn)行了深入研究。Mirza M等[11]提出了CGAN,在GAN中添加額外的條件信息c,在GAN中添加有監(jiān)督的學(xué)習(xí)方式,引導(dǎo)GAN生成固定方向的圖像,穩(wěn)定GAN的訓(xùn)練。Chen X等[12]提出了InfoGAN,通過引入互信息量,將條件變量c拆解為有隱含意義的條件c和無意義的噪聲,使得GAN的行為在某種程度上可以解釋。Odena等[13]提出ACGAN(Auxiliary Classifier GAN),以條件重構(gòu)的形式使GAN能夠生成指定圖像。Alec Radford等[14]提出了DC?GAN,將卷積神經(jīng)網(wǎng)絡(luò)與GAN相結(jié)合,從網(wǎng)絡(luò)模型和訓(xùn)練GAN技巧方面改進(jìn)網(wǎng)絡(luò),提升訓(xùn)練的穩(wěn)定性,一定程度上解決了模型易崩潰的問題。Arjovsky等[15]提出了Wasserstein GAN(W-GAN),改變了原始GAN的優(yōu)化代價(jià)函數(shù),直接用其他分布度量來提供優(yōu)化目標(biāo),將代價(jià)函數(shù)由交叉熵變?yōu)橥仆翙C(jī)距離,解決GAN易崩潰的原理性問題。Denton E等[16]提出了一種LAP-GAN模型,通過疊加不同的生成器網(wǎng)絡(luò),由一張低分辨率圖像最終生成高分辨率圖像。Zhao J B等[17]提出EBGAN,將GAN中的判別器使用自動編碼機(jī)作為代替,通過將自動編碼器的重構(gòu)誤差視為圖像樣本的能量,有效地改善了生成樣本的多樣性。上述文獻(xiàn)雖然提出了一定穩(wěn)定GAN訓(xùn)練的方法,但對于圖像生成時(shí)紋理細(xì)節(jié)部分模糊的情況未作具體的分析和改進(jìn),同時(shí)加入先驗(yàn)信息一定程度上使GAN這一無監(jiān)督學(xué)習(xí)深度學(xué)習(xí)模型變?yōu)橛斜O(jiān)督學(xué)習(xí),在提升了訓(xùn)練穩(wěn)定性的條件下,失去了無監(jiān)督學(xué)習(xí)的意義。文章通過對生成式對抗網(wǎng)絡(luò)進(jìn)行模型研究,在GAN的基礎(chǔ)上將生成式對抗網(wǎng)絡(luò)與變分自編碼器相結(jié)合,應(yīng)用深度卷積模型作為判別器,增強(qiáng)模型兼容性,提升訓(xùn)練的穩(wěn)定性,同時(shí)采用多尺度判別器,解決生成圖像局部模糊的問題,最終設(shè)計(jì)了一種多尺度判別變分編碼-生成式對抗網(wǎng)絡(luò)(Variational Auto-Encoderand Multiscale Gener?ative Adversarial Networks.VAE-MSGAN)模型結(jié)構(gòu),通過該網(wǎng)絡(luò)模型穩(wěn)定了GAN訓(xùn)練,同時(shí)在多個(gè)尺度下判別圖像局部信息的真實(shí)性,使其具有復(fù)雜背景圖像的生成更加清晰的特點(diǎn)。最后,針對特定領(lǐng)域圖像數(shù)據(jù)集,將文章中所提算法生成圖像與真實(shí)圖像的分類結(jié)果相似性對比,實(shí)驗(yàn)結(jié)果表明了所提算法的有效性。
在生成式對抗網(wǎng)絡(luò)中,包括生成模型和判別模型。生成器的作用是通過使生成樣本數(shù)據(jù)分布逼近真實(shí)樣本數(shù)據(jù)分布,進(jìn)而生成一個(gè)真實(shí)圖像,判別器的作用是作為一個(gè)分類器,用以判斷所生成的圖像和真實(shí)圖像是否一致。為實(shí)現(xiàn)圖像生成,將隨機(jī)噪聲輸入到生成器中,輸出生成圖像;然后將真實(shí)圖像樣本和生成圖像輸入到判別器中,進(jìn)行判別圖像真?zhèn)巍DP偷膬?yōu)化過程是訓(xùn)練生成器和判別器,在對生成式對抗網(wǎng)絡(luò)進(jìn)行訓(xùn)練時(shí),固定判別器或者生成器其中一方,更新另一方的參數(shù),然后交替執(zhí)行此步驟,每一次更新目的都是使另一方的錯(cuò)誤最大化。最終,網(wǎng)絡(luò)訓(xùn)練處于納什均衡狀態(tài),此時(shí)生成器生成的圖像基本與真實(shí)圖像一致,達(dá)到生成圖像目的。
GAN的生成圖像原理和模型如圖1所示。
圖1 GAN的模型結(jié)構(gòu)
在通過GAN對圖像進(jìn)行生成時(shí),GAN模型算法的總體目標(biāo)優(yōu)化函數(shù)如下所示:
式中:Pdata(x)和PZ(z)分別是真實(shí)數(shù)據(jù)和生成數(shù)據(jù)的分布,即真實(shí)圖像的像素值矩陣和生成的圖像像素矩陣。
整個(gè)生成式對抗網(wǎng)絡(luò)的訓(xùn)練過程,就是對上式進(jìn)行最大化最小化交替訓(xùn)練的過程。
在GAN網(wǎng)絡(luò)訓(xùn)練過程中,當(dāng)生成器固定時(shí),優(yōu)化判別器得到目標(biāo)函數(shù)的極小值,而當(dāng)判別器固定時(shí),求取生成器目標(biāo)函數(shù)的極小值,但是生成器和判別器的極小值并不一定是處在同一個(gè)位置上,所以就會有一個(gè)全局的次優(yōu)或者說折中的均衡點(diǎn),這個(gè)點(diǎn)就是納什均衡點(diǎn)。
當(dāng)固定生成器的網(wǎng)絡(luò)參數(shù),訓(xùn)練判別器的網(wǎng)絡(luò)時(shí),式(1)可化作:此時(shí)如果要通過優(yōu)化D使目標(biāo)函數(shù)V最大,就可以轉(zhuǎn)化為求積分項(xiàng)最大,即優(yōu)化D使下式最大:
因?yàn)檎鎸?shí)樣本分布一致,生成器固定,所以此時(shí)Pdata與PG已經(jīng)固定為常值,將上式求導(dǎo),即可以得到判別器網(wǎng)絡(luò)的當(dāng)前全局最優(yōu)值如下所示:
將上式代入總體優(yōu)化目標(biāo)函數(shù)式(2)中,可得下式:
其中,JS為JS散度(Jensen-Shannon divergence),其定義為下式:
優(yōu)化目標(biāo)函數(shù)要使V最小,需要使上式中JS散度最小,而JS散度最小時(shí)為0,此時(shí),需滿足條件如下式所示:
此時(shí)生成分布與真實(shí)分布相等,優(yōu)化函數(shù)最終目標(biāo)達(dá)成,可視為GAN生成了真實(shí)樣本分布,即GAN的訓(xùn)練成功的充分必要條件是真實(shí)樣本分布與生成樣本分布一致。
通過生成式對抗網(wǎng)絡(luò)對圖像進(jìn)行生成時(shí),在訓(xùn)練判別器時(shí),需盡可能判斷出真實(shí)圖像為真,即真實(shí)數(shù)據(jù)通過判別器的判別值應(yīng)為1,同時(shí)需盡可能判斷出生成圖像為假,即生成數(shù)據(jù)通過判別器的判別值應(yīng)為0。在訓(xùn)練生成器時(shí),盡可能使生成器的輸出圖像為真,也就是使生成圖像通過判別器時(shí)為真,判別值應(yīng)為1。
生成器與判別器通過不斷地進(jìn)行博弈學(xué)習(xí),最后判別器無法判別輸入數(shù)據(jù)是否為生成器生成,此時(shí)不論輸入的是生成圖像還是真實(shí)圖像,分類器判斷輸入的圖像樣本是真實(shí)的概率都近似為0.5,此時(shí)可視為生成器生成了真實(shí)圖像樣本。
圖2所示為GAN的簡化訓(xùn)練過程,可以看出在優(yōu)化過程中,采用交替訓(xùn)練判別器和生成器的方式,每進(jìn)行k次對判別器的優(yōu)化,相應(yīng)的再進(jìn)行1次生成器的優(yōu)化。這樣只要生成器的變化足夠慢,判別器的值就基本穩(wěn)定在其最優(yōu)解的附近。
圖2 GAN優(yōu)化過程
VAE-MSGAN將變分自編碼器與生成式對抗網(wǎng)絡(luò)結(jié)合,在本課題中,真實(shí)圖像首先通過變分自編碼器的編碼器進(jìn)行編碼,得到隱性變量,將隱性變量通過解碼器得到VAE所生成的圖像,隨機(jī)噪聲通過生成器得到生成圖像,隨機(jī)噪聲的維數(shù)保持與隱性變量一致。真實(shí)圖像、GAN的生成圖像、VAE的生成圖像同時(shí)通過判別器進(jìn)行判別,通過對抗訓(xùn)練使隨機(jī)噪聲生成真實(shí)圖像。通過變分自編碼器與GAN的結(jié)合,可以得到其訓(xùn)練過程,可以看出解碼器與生成器的作用以及輸入輸出大小相同,所以可以在網(wǎng)絡(luò)模型中將二者合為一個(gè)上采樣層,這樣通過將兩種模型的融合可以推理出其訓(xùn)練過程。
VAE-MSGAN的基本結(jié)構(gòu)如圖3所示。
圖3 VAE-MSGAN的基本結(jié)構(gòu)
由變分自編碼器可以得出編碼器與解碼器的優(yōu)化函數(shù),編碼器的作用是由真實(shí)數(shù)據(jù)得到隱性表達(dá)Z,過程可以描述為:
變分自編碼器的損失函數(shù)是期望的對數(shù)似然和先驗(yàn)正則化項(xiàng)做減法運(yùn)算,得到損失函數(shù)如下:
其中:
同時(shí),在生成對抗網(wǎng)絡(luò)中,也是由兩個(gè)不同網(wǎng)絡(luò)組成,一個(gè)是生成器G,作用是將噪聲或者是隱性表達(dá)Z映射到與真實(shí)樣本分布一致的空間,其輸出為G(z),一個(gè)是判別器網(wǎng)絡(luò)D,D的作用是將輸入的x降采樣分類,輸出表達(dá)為D(x),y=D(x)∈[0.1],y是用來表明x是真實(shí)數(shù)據(jù)樣本的概率,1-D(x)則是表示生成數(shù)據(jù)樣本通過判別器判別為假樣本的概率,其中z的分布可以設(shè)為p(z)。這樣其目標(biāo)函數(shù)如下式所示:
將兩種模型結(jié)合后的整體優(yōu)化函數(shù)總結(jié)為:
在訓(xùn)練的過程中,首先用損失函數(shù)公式(12)來同時(shí)對VAE和GAN進(jìn)行訓(xùn)練。在對生成式對抗網(wǎng)絡(luò)和編碼器進(jìn)行訓(xùn)練時(shí),首先是自動編碼器更新編碼器,同時(shí)更新解碼器使得輸入的重建誤差最小化。然后生成式對抗網(wǎng)絡(luò)先更新判別器來判斷輸入樣本數(shù)據(jù)是真實(shí)樣本還是生成樣本,真實(shí)樣本來自于真實(shí)的樣本數(shù)據(jù),生成樣本通過解碼器和生成器對隱藏編碼進(jìn)行計(jì)算得到。
在不同網(wǎng)絡(luò)層分別使用3*3,5*5,7*7的卷積核進(jìn)行訓(xùn)練,通過不同卷積核生成圖像的評價(jià)結(jié)果來確定卷積核的大小組合,每一層網(wǎng)絡(luò)層最優(yōu)的卷積核大小。同時(shí)通過對判別器中池化操作的不同方式和進(jìn)行池化操作的具體網(wǎng)絡(luò)層數(shù)位置進(jìn)行不同測試考量,確定卷積核大小與池化操作的最優(yōu)組合。
首先,將生成器中反卷積核的大小與判別器中卷積核的大小組合成不同模式,表1所示為所設(shè)定幾種不同情況。
表1 不同模式表
在上表所有模型中,通過所設(shè)計(jì)網(wǎng)絡(luò)實(shí)現(xiàn)圖像生成時(shí),模式1、2、3所生成圖像基本為噪聲,其他幾種模式下通過主觀觀察,模式4、6的生成圖像質(zhì)量良好,其他幾種模式能正常生成圖像,但生成圖像質(zhì)量較前幾種模式差。通過實(shí)驗(yàn)結(jié)果分析,在較高分辨率的圖像中,使用3*3的卷積核提取圖像的特征時(shí)表現(xiàn)較差,使GAN生成圖像質(zhì)量較差。
在客觀評價(jià)指標(biāo)中,將未能正確生成對應(yīng)類別圖像的模式排除在外,其余幾種模式下生成圖像的客觀評價(jià)指標(biāo)如圖4所示。由圖可知,在模式4生成圖像的La?place梯度值與真實(shí)圖像最為接近,說明生成圖像的細(xì)節(jié)特點(diǎn)最優(yōu),其他指標(biāo)與其他模式較為接近,以生成圖像客觀質(zhì)量評價(jià)指標(biāo)看,5*5的卷積核與5*5的反卷積核是本課題網(wǎng)絡(luò)模型中最優(yōu)的卷積核大小。
圖4 客觀質(zhì)量評價(jià)1
綜合主觀質(zhì)量評價(jià)和客觀質(zhì)量評價(jià),本課題所設(shè)計(jì)的深度卷積生成式對抗網(wǎng)絡(luò)模型的生成器中,反卷積層的反卷積核大小為5*5;在判別器中,卷積層的卷積核大小為5*5。
在本課題對網(wǎng)絡(luò)模型進(jìn)行設(shè)計(jì)時(shí),在卷積核固定為5*5時(shí),將判別器中對于池化操作的選擇設(shè)為3種模式,即不采用池化、平均池化、最大池化。通過對網(wǎng)絡(luò)的訓(xùn)練,可得到生成圖像,在這3種模式下,平均池化時(shí)生成圖像質(zhì)量較差,基本不能識別圖像所屬類別,而最大池化與全卷機(jī)(即無池化)所生成圖像以主觀判斷生成所屬類別正確。而在客觀質(zhì)量評價(jià)上,具有有效生成圖像的兩種模式評價(jià)如圖5所示。
圖5 客觀質(zhì)量評價(jià)2
在生成圖像的客觀質(zhì)量評價(jià)中,在均值上,不同池化操作所生成的圖像平均均值近似相等,與真實(shí)圖像的平均均值也近似;在方差上,不同池化操作所生成的圖像同樣與真實(shí)圖像方差近似;在圖像的熵上,不同池化操作所生成的圖像同樣與真實(shí)圖像的熵同樣近似相等,可見不用池化操作和最大池化兩種模式下評價(jià)指標(biāo)大小幾乎一致,而最大池化模式略接近真實(shí)圖像實(shí)際評價(jià)值,故本文選用最大池化作為判別器中卷積操作的下采樣層。
為驗(yàn)證VAE-WGAN多尺度判別網(wǎng)絡(luò)在圖像生成問題上的有效性和穩(wěn)定性,同樣采用主觀質(zhì)量生成評價(jià),客觀質(zhì)量生成評價(jià)和分類器準(zhǔn)確率3種方式對生成圖片進(jìn)行質(zhì)量評價(jià),并與真實(shí)圖像進(jìn)行對比,確定生成圖像有效性,3種類別軍事生成圖像如圖6所示。
圖6 生成圖像
(1)主觀質(zhì)量生成評價(jià)
通過主觀判斷,新設(shè)計(jì)的網(wǎng)絡(luò)模型的圖像生成質(zhì)量優(yōu)于基于WGAN的條件DCGAN網(wǎng)絡(luò)模型,生成的3種類別的圖像都能判斷生成的圖像所屬類別,局部圖像也未失真嚴(yán)重。
(2)客觀質(zhì)量生成評價(jià)
將每個(gè)類別100張生成圖像輸入到所編寫程序中,計(jì)算圖像的平均均值、標(biāo)準(zhǔn)差、熵和Laplacian梯度值,對比真實(shí)圖像的平均圖像質(zhì)量和生成圖像的平均圖像生成質(zhì)量,結(jié)果如表2所示。
表2 不同類別圖像客觀評價(jià)指標(biāo)
整體客觀評價(jià)如圖7所示。從圖中可以看出本文提出的方法所生成圖像的客觀評價(jià)指標(biāo)參數(shù)都接近真實(shí)圖像,考慮到在計(jì)算客觀質(zhì)量評價(jià)時(shí)圖像平均的問題,可視為生成圖像質(zhì)量良好。
圖7 整體客觀質(zhì)量評價(jià)
(3)分類器準(zhǔn)確率評價(jià)
將1 000張真實(shí)圖像與其他類別的圖像一同輸入到VGG分類網(wǎng)絡(luò)中,訓(xùn)練好模型后,將100張真實(shí)測試圖像和100張生成測試圖像輸入到分類網(wǎng)絡(luò)中,得到真實(shí)圖像測試集的分類準(zhǔn)確率為96%,生成圖像的分類準(zhǔn)確率為90%;將1 000張生成圖像與其他類別的圖像一同輸入到VGG分類網(wǎng)絡(luò)中,訓(xùn)練好模型后,將100張真實(shí)測試圖像和100張生成測試圖像輸入到分類網(wǎng)絡(luò)中,得到真實(shí)圖像測試集的分類準(zhǔn)確率為91%,生成圖像的分類準(zhǔn)確率為93%;將500張生成圖像與500張?zhí)箍苏鎸?shí)圖像作為同一類別訓(xùn)練上述VGG分類器,再通過100張真實(shí)圖像測試集和100張生成圖像分別計(jì)算分類準(zhǔn)確率,得到的真實(shí)圖像分類準(zhǔn)確率為93%,生成圖像分類準(zhǔn)確率為92%,而其他類別圖像的測試集測試分類準(zhǔn)確率基本保持不變;可以看出,通過本章中的網(wǎng)絡(luò)模型進(jìn)行生成圖像,與真實(shí)圖像有著較高的相似性,分類為真實(shí)圖像的概率較大,同樣可以用于圖像樣本增廣,制作圖像樣本數(shù)據(jù)集。
從3種圖像生成質(zhì)量評價(jià)中,通過綜合分析可知,本章所設(shè)計(jì)的基于VAE-WGAN的多尺度判別網(wǎng)絡(luò)模型具有良好的圖像生成質(zhì)量,對于特定行業(yè)領(lǐng)域,例如軍事領(lǐng)域的圖像樣本生成有著良好的作用。
圖像生成技術(shù)一直是計(jì)算機(jī)視覺領(lǐng)域中的重點(diǎn)內(nèi)容之一,并且隨著近年來人工智能的發(fā)展,得到了廣泛發(fā)展,而通過GAN來進(jìn)行圖像生成則在圖像生成領(lǐng)域有著卓越地位,在通過GAN對圖像進(jìn)行生成時(shí)仍存在很多具有挑戰(zhàn)性的問題亟待解決。本文針對特定行業(yè)領(lǐng)域圖像訓(xùn)練樣本缺乏這一問題,設(shè)計(jì)了復(fù)雜背景下的特定圖像訓(xùn)練樣本生成算法流程。通過分析生成式對抗網(wǎng)絡(luò)的模型結(jié)構(gòu),設(shè)計(jì)實(shí)現(xiàn)了基于深度卷積生成式對抗網(wǎng)絡(luò)的圖像生成算法,并通過對比實(shí)驗(yàn),確定了網(wǎng)絡(luò)的模型結(jié)構(gòu)和參數(shù);為了解決生成圖像局部失真模糊的問題,通過分析變分自編碼器這一生成式模型,將之與生成式對抗網(wǎng)絡(luò)結(jié)合,基于多尺度分類的思想,設(shè)計(jì)了一個(gè)生成式模型,將這一生成式模型的生成結(jié)果進(jìn)行生成質(zhì)量評價(jià),與真實(shí)圖像進(jìn)行比較。因此,本文提出的方法在圖像生成領(lǐng)域具有一定的參考意義和工程應(yīng)用價(jià)值。