李 鑫,焦 斌,林蔚天
1.上海電機學院 電氣學院,上海 201306
2.上海電機學院 繼續(xù)教育學院,上海 200240
生成對抗網(wǎng)絡(Generative Adversarial Network,GAN)是Goodfellow等在2014年提出的一種生成模型[1],該生成模型與傳統(tǒng)生成模型的區(qū)別在于其包含了生成網(wǎng)絡和判別網(wǎng)絡兩部分,生成網(wǎng)絡和判別網(wǎng)絡是一種對抗博弈的關系[2]。GAN思想源于零和博弈,當一方的利益增加時,另一方的利益就會隨之減少。引用到生成對抗網(wǎng)絡中,生成網(wǎng)絡利用輸入的初始數(shù)據(jù)經(jīng)過數(shù)據(jù)擬合生成盡量逼真的數(shù)據(jù),而判別網(wǎng)絡的作用是將擬合生成的“假數(shù)據(jù)”和“真實數(shù)據(jù)”進行對比,最終判別生成數(shù)據(jù)的真實性,同時生成網(wǎng)絡繼續(xù)利用判別網(wǎng)絡的結果優(yōu)化生成網(wǎng)絡各項參數(shù),最終兩個網(wǎng)絡實現(xiàn)納什均衡[3]。圖像識別現(xiàn)有方法如卷積神經(jīng)網(wǎng)絡(Convolutional Neural Networks,CNN)等已經(jīng)有很高的識別率,但這些方法依賴大量數(shù)據(jù)并且收斂速度較慢[4]。本文結合條件生成對抗網(wǎng)絡、信息最大化生成對抗網(wǎng)絡與深度卷積網(wǎng)絡提出帶有條件的信息最大化深度卷積生成對抗網(wǎng)絡模型(Conditional-Info-DCGAN,C-Info-DCGAN),利用該模型提取的特征用于圖像識別。實驗結果表明,該方法能夠提高訓練收斂速度,并有效提高圖像識別的準確率。
生成式對抗網(wǎng)絡是一種深度學習模型,是近年來無監(jiān)督學習最具前景的方法之一。基本模型是通過框架中兩個模塊:生成模型(Generative Model,G)和判別模型(Discriminative Model,D)的互相博弈學習生成以假亂真的數(shù)據(jù)樣本[5]。原始生成對抗網(wǎng)絡中的兩個模型不一定是神經(jīng)網(wǎng)絡,只要是能夠達到生成數(shù)據(jù)和判斷真?zhèn)喂δ艿木W(wǎng)絡都可以,但是經(jīng)過長期大量的實驗,把深度神經(jīng)網(wǎng)絡作為G和D是最常見且效果最好的。GAN運行過程中,首先給生成網(wǎng)絡一個隨機噪聲數(shù)據(jù)x作為輸入值,通過G生成盡量像真實數(shù)據(jù)的“假數(shù)據(jù)”G(z),判別網(wǎng)絡負責判別生成數(shù)據(jù)的真假,并把判別結果反饋給生成網(wǎng)絡,G以此來優(yōu)化網(wǎng)絡參數(shù),最終生成讓判別網(wǎng)絡判斷不出真假的數(shù)據(jù)。GAN的流程圖如圖1所示[6]。
GAN核心原理的算法描述如下:
在生成網(wǎng)絡給定的情況下,優(yōu)化判別網(wǎng)絡和判別網(wǎng)絡是一個二分類模型,訓練過程如式(1)所示:

式中,x表示真實樣本;z表示輸入生成模型中的隨機噪聲;D(x)表示判別模型判斷輸入樣本為真實樣本的概率;G(z)表示生成模型接受隨機噪聲后生成的樣本;Pdata(x)表示真實數(shù)據(jù)分布;Pz(z)表示生成數(shù)據(jù)分布。判別模型的目的是能夠準確判斷出輸入樣本的真實性,也就是使D(x)無限接近1,D(G(z))無限接近于0,此時V(D,G)變大,即求maxD。生成模型的目的是生成更接近真實的樣本,也就是使D(G(z))無限接近于1,此時V(D,G)變小,即求 minG[7]。
GAN相對于其他生成網(wǎng)絡能夠產(chǎn)生更好的數(shù)據(jù)樣本,但是其還存在許多問題亟待解決,比如GAN模型訓練難以達到穩(wěn)定、生成網(wǎng)絡和判別網(wǎng)絡難以達到納什均衡等。
為了應對原始GAN難以穩(wěn)定等問題,近些年許多學者在其基礎上進行了改進與優(yōu)化,其中條件生成對抗網(wǎng)絡和信息最大化生成對抗網(wǎng)絡在解決原始網(wǎng)絡存在的部分問題中具有很大貢獻。
條件生成對抗網(wǎng)絡(Condition al Generative Adversarial Nets,CGAN)是在GAN的基礎上加上了條件信息,如果生成網(wǎng)絡和判別網(wǎng)絡都適用于某些額外的條件c,例如類別標簽,那么可以通過將c附加到輸入層中輸入到生成器和判別網(wǎng)絡中進行調(diào)節(jié),可以指導數(shù)據(jù)生成過程。CGAN把純無監(jiān)督的GAN變成有監(jiān)督模型的一種改進,這種改進被證明非常有效,并廣泛應用于后續(xù)的工作中[8]。
在生成網(wǎng)絡中,輸入噪聲的同時輸入相應條件c,而真實數(shù)據(jù)x和條件c作為判別網(wǎng)絡的輸入。其目標函數(shù)V(D,G)如式(2)所示:

生成網(wǎng)絡和判別網(wǎng)絡都增加了額外信息,在生成模型中,噪聲z和條件信息y構成隱層表征,對抗訓練框架在隱層表征的組成方式方面相當靈活。
InfoGAN發(fā)布于NIPS2016,解決了控制生成數(shù)據(jù)語義特征的問題,GAN模型使用不受任何限制的噪聲信號z作為輸入,因此生成網(wǎng)絡只能以一種高度混亂的方式使用噪聲,導致噪聲z中獨立的維度與數(shù)據(jù)的語義特征不對應[9]。InfoGAN提供了解決方案,即分解輸入噪聲為兩個部分。其中,z作為不可壓縮的噪聲源,c作為潛在的部分,對數(shù)據(jù)分布潛在結構進行導向,而生成器輸出為G(z,c)。原始GAN模型中相當于通過公式忽視了輸入類別信息c,本文方法提出c和G(z,c)之間應該有高度共同的特征。其目標函數(shù)V(D,G)如式(3)所示:

在圖像識別技術領域,缺少訓練樣本、圖像分類識別率低等問題亟待解決,而生成對抗網(wǎng)絡是解決這些問題的一個熱門方向[10],但是現(xiàn)有的網(wǎng)絡模型還難以很好地解決這些問題,因此,本文基于現(xiàn)有的GAN網(wǎng)絡,提出了一種條件信息最大化生成對抗網(wǎng)絡(C-Info-GAN),該網(wǎng)絡模型能夠很好地解決圖像識別領域的問題[11]。

圖2 C-Info-GAN結構圖
C-Info-GAN模型還是基于生成網(wǎng)絡和判別網(wǎng)絡相互博弈的思想,但是生成網(wǎng)絡的輸入不僅是噪聲信號,而是包括三部分,噪聲數(shù)據(jù)、潛在隱含信息、類別信息,三者組合作為生成網(wǎng)絡的初始輸入,輸出“假數(shù)據(jù)”G(z,c,l);判別網(wǎng)絡的輸入包括兩部分,一部分是生成的“假數(shù)據(jù)”,另一部分是包含類別信息的真實數(shù)據(jù),判別網(wǎng)絡通過對兩個輸入進行對比處理,判斷生成數(shù)據(jù)的真假,并將判斷結果的損失值反饋給生成網(wǎng)絡和判別網(wǎng)絡,優(yōu)化網(wǎng)絡各項參數(shù)。
除此之外,為了更好地利用類別信息和潛在隱含信息,增加一個Q網(wǎng)絡,該網(wǎng)絡與判別網(wǎng)絡的權值共享,輸入數(shù)據(jù)為G(z,c,l),利用Q網(wǎng)絡的深度卷積網(wǎng)絡和相適應的判別器,完成對類別信息和潛在隱含信息的分類處理,并將兩者的損失值反饋給生成網(wǎng)絡和判別網(wǎng)絡,以此不斷優(yōu)化,最終生成以假亂真的樣本數(shù)據(jù)。當模型訓練完成之后,為了實現(xiàn)圖像識別同時簡化網(wǎng)絡結構的目的,還是以Q網(wǎng)絡作為圖像識別網(wǎng)絡,將生成數(shù)據(jù)按照一定比例補充到原始訓練數(shù)據(jù)集中,對原始數(shù)據(jù)進行數(shù)據(jù)增強,隨著補充數(shù)據(jù)量的增加,識別網(wǎng)絡的準確率也會增加。C-Info-GAN的結構圖如圖2所示。
深度卷積生成對抗網(wǎng)絡(DCGAN)主要是在生成網(wǎng)絡和判別網(wǎng)絡中引入深度卷積的結構,從而利用深度卷積網(wǎng)絡的強大特征提取能力來提升整體模型的效果[12]。
相較于原始GAN,DCGAN具有很多特點:
(1)在生成網(wǎng)絡中使用反卷積網(wǎng)絡實現(xiàn)將輸入數(shù)據(jù)生成“假數(shù)據(jù)”的功能,在判別網(wǎng)絡中用卷積層代替池化層,并搭配合適的分類判別器。
(2)在網(wǎng)絡模型中,對于各個卷積層均采用批量歸一化,這樣使得初始化差問題得以解決,并保持網(wǎng)絡的傳播梯度,防止過擬合的現(xiàn)象。
(3)將卷積層作為生成網(wǎng)絡和判別網(wǎng)絡的輸出層,提高模型穩(wěn)定性,但是卻減弱模型訓練的速度。
(4)生成網(wǎng)絡輸出層的激活函數(shù)使用Tanh函數(shù),剩下的網(wǎng)絡使用ReLU激活函數(shù);而判別網(wǎng)絡中均使用LeakyReLU激活函數(shù)[13]。
本文基于CGAN、InfoGAN和DCGAN網(wǎng)絡模型,結合為應對圖像識別領域的問題所做出的改進,設計出基于條件信息深度卷積生成對抗網(wǎng)絡(C-Info-DCGAN)模型,增加類別信息和潛在隱含信息作為輸入,并利用深度卷積網(wǎng)絡提高模型的特征提取能力,同時增加Q網(wǎng)絡完成對類別信息和潛在隱含信息的處理。
C-Info-DCGAN的生成網(wǎng)絡結構如圖3所示,此處以MNIST數(shù)據(jù)集的28×28像素圖像為例,輸入數(shù)據(jù)由三部分組成,包括100維的滿足高斯分布的隨機噪聲、10維的類別標簽數(shù)據(jù)和10維潛在的隱含信息數(shù)據(jù),其中10維類別信息表示0~9的10種手寫數(shù)字類別,10維隱含信息表示具有先驗概率分布的連續(xù)隨機變量,描述手寫數(shù)字的粗細、大小、長短等特征,三者連接在一起組成120維的輸入數(shù)據(jù),接著利用兩個全連接層,依次將輸入數(shù)據(jù)擴展到1 044維和6 292維,然后為了適應接下來的反卷積網(wǎng)絡,將數(shù)據(jù)重置為(7,7,148)的三維張量,之后利用兩層反卷積層,將數(shù)據(jù)依次處理成(14,14,84)和(28,28,1)的三維張量,其中反卷積網(wǎng)絡的卷積核為4×4,步長為2,最后輸出(28,28,1)的生成數(shù)據(jù)。另外,與一般CGAN不同的是,為了加強類別信息和潛在隱含信息在訓練過程中的引導作用,在全連接層和反卷積層中這兩者并沒有參與運算,例如:100+10+10維的輸入,經(jīng)過全連接層的處理并重置輸出為(7,7,128)+(1,1,20)=(7,7,148)。

圖3 C-Info-DCGAN生成網(wǎng)絡結構圖
C-Info-DCGAN的判別網(wǎng)絡結構如圖4所示,整體結構相當于生成網(wǎng)絡的逆過程,其中輸入包括生成的“假數(shù)據(jù)”和帶有類別信息的真實數(shù)據(jù),利用判別網(wǎng)絡對其分別處理。以MNIST數(shù)據(jù)集為例,輸入28×28像素的圖像,然后利用兩層卷積層依次輸出為(14,14,64)、(7,7,128)的三維張量,其中卷積核為4×4步長為2;接著經(jīng)過兩個全連接層將數(shù)據(jù)分別變成1 024維和100維,激活函數(shù)均使用Leaky_ReLU,最終輸出就是判斷輸入值真假的結果,具體網(wǎng)絡模型參數(shù)如表1所示。

圖4 C-Info-DCGAN判別網(wǎng)絡結構圖

表1 判別網(wǎng)絡模型參數(shù)
除了生成網(wǎng)絡和判別網(wǎng)絡之外,本文設計的模型中還加入了一個Q網(wǎng)絡,該網(wǎng)絡中除了輸出層以外的網(wǎng)絡結構均與判別網(wǎng)絡進行權值共享,輸入數(shù)據(jù)是生成的包含類別信息和潛在隱含信息的“假數(shù)據(jù)”,在Q網(wǎng)絡的最后一層利用分類器,對類別信息和隱含信息進行分類處理,輸出(2,10)的數(shù)據(jù),其中包含10維的類別信息和10維的潛在隱含信息。Q網(wǎng)絡的結構圖如圖5所示。

圖5 Q網(wǎng)絡的結構圖
loss_dr表示判別網(wǎng)絡正確判斷真實數(shù)據(jù)類別的準確率,loss_df則是成功判斷生成數(shù)據(jù)類別的準確率,判別網(wǎng)絡損失值loss_disc取這兩者的平均值。生成網(wǎng)絡的損失值為自己輸出的假數(shù)據(jù)讓它在判別網(wǎng)絡中為真,定義為loss_g。在Q網(wǎng)絡中還有一部分損失函數(shù),包括隱含信息的重構與初始隱含信息的誤差loss_con、真實的標簽與輸入真實樣本判別出的標簽交叉損失loss_cr、真實的標簽與輸入生成數(shù)據(jù)判別出的標簽交叉損失loss_cf,其中類別信息總損失loss_class取loss_cr和loss_cf的平均值。定義好后創(chuàng)建兩個優(yōu)化器,將它們放到對應的優(yōu)化器中。生成網(wǎng)絡損失函數(shù)Loss_G如式(4)所示。判別網(wǎng)絡和Q網(wǎng)絡損失函數(shù)Loss_D,Q如式(5)所示,其中m表示批量處理的樣本數(shù)量,gen_f表示生成樣本判別結果,y_real表示判別為真的標準結果,y_fake表示判別為假的標準結果,class_f表示對生成數(shù)據(jù)的分類結果,class_r表示對真實數(shù)據(jù)的分類結果,y表示真實數(shù)據(jù)的類別信息,con_f表示生成數(shù)據(jù)的隱含信息結果,z_con表示初始化的隱含信息,disc_f表示對生成數(shù)據(jù)的判別結果,disc_r表示對真實數(shù)據(jù)的判別結果,損失函數(shù)主要利用sigmoid的交叉熵思想。
Loss_G=loss_g+loss_class+loss_con=


將判別網(wǎng)絡的學習率設為0.000 01,將生成網(wǎng)絡的學習率設為0.000 1,這使得生成器有更快的進化速度來模擬真實數(shù)據(jù),優(yōu)化采用Adam方法。為了保持對抗訓練的平衡性,模型將判別網(wǎng)絡和生成網(wǎng)絡的更新速度比設置為1∶2,防止訓練梯度消失[14]。
本文將訓練好的C-Info-DCGAN應用到圖像識別領域中,選取Q網(wǎng)絡的部分結構(去除輸出層),并進行參數(shù)微調(diào),在最后一個全連接層輸出n維數(shù)據(jù)(n為數(shù)據(jù)集類別數(shù)),然后再利用Softmax分類器完成分類識別[15]。與一般圖像分類方法不同的是,輸入的數(shù)據(jù)集并不是直接進行分類處理,而是經(jīng)過基于C-Info-DCGAN模型的預訓練,使得在進行圖像識別的時候,除了有真實樣本外還有模型訓練生成的足夠以假亂真的“假數(shù)據(jù)”做支撐,起到數(shù)據(jù)增強的作用,從而獲得更多的圖像特征,實現(xiàn)更高的分類識別率。
本文實驗環(huán)境為Intel?CoreTMi5-3230M CPU@2.6 GHz處理器,12.0 GHz運行內(nèi)存(RAM),NVIDIAGeForceGT 740MGPU,整體模型是在Python的框架中利用TensorFlow平臺進行編程實現(xiàn),實驗使用MNIST手寫數(shù)字集和CIFAR-10彩色圖片數(shù)據(jù)集。
MNIST手寫數(shù)字集中包含60 000張圖片,10個類別(0~9共10個數(shù)字),每類別包含6 000張圖片(5 000個訓練樣本,1 000個測試樣本),每張圖片為28×28像素的二值圖像[16]。
5.1.1 MNIST生成樣本
實驗中使用Adam模型優(yōu)化,判別網(wǎng)絡的學習率設為0.000 01,生成網(wǎng)絡的學習率設為0.000 1,在生成網(wǎng)絡和判別網(wǎng)絡的每一個卷積層之后均使用批量歸一化操作,可以防止訓練時梯度消失,每一批次有64個樣本,其中訓練迭代次數(shù)與模型損失函數(shù)的關系如圖6~9所示。

圖6 MNIST數(shù)據(jù)集中l(wèi)oss_disc變化趨勢

圖7 MNIST數(shù)據(jù)集中l(wèi)oss_g變化趨勢

圖8 MNIST數(shù)據(jù)集中l(wèi)oss_class變化趨勢

圖9 MNIST數(shù)據(jù)集中l(wèi)oss_con變化趨勢
圖6 中表示判別網(wǎng)絡中正確判斷真實數(shù)據(jù)類別和生成數(shù)據(jù)準確率的平均值loss_disc,隨著訓練迭代次數(shù)的遞增而變化情況。可以從變化趨勢圖中看出,在訓練初期判別網(wǎng)絡的損失值較大模型不穩(wěn)定,但是在訓練1 000次之后損失值的均值穩(wěn)定保持在0.4左右。圖7表示生成網(wǎng)絡的損失值loss_g,訓練初期損失值相對穩(wěn)定,隨著不斷訓練損失值保持在1.25左右。
圖8表示在Q網(wǎng)絡中真實標簽與輸入真實樣本判別的標簽的交叉損失loss_cr和真實標簽與輸入生成樣本判別的標簽的交叉損失loss_cf的平均值loss_class,隨著訓練次數(shù)增加損失值穩(wěn)定保持在0.5左右。圖9表示潛在隱含信息損失值的變化趨勢,整體變化趨勢不明顯,始終在1.5上下。總體來看,經(jīng)過對抗訓練判別網(wǎng)絡、生成網(wǎng)絡和Q網(wǎng)絡損失值保持在一個穩(wěn)定值。
圖10表示在不同的訓練迭代次數(shù)下生成網(wǎng)絡所輸出的“假數(shù)據(jù)”,圖中可以看出,從剛開始雜亂無章的隨機噪聲到可以隱約看出數(shù)字形狀,再到最后清楚顯示手寫數(shù)字圖,表明本文設計的C-Info-DCGAN網(wǎng)絡能夠很好地完成數(shù)據(jù)生成與數(shù)據(jù)增強的任務。

圖10 MNIST數(shù)據(jù)集生成樣本對比
5.1.2 MNIST分類結果
本模型利用Q網(wǎng)絡進行圖像分類,選取學習率為0.000 2的Adam優(yōu)化器,為了縱向?qū)Ρ缺疚脑O計的CInfo-DCGAN模型在圖像識別方面的優(yōu)勢,實驗另外訓練了一個CNN模型作為對比,其中本文方法中生成數(shù)據(jù)與原始數(shù)據(jù)按照1∶2的比例進行數(shù)據(jù)增強,兩種模型的類別信息損失值loss_class變化趨勢圖如圖11所示。從圖中可以看出隨著迭代次數(shù)增加,CNN模型損失值變化表明該模型不穩(wěn)定,而C-Info-DCGAN模型的損失值略有起伏,但基本上保持一個穩(wěn)定值。這是由于本文提出的分類模型利用對抗訓練能夠有效地提取數(shù)據(jù)特征和數(shù)據(jù)最強,在其他條件相同的情況下,本文方法比CNN方法更快收斂且模型更穩(wěn)定。

圖11 MNIST數(shù)據(jù)集上loss_class變化趨勢圖
圖12 表示Q網(wǎng)絡中分類信息c和隱含信息l的準確率變化趨勢,因為判別網(wǎng)絡D和Q網(wǎng)絡結構基本相同且共享各項參數(shù),所以只選取Q網(wǎng)絡的準確率,從圖12中可以看出,隨著迭代次數(shù)不斷增加準確率也都不斷增加,表示整個模型不斷優(yōu)化完善。

圖12 MNIST上Q網(wǎng)絡的l和c準確率變化趨勢圖
本文提出的方法具有數(shù)據(jù)增強功能,為了充分體現(xiàn)其價值,實驗中將生成數(shù)據(jù)與原始數(shù)據(jù)按照不同比例組合作為訓練數(shù)據(jù)集。不同比例下本文方法的識別準確率如表2所示。從表2中可以看出,隨著生成數(shù)據(jù)在訓練集中所占比例的增加,模型識別率也不斷增加,說明本文方法確實可以達到增強數(shù)據(jù)和提高準確率的目的。

表2 不同補充數(shù)據(jù)比例下在MNIST上的識別率
除此之外,本實驗還選取了在網(wǎng)絡結構相似情況下基于SVM、PCA、CNN和RNN模型的圖像識別,對比這些方法和本文方法在圖像識別準確率方面的差別。各種方法在MNIST上的識別準確率對比如表3所示。從表3中可以看出,使用傳統(tǒng)的機器學習方法SVM和PCA準確率可以達到92%左右,而CNN和RNN等深度學習方法準確率更高,可以達到94%~97%,而本文模型隨著訓練迭代的增加,圖像識別的準確率可以穩(wěn)定保持在98%左右。從以上的實驗中可以看出本文方法的可行性與優(yōu)勢。

表3 不同方法在MNIST上的識別率
CIFAR-10數(shù)據(jù)集由10個類的60 000個32×32像素的彩色圖像組成,其中包括50 000個訓練圖像和10 000個測試圖像。因為是彩色圖片集,所以每張樣本是(32,32,3)的3通道彩色圖[17]。
5.2.1 CIFAR-10生成樣本
在CIFAR-10數(shù)據(jù)集上的實驗,各項參數(shù)保持不變,圖13表示判別網(wǎng)絡中正確判斷真實數(shù)據(jù)類別和生成數(shù)據(jù)準確率的平均值,整體趨勢趨于平穩(wěn)。雖然對抗訓練導致變化趨勢震蕩嚴重,但是在訓練達到1 000次之后損失值均值保持在一個固定值。圖14表示生成網(wǎng)絡輸出的損失值,前期變化較大,后期整體變化趨勢較平穩(wěn)。圖15和圖16分別表示Q網(wǎng)絡中類別信息和潛在隱含信息的損失值,整體趨勢和判別網(wǎng)絡的變化相似,前期變化不大,后期緩慢下降震蕩嚴重但損失均值趨于平穩(wěn)。

圖13 CIFAR-10數(shù)據(jù)集中l(wèi)oss_disc變化趨勢

圖14 CIFAR-10數(shù)據(jù)集中l(wèi)oss_g變化趨勢

圖15 CIFAR-10數(shù)據(jù)集中l(wèi)oss_class變化趨勢

圖16 CIFAR-10數(shù)據(jù)集中l(wèi)oss_con變化趨勢
圖17 表示在CIFAR-10數(shù)據(jù)集中不同迭代次數(shù)下實驗生成樣本的對比,可以看出從開始的雜亂無章,逐漸有了圖形的輪廓,但是總體而言,生成效果比在MNIST數(shù)據(jù)集的生成效果差一些。
5.2.2 CIFAR-10分類結果

圖17 CIFAR-10數(shù)據(jù)集的生成樣本對比
在CIFAR-10數(shù)據(jù)集中同樣是選取CNN模型與本文方法進行對比實驗,本文方法中生成數(shù)據(jù)與原始數(shù)據(jù)還是按照1∶2的比例進行數(shù)據(jù)增強,圖18表示在CIFAR-10數(shù)據(jù)集中CNN和C-Info-DCGAN兩種方法損失值隨著訓練次數(shù)增加的變化趨勢,可以看出兩種方法的損失值都趨近于一個較小的穩(wěn)定值,但是從訓練的前半段可以看出CNN的起始損失值較大,且達到穩(wěn)定的時間比本文方法要長,這主要是因為本文方法中訓練樣本是在對抗網(wǎng)絡中預先處理,并把生成的樣本作為補充數(shù)據(jù)提高訓練速度。

圖18 CIFAR數(shù)據(jù)集上loss_class變化趨勢
圖19 表示這兩種方法在圖像分類準確性方面的表現(xiàn),可以看出由于本文方法數(shù)據(jù)預先訓練,所以分類訓練開始的準確性就非常高,而CNN方法需要一段時間的訓練來提升準確率,而且訓練過程中模型不穩(wěn)定,準確率變化較大。

圖19 CIFAR數(shù)據(jù)集上準確率對比
本實驗中也將生成數(shù)據(jù)與原始數(shù)據(jù)按照不同比例組合作為訓練數(shù)據(jù)集。不同比例下本文方法的識別準確率如表4所示。從表4與表2對比可以看出,在CIFAR中的準確率要低于MNIST數(shù)據(jù)集,但是準確率依然是隨著生成數(shù)據(jù)在訓練集中所占比例的增加而增加。

表4 不同補充數(shù)據(jù)比例下在CIFAR上的識別率
除此之外,本實驗中同樣選取了一些傳統(tǒng)的圖像識別方法與本文方法進行分類準確性對比,從表5與表3對比看出,因為CIFAR-10上圖片的復雜性,導致準確率相對低一些,但是縱向比較各種方法的準確性發(fā)現(xiàn),本文方法的準確率依然可達88%,說明本文方法在更加復雜樣本中的表現(xiàn)依然具有很大的優(yōu)勢與可行性。

表5 各種方法在CIFAR上的準確率對比
本文基于條件生成對抗網(wǎng)絡和信息最大化生成對抗網(wǎng)絡,提出了改進的帶有條件信息最大化生成對抗網(wǎng)絡(C-Info-GAN),充分發(fā)揮類別信息和潛在隱含信息對對抗訓練的引導作用,從而加速訓練和提高生成數(shù)據(jù)的準確性。同時在網(wǎng)絡結構中結合深度卷積網(wǎng)絡,加強網(wǎng)絡對特征提取的能力,從而提出能夠用于圖像識別的C-Info-DCGAN方法。為了驗證該方法的可行性,本文通過在MNIST和CIFAR數(shù)據(jù)集上進行仿真實驗。實驗結果表明,相對于傳統(tǒng)的圖像分類方法,本文方法提高模型的收斂速度,在分類準確率方面也具有明顯優(yōu)勢,所以證明本文提出的帶有條件的信息最大化深度卷積生成對抗網(wǎng)絡在圖像識別領域具有可行性,接下來將針對模型訓練后期對抗訓練導致的震蕩問題進行深入研究。