亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進DCGAN的數(shù)據(jù)增強方法

        2021-07-02 00:35:36沈鴻飛張躍進
        計算機應(yīng)用 2021年5期
        關(guān)鍵詞:模型

        甘 嵐,沈鴻飛,王 瑤,張躍進

        (華東交通大學(xué)信息工程學(xué)院,南昌 330013)

        (*通信作者電子郵箱15207112943@163.com)

        0 引言

        深度學(xué)習(xí)(Deep Learning,DL)[1]作為一種數(shù)據(jù)驅(qū)動技術(shù),在樣本充足的情況下能夠取得很好的訓(xùn)練效果。而實際研究中更多的是小樣本[2]數(shù)據(jù),若直接將小樣本數(shù)據(jù)代入深度學(xué)習(xí)訓(xùn)練,將會出現(xiàn)嚴重的過擬合問題。為了改善小樣本數(shù)據(jù)在深度學(xué)習(xí)中的訓(xùn)練效果,需要對小樣本數(shù)據(jù)進行處理,使其能夠在深度學(xué)習(xí)中取得好的訓(xùn)練結(jié)果。

        處理小樣本的主要方法可以歸為以下幾點:1)統(tǒng)計學(xué)習(xí)理論(Statistic Learning Theory,SLT)[3],SLT 是一種專門研究小樣本學(xué)習(xí)規(guī)律的機器學(xué)習(xí)方法,但是STL 在實際實現(xiàn)時有計算困難、泛化性差等問題;2)神經(jīng)網(wǎng)絡(luò)(Neural Network,NN)[4]模型,NN是近幾年比較流行的一種研究小樣本方法,但NN對于數(shù)據(jù)的依賴性較強,需要大數(shù)量的樣本才能有較好的結(jié)果;3)數(shù)據(jù)增強(Data Augmentation,DA)[5],DA 的思想是通過對樣本圖像進行不同的變換,從而得到更多的樣本,以此來提高樣本的多樣性。DA 相比前兩種方法,擁有很好的泛化性,也被廣泛用于小樣本問題的研究,因此,本文采用DA 的方法對小樣本數(shù)據(jù)進行處理。

        DA 方法很多,如主成分分析(Principal Component Analysis,PCA)抖動[6]、隨機裁剪[7-9]、翻轉(zhuǎn)等。這些方法雖然能實現(xiàn)數(shù)據(jù)增強,但是其效果有限,因為這些方法局限于在原圖的基礎(chǔ)上進行變換,具有重復(fù)性,且數(shù)據(jù)分布單一。2014年Goodfellow 等[10]受博弈模型的啟發(fā)提出生成對抗網(wǎng)絡(luò)(Generative Adversarial Network,GAN)模型,隨后其廣泛應(yīng)用在圖像合成、超分辨率、DA等問題中。相比早期DA,GAN有了很大改進,主要表現(xiàn)在GAN脫離了原圖的限制,通過一組隨機噪聲學(xué)習(xí)真實樣本分布,生產(chǎn)新的樣本數(shù)據(jù),故GAN是解決小樣本數(shù)據(jù)增強問題的有效方法。自GAN 提出以后,圍繞其思想又衍生出很多改進型算法,其中2015年Radford等[11]提出的DCGAN(Deep Convolutional Generative Adversarial Network)是眾多改進算法中較好的一種,其通過引入步長卷積,使其代替原有的感知機層,提高了訓(xùn)練的穩(wěn)定性以及生成樣本的質(zhì)量,因此在DA方面得到了廣泛應(yīng)用。

        2019 年王娟等[12]通過DCGAN 對帕金森聲紋樣本進行增強,有效提高了其識別率;Alyafi 等[13]通過DCGAN 實現(xiàn)對乳腺X 線攝影病變的質(zhì)量分析;戚永軍等[14]提出通過生成對抗網(wǎng)絡(luò)實現(xiàn)肺結(jié)節(jié)圖像數(shù)據(jù)增強,使用了DCGAN方法。上述文獻表明了DCGAN 在DA 應(yīng)用中的可行性和有效性,但是DCGAN 的應(yīng)用也存在一些問題,諸如梯度消失、模式崩塌、訓(xùn)練不穩(wěn)定、樣本多樣性不足等,這些問題使得DCGAN 模型在實際訓(xùn)練時難以穩(wěn)定地進行,無法進行大規(guī)模的DA。

        本文從以下幾個方面進行改進:1)針對DCGAN中的梯度消失、模式崩潰問題,采用W(Wasserstein)距離[15]代替原模型中損失函數(shù)[16];2)針對模型中的卷積網(wǎng)絡(luò)有參數(shù)振蕩問題,提出在每層卷積網(wǎng)絡(luò)中加入譜歸一化(Spectral Normailization,SN)[17];3)DCGAN 的噪聲輸入維度會影響生成樣本多樣性,為此采用極大似然估計算法估算數(shù)據(jù)的最佳噪聲輸入。實驗結(jié)果表明,使用上述改進方法,DCGAN 生成樣本的多樣性得到了明顯提高,參數(shù)振蕩、梯度消失、模式崩塌等問題有了較好的改善。

        1 DCGAN原理

        與GAN 一樣,DCGAN 是一種無監(jiān)督式深度學(xué)習(xí)模型。DCGAN主要由生成器G(Generator)和判別器D(Discriminator)構(gòu)成,其核心思想是通過G和D相互競爭,最終達到納什均衡[18]。其中G通過采集和學(xué)習(xí)真實樣本數(shù)據(jù)的數(shù)學(xué)分布,最終將給定的噪聲輸入生成新的樣本數(shù)據(jù)。判別器的作用是判別輸入樣本是真實樣本還是生成樣本,通過這樣不斷的學(xué)習(xí),生成器提高了自身樣本數(shù)據(jù)的生成能力,最佳的狀態(tài)是,判別器無法判別樣本來源于真實樣本還是生成樣本。相反判別器提高其判別能力,能判別出輸入數(shù)據(jù)為生成樣本而不是真實樣本?;窘Y(jié)構(gòu)如圖1,z為輸入的隨機噪聲、G為生成器、G(z)表示生成的圖片、x為真實數(shù)據(jù)、D為判別器。

        圖1 DCGAN基本結(jié)構(gòu)Fig.1 Basic structure of DCGAN

        1.1 訓(xùn)練過程

        在模型G和D對抗訓(xùn)練過程中,使D判別輸入樣本來源于真實數(shù)據(jù)還是生成樣本的正確率最大化,同時使G生成的樣本數(shù)據(jù)接近真實數(shù)據(jù)的程度最大化。訓(xùn)練開始后,隨機噪聲z輸入到G中開始學(xué)習(xí)模型參數(shù),此時希望G生成的樣本數(shù)據(jù)G(z)經(jīng)過D判別后的概率為1,數(shù)學(xué)模型為D(G(z))=1,也就是1-D(G(z))=0,即最小化模型G。而在訓(xùn)練模型D時,若輸入樣本數(shù)據(jù)為真實數(shù)據(jù)x時,期望目標是經(jīng)過D判別后的概率為1,數(shù)學(xué)模型為D(x)=1;若輸入樣本數(shù)據(jù)為G(z)時,則希望經(jīng)過D判別后的概率為0,即D(G(z))=0,所以1-D(G(z))=1,因此最大化模型D。故G和D的訓(xùn)練問題可以用值函數(shù)V(G,D)表示,從而變成V(G,D)的最大化最小化問題??杀硎緸槭剑?):

        其中:Pdata為真實數(shù)據(jù)分布,Pg為噪聲分布。實際訓(xùn)練中,模型G和D交替迭代更新,先固定G訓(xùn)練D,更新D模型中的參數(shù),然后再更新迭代G模型的網(wǎng)絡(luò)參數(shù),不斷重復(fù)這個過程,直到對抗網(wǎng)絡(luò)穩(wěn)定。根據(jù)文獻[10]中可知,當(dāng)且僅當(dāng)Pdata=Pg時,V(G,D)的最大化最小化問題有全局最優(yōu)解,即達到納什均衡狀態(tài)。此時可以停止訓(xùn)練,模型G學(xué)習(xí)了真實樣本數(shù)據(jù)Pdata的分布,而此時模型D的準確率穩(wěn)定在0.5。

        1.2 損失函數(shù)

        根據(jù)1.1節(jié)分析,DCGAN最終轉(zhuǎn)化為值函數(shù)V(G,D)的極大化極小化問題,式(1)即為DCGAN 的優(yōu)化目標。但由于DCGAN由生成器模型和判別器模型兩部分組成,所以將式(1)拆成兩個損失函數(shù)模型。在判別器模型中,損失函數(shù)如下:

        在式(2)中,前項是真實樣本的判別結(jié)果,后項是生成樣本的判別結(jié)果,其中前項越趨近1 說明越好,后項則是越趨近0 越好。所以最終期望的結(jié)果是趨近1,故這里加上對數(shù)函數(shù)得到判別器損失函數(shù)原型。與判別器模型一樣,通過處理得生成器損失函數(shù)如下:

        同樣地使用對數(shù)函數(shù)作為損失函數(shù)。與判別器相比,生成器只需要對生成數(shù)據(jù)的結(jié)果趨近1即可。

        1.3 可行性證明

        本節(jié)將從理論角度證明DCGAN方法是可行的,為后面改進提供理論依據(jù)。

        首先從目標函數(shù)出發(fā),由于值函數(shù)V(G,D)是連續(xù)的,故將式(1)寫成微積分形式來表示數(shù)學(xué)期望。如式(4):

        假設(shè)生成器G(z)生成的數(shù)據(jù)是x,分別求出噪聲點z和微分dz的表達式:

        將式(5)、(6)代入式(4)得:

        定義噪聲輸入z的生成分布為Pg(x),則可得:

        其中Pz表示z的生成分布,將式(8)代入式(7)得:

        求值函數(shù)V(G,D)的最大值,固定G求D的偏導(dǎo)數(shù)得:

        從D*(x)的表達式可以看出,當(dāng)G生成的虛擬樣本數(shù)據(jù)分布和真實數(shù)據(jù)分布一致時,即Pdata(x)=Pg(x)時,在這個條件下D*(x)=1/2,而此時D網(wǎng)絡(luò)已經(jīng)無法判斷出G網(wǎng)絡(luò)生成樣本數(shù)據(jù)的真假性,即D已經(jīng)取得最優(yōu)解。

        經(jīng)過推導(dǎo)得到了D的最優(yōu)解,此時只需證明在D取得最優(yōu)解的同時G也能取得最優(yōu)解,便說明在目標函數(shù)(1)的作用下,網(wǎng)絡(luò)D和G經(jīng)過不斷的對抗訓(xùn)練能夠達到納什均衡狀態(tài)。

        將D*(x)代入式(9)得:

        其中C(G)為G的積分表達式,對式(11)進行等效變換得:

        對式(12)引入連續(xù)函數(shù)的Kullback-Leibler(KL)[19]散度,整理成散度表達式得:

        根據(jù)散度定義可知,當(dāng)虛擬樣本Pg(x)的數(shù)學(xué)分布等于真實數(shù)據(jù)Pdata(x)的分布時,即Pdata(x)=Pg(x)時,KL=0,G網(wǎng)絡(luò)的最小值是-lg 4。同理引入Jensen-Shannon(JS)[20]散度得:

        可以發(fā)現(xiàn),無論是KL散度還是JS散度G網(wǎng)絡(luò)的最小值都是-lg 4。由此證明在D取得最優(yōu)解[21]的同時,G網(wǎng)絡(luò)也無限逼近其最小值,即取得最優(yōu)解。證明了在目標函數(shù)的限制下,能達到納什均衡狀態(tài),DCGAN可行。

        2 DCGAN的改進方法

        相比其他生成對抗網(wǎng)絡(luò)算法,DCGAN 在穩(wěn)定性和生成樣本質(zhì)量方面有一定的優(yōu)勢,但是梯度消失、多樣性不高等問題依然存在。因此本文針對這些問題提出以下改進方法:損失函數(shù)替換、加入譜歸一化和最佳噪聲輸入估算。

        2.1 損失函數(shù)的改進

        2.1.1 問題引出

        KL 散度通常被用來衡量分布之間的距離,但KL 散度是不對稱的。這意味著對于同一個距離,觀察方式不同,獲取的損失值也不同,那么整體loss[22]下降的方向就會趨于某個特定方向,這在DCGAN中非常容易造成模式崩塌。JS散度是另一種衡量分布之間距離的方法,是在KL散度的基礎(chǔ)上修改而來,解決了不對稱問題,但JS 散度存在一個嚴重的問題:兩個分布沒有重疊時,JS 散度為零,而在訓(xùn)練初期,JS 散度極大可能為0。所以如果D被訓(xùn)練的過強,損失值會經(jīng)常收斂到-2 lg 2而沒有梯度。

        不難看出,無論是KL散度還是JS散度,DCGAN都不能穩(wěn)定地訓(xùn)練出好的結(jié)果。

        2.1.2 方案選擇

        根據(jù)上述問題,需要找到合理的損失模型替換KL/JS 散度。與KL/JS類似的有歐氏距離、馬氏距離、W距離等。

        歐氏距離計算的是同一分布中的兩組測量,由定義可知,歐氏距離假設(shè)測量的不同維度之間是獨立的,而在大多數(shù)樣本生成時各測量之間有很強的關(guān)聯(lián)性,因此歐氏距離替換損失模型有很大的局限性。馬氏距離是在歐氏距離的基礎(chǔ)上修改而來,考慮到了各種特性之間的聯(lián)系,并且與尺度無關(guān),表示數(shù)據(jù)的協(xié)方差距離,但是馬氏距離受協(xié)方差矩陣不穩(wěn)的影響,并不能有效、快速地計算距離,故馬氏距離替換模型同樣存在不穩(wěn)定性問題。W距離能穩(wěn)定并有效地計算兩個分布之間的距離,規(guī)避了無相關(guān)性、不穩(wěn)定的問題,這對于前面提出的問題是很好的解決方案,因此本文采用W距離作為DCGAN損失函數(shù)原型。

        2.1.3 Wasserstein距離相關(guān)理論W距離又稱Earth-Mover(EM)距離,其定義如下:

        其中Π(Pdata,Pg)是Pdata和Pg組合后的所有可能的聯(lián)合分布的集合。對于可能的聯(lián)合分布γ,可以從(x,y)~γ中得到一個真實樣本x和生成樣本y,計算出樣本的距離||x-y||,因此γ下樣本對距離的期望值為E(x,y)~γ[||x-y||]。在聯(lián)合分布中,對這個距離期望值能夠取到的下界(式(15))就定義為W距離。

        W 距離與KL 散度、JS 散度相比其優(yōu)勢性在于,即使兩個分布沒有重疊W 距離仍然能夠反映它們的遠近。通過一個簡單的方法來驗證這一點,在二維空間中的兩個分布P1 和P2,P1 在線段MN上均勻分布,P2 在線段PQ上均勻分布,現(xiàn)在通過參數(shù)λ控制P1和P2的距離,如圖2。

        圖2 P1、P2距離分布Fig.2 P1,P2 distance distribution

        此時很容易得到如下關(guān)系式:

        可以看到KL 散度和JS 散度是突變的,而W 距離是平滑的。當(dāng)使用梯度下降法優(yōu)化參數(shù)時,KL散度和JS散度無法提供合理的梯度信息,W距離卻可以。同樣的,在高維空間中如果兩個分布不重疊或者重疊部分可忽略,那么KL 和JS 無法直觀反映兩個分布的遠近關(guān)系,也不能提供可靠的梯度信息;而W 距離不僅可以反映出距離的遠近,同時也能提供可靠的梯度信息,從理論層面解決了模式崩潰以及梯度消失問題。前期實驗也表明,引入W 距離后模式崩潰問題得到了有效的解決。

        2.1.4 改進策略

        W 距離的定義中要求解式(15),通過推導(dǎo)給出式(15)的變換形式,如下:

        式(16)需要滿足Lipschitz 連續(xù)[23],即在一個連續(xù)的函數(shù)f(x)上面施加一個限制條件,要求存在一個常數(shù)K(K≥0)使得定義域內(nèi)的任意兩個元素x1和x2之間的距離‖f‖L=|f(x1)-f(x2) |都滿足‖f‖L≤K|x1-x2|,此時稱函數(shù)f(x)的Lipschitz常數(shù)為K。

        在式(16)中要求函數(shù)f(x)的Lipschitz 常數(shù)‖f‖L在小于等于K的條件下,所有可能滿足條件的f取的上界,然后再除以K。現(xiàn)在用參數(shù)β定義一組函數(shù)fβ,此時式(15)可近似變換成如下形式進行求解:

        fβ雖然無法包含所有可能,但是也高度滿足的要求。最后還要滿足≤K這個條件,這里采用一個簡單的方法,限制神經(jīng)網(wǎng)絡(luò)fβ的所有參數(shù)βi的值在范圍[ -n,n],這里n可以根據(jù)實際訓(xùn)練情況取值,此時輸入樣本x的導(dǎo)數(shù)同樣不會超出限定的范圍,所以一定存在一個常數(shù)K使fβ的局部振幅不會超過它,至此Lipschitz 連續(xù)條件滿足。下面即可根據(jù)W距離模型構(gòu)建新的損失函數(shù)。

        在算法實現(xiàn)時,構(gòu)造一個含參數(shù)β、網(wǎng)絡(luò)的最后一層不是非線性激活層的判別器fβ,并且限制β不超過限定范圍的條件下使式(18)取得最大值,L就會近似真實分布與生成分布之間的W距離。

        這里需要注意的是DCGAN的判別器是做的二分類任務(wù),故最后一層加了sigmoid 函數(shù),但是在改進DCGAN 中判別器的作用是近似擬合W 距離,屬于回歸任務(wù),所以要去掉最后一層的sigmoid函數(shù)。對于生成器則需要近似最小化W距離,故最小化L。這樣就得到了改進后DCGAN的兩個損失函數(shù):

        式(19)為生成器的損失函數(shù),式(20)為判別器的損失函數(shù)。這里將式(18)取反得到式(20),可以起到指示訓(xùn)練程度的作用,損失值越小訓(xùn)練得越好。

        2.2 譜歸一化

        2.2.1 問題引出

        在前期的實驗中發(fā)現(xiàn),盡管替換損失函數(shù)之后訓(xùn)練的穩(wěn)定性有了很大的提高,但是訓(xùn)練中依然會有較大的波動現(xiàn)象。在2.1 節(jié)中為了滿足Lipschitz 連續(xù)條件,直接對參數(shù)矩陣中的元素進行限制,不讓其大于限定的值。這種方法簡單有效,但是也存在問題,因為在滿足Lipschitz 條件的同時,也使得整個參數(shù)矩陣的結(jié)構(gòu)不穩(wěn)定。通過研究發(fā)現(xiàn)譜歸一化在滿足Lipschitz 連續(xù)的同時,又可以維持參數(shù)矩陣的穩(wěn)定性。為了更好地發(fā)揮W 距離優(yōu)勢,提出通過譜歸一化改善訓(xùn)練波動的現(xiàn)象。

        2.2.2 理論推導(dǎo)

        為便于分析,將DCGAN看作多層網(wǎng)絡(luò)。對于多層網(wǎng)絡(luò)的第n層,輸入輸出關(guān)系可表示為:

        其中:an(·)是所在網(wǎng)絡(luò)層的非線性激活函數(shù),可采用ReLU(Rectified Linear Unit)或者Leakey ReLU;Wn是網(wǎng)絡(luò)的參數(shù)矩陣,bn是網(wǎng)絡(luò)的偏置項,為了便于推導(dǎo),省去偏置項bn。式(21)可寫成:

        其中:Dn表示對角矩陣,用于表示激活函數(shù)的作用,當(dāng)輸入為負數(shù)時對角值為0;相反輸入為正數(shù)時對角值為1。這樣多層網(wǎng)絡(luò)的輸入輸出關(guān)系便可寫成:

        根據(jù)2.1 節(jié)可知,在滿足Lipschitz 連續(xù)條件時對f(x)的梯度提出新的要求:

        這里‖W‖表示矩陣W的譜范數(shù),定義為:

        σ(w)是矩陣W的最大奇異值,對于對角矩陣D,有σ(D)=max(d1,d2,…,dn)。由此式(24)可寫成:

        為了讓f(x)滿足Lipschitz 約束,現(xiàn)對式(24)進行歸一化處理:

        可見,只要使每層網(wǎng)絡(luò)的參數(shù)除以該層參數(shù)矩陣的譜范數(shù)即可滿足Lipschitz 連續(xù)的條件,因此譜歸一化的引入很好地解決了因直接限制參數(shù)矩陣中的元素帶來的問題。

        2.2.3 實現(xiàn)步驟

        在算法實現(xiàn)時,需要求解Wi的奇異值,這會耗費大量的計算資源,而這在計算資源有限的情況下是不允許的。為此采用冪迭代法來近似求取,減少計算資源的消耗。其迭代過程如下:

        步驟2 以下歸一化步驟循環(huán)K次:

        結(jié)束循環(huán)。

        步驟3 計算σl(W)=

        其中μk是該矩陣的最大奇異值對應(yīng)的特征矢量。得到譜范數(shù)后,每個參數(shù)矩陣上的參數(shù)都除以它,從而達到歸一化的目的。實驗表明在加入譜歸一化后,改進的DCGAN訓(xùn)練更加穩(wěn)定,并且生成的圖像質(zhì)量得到明顯的提高。

        2.3 最佳噪聲輸入估算

        2.3.1 問題引出

        噪聲的存在是為了讓網(wǎng)絡(luò)具有隨機性,能產(chǎn)生均勻分布,從而可以對此進行采樣。使用一個簡單噪聲z,經(jīng)過生成器訓(xùn)練可以產(chǎn)生復(fù)雜的分布Pdata,目標是讓它接近真實數(shù)據(jù)分布。前期實驗表明:若噪聲輸入維度低于某個值時,生成樣本單一,多樣性低;若噪聲輸入維度不斷增加,模型生成樣本多樣性會逐漸變好,但是訓(xùn)練所需時間也越來越長。因此如何設(shè)置噪聲輸入維度是生成具有多樣性樣本的關(guān)鍵,對此本文采用極大似然估計算法估算最佳噪聲輸入維度。

        2.3.2 相關(guān)理論

        通??梢哉J為圖像、文字、音頻等數(shù)據(jù)是分布在低維流形空間上的[24]。對于DCGAN而言,噪聲的維數(shù)至少要達到數(shù)據(jù)流形的內(nèi)在維數(shù),才能產(chǎn)生足夠多樣性的生成樣本。下面給出內(nèi)在維數(shù)的定義:歐氏空間(?n)的子集稱為一個內(nèi)在維數(shù)m=m(M),具有P-光滑結(jié)構(gòu)的流形,如果存在常數(shù)cp(M),使對于任意給定的x∈M,存在一組m個向量v1(x),v2(x),…,vm(x) ∈?n,cp(M)‖x′-x|1+p對任意的x′∈M都成立。

        如果對任意點,都能用m個附近的點進行逼近,那么流形的內(nèi)在維數(shù)就是m。需要注意的是,與向量空間的維數(shù)定義不同,向量空間要求基底是固定的,而流形的基底是局部的,因點而異。隱空間維數(shù)不能太低,太低了容易丟失模式,也會產(chǎn)生模式崩潰。也就是說,隱空間的維數(shù)有個下界,高于這個下界才能避免模式丟失的問題。這個下界就是流形的內(nèi)在維數(shù)。

        2.3.3 極大似然估計

        一個合適的噪聲輸入對生成樣本的多樣性以及質(zhì)量有著很大的影響。本文采用極大似然估計的方法來找到最佳的噪聲輸入。2004 年Levina 等[25]提出通過極大似然估計內(nèi)在維數(shù)的方法,而DCGAN 的噪聲輸入即為流形中的內(nèi)在維數(shù),為本方法提供了理論依據(jù)。設(shè)來自流形M的樣本點,則內(nèi)在維數(shù)mk可表示為:

        其中Tk(x)表示xi的k近鄰與xi之間的距離。實驗表明,隱空間維數(shù)越高,會有更多的信息對內(nèi)在維度做出貢獻,即噪聲輸入的維數(shù)越高,生成樣本的多樣性會越好;但是隱空間維數(shù)太高占用的顯存會更大,模型更強,搜索空間更大,存在更多的鞍點,學(xué)得越慢,因此不能無限地取大。

        2.4 改進后模型可行性證明

        根據(jù)上述三點改進方案對模型的可行性是否有影響進行論證說明。

        1)損失函數(shù)替換。下面給出改進后模型的目標函數(shù):

        其中g(shù)θ為生成分布,記G=gθ,D=fw,則式(29)變?yōu)椋?/p>

        可以看到,改進后模型的目標函數(shù)和原模型的差別即是取對數(shù)與否,兩者只相差一個常數(shù)。

        為更進一步說明,現(xiàn)假設(shè)Pr 是任一分布,Pθ是gθ(z)的分布,其中生成分布z的概率密度為P(z),局部Lipschitz 常數(shù)為L(θ,z),且Ez~P(z)L(θ,z)<+∞,則對于式(17)存在解f:x→R(實數(shù)集),因此W 距離下的模型是有解的。證明了替換損失函數(shù)后模型是可行的。

        2)譜歸一化。譜歸一化的作用是對模型中結(jié)構(gòu)參數(shù)進行限制,屬于過程參數(shù)的優(yōu)化,因此在模型的可行性證明中對目標函數(shù)無影響。

        3)噪聲輸入。噪聲輸入估算僅是對輸入?yún)?shù)進行優(yōu)化,即目標函數(shù)公式中參數(shù)z,而z的變化不影響模型的可行性。綜上所述,改進后的DCGAN模型是有效可行的。

        2.5 改進的DCGAN算法

        根據(jù)上述損失函數(shù)的替換、卷積層引入譜歸一化、噪聲輸入的估算等改進,給出改進后的DCGAN模型和算法。

        2.5.1 模型

        根據(jù)前面三節(jié)可知,對DCGAN的改進主要體現(xiàn)在損失函數(shù)、噪聲輸入維度大小以及網(wǎng)絡(luò)中的歸一化改變。噪聲輸入維度會因數(shù)據(jù)集的不同而改變,W 距離為反向傳播提供梯度信息,如圖3 的DCGAN 模型及訓(xùn)練結(jié)構(gòu)所示。譜歸一化引入細節(jié)見表1和表2,SN表示譜歸一化。

        圖3 改進后模型及訓(xùn)練結(jié)構(gòu)Fig.3 Improved model and training structure

        表1 DCGAN生成網(wǎng)絡(luò)細節(jié)Tab.1 Details of DCGAN generation network

        表2 DCGAN判別網(wǎng)絡(luò)細節(jié)Tab.2 Details of DCGAN discrimination network

        2.5.2 改進后DCGAN算法

        根據(jù)前面改進模型,給出改進后的DCGAN 算法偽代碼如下:

        參數(shù)說明:?表示梯度算子。

        其中set_steps和k_steps是提前設(shè)置好的超參數(shù):set_steps是最大的迭代次數(shù),以保證足夠的訓(xùn)練次數(shù)來達到訓(xùn)練要求;k_steps是判別器的訓(xùn)練次數(shù),一般是通過多次更新判別器的方法來保持兩個網(wǎng)絡(luò)訓(xùn)練平衡。

        3 實驗過程及分析

        3.1 實驗環(huán)境及參數(shù)設(shè)置

        對所提算法的有效性進行驗證,硬件平臺在配置為Intel Core i7-9700k 3.60 GHz 處理器,運行內(nèi)存16 GB,12 GB 的RTX2080TI(單個)顯卡,Windows 10 操作系統(tǒng)下進行。代碼實現(xiàn)在2018.3 x64 版本的pycharm,3.6.3 版本的python,1.14.0版本的TensorFlow下進行。

        實驗發(fā)現(xiàn)0.000 1 的學(xué)習(xí)率收斂效果更好。故將學(xué)習(xí)率設(shè)置為0.000 1、Batch Size 大小為128、迭代訓(xùn)練次數(shù)為15 000。使用隨機梯度下降(Stochastic Gradient Descent,SGD),Adma 優(yōu)化器。數(shù)據(jù)集選用的是公共數(shù)據(jù)集MNIST、CelebA以及動漫人臉Cartoon。

        3.2 訓(xùn)練結(jié)果及分析

        3.2.1 損失變化

        對損失變化部分,本文取前15 000 輪實驗數(shù)據(jù)作對比。根據(jù)實驗繪制了生成器損失變化曲線,其中Or_DCGAN(Original DCGAN)為原DCGAN 模型,IM_DCGAN(Improved DCGAN)為改進后模型。Or_DCGAN2 曲線是實驗中常出現(xiàn)的一種情況,在10 000輪之前損失值基本無變化,沒有任何梯度信息,隨后雖然有梯度信息,但是隨著訓(xùn)練的不斷進行,其參數(shù)振蕩幅度越來越大,呈發(fā)散趨勢無法收斂。Or_DCGAN1曲線是另一種訓(xùn)練中常出現(xiàn)的情況,3 000輪以前訓(xùn)練相對平穩(wěn),但隨后振蕩幅度開始加大,呈現(xiàn)發(fā)散沒有收斂趨勢,此種現(xiàn)象無法訓(xùn)練出理想的樣本。而改進后模型IM_DCGAN 在訓(xùn)練到1 000輪的時候損失值快速下降,并且在后面的訓(xùn)練中整體呈穩(wěn)定趨勢,波動幅度較小,訓(xùn)練15 000輪以后生成的樣本多樣性、清晰度都比改進前有明顯提高。變化曲線如圖4訓(xùn)練損失對比所示,表明對DCGAN的改進方法有效。

        圖4 訓(xùn)練損失對比Fig.4 Comparison of training loss

        3.2.2 譜歸一化影響

        為說明譜歸一化產(chǎn)生的影響,采用單一變量原則,除卷積層中是否加入譜歸一化外,其余變量、參數(shù)均保持一致,其中SN 表示加入譜歸一化,N_SN 表示沒有加入譜歸一化??梢娫跊]有加入譜歸一化時,前期訓(xùn)練基本穩(wěn)定,但是8 000 輪以后,波動逐漸加大,呈發(fā)散趨勢,難以穩(wěn)定訓(xùn)練出理想結(jié)果。而在加入譜歸一化之后,可以明顯看到整個訓(xùn)練過程比較穩(wěn)定,無大幅度振蕩現(xiàn)象,如圖5 譜歸一化對生成器損失影響。表明該方法能有效改善參數(shù)振蕩問題。

        圖5 譜歸一化對損失的影響Fig.5 Influence of spectral normalization on loss

        3.2.3 噪聲輸入對樣本的影響

        為估算樣本的內(nèi)在維數(shù),實驗隨機抽取3 000個樣本通過極大似然算法進行計算。三種數(shù)據(jù)集的內(nèi)在維數(shù)變化曲線如圖6 所示,m為數(shù)據(jù)的維數(shù)變化,k為樣本點。其中MNIST 的內(nèi)在維數(shù)約為6.8、Cartoon 的內(nèi)在維數(shù)約為8.3、CelebA 的內(nèi)在維數(shù)最大約10.5。需要說明的是,實際樣本的內(nèi)在維數(shù)遠不止所估算這么低,主要由于某些少見的特征樣本很少,例如MNIST數(shù)據(jù)集每張樣本的底色都是黑色,這些特征就被忽略,對內(nèi)在維數(shù)沒有貢獻,從而導(dǎo)致實驗的內(nèi)在維數(shù)很低。

        圖6 數(shù)據(jù)內(nèi)在維數(shù)變化曲線Fig.6 Chang curve of data intrinsic dimension

        內(nèi)在維數(shù)的確定是為了給噪聲輸入一個約定,即噪聲輸入必須大于內(nèi)在維數(shù)才能生成高質(zhì)量的樣本?,F(xiàn)將不同噪聲輸入生成樣本代入卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)訓(xùn)練,根據(jù)其識別率確定最佳噪聲輸入維度。隨著噪聲輸入的逐漸增大,生成樣本的識別率越來越高,但是增加的幅度越來越小,如圖7 所示,噪聲輸入為均勻隨機分布,大 小 為[batch_size,noise_size],其 中batch_size為固定值128,noise_size即橫坐標值。MNIST 在較小的噪聲輸入時就能生成質(zhì)量較高的樣本,原因是MNIST 樣本復(fù)雜程度低,沒有冗余信息。而CelebA 和Cartoon 直到噪聲輸入到80 以后才能生成較高的樣本,因為CelebA和Cartoon冗余信息多復(fù)雜程度高,如人物微表情、臉型、背景等,因此實際內(nèi)在維數(shù)較大。

        圖7 噪聲輸入對生成樣本識別率的影響Fig.7 Influence of noise input on recognition rate of generated samples

        綜上所述,為使DCGAN 生成具有多樣性的樣本,應(yīng)該根據(jù)內(nèi)在維數(shù)合理設(shè)置噪聲輸入。現(xiàn)根據(jù)實驗給出噪聲參數(shù)設(shè)置建議,若樣本特征簡單、信息復(fù)雜度低,則設(shè)置為100 即可生成高質(zhì)量樣本;若樣本信息復(fù)雜、冗余信息多,則將噪聲輸入大小設(shè)置和樣本身大小相同或者更高。例如MNIST 訓(xùn)練時噪聲輸入設(shè)置為100、CelebA 設(shè)置為150、Cartoon 設(shè)置為140。需要說明的是考慮到內(nèi)存和訓(xùn)練速度的原因,在設(shè)置噪聲輸入時需要根據(jù)硬件條件作出相應(yīng)的調(diào)整,不能無限增大。

        3.2.4 生成樣本對比

        為直觀展示模型改進前后生成樣本質(zhì)量,選取實驗最終生成樣本對比。改進后DCGAN生成的樣本辨識度高,輪廓信息清晰、重復(fù)樣本少。而改進前生成的樣本都比較模糊,學(xué)習(xí)到的特征少,其中動漫人臉和CelebA 數(shù)據(jù)集出現(xiàn)了明顯的模式崩塌現(xiàn)象,如圖8 訓(xùn)練過程生成圖像所示。表明改進后的DCGAN 有效地解決了模式崩塌、生成樣本多樣性不高等問題。

        圖8 訓(xùn)練過程中生成圖像對比Fig.8 Comparison of images generated during training

        3.3 增強效果分析

        對于增強效果分析,本文通過生成樣本在CNN 中的識別率和圖像質(zhì)量兩個方面進行闡述。

        3.3.1 樣本量化評價

        本文選取灰度方差(Sum of Modulus of gray Difference,SMD)函數(shù)、Laplacian 梯度函數(shù)[26]、Tenengrad 梯度[27]三種方法評價圖像的清晰度,使用弗雷歇距離(Fréchet Inception Distance,F(xiàn)ID)[28]評價樣本間的相似度。清晰度方法從生成的樣本中隨機選取3 000張圖像,然后計算其平均值作為量化評價指標,相似度計算15 000 輪實驗FID 的均值作為評價指標。

        三種方法均是量化后的數(shù)值越大,樣本的清晰度越高。容易發(fā)現(xiàn),在各評價方法中,其改進后的DCGAN 生成樣本質(zhì)量均得到了明顯提高,如表3 所示。表明改進后的DCGAN 生成樣本清晰度更高。

        表3 樣本質(zhì)量評價指標對比Tab.3 Comparison of sample quality evaluation indices

        為進一步展現(xiàn)改進后模型效果,因FID 更具有原則性和綜合性,能準確反映生成樣本和真實樣本間的相似性,故采用FID 作為客觀評價指標。FID 值越小表明樣本間相似度越高。可見,改進后DCGAN 的FID 值較改進前有明顯的降低,其中MNIST 數(shù)據(jù)集最為明顯,降低了大約45%,如表4 所示。表明改進后DCGAN模型在提升樣本質(zhì)量上的有效性。

        表4 在各數(shù)據(jù)集上的FID值比較Tab.4 Comparison of FID values on different datasets

        3.3.2 樣本在分類識別性能上的分析

        前面通過實驗驗證了改進后的DCGAN 生成樣本的多樣性、清晰度都有所提高,但是DA 的最終目的是使小樣本數(shù)據(jù)能夠在深度學(xué)習(xí)算法上取得好的分類識別效果,所以對于改進后的DCGAN 的有效性還需要進一步的驗證。在生成樣本的識別實驗中,各數(shù)據(jù)集的訓(xùn)練集和驗證集通過訓(xùn)練好的模型生成樣本,按9∶1 進行隨機選取,最終訓(xùn)練集為18 000 張,驗證集為2 000張,測試集從原數(shù)據(jù)集中隨機選取4 500張;無生成樣本的實驗中,按同等比例在原數(shù)據(jù)集選取。

        DCGAN 改進前后生成樣本在CNN 下的訓(xùn)練識別率如表5所示,NO_DCGAN 表示不使用生成樣本的識別率,選取的是GoogLeNet。可以發(fā)現(xiàn),改進后DCGAN 的識別率較改進前有明顯提高;相比沒有使用生成樣本數(shù)據(jù),改進后的識別率有小幅度降低,但是依然有較高的識別率。表明改進方法有效,較好地提高了識別率,實現(xiàn)了小樣本數(shù)據(jù)在深度學(xué)習(xí)網(wǎng)絡(luò)中的穩(wěn)定訓(xùn)練,并且有較高的識別率。

        表5 生成樣本識別率對比 單位:%Tab.5 Comparison of recognition rate of generated samples unit:%

        4 結(jié)語

        本文對小樣本問題進行分析與研究。首先,討論了處理小樣本問題的方法,提出采用DA 方法對小樣本數(shù)據(jù)進行增強;然后,對比傳統(tǒng)DA 和生對抗網(wǎng)絡(luò)的優(yōu)缺點,提出使用DCGAN作為本文DA方法;最后,分析DCGAN存在的問題,提出一種改進的DCGAN對小樣本數(shù)據(jù)進行增強。在理論上,證明了采用W 距離作為損失函數(shù)、在卷積層中加入譜歸一化、通過極大似然估計噪聲輸入維度三種方法是可行的。在實驗上,通過在不同數(shù)據(jù)集上對比實驗,得出改進方法確實有效可行,提高了樣本的識別率和DCGAN的穩(wěn)定性。在未來的工作中,還需更進一步對小樣本的分類識別進行研究,提高其識別率,實現(xiàn)小樣本數(shù)據(jù)增強、分類識別一體化的功能。

        猜你喜歡
        模型
        一半模型
        一種去中心化的域名服務(wù)本地化模型
        適用于BDS-3 PPP的隨機模型
        提煉模型 突破難點
        函數(shù)模型及應(yīng)用
        p150Glued在帕金森病模型中的表達及分布
        函數(shù)模型及應(yīng)用
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        3D打印中的模型分割與打包
        国产精品久久毛片av大全日韩| av在线不卡免费中文网| 一级r片内射视频播放免费| 无码人妻av免费一区二区三区| 有码精品一二区在线| 午夜天堂精品一区二区| 久久精品久99精品免费| 好男人社区影院www| 在线看亚洲十八禁网站| 亚洲最大av免费观看| 日本免费视频一区二区三区| 一本加勒比hezyo无码专区| 真实国产乱啪福利露脸| 国产亚洲欧美另类第一页| 自拍偷拍韩国三级视频| 日本一二三区视频在线| 国产麻无矿码直接观看| 麻豆AV无码久久精品蜜桃久久| 国产黄色一区二区在线看 | 国产香蕉国产精品偷在线| 91精品国产综合成人| 久久99精品免费国产| 亚洲国产中文字幕视频| 好屌草这里只有精品| 亚洲av在线播放观看| 日韩精品一区二区三区影音视频 | 黄片国产一区二区三区| 亚洲av一二三区成人影片| 久久精品国产亚洲av麻| 特级毛片全部免费播放a一级| 中文字幕在线乱码亚洲| 在线成人爽a毛片免费软件| 91伊人久久| 国产三级c片在线观看| 国产免费久久精品99久久| a国产一区二区免费入口| 亚洲av综合日韩精品久久久 | 亚洲中文字幕无码mv| 亚洲人成无码网站十八禁| 久久人妻一区二区三区免费| 男人进去女人爽免费视频|