劉 帥,黃 剛,戴曉峰,顏金花
(1.南京郵電大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 南京 210023; 2.南京工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 南京 211816)
近年來(lái),隨著深度學(xué)習(xí)的發(fā)展,深度學(xué)習(xí)在自然圖像識(shí)別領(lǐng)域(如圖像識(shí)別與分類(lèi)、圖像的文本描述以及圖像分割等)都取得了突破性的進(jìn)展,在對(duì)人臉、車(chē)牌號(hào)等特定的對(duì)象識(shí)別與分類(lèi)方面表現(xiàn)的尤為突出。但算法的發(fā)展過(guò)程中也逐漸暴露出泛化能力差、訓(xùn)練所需數(shù)據(jù)量大等缺點(diǎn)。尤其是近年來(lái)的圖像分類(lèi)數(shù)據(jù)量都非常大,訓(xùn)練數(shù)據(jù)過(guò)大則導(dǎo)致人工標(biāo)注難度大,而傳統(tǒng)方法分類(lèi)圖像需要大量被標(biāo)注的標(biāo)簽,因此傳統(tǒng)的方法無(wú)法滿(mǎn)足現(xiàn)有需求。
為了解決上述問(wèn)題,Larochelle等于2008年提出了零樣本學(xué)習(xí)這一概念[1]。零樣本可以將可見(jiàn)類(lèi)拓展到不可見(jiàn)類(lèi)而不需要額外的標(biāo)簽[2-8]。零樣本圖像分類(lèi)的過(guò)程與人類(lèi)識(shí)別未見(jiàn)過(guò)的物體很相似,但是人類(lèi)可以只通過(guò)一句話(huà)的描述就能識(shí)別出物體。例如,如果一個(gè)孩子以前見(jiàn)過(guò)馬,并且知道“斑馬”就像一匹黑白條紋的馬,那么他/她識(shí)別“斑馬”就沒(méi)有問(wèn)題。零樣本分類(lèi)依賴(lài)于一個(gè)有標(biāo)記的可見(jiàn)類(lèi),以及一個(gè)擁有語(yǔ)義信息描述的不可見(jiàn)類(lèi)。傳統(tǒng)的零樣本方法主要是建立視覺(jué)空間和語(yǔ)義特征空間之間的映射函數(shù),包括視覺(jué)空間到語(yǔ)義空間的映射[2],語(yǔ)義空間到視覺(jué)空間的映射[9],視覺(jué)空間和語(yǔ)義空間映射到一個(gè)共享的隱空間[10]。但是由于視覺(jué)和語(yǔ)義之間的差異,相互映射會(huì)導(dǎo)致語(yǔ)義信息丟失,最終對(duì)圖像分類(lèi)的效果不理想。
同時(shí),由于深度網(wǎng)絡(luò)的訓(xùn)練缺少注釋樣本,訓(xùn)練數(shù)據(jù)生成成為了研究熱點(diǎn)[11]。生成對(duì)抗網(wǎng)絡(luò)[12]特別有吸引力,因?yàn)樗鼈冊(cè)试S生成真實(shí)而清晰的圖像,例如,生成以對(duì)象類(lèi)別為條件的圖像[13-14]。盡管生成對(duì)抗網(wǎng)絡(luò)已經(jīng)可以解決多數(shù)問(wèn)題,但是其難以訓(xùn)練和梯度消失等問(wèn)題仍是一大阻礙。強(qiáng)大的WGAN[15]解決了這些問(wèn)題。
因此,可以通過(guò)融合生成對(duì)抗網(wǎng)絡(luò)來(lái)解決零樣本存在的問(wèn)題,利用高斯噪聲和不可見(jiàn)類(lèi)的語(yǔ)義信息生成圖像特征,然后利用可見(jiàn)類(lèi)和生成的圖像特征訓(xùn)練分類(lèi)器。雖然上述方法可以解決零樣本存在的問(wèn)題,但是也引入了新的問(wèn)題:如何訓(xùn)練出能夠生成符合語(yǔ)義信息的圖像特征。因此,該文改進(jìn)了生成器,將生成的圖像特征重構(gòu)回語(yǔ)義信息,從而約束生成器生成高質(zhì)量圖像特征。
主要貢獻(xiàn)如下:改進(jìn)生成對(duì)抗網(wǎng)絡(luò)的生成器網(wǎng)絡(luò),在原本生成器網(wǎng)絡(luò)基礎(chǔ)上引入重構(gòu)網(wǎng)絡(luò),將生成的圖像特征重構(gòu)回語(yǔ)義信息,以此來(lái)限制生成器,使得生成的圖像特征能夠更加貼合語(yǔ)義信息,從而確保圖像和語(yǔ)義直接的結(jié)構(gòu)相關(guān)性。
本節(jié)介紹零樣本學(xué)習(xí)和生成對(duì)抗網(wǎng)絡(luò),為后面改進(jìn)融合生成對(duì)抗網(wǎng)絡(luò)的零樣本圖像分類(lèi)模型做鋪墊。
在早期的零樣本方法中,主要可以分為直接語(yǔ)義預(yù)測(cè)和模型嵌入兩類(lèi)。其中第一類(lèi),直接預(yù)測(cè)方法,最具代表性的為2013年Lampert提出的兩種拓?fù)浣Y(jié)構(gòu)零樣本學(xué)習(xí)模型,即直接屬性預(yù)測(cè)(DAP)模型以及間接屬性預(yù)測(cè)(IAP)模型。其中DAP,就是對(duì)輸入的每一個(gè)屬性訓(xùn)練一個(gè)分類(lèi)器,然后將訓(xùn)練得出的模型用于屬性的預(yù)測(cè),測(cè)試時(shí),對(duì)測(cè)試樣本的屬性進(jìn)行預(yù)測(cè),再?gòu)膶傩韵蛄靠臻g里面找到和測(cè)試樣本最接近的類(lèi)別。IAP則是利用可見(jiàn)類(lèi)建立一種關(guān)聯(lián)關(guān)系來(lái)將測(cè)試樣本和不可見(jiàn)類(lèi)相關(guān)聯(lián),該方法是將測(cè)試樣本分類(lèi)到可見(jiàn)類(lèi)別中,隨后根據(jù)可見(jiàn)類(lèi)和不可見(jiàn)類(lèi)的語(yǔ)義信息建立的語(yǔ)義關(guān)系對(duì)測(cè)試樣本進(jìn)行預(yù)測(cè)。文獻(xiàn)[16]提出利用隨機(jī)森林算法來(lái)訓(xùn)練模型以提高對(duì)語(yǔ)義信息的預(yù)測(cè)準(zhǔn)確度,通過(guò)對(duì)每個(gè)類(lèi)別的屬性預(yù)測(cè)損失來(lái)提升預(yù)測(cè)準(zhǔn)確率?;谇度氲姆椒▌t是將可見(jiàn)類(lèi)和不可見(jiàn)類(lèi)關(guān)聯(lián)在一個(gè)高維向量空間中,即語(yǔ)義嵌入空間,該空間可以是語(yǔ)義屬性空間或語(yǔ)義詞向量空間。由于視覺(jué)和語(yǔ)義的差異,三種語(yǔ)義和視覺(jué)空間的映射會(huì)導(dǎo)致語(yǔ)義丟失問(wèn)題。Chen等于2017年提出了SP-AEN模型[17],通過(guò)引入一個(gè)獨(dú)立的視覺(jué)到語(yǔ)義空間嵌入器來(lái)防止語(yǔ)義丟失,該嵌入器將語(yǔ)義空間分解為兩個(gè)子空間,以實(shí)現(xiàn)兩個(gè)可能沖突的目標(biāo):分類(lèi)和重構(gòu)。通過(guò)兩個(gè)子空間的對(duì)抗學(xué)習(xí),SP-AEN可以將語(yǔ)義從重構(gòu)子空間轉(zhuǎn)移到判別子空間,實(shí)現(xiàn)對(duì)不可見(jiàn)類(lèi)的零樣本識(shí)別。
雖然傳統(tǒng)的零樣本方法能夠在一定程度上實(shí)現(xiàn)零樣本圖像分類(lèi),但取得的效果并不理想。于是Xian等[18]提出了利用生成對(duì)抗網(wǎng)絡(luò)體系結(jié)構(gòu)來(lái)直接生成圖像特征。通過(guò)利用可見(jiàn)類(lèi)訓(xùn)練生成器和鑒別器,以及不可見(jiàn)類(lèi)的語(yǔ)義信息生成類(lèi)似不可見(jiàn)類(lèi)的圖像特征來(lái)訓(xùn)練分類(lèi)器,最終使得分類(lèi)器的效果好于之前的傳統(tǒng)方法。
生成對(duì)抗網(wǎng)絡(luò),最初是由Goodfellow作為一種學(xué)習(xí)生成模型的方法提出,該模型從一個(gè)特定的領(lǐng)域(圖像等)捕獲任意的數(shù)據(jù)分布。生成對(duì)抗網(wǎng)絡(luò)由生成器和鑒別器兩個(gè)部分組成,生成器輸入隨機(jī)噪聲試圖生成“真實(shí)圖像”來(lái)欺騙鑒別器,鑒別器則區(qū)分真假圖像,兩個(gè)網(wǎng)絡(luò)通過(guò)相互對(duì)抗的方式進(jìn)行。在隨后的發(fā)展中,通過(guò)將類(lèi)別標(biāo)簽,句子描述輸入到生成器和鑒別器中,GAN也被擴(kuò)展為條件GAN。GAN的理論在文獻(xiàn)[19]中進(jìn)行了研究,表明Jenson-Shannon發(fā)散會(huì)導(dǎo)致不穩(wěn)定性問(wèn)題。為了解決GAN的不穩(wěn)定訓(xùn)練問(wèn)題,文獻(xiàn)[20]提出了Wasserstein-GAN(WGAN),優(yōu)化了Wasserstein距離的有效逼近。雖然WGAN獲得了比原始GAN更好的理論性能,但它仍然受到梯度消失和爆炸問(wèn)題的困擾。因此,文獻(xiàn)[15]提出了一個(gè)改進(jìn)的WGAN版本,通過(guò)梯度懲罰對(duì)鑒別器進(jìn)行1-Lipschitz約束來(lái)緩解梯度消失和爆炸問(wèn)題。
首先設(shè)S={(x,y,c(y))|x∈X,y∈Y,c(y)∈C},其中S代表可見(jiàn)類(lèi)的訓(xùn)練數(shù)據(jù),x∈Rdx為經(jīng)過(guò)CNN處理的圖像特征,y表示類(lèi)別標(biāo)簽Ys={y1,…,yK},由K個(gè)離散的可見(jiàn)類(lèi)組成,c(y)∈Rdc是類(lèi)別嵌入,例如類(lèi)y的屬性,它模擬類(lèi)之間的語(yǔ)義關(guān)系。另外,還有一個(gè)不相交的類(lèi)標(biāo)簽集Yu={u1,…,uL},包含L個(gè)不可見(jiàn)類(lèi),其類(lèi)別嵌入集合U={u,c(u)|u∈Yu,c(u)∈C}可用,但缺少圖像特征,以此來(lái)訓(xùn)練分類(lèi)器,最終使得分類(lèi)器的效果好于之前的傳統(tǒng)方法。
圖1 CLSWGAN網(wǎng)絡(luò)結(jié)構(gòu)
生成對(duì)抗網(wǎng)絡(luò)損失函數(shù)LWGAN:
(1)
式中,前兩項(xiàng)近似于Wasserstein距離,第三項(xiàng)是梯度懲罰,λ為懲罰系數(shù)。
分類(lèi)器的損失函數(shù)LCLS:
(2)
整體的損失函數(shù)為:
(3)
由于生成對(duì)抗網(wǎng)絡(luò)容易產(chǎn)生模式崩潰的問(wèn)題,僅通過(guò)生成器和鑒別器之間相互對(duì)抗會(huì)使得最終生成的圖像特征趨向單一化。計(jì)算機(jī)視覺(jué)的另一種方法─變分自動(dòng)編碼器(VAE)也可以生成圖像[21]。VAE由編碼器Encoder和解碼器Decoder構(gòu)成。如圖2所示,VAE本質(zhì)上是提取圖像的隱性特征,構(gòu)建從特征生成目標(biāo)圖像的模型。編碼器從輸入圖像中提取均值向量和標(biāo)準(zhǔn)差向量,然后對(duì)編碼得到的結(jié)果向量加上高斯噪聲來(lái)約束,生成潛在變量,潛在變量服從高斯分布的隱含特征。解碼器將潛在變量映射到重新生成的概率分布中。編碼之后的分布要與原始的分布越接近越好。
圖2 VAE網(wǎng)絡(luò)結(jié)構(gòu)
VAE的損失函數(shù)如下:
L(φ,θ,x)=Eqφ(z|x)[logpθ(x|z)]-
DKL(qφ(z|x)‖pθ(z))
(4)
式中,E為編碼器網(wǎng)絡(luò),D為解碼器網(wǎng)絡(luò),qφ(z|x)表示從圖像編碼成向量的分布,pθ(x|z)表示從向量重構(gòu)為圖像的分布。第一項(xiàng)為解碼器D的誤差,驅(qū)使分布pθ(x|z)接近于輸入分布pθ(x),第二項(xiàng)旨在減少KL散度,令qφ(z|x)更接近于先驗(yàn)分布pθ(x)。
VAE本質(zhì)上就是在對(duì)Encoder的均值向量結(jié)果加上了高斯噪聲,使得Decoder能夠?qū)υ肼曈恤敯粜?。而額外的KL損失目的是讓均值為0,方差為1,事實(shí)上就是相當(dāng)于對(duì)Encoder的一個(gè)正則項(xiàng),希望Encoder出的結(jié)果有均值。另外,Encoder的標(biāo)準(zhǔn)差向量用于動(dòng)態(tài)調(diào)節(jié)噪聲的強(qiáng)度。當(dāng)Decoder還沒(méi)有訓(xùn)練好即重構(gòu)誤差遠(yuǎn)大于KL損失時(shí),就會(huì)適當(dāng)降低噪聲使得擬合起來(lái)容易一些;反之,如果Decoder訓(xùn)練的效果不錯(cuò),重構(gòu)誤差小于KL損失,這時(shí)候噪聲就會(huì)增加,使得擬合更加困難,這時(shí)候Decoder就要提高Decoder生成能力。
基于VAE網(wǎng)絡(luò)的原理,推理出可以在f-CLSWGAN的基礎(chǔ)上引入重構(gòu)網(wǎng)絡(luò)來(lái)比較生成器生成的圖像特征和原始的語(yǔ)義信息之間的差異來(lái)約束生成器,以改進(jìn)f-CLSWGAN模型,提升分類(lèi)準(zhǔn)確度。
圖3 f-WGRN網(wǎng)絡(luò)結(jié)構(gòu)
重構(gòu)網(wǎng)絡(luò)的損失函數(shù)如下:
(5)
生成對(duì)抗網(wǎng)絡(luò)損失函數(shù)LWGRAN:
(6)
整體的損失函數(shù)為:
(7)
實(shí)驗(yàn)采用了4個(gè)不同的經(jīng)典數(shù)據(jù)集,分別是AWA[4]、CUB[22]、FLO[23]、SUN[24],其中CUB、FLO、SUN都是細(xì)粒度數(shù)據(jù)集,AWA是粗粒度數(shù)據(jù)集。CUB包含來(lái)自200種不同的類(lèi)型鳥(niǎo)類(lèi)的11 788張圖片,這些圖片帶有312種屬性。FLO有102種不同類(lèi)型的鮮花圖片共8 189張,但是沒(méi)有屬性注釋?zhuān)酝ㄟ^(guò)視覺(jué)描述對(duì)FLO進(jìn)行注釋。SUN是一個(gè)場(chǎng)景數(shù)據(jù)集,其包含717個(gè)場(chǎng)景的14 340張,且場(chǎng)景標(biāo)注有102種屬性。AWA是一個(gè)動(dòng)物數(shù)據(jù)集,包含30 475張圖片,共用50個(gè)類(lèi)別,包含85種屬性。
數(shù)據(jù)集具體參數(shù)如表1所示,同時(shí)將數(shù)據(jù)集分割為兩部分,可見(jiàn)類(lèi)作為訓(xùn)練集,不可見(jiàn)類(lèi)作為測(cè)試集,可見(jiàn)類(lèi)與不可見(jiàn)類(lèi)之間沒(méi)有交集。
表1 AWA、CUB、FLO、SUN數(shù)據(jù)集
參考Xian等的對(duì)于數(shù)據(jù)集的操作,采用Res101[25]對(duì)整幅圖像提取2 048維的圖像特征,并在ImageNet上進(jìn)行了預(yù)訓(xùn)練。沒(méi)有對(duì)圖像進(jìn)行預(yù)處理,例如裁剪或者其他的數(shù)據(jù)增強(qiáng)技術(shù)。此外,把每個(gè)類(lèi)別的屬性AWA(85維),CUB(312維)和SUN(102維)作為語(yǔ)義信息。對(duì)于SUN和FLO,從細(xì)粒度的視覺(jué)描述(每幅圖像10句)中提取了1 024維的基于字符的CNN-RNN特征。
該模型在ubuntu16.04、Python2.6、pytorch環(huán)境下搭建,在一張Tesla P100顯卡上訓(xùn)練并測(cè)試。實(shí)驗(yàn)在四個(gè)不同數(shù)據(jù)集上分別進(jìn)行了100輪訓(xùn)練,圖4為四個(gè)不同數(shù)據(jù)集的分類(lèi)準(zhǔn)確度。
圖4 實(shí)驗(yàn)結(jié)果
可以看出,該模型在訓(xùn)練AWA上只經(jīng)過(guò)了30輪訓(xùn)練便達(dá)到了最大值,隨之便逐漸下降;在CUB數(shù)據(jù)集上數(shù)據(jù)震蕩較大,在45輪左右達(dá)到最大值;在FLO數(shù)據(jù)集上經(jīng)過(guò)40輪訓(xùn)練后開(kāi)始在最大值附件震蕩,直到95輪左右達(dá)到了最大值;在SUN數(shù)據(jù)集上,經(jīng)過(guò)30輪訓(xùn)練后,便逐漸趨于穩(wěn)定。分類(lèi)準(zhǔn)確度的訓(xùn)練輪次能夠很快達(dá)到穩(wěn)定,主要原因在于f-WGRAN模型采用了重構(gòu)網(wǎng)絡(luò),可以約束生成器使得生成的圖像特征與語(yǔ)義信息的相關(guān)性更加緊密。
與不同方法對(duì)比結(jié)果如表2所示。觀察實(shí)驗(yàn)結(jié)果可知,f-WGRAN關(guān)于四種不同數(shù)據(jù)集的分類(lèi)準(zhǔn)確度均優(yōu)于之前的方法。同時(shí),可以看出引入生成對(duì)抗網(wǎng)絡(luò)的模型分類(lèi)準(zhǔn)確度明顯高于傳統(tǒng)的零樣本圖像分類(lèi)方法。原始的f-CLSWGAN網(wǎng)絡(luò)模型只是利用生成器和鑒別器直接相互對(duì)抗,使得生成的圖像特征越來(lái)越單一。而提出的f-WGRAN模型對(duì)生成器進(jìn)行改進(jìn),引入重構(gòu)網(wǎng)絡(luò)來(lái)限制生成器生成更符合屬性的圖像特征,從而使得分類(lèi)準(zhǔn)確度有所提升。
表2 不同模型方法在4個(gè)數(shù)據(jù)集上的分類(lèi)準(zhǔn)確度比較
該模型在AWA數(shù)據(jù)集取得了69.2%的分類(lèi)準(zhǔn)確度,比f(wàn)-CLSWGAN模型提升了1.0個(gè)百分點(diǎn),在FLO和SUN模型分別取得了68.4%和61.7%的分類(lèi)準(zhǔn)確度,相比f(wàn)-CLSWGAN分別提升了1.2和0.9個(gè)百分點(diǎn),在CUB數(shù)據(jù)集上幾乎沒(méi)有提升。實(shí)驗(yàn)證明,f-WGRAN能夠取得更高的分類(lèi)準(zhǔn)確度,證明該模型方法是可行的。
零樣本圖像分類(lèi)經(jīng)過(guò)十多年的發(fā)展仍是深度學(xué)習(xí)領(lǐng)域的具有挑戰(zhàn)性的研究方向[26-27]。該文通過(guò)分析以往的零樣本分類(lèi)方法,分析存在的問(wèn)題,結(jié)合生成對(duì)抗網(wǎng)絡(luò)提出了一種利用生成對(duì)抗網(wǎng)絡(luò)生成圖像特征來(lái)進(jìn)行判別的模型f-WGRAN,以此來(lái)解決零樣本圖像分類(lèi)問(wèn)題。f-WGRAN在生成對(duì)抗網(wǎng)絡(luò)上增加一個(gè)重構(gòu)網(wǎng)絡(luò),通過(guò)將生成器生成的視覺(jué)特征重構(gòu)回語(yǔ)義信息,以此來(lái)限制生成器生成更符合屬性的圖像特征,加強(qiáng)了生成器的特征生成能力,并且在很少的輪次就可以達(dá)到最大分類(lèi)準(zhǔn)確度。經(jīng)過(guò)實(shí)驗(yàn)論證,該模型分別在AWA、CUB、FLO、SUN四個(gè)數(shù)據(jù)集提升了1、0.1、1.2和0.9個(gè)百分點(diǎn)。該文主要針對(duì)生成對(duì)抗網(wǎng)絡(luò)來(lái)進(jìn)行改進(jìn),并且此改進(jìn)可以應(yīng)用于不同的生成對(duì)抗網(wǎng)絡(luò)上。在后續(xù)的工作中將考慮如何提升鑒別器的鑒別能力。