徐天宇,王智
(清華大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)系,深圳518055)
基于給定文本生成對(duì)應(yīng)圖像是計(jì)算機(jī)視覺(jué)領(lǐng)域一項(xiàng)經(jīng)典且富有挑戰(zhàn)性的任務(wù),顧名思義,即給出一句描述確定內(nèi)容的文本(可描述某件物體或某個(gè)場(chǎng)景環(huán)境),通過(guò)一定架構(gòu)的模型生成與文本內(nèi)容相對(duì)應(yīng)的圖像,使其盡可能做到逼近現(xiàn)實(shí),能夠迷惑人眼的識(shí)別或一些模型的判斷。該任務(wù)需要在理解文本含義的基礎(chǔ)上,根據(jù)文本的內(nèi)容構(gòu)建出合理的像素分布,形成一幅完整的、真實(shí)的圖片。因?yàn)榻o出的文本所包含的信息量在通常情況下都遠(yuǎn)少于其所對(duì)應(yīng)生成的圖像(文本通常只對(duì)圖像中主體部分大致進(jìn)行了描述,圖像則還包含主體所處背景、圖像全局特征等額外信息),所以一句給定的文本可能會(huì)對(duì)應(yīng)許多符合其描述的圖像結(jié)果,這是文本生成圖像任務(wù)的難點(diǎn)所在[1]。在如今生活、制造等多方面邁向智能化發(fā)展的時(shí)期,文本生成圖像這一任務(wù)在實(shí)際生產(chǎn)生活當(dāng)中具有非常廣的應(yīng)用價(jià)值和潛力,比如應(yīng)用于平面廣告設(shè)計(jì)領(lǐng)域,可以為廣告制作團(tuán)隊(duì)生成廣告用的配圖,從而不必再專(zhuān)門(mén)雇用插畫(huà)制作人員;家具、日用品生產(chǎn)領(lǐng)域,可以通過(guò)給出一段產(chǎn)品描述,利用模型批量生成大量的產(chǎn)品概念圖,從而給設(shè)計(jì)者提供了可供選擇的樣例空間,降低設(shè)計(jì)環(huán)節(jié)的工作量。
如今,基于給定文本生成圖像任務(wù)的實(shí)現(xiàn)都是基于從大量的圖像數(shù)據(jù)中學(xué)習(xí)并模擬其數(shù)據(jù)的分布形式來(lái)生成盡可能接近真實(shí)的圖像,尤其在對(duì)抗生成網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)[2]的火熱發(fā)展下,借助其來(lái)實(shí)現(xiàn)文本生成圖像的任務(wù)已經(jīng)成為了主流選擇,目前也有許多生成效果優(yōu)秀的模型被提出。在這一研究方面,研究者所關(guān)注的重點(diǎn)是如何能夠提高生成模型生成圖片的真實(shí)性、清晰度、多樣性、解析度等問(wèn)題,這些將直接影響生成模型的質(zhì)量和性能,并關(guān)系到生成模型能否有效投入到實(shí)際應(yīng)用當(dāng)中。
然而如果考慮到實(shí)際應(yīng)用,圖像好看,或者有足夠的美觀度也是一項(xiàng)重要的需求。比如為平面廣告設(shè)計(jì)配圖,對(duì)圖像的要求不僅是清晰、真實(shí),還應(yīng)該擁有較高的美觀度,從而能夠吸引人的眼球,提高廣告的關(guān)注度??梢哉f(shuō),如果能夠?qū)崿F(xiàn)提高此類(lèi)模型生成圖片的美觀度,則在實(shí)際應(yīng)用場(chǎng)景中將會(huì)給用戶帶來(lái)更加良好的使用體驗(yàn),從而提高此類(lèi)應(yīng)用的質(zhì)量。遺憾的是,現(xiàn)在對(duì)文本生成圖像GAN的研究很少關(guān)注生成圖像的美觀質(zhì)量,現(xiàn)有文獻(xiàn)中也并未發(fā)現(xiàn)有將美學(xué)評(píng)判與圖像生成相結(jié)合的研究,這成為了本文研究的動(dòng)機(jī)。
由此引出另一個(gè)問(wèn)題:如何評(píng)判一幅圖像的美觀度。圖像的美觀度評(píng)判實(shí)際上是一項(xiàng)帶有主觀性質(zhì)的任務(wù),每個(gè)人因不同的閱歷、審美觀甚至所處環(huán)境、情感狀態(tài)等多方面因素的影響,對(duì)同一幅圖像有可能會(huì)給出完全不同的評(píng)價(jià)。然而,面對(duì)互聯(lián)網(wǎng)空間與日俱增的圖片數(shù)量,借助人力對(duì)其進(jìn)行美觀度的評(píng)價(jià)是不切實(shí)際的。因此,研究借助計(jì)算機(jī)進(jìn)行自動(dòng)化圖像美觀度評(píng)判成為了計(jì)算機(jī)視覺(jué)領(lǐng)域另一項(xiàng)研究課題,至今也有許多研究者提出了實(shí)現(xiàn)原理各異且效果優(yōu)良的美觀度評(píng)判模型。借助這些模型,可以對(duì)目標(biāo)圖像進(jìn)行分類(lèi)或評(píng)分,給出盡可能接近符合多數(shù)人評(píng)價(jià)標(biāo)準(zhǔn)的評(píng)判結(jié)果。
借此,本文致力于研究從美觀度的角度對(duì)文本生成圖像GAN的生成結(jié)果進(jìn)行優(yōu)化的方法。本文的貢獻(xiàn)和創(chuàng)新點(diǎn)如下:
1)從實(shí)際應(yīng)用的角度出發(fā),將生成結(jié)果美觀度加入評(píng)價(jià)文本生成圖像GAN模型生成結(jié)果的評(píng)價(jià)指標(biāo),以目前受到較高認(rèn)可度的文本生成圖像GAN模型——StackGAN++[3]為基礎(chǔ),從美觀度的角度對(duì)其生成結(jié)果進(jìn)行評(píng)估,以觀察其生成結(jié)果的美觀度質(zhì)量。
2)將美觀度評(píng)判模型融入該GAN的生成模型當(dāng)中,通過(guò)增添美學(xué)損失的方式改造生成模型,從而在模型訓(xùn)練過(guò)程中加入美學(xué)控制因素,引導(dǎo)模型生成美觀度更高的結(jié)果。本文提出的改進(jìn)方法使得模型生成圖像的總體美學(xué)質(zhì)量(以IS(Inception Score)為評(píng)價(jià)指標(biāo)[4])提高了2.68%,其生成圖像結(jié)果整體的美觀度指標(biāo)提高了3.17%。
隨著網(wǎng)絡(luò)空間中圖片數(shù)量的急速增長(zhǎng),在圖片檢索領(lǐng)域?yàn)榱四軌蚋玫貫橛脩粽邕x返回圖像的質(zhì)量、給用戶返回更高質(zhì)量的搜索結(jié)果,對(duì)圖片按美學(xué)質(zhì)量進(jìn)行分類(lèi)的需求逐漸增加。圖片所附帶的數(shù)據(jù)標(biāo)簽(如喜歡該圖的人的數(shù)量、圖片內(nèi)容等)可以作為美觀度評(píng)價(jià)的一類(lèi)較為有效的標(biāo)準(zhǔn),但大部分的圖片并不存在類(lèi)似這樣的標(biāo)簽,雖然如今有許多研究已能夠做到給圖片準(zhǔn)確高效地進(jìn)行標(biāo)簽標(biāo)注[5],然而即使每幅圖片均被標(biāo)注了足夠用以進(jìn)行評(píng)判的標(biāo)簽,圖片龐大的數(shù)量又使得人工評(píng)判工作量巨大,因此需要能夠?qū)D片進(jìn)行美觀度評(píng)判的模型,由計(jì)算機(jī)來(lái)完成這一任務(wù)。
受到心理學(xué)、神經(jīng)科學(xué)等領(lǐng)域中對(duì)人類(lèi)美學(xué)感知的研究成果啟發(fā),計(jì)算機(jī)視覺(jué)領(lǐng)域的研究者們通過(guò)模擬、復(fù)現(xiàn)人類(lèi)處理接收到的圖像視覺(jué)信息的過(guò)程,設(shè)計(jì)實(shí)現(xiàn)了一系列自動(dòng)評(píng)判圖片美學(xué)質(zhì)量的模型[6]。圖像美觀度評(píng)判模型一般遵循一個(gè)固定的流程:首先對(duì)輸入圖像進(jìn)行特征提取,然后借助提取的特征,利用訓(xùn)練好的分類(lèi)或回歸算法獲得相應(yīng)的結(jié)果。
特征提取則是其中非常重要的一環(huán),因?yàn)樘卣餍畔⑹菍?duì)圖像美學(xué)質(zhì)量的概括,其決定了美觀度評(píng)判模型的精確度。選取得當(dāng)?shù)奶卣骷饶芴岣吣P驮u(píng)判的精確度,又能減少不必要的計(jì)算量,因?yàn)椴煌卣鲗?duì)于圖像美學(xué)質(zhì)量的貢獻(xiàn)度是不同的[7]。早期的研究中,研究者們通常選擇以繪畫(huà)、攝影所用的美學(xué)規(guī)則理論和人的直觀感受為依據(jù),自主設(shè)計(jì)所要提取的特征,比如清晰度、色調(diào)、三分規(guī)則等。這類(lèi)方法的好處是直觀、易于理解,但缺點(diǎn)在于所設(shè)計(jì)的特征通常不能很全面地描述圖像美學(xué)信息,而且設(shè)計(jì)特征對(duì)于研究者的工程能力和相關(guān)領(lǐng)域知識(shí)了解程度都有較高的要求。而隨著深度學(xué)習(xí)領(lǐng)域的不斷發(fā)展,將卷積神經(jīng)網(wǎng)絡(luò)(Convolitional Neural Networks,CNN)應(yīng)用于圖像處理這一方式展現(xiàn)出了卓越的效果。借助CNN能夠從大量的圖像數(shù)據(jù)中學(xué)習(xí)到有力的圖像特征表示,其所包含的信息量遠(yuǎn)超人工特征設(shè)計(jì)所設(shè)定的特征[8],從而使得CNN處理圖像的方式在圖像處理領(lǐng)域得到廣泛應(yīng)用,并逐漸成為主流選擇的方法。深度學(xué)習(xí)方法應(yīng)用于圖像美觀度評(píng)判的特征提取環(huán)節(jié),主要有2種方式:第1種是借助已有的深度學(xué)習(xí)圖像處理模型,利用其中間層特征作為評(píng)判依據(jù),采用傳統(tǒng)的分類(lèi)或回歸方法進(jìn)行美觀度評(píng)判;第2種是對(duì)已有的模型進(jìn)行改造,使得其能夠從圖像數(shù)據(jù)中學(xué)習(xí)到新的隱藏的美學(xué)特征,并借此對(duì)圖像的美觀度作出評(píng)判。
本文采用的是Kong等[9]設(shè)計(jì)的美觀度評(píng)判模型。該模型隨AADB(Aesthetics and Attributes Database)數(shù)據(jù)集一同提出,其基于AlexNet[8]改造得來(lái),通過(guò)提取圖片的內(nèi)容特征以及自定義的屬性標(biāo)簽特征來(lái)幫助判斷圖像的美觀度。此外,該模型吸收了Siamese網(wǎng)絡(luò)[10]的結(jié)構(gòu),實(shí)現(xiàn)了接收兩幅一組的圖像作為輸入并給出它們之間相對(duì)評(píng)分的功能,同時(shí)提出了2種對(duì)圖像進(jìn)行成對(duì)采樣的訓(xùn)練方式來(lái)輔助增加結(jié)果的精確度。實(shí)驗(yàn)結(jié)果表明該模型在AVA(Aesthetic Visual Analysis)數(shù)據(jù)集上的判別準(zhǔn)確率達(dá)到77.33%,超過(guò)了當(dāng)時(shí)已有的許多模型的表現(xiàn)。作者并未對(duì)該模型進(jìn)行命名,為方便說(shuō)明,下文中統(tǒng)一用“AADB模型”對(duì)其進(jìn)行代指。
GAN的提出是機(jī)器學(xué)習(xí)領(lǐng)域一項(xiàng)重大的突破,其為生成模型的訓(xùn)練提供了一種對(duì)抗訓(xùn)練的思路。相比于傳統(tǒng)的生成模型如變分自編碼器、玻爾茲曼機(jī),GAN優(yōu)勢(shì)有:其訓(xùn)練只需借助反向傳播而不需要馬爾可夫鏈、能夠產(chǎn)生全新的樣本以及更加真實(shí)清晰的結(jié)果、簡(jiǎn)化任務(wù)設(shè)計(jì)思路等,因此,其成為了現(xiàn)今機(jī)器學(xué)習(xí)領(lǐng)域十分火熱的研究課題。
GAN的結(jié)構(gòu)一般可分為兩部分:生成器部分,負(fù)責(zé)接收一段隨機(jī)噪聲作為輸入來(lái)生成一定的結(jié)果;判別器部分,負(fù)責(zé)接收訓(xùn)練數(shù)據(jù)或生成器生成的數(shù)據(jù)作為輸入,判斷輸入是來(lái)自哪一方。生成器的最終目標(biāo)是生成能夠徹底欺騙判別器的數(shù)據(jù),即判別器無(wú)法區(qū)分輸入數(shù)據(jù)來(lái)自真實(shí)數(shù)據(jù)分布還是生成器擬合的數(shù)據(jù)分布;而判別器的最終目標(biāo)是有效區(qū)分其輸入來(lái)源,識(shí)別出來(lái)自生成器的輸入。GAN的訓(xùn)練正是基于這種博弈的過(guò)程,令生成器和判別器二者之間進(jìn)行對(duì)抗,交替更新參數(shù),當(dāng)模型最終達(dá)到納什均衡時(shí),生成器即學(xué)習(xí)到了訓(xùn)練數(shù)據(jù)的數(shù)據(jù)分布,產(chǎn)生相應(yīng)的結(jié)果。
雖然GAN擁有良好的表現(xiàn)力和極大的發(fā)展?jié)摿Γ浔旧磉€存在一些缺點(diǎn),比如訓(xùn)練困難、無(wú)監(jiān)督使得生成結(jié)果缺少限制、模式崩潰、梯度消失等問(wèn)題。后續(xù)許多研究者對(duì)GAN從結(jié)構(gòu)[11]、訓(xùn)練方法[12]或?qū)崿F(xiàn)方法[13]上進(jìn)行了改進(jìn),逐漸提高了GAN訓(xùn)練的穩(wěn)定性和生成效果。此外,CGAN(Conditional GAN)[14]將條件信息與生成器和判別器的原始輸入拼接形成新的輸入,用以限制GAN生成和判別的表現(xiàn),使得GAN生成結(jié)果的穩(wěn)定性得到提高。
利用GAN來(lái)實(shí)現(xiàn)文本生成圖像任務(wù)也是基于CGAN的思想,以文本-圖像組合為訓(xùn)練數(shù)據(jù),文本作為輸入數(shù)據(jù)的一部分,在生成器中與隨機(jī)噪聲拼接作為生成器的整體輸入,在判別器中則用于形成不同的判斷組合——真實(shí)圖片與對(duì)應(yīng)文本、真實(shí)圖片與不匹配文本、生成器生成圖片與任意文本并進(jìn)行鑒別。文本數(shù)據(jù)通常會(huì)借助其他編碼模型將純文字信息轉(zhuǎn)化為一定維數(shù)的文本嵌入向量,用以投入模型的訓(xùn)練計(jì)算當(dāng)中。最先利用GAN實(shí)現(xiàn)文本生成圖像任務(wù)的是Reed等[15]提出的GAN-INT-CLS模型,其吸收了CGAN和DCGAN(Deep Convolutional GAN)[11]的思想,同時(shí)提出改進(jìn)判別器接收的文本-圖像組合輸入(新增真實(shí)圖像與不匹配文本的組合)以及通過(guò)插值的方式創(chuàng)造新的文本編碼向量?jī)煞N方法來(lái)提高生成結(jié)果的質(zhì)量和豐富度,生成了64×64大小的圖像。隨后該領(lǐng)域的一項(xiàng)重要突破是Zhang等[16]提出的StackGAN模型,該模型通過(guò)使用2個(gè)生成器的方式生成圖像,首次實(shí)現(xiàn)了只借助給定文本的條件下生成256×256大小的圖像。該模型中,第1個(gè)生成器接收隨機(jī)噪聲與文本向量的拼接來(lái)生成64×64大小的中間結(jié)果,第2個(gè)生成器則使用該中間結(jié)果與文本向量作為輸入,這種方式可以實(shí)現(xiàn)利用文本信息對(duì)中間結(jié)果進(jìn)行修正和細(xì)節(jié)補(bǔ)充,來(lái)獲得質(zhì)量更高的256×256大小圖像的結(jié)果。
在StackGAN的理論基礎(chǔ)上,Zhang等[3]提出了StackGAN++模型。該模型使用3個(gè)生成器-判別器組以類(lèi)似樹(shù)狀的方式連接,其中3個(gè)生成器分別對(duì)應(yīng)生成64×64、128×128、256×256大小的圖像,第1個(gè)生成器以文本向量和隨機(jī)噪聲的拼接為輸出,之后每一個(gè)生成器接收前一個(gè)生成器生成的圖像結(jié)果與文本向量作為輸入,生成下一階段的圖像結(jié)果;每一個(gè)判別器接收對(duì)應(yīng)階段的生成器的輸出與文本向量進(jìn)行判別,計(jì)算條件生成損失。此外,Zhang等[3]引入了無(wú)條件生成損失,即計(jì)算在不使用文本信息的情況下生成圖片的損失,與條件生成損失相結(jié)合,引導(dǎo)模型的訓(xùn)練,最終進(jìn)一步提高了生成圖片的質(zhì)量。本文即選用了該模型進(jìn)行基于美學(xué)評(píng)判的優(yōu)化改進(jìn)研究。
此后文本生成圖像GAN的研究多在類(lèi)似StackGAN++的多階段生成模式基礎(chǔ)上,通過(guò)加入各種輔助信息來(lái)幫助生成器生成更好的結(jié)果,如AttnGAN(Attentional GAN)[17]引入了注意力機(jī)制,分析對(duì)比生成圖像與對(duì)應(yīng)文本之間的特征相似度,并利用對(duì)比結(jié)果輔助生成器的訓(xùn)練;Cha等[18]則通過(guò)引入感知損失的方式,從圖像特征層面進(jìn)行對(duì)比來(lái)輔助生成器更好地學(xué)習(xí)到訓(xùn)練數(shù)據(jù)的分布。
在提出基于美學(xué)評(píng)估的對(duì)StackGAN++模型的優(yōu)化方法之前,需要了解該模型目前生成結(jié)果的美學(xué)質(zhì)量如何。本節(jié)將利用AADB模型對(duì)其進(jìn)行初步測(cè)量。
本節(jié)實(shí)驗(yàn)使用的StackGAN++模型是基于Caltech-UCSD Birds 200鳥(niǎo)類(lèi)圖像數(shù)據(jù)庫(kù)2011版訓(xùn)練的鳥(niǎo)類(lèi)圖像生成模型,其測(cè)試數(shù)據(jù)集中包含2 933張圖像,每張圖像對(duì)應(yīng)10條文本說(shuō)明,其中文本數(shù)據(jù)需經(jīng)過(guò) char-CNN-RNN 模型編碼。Zhang等[3]給出了其模型源碼的github地址(https://github.com/hanzhanggit/StackGAN-v2)。
本文實(shí)驗(yàn)運(yùn)行于Ubuntu 16.04操作系統(tǒng),使用GeForce GTX 1080 Ti顯卡進(jìn)行訓(xùn)練。軟件環(huán)境方面,本實(shí)驗(yàn)利用Adaconda2搭建python2.7虛擬環(huán)境,并需要安裝Pytorch1.0以及caffe1.0(分別對(duì)應(yīng)StackGAN++以及AADB模型運(yùn)行所需)。
首先針對(duì)測(cè)試數(shù)據(jù)集所產(chǎn)生的樣本進(jìn)行美觀度評(píng)判,觀察其分布狀況。理論情況下,訓(xùn)練數(shù)據(jù)集中包含了29 330條語(yǔ)句對(duì)應(yīng)的嵌入向量,經(jīng)由生成模型后獲得29 330張圖像結(jié)果,實(shí)際運(yùn)行中由于StackGAN++模型所采用的批處理訓(xùn)練策略,最終生成圖像數(shù)量為29 280張,但從整體數(shù)量的規(guī)模來(lái)看并不影響對(duì)于其整體美觀度評(píng)價(jià)的判斷。利用AADB模型獲得生成圖像的美學(xué)分?jǐn)?shù),其分布如圖1所示。
由AADB模型計(jì)算得出的美學(xué)分?jǐn)?shù)集中于[0,1]區(qū)間,在特殊情況下會(huì)超過(guò)1。為了便于標(biāo)注美學(xué)分?jǐn)?shù)的分布區(qū)間,在繪制區(qū)間分布柱狀圖時(shí),將由AADB模型獲取的美學(xué)分?jǐn)?shù)(超過(guò)1的截?cái)嘀?.999 9)乘以10,這種表示方法也符合實(shí)際生活中人工評(píng)判時(shí)的常用取值范圍選擇;在展示降序分布時(shí)則直接采用模型輸出的結(jié)果范圍來(lái)標(biāo)注分?jǐn)?shù)坐標(biāo)軸。圖1(a)表明,原始StackGAN++在測(cè)試數(shù)據(jù)集上生成圖像的美學(xué)分?jǐn)?shù)集中在5~8的區(qū)間段內(nèi),占總體的78.6%,其中6~7區(qū)間段內(nèi)的圖像數(shù)量最多,占整體結(jié)果數(shù)量的33.9%。而圖1(b)表明,在5~8區(qū)間段內(nèi),圖像的美學(xué)分?jǐn)?shù)變化呈現(xiàn)出均勻平緩的變化趨勢(shì),并沒(méi)有出現(xiàn)在某一節(jié)點(diǎn)大幅變動(dòng)的情況。
29 280 張生成結(jié)果的平均美學(xué)分?jǐn)?shù)為0.628 28。根據(jù)AADB模型作者給出的評(píng)判標(biāo)準(zhǔn),一張圖片的分?jǐn)?shù)超過(guò)0.6則可以認(rèn)為是一張好圖片,低于0.4則認(rèn)為是一張差圖片,在兩者之間認(rèn)為是一張一般性質(zhì)圖片,而本文出于后續(xù)實(shí)驗(yàn)樣本劃分的考慮,將好圖片的下限標(biāo)準(zhǔn)提高至0.65,差圖片的上限標(biāo)準(zhǔn)提高至0.5。由此來(lái)看,模型的平均結(jié)果處于一般質(zhì)量的區(qū)間,說(shuō)明原模型的整體生成結(jié)果從美觀度的角度來(lái)講仍然存在可以提升的空間。本文從全部生成結(jié)果中選擇美學(xué)分?jǐn)?shù)最高以及最低的圖片各10張的結(jié)果,交由真人進(jìn)行主觀評(píng)判,其結(jié)果均與美學(xué)分?jǐn)?shù)表現(xiàn)出對(duì)應(yīng)關(guān)系,即認(rèn)為最高分?jǐn)?shù)的10張圖片擁有較高的美觀度,而最低分?jǐn)?shù)的10張圖片則評(píng)價(jià)一般或交叉表明AADB模型給出的美學(xué)分?jǐn)?shù)對(duì)圖像美觀度的評(píng)價(jià)能較好地符合人的直觀感受。
圖1 StackGAN++在測(cè)試數(shù)據(jù)集上的美學(xué)分?jǐn)?shù)分布Fig.1 Distributions of aesthetic score of images generated by Stack GAN++using test dataset
如果想要達(dá)成提高生成模型美觀度質(zhì)量的目標(biāo),一個(gè)簡(jiǎn)單的想法是,可以對(duì)同一條語(yǔ)句,一次性批量生成大量的圖片,按美觀度模型給出的分?jǐn)?shù)進(jìn)行降序排序,從中選出分?jǐn)?shù)最高圖像作為輸出結(jié)果,或以分?jǐn)?shù)排序最靠前(分?jǐn)?shù)最高)的一定數(shù)量的圖像作為輸出結(jié)果,再交由模型使用者自行判斷選擇最終的結(jié)果。這種方法雖然存在嚴(yán)重的效率問(wèn)題,但易于實(shí)現(xiàn)且非常直觀。其中的問(wèn)題在于確定生成圖像的數(shù)量,因?yàn)殡S著生成圖像數(shù)量的增加,其多樣性也會(huì)隨之增加。也更容易出現(xiàn)更多美觀度高的圖像結(jié)果,但進(jìn)行美觀度評(píng)判以及排序選擇的時(shí)間消耗也會(huì)隨之增加,因此若選擇此種做法作為優(yōu)化方法,需要在生成結(jié)果質(zhì)量以及模型運(yùn)行效率之間尋求一個(gè)平衡點(diǎn)。
圖2 原模型輸入同一文本在不同生成數(shù)量情況下的美學(xué)分?jǐn)?shù)分布Fig.2 Disrtributions of aesthetic score of images generated by the same text in original model with different generating quantities
基于以上考慮,除對(duì)測(cè)試集整體進(jìn)行美觀度評(píng)判以外,還從中選擇一批(實(shí)驗(yàn)設(shè)定為24)數(shù)量的文本輸入數(shù)據(jù),針對(duì)每一條文本數(shù)據(jù)生成不同數(shù)量的圖片來(lái)觀察其美學(xué)分?jǐn)?shù)的分布。選擇100、200、350、500、750、1 000共6種生成數(shù)量,針對(duì)選定的文本數(shù)據(jù)生成對(duì)應(yīng)數(shù)量的圖像,利用AADB模型計(jì)算生成結(jié)果的美學(xué)分?jǐn)?shù)。圖2展示了其中一條文本的結(jié)果。結(jié)果表明,美學(xué)分?jǐn)?shù)在各個(gè)區(qū)間的分布狀況是相近的,基本不受一次性生成數(shù)量的影響。6組結(jié)果都表現(xiàn)出生成圖像的美學(xué)分?jǐn)?shù)集中于5~7的區(qū)間內(nèi)的分布狀況,且隨著生成數(shù)量的增加,高分圖像的出現(xiàn)頻率也越來(lái)越高。表1展示了6組分布結(jié)果中最高分?jǐn)?shù)圖像的分?jǐn)?shù)與分?jǐn)?shù)前10高圖像的平均分?jǐn)?shù),表明了一次性生成數(shù)量越多,即使是處于高分分段的圖像其整體的質(zhì)量也會(huì)得到提高,也驗(yàn)證了本節(jié)第一段所述的情況。但面對(duì)最高分?jǐn)?shù)的情況,因生成模型會(huì)以隨機(jī)噪聲作為輸入來(lái)生成圖像,這導(dǎo)致了其對(duì)生成結(jié)果的不可控性,所以生成結(jié)果會(huì)出現(xiàn)一定的擾動(dòng),使得最高分圖像的分?jǐn)?shù)與生成數(shù)量之間并不存在確定的正相關(guān)關(guān)聯(lián)性。
表1 不同生成數(shù)量情況下最高分?jǐn)?shù)與前10平均分?jǐn)?shù)Table 1 Highest aesthetic score and average of top 10 aesthetic scor e when generating different quantities of images
原始的Stack GAN++模型采用了3組生成器-判別器組合,以類(lèi)似樹(shù)狀的方式進(jìn)行連接,每一個(gè)生成器生成不同尺寸的圖像,并作為下一個(gè)生成器輸入數(shù)據(jù)的一部分。其中每一個(gè)生成器的損失LGi(i=1,2,3)計(jì)算式為
式中:pGi為生成器Gi學(xué)習(xí)到的數(shù)據(jù)分布;si為生成器Gi生成的結(jié)果;c為文本向量;Di為與生成器Gi對(duì)應(yīng)的判別器,其接收單個(gè)輸入si或雙輸入si和c,輸出相應(yīng)的判別結(jié)果;E[·]表示期望函數(shù)。
該損失計(jì)算方式由兩部分組成,前一部分計(jì)算生成器不利用文本向量生成圖像的損失,即無(wú)條件損失,該部分用以監(jiān)督生成器生成更加真實(shí)的、使判別器認(rèn)為來(lái)自于真實(shí)數(shù)據(jù)分布的數(shù)據(jù);后一部分計(jì)算生成器利用了文本向量生成圖像的損失,即條件損失,該部分用來(lái)監(jiān)督生成器生成符合輸入文本描述的圖像,即保證文本與圖像之間的一致性。在StackGAN++的理論描述中,Zhang等[3]認(rèn)為每一個(gè)生成器生成的圖像雖然大小不同,但都是基于同一條文本生成的,所以它們彼此之間應(yīng)該保持相似的色彩和基本結(jié)構(gòu),并提出了色彩一致性損失用來(lái)保證3個(gè)生成器生成圖像之間擁有較高的色彩一致性。但經(jīng)過(guò)實(shí)驗(yàn)作者發(fā)現(xiàn)在基于文本生成的模式下,色彩一致性所起到的作用十分微弱,因?yàn)槠鋵?duì)生成結(jié)果的約束力要遠(yuǎn)遠(yuǎn)小于文本-圖像一致性的約束,即式(1)中的Esi~pGi[ln Di(si,c)]。式(2)為生成器的總體損失(下文稱(chēng)為對(duì)抗損失)計(jì)算公式,用于訓(xùn)練過(guò)程中的梯度計(jì)算。
受到Johnson等[19]提出的感知損失的啟發(fā),本文將AADB模型與StackGAN++的生成器結(jié)合,用于在生成模型訓(xùn)練過(guò)程中提供輔助訓(xùn)練信息,達(dá)成從美學(xué)角度來(lái)優(yōu)化生成模型的目的。具體地,在式(2)的基礎(chǔ)上,加入一項(xiàng)新定義的損失——美學(xué)損失Laes,其計(jì)算式為
式中:Aes函數(shù)表示使用AADB模型計(jì)算生成結(jié)果s3的美學(xué)分?jǐn)?shù)。2.1節(jié)中,AADB模型計(jì)算得出的美學(xué)分?jǐn)?shù)存在超過(guò)1的情況,因此在計(jì)算美學(xué)損失時(shí),會(huì)對(duì)模型返回的美學(xué)分?jǐn)?shù)進(jìn)行判斷,如果其超過(guò)了1,則將其截?cái)嘀?.999 9。該損失實(shí)際計(jì)算了最后一階段生成器G3生成結(jié)果的美學(xué)分?jǐn)?shù)與1之間的歐幾里得距離,最小化該損失即最小化生成結(jié)果美學(xué)分?jǐn)?shù)與1之間的差距,代表了生成結(jié)果美學(xué)質(zhì)量的提升。最后,加入了美學(xué)損失后新的生成器損失計(jì)算公式為
式中:β為美學(xué)損失的權(quán)重,用來(lái)控制其在總體損失中所占的比例,β越大則美學(xué)損失所占的比例越大。β為0時(shí),模型即還原為StackGAN++。
由于美學(xué)損失的作用是引導(dǎo)生成器生成美觀度更高的圖像,而對(duì)抗損失則是控制整個(gè)訓(xùn)練過(guò)程以及生成結(jié)果的關(guān)鍵,保證了生成器能夠生成符合文本描述的真實(shí)圖像,這是文本生成圖像模型最基本的目的,因此β值的選擇應(yīng)當(dāng)在保證在訓(xùn)練過(guò)程中美學(xué)損失起到的調(diào)控作用不會(huì)壓過(guò)對(duì)抗損失的前提下對(duì)生成結(jié)果的美觀度產(chǎn)生影響。
選取不同的美學(xué)損失權(quán)重β進(jìn)行訓(xùn)練,以IS作為訓(xùn)練獲得模型的質(zhì)量的衡量指標(biāo),在保證IS與原模型相比不降低的前提下,觀察其生成結(jié)果的美觀度分布情況。IS是借助Inception Model[20]計(jì)算得出的用來(lái)衡量GAN圖像生成效果的最常用指標(biāo)之一,通常情況下其數(shù)值越大代表GAN生成的圖像具有更高的多樣性和真實(shí)性,進(jìn)而代表生成圖像的總體質(zhì)量更好。在文本生成圖像GAN領(lǐng)域,IS被廣泛用來(lái)進(jìn)行不同GAN之間的效果對(duì)比。
本節(jié)所使用的環(huán)境與第2節(jié)對(duì)StackGAN++本身進(jìn)行美學(xué)質(zhì)量分析的實(shí)驗(yàn)環(huán)境相同,故此處不再贅述。模型訓(xùn)練過(guò)程采用批訓(xùn)練策略,每個(gè)批包含24條文本嵌入向量,每一個(gè)時(shí)期(epoch)中包含368個(gè)批的訓(xùn)練過(guò)程,下文將一個(gè)批完成一次訓(xùn)練的過(guò)程稱(chēng)為一步(step)。訓(xùn)練過(guò)程包含600個(gè)時(shí)期,并于每2000步的時(shí)間節(jié)點(diǎn)保存一次模型參數(shù),以便于訓(xùn)練完成后根據(jù)保存時(shí)模型的表現(xiàn)選取效果最好的模型。本文提出的優(yōu)化方法的實(shí)現(xiàn)流程如圖3所示。
圖3 基于美學(xué)評(píng)判的文本生成圖像優(yōu)化方法實(shí)現(xiàn)流程Fig.3 Procedure of text-to-image synthesis optimization based on aesthetic assessment
本文選取β=45,0,0.000 1,分別進(jìn)行了訓(xùn)練。選擇45是因?yàn)椋^察StackGAN++訓(xùn)練時(shí)生成器的對(duì)抗損失發(fā)現(xiàn)對(duì)抗損失與美學(xué)損失的比值在50左右。因此,當(dāng)β=45時(shí),對(duì)抗損失與經(jīng)權(quán)重放大的美學(xué)損失在數(shù)值上比較接近;1與0.000 1是基于經(jīng)驗(yàn)的選擇,取β=1時(shí)美學(xué)損失與對(duì)抗損失平權(quán),而β=0.000 1則是參考了Cha等[18]提出的感知損失的權(quán)重選取。訓(xùn)練完成后,對(duì)應(yīng)每個(gè)β取值各形成了一組于不同時(shí)間節(jié)點(diǎn)保存的模型,分別從中選取IS分?jǐn)?shù)最高的模型作為對(duì)應(yīng)取值下的結(jié)果模型。在對(duì)選定的模型進(jìn)行美學(xué)質(zhì)量評(píng)判之前,需要先考察它們所生成的圖片的總體質(zhì)量,以確保在引入了美學(xué)損失后沒(méi)有出現(xiàn)模型生成圖像質(zhì)量下降的情況。表2展示了3種取值對(duì)應(yīng)模型與原模型的IS數(shù)據(jù),其中β為0即代表未引入美學(xué)損失的原始Stack GAN++模型。
通過(guò)對(duì)比,當(dāng)β=0.000 1時(shí),模型在IS上取得最高的數(shù)值,并且超過(guò)了原始模型的IS,表明美學(xué)損失的引入還起到了提高模型生成效果的正面效應(yīng)。這是可以理解的,因?yàn)楫?dāng)生成器生成了一幅效果很差的圖像,例如模糊不清或主體扭曲變形,此時(shí)美觀度評(píng)判模型將會(huì)給出較低的分?jǐn)?shù),使得美學(xué)損失增大并導(dǎo)致生成器總損失增大。此外,當(dāng)β=45時(shí),模型的IS分?jǐn)?shù)降低,表現(xiàn)為生成器生成圖像的質(zhì)量有所下降。對(duì)β=45時(shí)獲得的模型所生成的圖像進(jìn)行人工評(píng)判的結(jié)果也反映出這時(shí)生成圖像出現(xiàn)了更多的模糊、失真等不良結(jié)果。因此,β=45的情況已無(wú)繼續(xù)討論的價(jià)值,此后美學(xué)層面的實(shí)驗(yàn)和數(shù)據(jù)統(tǒng)計(jì)也不再考慮此種情況。當(dāng)β=1時(shí),模型的IS與原模型相比十分接近,還需通過(guò)美學(xué)分?jǐn)?shù)的分布對(duì)比來(lái)確定在此情況下美學(xué)損失是否起到了優(yōu)化的作用。
為了驗(yàn)證美學(xué)損失是否對(duì)生成模型結(jié)果的美學(xué)質(zhì)量起到了優(yōu)化作用,接下來(lái)計(jì)算了使用β=1,0.000 1這2種情況的模型在測(cè)試數(shù)據(jù)集上生成的29 280張圖像的美學(xué)分?jǐn)?shù)分布情況;同時(shí)針對(duì)一個(gè)批的24條文本嵌入向量,每條文本生成1 000張圖像,計(jì)算其美學(xué)分?jǐn)?shù)的分布,數(shù)據(jù)結(jié)果如圖4所示(這里選出一條文本生成的1 000張圖像的美學(xué)分?jǐn)?shù)分布進(jìn)行展示)。表3展示了2種β取值下模型在測(cè)試數(shù)據(jù)集上的生成結(jié)果的美學(xué)分?jǐn)?shù),同時(shí)一并列出了原模型在測(cè)試數(shù)據(jù)集上生成結(jié)果的美學(xué)分?jǐn)?shù)作為對(duì)比。從表中可知,當(dāng)β=0.0001時(shí),由測(cè)試數(shù)據(jù)集生成的圖像其平均美學(xué)分?jǐn)?shù)與原模型相比提高了3.17%;表4給出了原模型與β=0.000 1優(yōu)化模型分別生成的24組針對(duì)同一條文本的1 000幅圖像平均美學(xué)分?jǐn)?shù)對(duì)比情況,也可以發(fā)現(xiàn)大部分文本生成結(jié)果的美學(xué)分?jǐn)?shù)與原模型的生成結(jié)果相比有所提高。同時(shí)由圖4所示的美學(xué)分?jǐn)?shù)分布情況也能看出,此時(shí)高分段圖像的數(shù)量增加,較低分段圖像的數(shù)量減少,表明美學(xué)損失起到了調(diào)控生成結(jié)果美觀度的作用。圖5展示了原模型與β=0.000 1的優(yōu)化模型使用4條文本對(duì)應(yīng)生成的1 000張圖像中等距抽取10張圖像的結(jié)果(每個(gè)分圖第1行為原模型,第2行為優(yōu)化模型,每個(gè)模型對(duì)每條文本均生成1 000張圖像),每行圖像從左到右按美學(xué)分?jǐn)?shù)從高到低的順序排列,從中可以直觀感受到,經(jīng)過(guò)美學(xué)優(yōu)化的生成模型所生成的圖像結(jié)果在色彩對(duì)比度、整體色調(diào)、背景虛化簡(jiǎn)單化等方面均有一定優(yōu)勢(shì),反映了其美觀評(píng)價(jià)相比原模型有所提升。
表2 不同β取值對(duì)應(yīng)模型的ISTable 2 IS of models using differentβ
圖4 不同β取值情況下測(cè)試數(shù)據(jù)生成結(jié)果與選定一條文本的生成結(jié)果美學(xué)分?jǐn)?shù)分布Fig.4 Distributions of aesthetic scores of images generated by models with differentβusing texts from test dataset and chosen text
表3 不同β取值對(duì)應(yīng)模型的美學(xué)分?jǐn)?shù)對(duì)比Table 3 Comparison of aesthetic scor es of models using differentβ
表4 原模型與優(yōu)化模型使用24條文本生成1 000張圖像的平均美學(xué)分?jǐn)?shù)對(duì)比Table 4 Comparison of average aesthetic score of 1 000 images generated by original models and optimized models using 24 different texts
圖5 從原模型與優(yōu)化模型對(duì)4條文本各生成的1 000幅圖像中等距抽取圖像對(duì)比Fig.5 Comparison of systematic sampling results of images generated by original model and optimized model using 4 chosen texts(1000 images for each text and each model)
本文提出了一種基于美學(xué)評(píng)判的文本生成圖像GAN的優(yōu)化方法,利用美觀度評(píng)判模型獲得生成器生成圖像的美學(xué)分?jǐn)?shù),計(jì)算該生成圖像的美學(xué)損失,與模型本身的對(duì)抗損失以適當(dāng)?shù)臋?quán)重關(guān)系相結(jié)合,作為該生成器新的損失并重新訓(xùn)練模型,最后對(duì)獲得的新模型生成的圖像進(jìn)行了美學(xué)質(zhì)量的統(tǒng)計(jì)與和原模型的對(duì)比。實(shí)驗(yàn)所得結(jié)論如下:
1)經(jīng)過(guò)本文方法獲得的生成模型,其生成結(jié)果的美觀度與原模型相比得到了提升,同時(shí)IS分?jǐn)?shù)也有所提高,表明美學(xué)損失能夠起到提高生成模型質(zhì)量的作用。
2)該方法同時(shí)也存在一定的局限性:首先,利用本文方法選取的美學(xué)損失權(quán)重只適用于本文實(shí)驗(yàn)所用的鳥(niǎo)類(lèi)數(shù)據(jù)集,而如果需要在其他數(shù)據(jù)集上應(yīng)用本文方法,除了原始模型需要更換以外,權(quán)重的選取也需要全部從頭開(kāi)始,這也與文本生成圖像類(lèi)GAN和美學(xué)模型本身的性質(zhì)有關(guān);其次,權(quán)重選取尚未找到一個(gè)公式化的方法,都是借助經(jīng)驗(yàn)來(lái)試探性的選擇。
未來(lái)的工作將分為2個(gè)部分,一是基于文中的實(shí)驗(yàn)繼續(xù)調(diào)整美學(xué)損失的權(quán)重,尋找最佳的參數(shù)以使得生成結(jié)果能進(jìn)一步提高;二是尋找其他美學(xué)損失的計(jì)算方式,以使得美學(xué)因素能夠取得更好的訓(xùn)練調(diào)控效果。
致謝感謝耀萃基金數(shù)據(jù)智能創(chuàng)新聯(lián)合實(shí)驗(yàn)室(InfleXion Lab)提供的幫助!