王 威,李玉潔,郭富林,劉 巖,何俊霖
1.桂林電子科技大學 人工智能學院,廣西 桂林 541000
2.鄭州輕工業(yè)大學 計算機與通信工程學院,鄭州 450002
計算機視覺(computer vision,CV)賦予人工智能感知周圍信息的能力,其發(fā)展進一步拓展了人工智能感知精度和廣度[1]。現(xiàn)如今深度學習算法不斷改進和突破,憑借著其“端到端”地提取高維度特征的特點,深度學習在計算機視覺中得到了大規(guī)模的應用(如圖像分類、目標檢測等),并且在各大圖像類比賽中準確率和魯棒性有所提升,超越了一般的傳統(tǒng)算法。文本圖像合成是計算機視覺的重要課題,它提取出語言和視覺之間的內(nèi)在聯(lián)系,并將文本描述翻譯成文本語義相似的圖像。文本圖像合成正廣泛的應用于視頻游戲,圖像編輯,圖像藝術(shù)生成等方面。
作為深度學習的主要網(wǎng)絡(luò)模型之一,生成對抗網(wǎng)絡(luò)(generative adversarial network,GAN)于2014 年 由Goodfellow等人[2]首次提出。隨后,GAN及其衍生網(wǎng)絡(luò)成為了CV領(lǐng)域近幾年來最火熱的方向之一[3]。GAN在圖像合成領(lǐng)域已經(jīng)引起了較多的關(guān)注和研究[4]。與傳統(tǒng)的生成式網(wǎng)絡(luò)不同,傳統(tǒng)的生成式網(wǎng)絡(luò)只有生成器,無法僅從有限的訓練集中生成逼真的數(shù)據(jù)。而GAN包含了生成器和判別器,生成器生成虛假的數(shù)據(jù),而判別器負責辨別數(shù)據(jù)真?zhèn)?,通過兩者的博弈使最終生成的數(shù)據(jù)以假亂真[5]。這種方法已經(jīng)有了廣泛的應用[6-7],例如:數(shù)據(jù)增強[8-9]、圖像風格遷移[10-11]、圖像超分辨率[12-13]、文本圖像生成等。
GAN中的對抗學習思想與深度學習中的其他研究方向逐漸相互滲透,以至于誕生了很多新的研究方向和應用。特別是GAN在圖像生成方面的能力超越了其他方法,使得近幾年文本圖像合成成為一個極其活躍的研究領(lǐng)域。作為一個直觀的條件圖像生成方法,基于GAN的方法使得文本圖像合成的圖像質(zhì)量、多樣性、語義一致性、視覺真實性獲得突破性進展。本文主要介紹GAN 在文本合成圖像任務(wù)[14]中的應用。該任務(wù)與單一的圖像任務(wù)(如圖像分類[15]、圖像分割[16])不同,它實現(xiàn)了在計算機視覺和自然語言處理[17]兩個領(lǐng)域進行跨模態(tài)研究,建立了從文本到圖像的聯(lián)系。文本合成圖像的主要流程是自然語言模型將文本轉(zhuǎn)換成語義向量,再利用圖像模型生成語義一致性的高質(zhì)量圖像。文本合成圖像領(lǐng)域主要模型包括自回歸模型(ARM)[18]、變分自編碼器模型(VAE)[19-20]以及基于GAN 的模型[21]。如今基于GAN的模型逐漸成為主流。受到條件生成對抗網(wǎng)絡(luò)(conditional GAN,CGAN)的啟發(fā),GAN-INT-CLS 模型[22]和TAC-GAN 模型[23]的提出開始了GAN 在文本圖像合成領(lǐng)域的發(fā)展,但兩者合成圖像的分辨率有限,只能達到64×64和128×128,很多細節(jié)無法生成,效果令人不滿意。隨后多階段(多組生成器、鑒別器分開訓練,前一階段的輸出作為后一階段的輸入)的StackGAN[24]、StackGAN++[25],引入注意力機制的AttnGAN[26]模型、逐段嵌套(使用單流的生成器同時帶有多個級聯(lián)的鑒別器)的HDGAN[27]模型,采用對比學習的XMC-GAN[28]等都隨之出現(xiàn),改善了圖像合成的質(zhì)量和語義一致性較差的問題。
隨著基于GAN的模型不斷更新,模型不僅在CUB-200 Birds[29]、Oxford-102 Flowers[30]等單一對象數(shù)據(jù)集上應用,目前也可在復雜性數(shù)據(jù)集(如COCO數(shù)據(jù)集[31])上改進和驗證模型的性能,合成圖像的分辨率也達到了256×256 及更高。該領(lǐng)域使用了一系列文本到圖像合成模型質(zhì)量評估指標(如inception score[32]、FID[33]、human rank、R-precision、visual-semantic similarity(VS)[27]等)。從合成圖像的質(zhì)量,多樣性以及圖像,文本間的匹配程度進行綜合評估。
本文總結(jié)和強調(diào)了基于GAN的文本圖像合成領(lǐng)域的發(fā)展現(xiàn)狀及發(fā)展歷程。通過對文本編碼器,文本直接合成圖像,文本引導圖像合成等多維度多模型的對比和分析,全面總結(jié)和分析了模型的特點,客觀地提出該領(lǐng)域目前研究的不足以及未來可能的發(fā)展方向。
GAN(如圖1)是由兩個深度神經(jīng)網(wǎng)絡(luò)所構(gòu)成的非監(jiān)督式架構(gòu),包含一個生成器和一個判別器,兩者獨自訓練。其中生成器中輸入隨機噪聲向量,從而產(chǎn)生圖像,通過優(yōu)化損失函數(shù)使得生成圖像的分布不斷接近真實圖像分布,來達到欺騙判別器的目的。判別器對真實圖像和生成圖像進行判別,來提高判別器的分辨能力。整個訓練過程都是兩者不斷的進行相互博弈和優(yōu)化。其目標函數(shù)如式(1):
圖1 GAN框架Fig.1 GAN framework
式中D表示判別器,G表示生成器,Ex表示下標分布的期望值,Pz表示生成圖像的分布,Px表示真實圖像分布,G( )z生成的圖像,z表示隨機噪聲向量,x表示真實圖像向量。
文字和圖像是人們感受世界的兩大重要途徑,如何將這兩個模態(tài)相關(guān)聯(lián)是目前兩個領(lǐng)域的重要研究課題。圖像中可提取豐富且復雜的文本語義特征,而直接利用文本來合成圖像卻極其復雜[34],GAN的出現(xiàn)提供了一種無監(jiān)督模型[35]來生成圖像的方式。通過提取文本中的重要屬性(如空間、事物關(guān)系、事物狀態(tài)等),再用GAN 中的生成器和鑒別器互相博弈的狀態(tài),將屬性嵌入圖像變得有所可能。因此,近年來的GAN 的多個變種(如圖2)[36-38]在文本圖像合成領(lǐng)域有著較好的應用和持續(xù)的研究。2014年,Goodfellow等人[2]和Mirza等人[39]接連提出GAN 和CGAN 為文本圖像合成領(lǐng)域提供了一個嶄新的方向。在文本圖像合成領(lǐng)域發(fā)展前期,為提高生成圖像的質(zhì)量和多樣性,Reed 等人[22]于2016 年提出GAN-INT-CLS 模型,Dash 等人[23]于2017 年提出TAC-GAN,Zhang等人[24-25]分別在2017年和2018年提出StackGAN與StackGAN++模型,Zhang等人[27]于2018年提出HDGAN,采用單階段到多階段的網(wǎng)絡(luò)架構(gòu)轉(zhuǎn)變,通過級聯(lián)的網(wǎng)絡(luò)增強圖像生成的質(zhì)量、分辨率、多樣性等,同時提高訓練的穩(wěn)定性。隨后,生成圖像的細粒度特征和文本的語義一致性成為了需要解決的問題。Xu等人[26]于2018 年在多階段的架構(gòu)上引入注意力機制,提出AttnGAN關(guān)注文本的每一個單詞信息以此實現(xiàn)文本與圖像的視覺對齊,隨后Tan 等人[40]于2019 年提出SEGAN,Li 等人[41]于2020 年提出ControlGAN,都重點關(guān)注注意力機制的嵌入應用。2019年,Zhu等人[42]提出DM-GAN,Qiao 等人[43]提出MirrorGAN,分別采用記憶網(wǎng)絡(luò)和循環(huán)一致的方法實現(xiàn)文本圖像合成。2019年,基于場景對象布局的中間階段過渡方法開始興起,Li 等人[44]提出了基于物體對象的Obj-GAN,Sylvain等人[45]和Hinz 等人[46]于2020 年分別提出了OC-GAN 和OP-GAN等,利用背景圖和對象布局加強了生成圖像的語義一致性和視覺逼真性。2020年,Li等人[47-48]接連提出ManiGAN和輕量級lightweight GAN,為文本引導圖像生成(文本圖像合成的分支領(lǐng)域)提供了有效的方法。在2021年和2022年,文獻[49-51]基于StyleGAN分別提出了TediGAN和TiGAN,促進了文本引導圖像生成領(lǐng)域的快速發(fā)展。2019 年,Yin 等人[52]提出的SD-GAN 使用了對比損失,隨后,對比學習框架逐漸應用于文本圖像合成領(lǐng)域。2021 年,Ye 等人[53]提出現(xiàn)有模型加入對比學習框架,Zhang等人[28]提出XMC-GAN,對比學習在文本圖像生成領(lǐng)域的應用極為有效。Zhu 等人[54]于2020 年提出的因果關(guān)系導向的CookGAN 也是一種有效且創(chuàng)新的方法。如今,對比學習、因果關(guān)系、場景布局、注意力機制等先進的創(chuàng)新方法,都促進著文本圖像生成領(lǐng)域的蓬勃發(fā)展。
圖2 文本圖像合成領(lǐng)域的代表性工作Fig.2 Representative work in field of text-to-image synthesis
利用GAN 來進行文本圖像合成主要是受到Mirza等人[39]提出的CGAN(如圖3)所啟發(fā)。與原始GAN 相比,CGAN 在生成器和鑒別器上分別加上條件變量c,再利用GAN 的框架進行圖像的生成,這樣訓練生成的圖像將會滿足條件c,以此來解決生成圖像內(nèi)容的不確定性問題[55]。
圖3 CGAN框架Fig.3 CGAN framework
將文本進行編碼[56],提取成文本條件向量[57],再將類似于CGAN 中的條件變量c輸入到GAN 的生成器中,可達到文本控制圖像合成的目的。而為了達到文本合成圖像的目標,主要有兩個步驟:文本編碼和基于文本的圖像合成。下文將主要針對這兩個步驟的相關(guān)工作進行總結(jié)和分析。
文本編碼主要有兩大類方法,條件增強(conditioning augmentation,CA)和預訓練模型(如圖4)。條件增強技術(shù)在文本提取中增加了額外采樣的隱向量,增強了條件流形的魯棒性以及生成圖像的多樣性。預訓練模型加強了文本中的時間結(jié)構(gòu)特征,對單詞級文本進行編碼,提高了文本描述和對應圖像在視覺上的聯(lián)系。下文將分別對這兩種方法進行介紹。
圖4 文本編碼Fig.4 Text encoding
2.1.1 條件增強
對于一般的文本描述編碼方式,都是先進行非線性變換,再將非線性變換后的條件潛變量直接輸入到生成器里,此方式下的潛在空間[58]文字嵌入通常都在100 維以上,在數(shù)據(jù)量較少的情況下會帶來潛在空間中數(shù)據(jù)的不連續(xù)性。Zhang 等人[24]的StackGAN 中提出了一種條件增強技術(shù),除去原來在文字描述中提取的條件變量,在高斯分布中又隨機采樣了隱向量[59]。在訓練過程中,提出了在生成器中加入額外的正則化項,即標準高斯分布和條件高斯分布的Kullback-Leibler(KL)散度[60],如式(2):
通過條件增強技術(shù)產(chǎn)生了更多的訓練對,提升了其在條件流形[61]上的魯棒性和平滑程度。通過加入隨機性來達到生成圖像多樣性的目的。隨后,在提出的StackGAN++[25]、CookGAN[54]以及DM-GAN[42]等多個方法中都借鑒了條件增強技術(shù)。
2.1.2 預訓練的RNN模型
在文本合成圖像領(lǐng)域,使用預訓練的RNN 模型極為常見。使用較多的是由Reed 等人[62-63]提出的字符級卷積-遞歸神經(jīng)網(wǎng)絡(luò)(Char-CNN-RNN),將CNN 快速卷積的特點和RNN時序信息處理相結(jié)合,在CNN的隱藏層中堆疊遞歸網(wǎng)絡(luò),學習到字符特征,以此來對字符級的文本進行編碼,這有利于文本中時間結(jié)構(gòu)的利用,同時編碼器得到的特征內(nèi)積可以使文本和圖像更加兼容,加大了文本描述和對應圖像在視覺上的聯(lián)系。在Li等人[47]提出的ManiGAN中,直接使用預訓練的RNN模型對文本中的單詞級進行編碼,使得每一個單詞都對應著一個特征向量。Qiao 等人[43]提出的MirrorGAN 中也用了此方法。但隨著RNN 的增長,用于組合不同輸入向量的預測知識的建模能力將變低,導致模型的效果變差;Li等人[48]后續(xù)提出的文本引導圖像的輕量級生成對抗網(wǎng)絡(luò)(LwGAN)中使用預訓練的雙向RNN 模型[41]進行單詞級編碼??梢詫r間段的過去未來所有輸入信息進行訓練,以此來提高模型效果。
在Xu 等人[26]的AttnGAN 中,提出了使用雙向長短期記憶(Bi-LSTM)[64]來對文本進行編碼,提取語義向量,利用雙向LSTM 來使每個單詞對應兩個隱藏狀態(tài),通過連接兩個隱藏狀態(tài)來表達單詞的語義特征,且利用每個單詞的最后一個隱藏狀態(tài)連接從而產(chǎn)生全局句子向量,達到前后串聯(lián)的目的。為了檢驗文本與對應圖像的內(nèi)在關(guān)聯(lián),在訓練過程中還創(chuàng)造性的提出深度注意多模態(tài)相似度模型(deep attentional multimodal similarity model,DAMSM)用于定量計算單詞與對應圖像之間的相似度。后續(xù)的多個模型都沿用了此方法。
在基于文本的圖像生成中,將其分成文本直接生成圖像與文本引導圖像生成兩大類應用,在文本直接生成圖像的應用中,總結(jié)了單階段直接生成法(TAC-GAN[23]等)、堆疊架構(gòu)(StackGAN[24]等)、注意力機制法(Attn-GAN[26]等)、記憶網(wǎng)絡(luò)法(DM-GAN[42])、循環(huán)一致法(MirrorGAN[43])、對比學習法(XMC-GAN[28]等)、場景對象布局法(OP-GAN[46]等)以及因果關(guān)系法(CookGAN[54])八類方法。在文本引導圖像生成的應用中,文章總結(jié)了仿射組合法(ManiGAN[47]等)和基于StyleGAN[49](TediGAN[50]等)兩類方法。具體的方法間區(qū)別與聯(lián)系如圖5所示。
圖5 各類方法間的聯(lián)系與區(qū)別Fig.5 Connection and difference between various methods
2.2.1 基于文本直接生成圖像
目前由給定文本直接生成圖像領(lǐng)域的模型大多是將文本描述作為條件信息,采用單階段、多階段、記憶網(wǎng)絡(luò)法、注意力機制、循環(huán)一致性、對比學習、場景對象布局、因果關(guān)系等方法,控制逼真圖像的生成。本文將文本直接生成圖像的方法分成單階段直接生成法、堆疊架構(gòu)、注意力機制法、記憶網(wǎng)絡(luò)法、循環(huán)一致法、對比學習法、場景對象布局法、因果關(guān)系法八類方法(如表1)。
表1 基于文本直接生成圖像的分類與參考Table 1 Classification and reference of directly generated images based on text
在單階段直接生成法中,Mirza等人[39]提出的CGAN可以初步的將文本信息作為條件控制圖像的生成。Reed 等人[22]于2016 年提出GAN-INT-CLS,采用單階段方式生成了分辨率64×64 的圖像,但圖像質(zhì)量較差。Dash等人[23]提出的TAC-GAN在AC-GAN[65]的基礎(chǔ)上增加了額外的損失條件,生成了分辨率128×128的具有鑒別性和多樣性的圖像。在堆疊架構(gòu)中,Zhang 等人[24]提出StackGAN,采用兩個階段的堆疊網(wǎng)絡(luò),加入條件增強(CA)技術(shù)進行文本編碼,生成了分辨率256×256 的圖像。為進一步提高生成圖像質(zhì)量和改善細節(jié),繼續(xù)提出了StackGAN++[25],采用多階段的樹狀結(jié)構(gòu),鑒別器中額外加入條件損失,來提高圖像與文本間的匹配程度,還加入顏色一致性正則化,保證生成圖像的顏色紋理差異。在注意力機制法中,Xu等人[26]提出AttnGAN,首次在網(wǎng)絡(luò)中加入注意力模塊,關(guān)注其最相關(guān)單詞,提出深度注意多模態(tài)相似模型,計算生成圖像與句子間的相似度,提供細粒度圖像-文本匹配損失。Tan等人[40]提出的語義增強生成對抗網(wǎng)絡(luò)(SEGAN)提出一個注意力競爭模塊,僅保留重要單詞的注意力權(quán)重,這有利于關(guān)鍵信息的合成,提高了模型的準確性。Li等人[41]提出的ControlGAN通過單詞級空間注意力和通道級注意力模塊可保留部分背景屬性并改動文本關(guān)聯(lián)屬性。在記憶網(wǎng)絡(luò)法中Zhu 等人[42]于2019 年提出DM-GAN,采用了動態(tài)記憶更新組件,使用動態(tài)內(nèi)存對初始圖像細化,內(nèi)存寫入門動態(tài)選擇匹配的單詞,響應門融合圖像和內(nèi)存表示。進而依據(jù)文本描述生成圖像。在循環(huán)一致法中,受CycleGAN[66]模型的啟發(fā),Qiao等人[43]提出MirrorGAN,加入全局-局部協(xié)作注意力,使用“文本-圖像-文本”的文本再生和對齊模塊,監(jiān)督生成器,保證圖像多樣性和語義一致性。在對比學習法中,從一開始的Yin 等人[51]提出的SD-GAN中,使用Siamese模塊,通過將連體網(wǎng)絡(luò)參數(shù)共享,對最終的輸出計算對比損失,再加入語義條件批量歸一化,保證了最終圖像的多樣性。在Zhang 等人[28]提出的XMC-GAN中,在模態(tài)內(nèi)和模態(tài)間通過最大化圖像和文本的互信息,并加入注意力自調(diào)制生成器來使圖像文本一致性高。同時,Ye等人[53]提出將對比學習方法應用到現(xiàn)有的各個模型中,通過在AttnGAN[26]和DM-GAN[42]中加入對比學習方法全面提高了原模型的性能。此外基于場景對象布局和因果關(guān)系的方法也有著突出的貢獻和發(fā)展。下文將對上述的單階段直接生成法、堆疊架構(gòu)、注意力機制、記憶網(wǎng)絡(luò)法、循環(huán)一致法、對比學習法、場景對象布局、因果關(guān)系等方法進行具體介紹。
2.2.1.1 單階段直接生成法
受CGAN 的啟發(fā),通過對CGAN 進行擴展,將原先的類標簽用文本嵌入代替,以此來實現(xiàn)端到端的文本控制圖像生成。在GAN-INT-CLS[22]模型(如圖6(a))[4]中使用匹配感知鑒別器,將“匹配樣本的真實圖像”“對于樣本的生成圖像”“不匹配樣本的真實圖像”3種圖像作為鑒別器的輸入。使得生成器和鑒別器既能關(guān)注真實圖像又能進行文本對齊。在AC-GAN[65](如圖6(b))[4]的基礎(chǔ)上,TAC-GAN[23](如圖6(c))[4]提出利用文本描述來代替類別標簽,TAC-GAN將噪聲向量和文本描述的嵌入向量的組合向量輸入生成器。鑒別器中與ACGAN[65]有細微區(qū)別,TAC-GAN 同時將文本信息在分類前輸入鑒別器。這樣模型提升了多樣性和可識別性,同時更加易于擴展。
圖6 GAN-INT-CLS、AC-GAN、TAC-GAN三者的對比Fig.6 Comparison of GAN-INT-CLS,AC-GAN and TAC-GAN
在文本生成圖像的初期,單階段直接生成法在類條件模型的基礎(chǔ)上,將類標簽替換為文本描述的嵌入向量并將其輸入生成器和鑒別器達到監(jiān)督的目的,并利用噪聲和文本嵌入的組合向量來增加更多的輔助信息,以此提高圖像的多樣性。
對于單階段直接生成法,輔助條件信息的選擇和數(shù)據(jù)分布的學習是算法性能的主要影響因素。輔助條件越貼切文本與圖像的映射且對數(shù)據(jù)分布的模式學習越精細,生成圖像的質(zhì)量將會越高,模型訓練將會更穩(wěn)定。該方法的缺點總結(jié)如下:
(1)首先,這類方法的圖像分辨率較低(最高只達到128×128),生成的圖像質(zhì)量也較差,細粒度特征無法完善,對于文本信息的挖掘也較淺。(2)其次,這類方法一般學習到的僅是數(shù)據(jù)的分布,這將容易造成模型的坍塌。
2.2.1.2 堆疊架構(gòu)
生成圖像的分辨率一直都是圖像領(lǐng)域最重要的指標之一,在StackGAN[24]之前的GAN-INT-CLS[22]只能生成64×64像素的圖像,TAC-GAN[23]只能生成128×128像素的圖像,在圖像的分辨率上遇到了巨大的困難,具體來說就是隨著分辨率的提高,自然圖像分布和隱式模型分布在高維像素空間可能無法重疊。為了模型可以合成更高分辨率的圖像,并能保持模型的訓練穩(wěn)定,利用多個堆疊的生成器鑒別器網(wǎng)絡(luò)可以有效的改進這一點。
(1)StackGAN
StackGAN[24]的提出,進一步提高了生成圖像的分辨率,達到了256×256像素。由于一次無法生成高分辨率圖像,Zhang 等人[24]提出將困難問題分解成易于進行的子問題進行解決,利用兩個生成對抗網(wǎng)絡(luò)進行堆疊來生成高分辨率圖像。
StackGAN使用級聯(lián)的GAN使生成的圖像細節(jié)化,提高了圖像的質(zhì)量。如圖6(a)所示,StackGAN 主要由Stage-I和Stage-II兩部分組成。Stage-I部分只生成低分辨率(64×64)圖像,利用多個條件變量的文本嵌入來實現(xiàn)文本描述細節(jié);生成的圖像并不過多關(guān)注于圖像細節(jié),只需要包含物體輪廓及顏色等粗略信息。相比較于之前方法采用Stage-I 部分直接利用噪聲來生成圖像,StackGAN 將Stage-I 生成的圖像直接輸入Stage-II 部分,同時輸入的還有文本中的一些被忽略的細節(jié)。重新修正了Stage-I 部分的一些錯誤和不足,從而提高了生成圖像的分辨率(256×256)以及圖像的質(zhì)量。同時,StackGAN 提出了條件增強技術(shù),通過將原有的條件變量和在高斯分布中產(chǎn)生的額外條件變量一起輸入到生成器中。通過在訓練過程中加入KL散度提高了訓練過程的穩(wěn)定性。條件增強技術(shù)提高了生成圖像過程的魯棒性及生成圖像的多樣性。
(2)StackGAN++
為改善生成圖像的細節(jié)以及文本和圖像間的一致性,Zhang等人[25]提出的StackGAN++是一種多階段的樹狀生成對抗網(wǎng)絡(luò)架構(gòu)。
StackGAN++中從低分辨率到高分辨率生成的圖像是由樹的不同分支產(chǎn)生的,對于每一個分支,使用生成器來捕獲該分辨率下的圖像分布,再由鑒別器分辨該尺度下的樣本真假。通過使生成的圖像與當前尺度下的真實圖像分布更近似,交替訓練不同分辨率下的生成器和鑒別器,使整個網(wǎng)絡(luò)訓更好。StackGAN++提出了新形式的鑒別器,其損失函數(shù)(如式(3))所示,包括無條件損失和條件損失。無條件損失只針對生成的圖像,判定其是否為真實圖像,而條件損失針對的是圖像與文本輸入鑒別器的條件變量是否匹配,即圖像是否符合文本信息。
式中E表示下標分布的期望值,Di表示鑒別器,Gi表示生成器,xi表示第i個真實圖像,si表示第i個假樣本輸入,pdatai表示第i個真實圖像分布,pGi表示第i個生成模型的分布,c表示輸入的條件向量。
StackGAN++提出額外的顏色一致正則化。引入顏色一致性正則化項來最小化不同尺度間的顏色紋理差異,使生成器在相同輸入樣本時產(chǎn)生的圖像顏色更加一致。
StackGAN++與StackGAN的定性對比(如圖7)[25]得出,StackGAN++多階段的架構(gòu)使其生成的圖像質(zhì)量更高更穩(wěn)定,更加符合文本信息,且顏色生成更加一致,優(yōu)于StackGAN的生成質(zhì)量。
圖7 由StackGAN(頂部)和StackGAN++(底部)生成的256×256圖像樣本Fig.7 256×256 image samples generated by StackGAN(top)and StackGAN++(bottom)
(3)HDGAN
典型的GAN框架[27](如圖8)包括多階段模型、一個生成器和多個鑒別器、對稱式生成器鑒別器等。為了解決從語義文本描述中處理圖像的難題,同時匹配多個生成器網(wǎng)絡(luò),Zhang 等人[27]提出的分層嵌套對抗網(wǎng)絡(luò)(HDGAN,如圖8(d))是一種可擴展的單流生成器架構(gòu)。在多尺度的中間層使用分層嵌套鑒別器來提高最終生成圖像的分辨率(512×512),中間層中的不同鑒別器可以匹配不同分辨率生成器生成的圖像,更像是充當了生成器中的正則化項。同時利用多用途對抗損失來完善細粒度圖像細節(jié)。此外,HDGAN提出了視覺語義相似性度量,用于檢測生成圖像的一致性以及邏輯的一致性。
此外,Gao等人[67]提出的PPAN采用金字塔結(jié)構(gòu),利用一個自上而下的帶有感知損失生成器和并列的三個鑒別器的結(jié)構(gòu)來生成分辨率高、語義一致性強的圖像,減少了訓練過程中的特征損失,也體現(xiàn)了堆疊型網(wǎng)絡(luò)可以獲得高質(zhì)量、高語義一致性的圖像。
堆疊型網(wǎng)絡(luò)采用級聯(lián)的架構(gòu),利用初始生成的圖像再對其進一步的完善和細化??梢哉宫F(xiàn)生成圖像的多樣性強,分辨率高的特點。同時級聯(lián)的架構(gòu)可以使訓練過程更加穩(wěn)定。
堆疊架構(gòu)中,第一階段生成圖像的質(zhì)量將影響著整個模型的最終結(jié)果,初始圖像若無法包含應有的細節(jié)特征和對象框架等信息,將會導致最終圖像的細粒度特征和對象布局的信息缺失。同時,堆疊結(jié)構(gòu)的層數(shù)越多,不同層間的特征信息間的重疊也會極大地影響最終圖像細節(jié)特征。該方法的缺點總結(jié)如下:
(1)多階段的訓練速度較慢,同時在每個階段提取特征時都會產(chǎn)生重復,因此會需要很大的計算資源。
(2)多階段的任務(wù)容易無法準確識別任務(wù)重點,造成最后生成的圖像與文本重點信息無法準確對應。
(3)堆疊型架構(gòu)更多的只能針對簡單文本描述時有良好的生成效果,對復雜的文本和場景無法準確生成圖像,細粒度特征也會丟失,圖像質(zhì)量也會較差。
堆疊架構(gòu)的定量比較如下:單階段的GAN-INT-CLS在COCO數(shù)據(jù)集上的IS值為7.88,而多階段的StackGAN在COCO數(shù)據(jù)集上的IS值為8.45。StackGAN比GAN-INTCLS 的IS 值提高7.23%。在堆疊架構(gòu)中,StackGAN++在CUB數(shù)據(jù)集上的IS值為4.04,F(xiàn)ID值為15.3,StackGAN的IS值為3.70,F(xiàn)ID值為51.89,StackGAN++比StackGAN的IS值提高了9.19%,F(xiàn)ID值降低了70.51%(FID值越低效果越好),性能顯著增強。
2.2.1.3 注意力機制法
注意力機制[71]的提出,迅速在計算機視覺,自然語言處理等領(lǐng)域發(fā)展起來。通過對目標區(qū)域的重點關(guān)注,得到注意力焦點,再對這一區(qū)域投入更多注意力,以獲取更多所需關(guān)注目標的細節(jié)信息,同時抑制其他無用信息。由于注意力機制具有更好的魯棒性,擴展性,對局部信息的捕捉能力以及更高的并行性的特點,添加注意力機制的模型普遍效果更好,可解釋性變強[72-73]。Xu 等人[26]提出在文本圖像生成中加入注意力機制,即AttnGAN。
(1)AttnGAN
AttnGAN[26]由注意力驅(qū)動,級聯(lián)網(wǎng)絡(luò)細化文本到圖像的生成。AttnGAN的總體架構(gòu)是在StackGAN++[24]上進行優(yōu)化和改進,添加了一些特殊的部件。AttnGAN的重要創(chuàng)新點之一是注意生成網(wǎng)絡(luò)。對整個文本建立全局句子向量,在第一次生成低分辨率圖像后的每一個階段,對于子區(qū)域的圖像向量,添加注意力層來查詢詞向量,形成上下文向量,再將其與子區(qū)域圖像向量相結(jié)合,形成多模態(tài)上下文向量,以此來提高生成圖像的細節(jié)特征。AttnGAN 的另一個重要創(chuàng)新是提出了深度注意多模態(tài)相似模型(DAMSM)。通過此模塊,可以在句子級別或更細粒度的單詞級別計算生成的圖像與對應文本間的相似度以及訓練過程中產(chǎn)生對應匹配損失。DAMSM 模塊的添加使得合成圖像的質(zhì)量以及文本圖像匹配度極大提高。
StackGAN、StackGAN++、AttnGAN 的模型框架對比(如圖9),三者的框架都是使用多個生成器,鑒別器級聯(lián)的網(wǎng)絡(luò)架構(gòu),StackGAN++在StackGAN的基礎(chǔ)上增加了一個階段的生成器和鑒別器,并在損失函數(shù)中增加了條件損失。AttnGAN 在此基礎(chǔ)上增加了注意力模塊和DAMSM模塊。
圖9 StackGAN、StackGAN++、AttnGAN三者的對比Fig.9 Comparison of StackGAN,StackGAN++ and AttnGAN
(2)SEGAN
由于文本描述中包含了許多不重要的單詞信息,使用全局句子加入注意力機制會產(chǎn)生模型訓練時間長,穩(wěn)定性差的問題。為解決這一問題,Tan 等人[40]提出了語義增強生成對抗網(wǎng)絡(luò)(SEGAN)。
SEGAN提出注意力競爭模塊(attention competition module,ACM),設(shè)計了特殊的注意力正則化對句子賦予自適應注意力權(quán)重,以此來篩選出關(guān)鍵詞和非關(guān)鍵詞,將ACM 中賦予注意力權(quán)重的關(guān)鍵詞輸入進注意力生成網(wǎng)絡(luò)(attention generation network,AGN)中,并以此來作為生成器,這樣可以突出文本中重要單詞在生成圖像時的體現(xiàn)。此外SEGAN中加入了語義一致性模塊(semantic consistency module,SCM),最小化生成圖像和真實圖像間的特征距離,最大化與另一個文本的真實圖像間的特征距離。并且加入了滑動損失來平衡簡單樣本和困難樣本,從而使最終生成的圖像語義一致性強,關(guān)鍵詞信息準確性高且生成效率高。
(3)ControlGAN
文本生成圖像模型一般是不可控的,當改變文本中的一些單詞時會使合成的圖像與原始文本對應的圖像有很大差別。某些屬性改變會導致其他的一些屬性(例如姿勢、位置等)一同發(fā)生改變。為了解決這類問題,Li 等人[41]提出了一種可控型的文本生成圖像模型ControlGAN,ControlGAN 也為文本引導圖像生成領(lǐng)域提供了研究基礎(chǔ)。
ControlGAN提出了單詞級空間和通道方向注意力驅(qū)動生成器,其中空間注意對應于文本的顏色信息,而通道注意力將語義中有意義的部分和對應的文本單詞相關(guān)聯(lián)。使用的詞級鑒別器為生成器提供細粒度的訓練反饋,利用單詞與圖像子區(qū)域間的相關(guān)性來分解不同的視覺屬性,從而達到在改變文本所涉及屬性(例如顏色、紋理等)的同時保留其他無關(guān)屬性(例如圖像背景等),使得最終的圖像語義一致性強,多樣性強。
注意力機制的引入對改進語言和視覺體現(xiàn)產(chǎn)生了巨大的影響,它允許網(wǎng)絡(luò)更關(guān)注關(guān)鍵性的不同維度的信息同時忽略一些不重要的信息,注意力模塊可以挖掘出更多文本中單詞級的重要細粒度特征[74],同時它可以減少對其他輔助信息的需求,靈活的利用文本按照需求改變圖像的生成,使得整個模型的穩(wěn)定性強、效率高。
對于注意力機制法,對象的位置布局會對算法的性能產(chǎn)生影響,復雜的場景會使注意力難以學習對象的位置序列,或許會導致最終的圖像細粒度位置信息發(fā)生混亂。此外,計算資源的完備也是影響算法性能的重要因素。該方法的缺點總結(jié)如下:
(1)當遇到復雜的場景和簡短抽象的文本時,模型無法保證細粒度特征維持原狀且抽象文本對應的圖像區(qū)域的合成效果也較差。
(2)模型在面對多個類似文本時所生成的圖像質(zhì)量不佳,生成的圖像多樣性較差。
(3)大多帶有注意力機制的模型都是基于堆疊型網(wǎng)絡(luò)架構(gòu),同時注意力機制需要時刻注意上下文信息,從而導致模型的計算量大,占用的內(nèi)存等資源變大,模型較為繁重。
注意力機制法的定量比較如下:在堆疊架構(gòu)中加入注意力機制的AttnGAN 在COCO 數(shù)據(jù)集上的IS 值為25.89,F(xiàn)ID 值為35.49,StackGAN++在COCO 數(shù)據(jù)集上IS 值為8.30,F(xiàn)ID 值為81.59,AttnGAN 比StackGAN++的IS值提高211.93%,F(xiàn)ID值降低56.50%。注意力機制法中,在COCO 數(shù)據(jù)上SEGAN 的IS 值為27.86,F(xiàn)ID 值為32.28,比AttnGAN 的IS 值提高7.61%,F(xiàn)ID 值降低9.04%。在CUB 數(shù)據(jù)集上ControlGAN 的IS 值為4.58,AttnGAN 的IS 值為4.36,ControlGAN 比AttnGAN 的IS值提高5.05%。
2.2.1.4 記憶網(wǎng)絡(luò)法
DM-GAN:
針對文本圖像生成領(lǐng)域的快速發(fā)展,該領(lǐng)域的模型普遍存在兩個問題:
(1)首先是圖像的生成高度依賴于初始圖像的質(zhì)量,若初始圖像的生成質(zhì)量較差,圖像的細化過程也無法產(chǎn)生高質(zhì)量的圖像。
(2)其次是目前的模型在圖像細化過程中都是用統(tǒng)一的文本來表示,而輸入文本中的每個詞對圖像內(nèi)容都有著不同程度的描述,單詞的重要性無法展現(xiàn),細化過程將變差,最終結(jié)果也不盡人意。
針對這些問題,Zhu 等人[42]提出了DM-GAN,DMGAN包含動態(tài)內(nèi)存機制和內(nèi)存寫入門的動態(tài)記憶組件[75]。
DM-GAN 針對初始圖像質(zhì)量粗糙問題,提出了動態(tài)內(nèi)存機制[76]來細化圖像,它包含4個部分,首先是進行內(nèi)存寫入,只考慮部分的文本信息;其次是進行鍵尋址[77],通過鍵儲存器來檢索并計算內(nèi)存信息和圖像特征的相似概率;接著進行值的讀??;最終進行響應,即控制圖像特征的重新融合和內(nèi)存的讀取,該融合過程都是使用響應門來進行的,從而得到優(yōu)化后的圖像。針對細化過程的問題,提出了使用內(nèi)存寫入門來計算每個單詞的重要性并動態(tài)選擇與生成圖像相對應文本的單詞,在每一次的圖像細化過程中,都是不斷地根據(jù)初始圖像及文本進行動態(tài)的寫入和讀取內(nèi)存信息,達到突出重點文本信息的目的。DM-GAN 也是在StackGAN[24],StackGAN++[25]以及AttnGAN[26]等模型基礎(chǔ)上的創(chuàng)新發(fā)展。
使用記憶網(wǎng)絡(luò)的模型可以動態(tài)的對圖像進行存儲并靈活的對圖像進行細化,使得高質(zhì)量的圖像初步生成。通過記憶網(wǎng)絡(luò)可以類似于注意力機制一樣動態(tài)地選擇重要的單詞信息來確保最終圖像的多樣性強、分辨率高。
該方法的缺點總結(jié)如下:
(1)模型的細化會過多依賴于初始圖像中的物體布局,當初始的物體布局發(fā)生錯誤時,最終細化的圖像與輸入文本無法很好的對應。
(2)在更多具有復雜場景的多樣化數(shù)據(jù)集中,模型的適應能力不佳。
記憶網(wǎng)絡(luò)法的定量比較如下:使用記憶網(wǎng)絡(luò)的DMGAN 在COCO 數(shù)據(jù)集上IS 值為30.49,F(xiàn)ID 值為32.64,比AttnGAN 的IS 值提高17.77%,F(xiàn)ID 值降低8.03%。CUB數(shù)據(jù)集上DM-GAN的IS值為4.75,F(xiàn)ID值為16.09,AttnGAN 的IS 值為4.36,F(xiàn)ID 值為23.98,DM-GAN 比AttnGAN的IS值提高8.94%,F(xiàn)ID值降低32.90%。
2.2.1.5 循環(huán)一致法
MirrorGAN:
當前的方法在保證文本描述和視覺內(nèi)容之間的語義一致性方面效果較差,上述的幾種方法大多在圖像的分辨率方面有著較大的突破,而Qiao等人[43]提出MirrorGAN在多樣性增強(相同文本對應的含義可能不同)方面有著更好的突破。在CycleGAN[66]的啟發(fā)下,提出了一種全局和局部注意及語義保持一致的文本-圖像-文本的網(wǎng)絡(luò)框架。循環(huán)一致的特性可以使產(chǎn)生的附加信息供模型學習文本和圖像的語義一致性。MirrorGAN提出3個模塊:語義文本嵌入模塊(STEM)、級聯(lián)圖像生成器中的全局-局部協(xié)作模塊(GLAM)、語義文本再生和對齊模塊(STREAM)[78]。
STEM模塊在給定文本描述的基礎(chǔ)上,提取句子嵌入以及單詞嵌入,為適應文本表述的多樣性,MirrorGAN沿用了條件增強技術(shù)來對輸入的單詞進行數(shù)據(jù)增廣。GLAM模塊作為一個級聯(lián)的網(wǎng)絡(luò)架構(gòu),由三個生成網(wǎng)絡(luò)進行堆疊而成。由于文本圖像的模式差異,針對Attn-GAN[26]僅對單詞部分添加注意力的機制無法確保全局語義一致的問題,MirrorGAN提出了同時使用單詞注意力和全局句子注意力,將兩者進行平衡,達到增強生成圖像的多樣性以及語義一致性。在STREAM 模塊中,通過生成的最終圖像使用CNN[79]和LSTM[80]進行重新編碼和解碼,得到新的文本描述,與給定的文本進行語義上的對比,促進網(wǎng)絡(luò)的生成質(zhì)量。在整個框架的目標函數(shù)上,除了常用的損失,MirrorGAN 提出了一種基于交叉熵損失(cross entropy,CE)[81]的文本語義重建損失,進一步促進生成圖像的語義上與給定文本進行對齊。
除了典型的MirrorGAN 的循環(huán)網(wǎng)絡(luò)框架外,Lao等人[82]在對抗推理的方法上提出使用無監(jiān)督的方法在潛在空間中將噪聲中提取的圖像風格和文本描述的內(nèi)容共同體現(xiàn)。利用循環(huán)一致性損失來約束包含風格和文本的編碼器以及解碼器。Nguyen 等人[83]提出基于條件網(wǎng)絡(luò)的反饋來循環(huán)迭代的找出生成器生成圖像的潛在信息,并通過反饋使特征在圖像中表現(xiàn)的更突出。
循環(huán)一致法的應用[84]可以更好地提取圖像的風格樣式等信息,通過循環(huán)反饋的方式靈活地使生成圖像的風格多變,以此來提高最終圖像的多樣性以及語義一致表示。
然而,循環(huán)一致法也存在一些缺點:提取圖像風格樣式變換時,由于圖像的整體布局和風格多變以及復雜語義文本的變化,最終生成圖像的風格可能會改變,與預期不符。
循環(huán)一致法的定量比較如下:使用循環(huán)一致性的MirrorGAN在COCO數(shù)據(jù)上的IS值為26.47,比AttnGAN的IS 值提高2.24%,MirrorGAN 在CUB 數(shù)據(jù)集上的IS值為4.56,比AttnGAN的IS值提高4.59%。
2.2.1.6 對比學習法
近幾年,對比學習在計算機視覺(CV)的自監(jiān)督學習中取得了突破性的成功,引起了一些人極大的興趣和研究。對比學習[85-86](如圖10)是一種判別方法,利用相似性度量來衡量兩個嵌入的接近程度,將類似的樣本分組更接近,并將不同樣本彼此遠離。對比學習在GAN中的應用也逐漸廣泛,ContraGAN[87]探索了類條件圖像生成的對比學習。DiscoFaceGAN[68]添加了對比學習來強制解開人臉生成。
圖10 對比學習思想Fig.10 Contrastive learning ideas
文本合成圖像的目標是基于給定文本生成相匹配的視覺真實度高的圖像,然而同一圖像表達的含義在文本表達上存在著很大的差異,同一圖像的標題間的文本表達差異會使生成的圖像與預期不符。為了解決這一問題,將對比學習的框架嵌入到文本圖像合成領(lǐng)域,使用對比學習思想可以有效地增強合成圖像的質(zhì)量并提高其語義一致性。
(1)現(xiàn)有模型(AttnGAN、DM-GAN)+對比學習
對于同一個合成圖像的給定文本具有多種描述形式,這會導致生成的圖像偏離了真實。Ye等人[53]提出了一種基于現(xiàn)有GAN的對比學習方法來提高合成圖像的質(zhì)量和語義一致性,利用對比損失將同一圖像對應的標題聚集到一起,同時將不同圖像的標題聚集到一起,以此在預訓練編碼器時學習圖像-文本對中語義一致的文本表示。訓練過程中利用對比損失最小化合成圖像與真實圖像的其他描述文本所合成的假圖像之間的距離,最大化合成圖像與其他圖像的描述文本生成的假圖像間的距離。這種方法是適應于當前基于GAN方法的通用框架,Ye等人[53]在AttnGAN[26]和DM-GAN[42]加入了對比學習框架,其應用效果遠高于原模型。對比學習框架極大的增加了圖像的視覺真實度和語義一致性。
(2)SD-GAN
SD-GAN[52](如圖11)提出兩個分支的連體網(wǎng)絡(luò)架構(gòu),兩個分支模型參數(shù)共享,每個分支輸入不同的文本,對輸出的圖像采用對比損失來最大化分支中不同特征的距離并最小化類似特征的距離,以兩個分支上共同的語義來學習語義在圖像上的特征。是對比學習思想在文本圖像合成領(lǐng)域的初步應用,此時模型只能學習連體網(wǎng)絡(luò)的語義共性,SD-GAN還提出了語義條件批量歸一化(SCBN)來生成細粒度的視覺模式,以此來提高生成圖像的多樣性。
圖11 SD-GAN框架Fig.11 SD-GAN framework
(3)XMC-GAN
目前的基于GAN的模型大多是加入注意力機制來實現(xiàn)關(guān)鍵性特征和細粒度特征的生成,但這些模型僅適用于處理簡單圖像文本數(shù)據(jù)集,面對復雜場景數(shù)據(jù)集時效果不佳;而其他利用圖像中對象的布局來多階段生成圖像的方法需要更多的標簽且無法很好的應用到現(xiàn)實場景中。Zhang等人[28]提出一種文本圖像合成的跨模態(tài)對比學習方法(XMC-GAN)。
XMC-GAN利用對比學習的InfoNCE損失[88]來最大化相應對之間的互信息下限,分別從圖像區(qū)域與單詞、圖像與句子、圖像與圖像三個方面學習測量兩個模態(tài)的依賴性函數(shù)并利用對比損失加強合成的圖像與對應文本相對齊。通過注意力自調(diào)制生成器(提高隱藏特征和條件輸入的一致性)和對比鑒別器共同生成具有細粒度特征的視覺真實性強的可識別圖像,同時保證其文本和圖像的語義一致性。
對比學習作為一種自監(jiān)督學習的方法,也是一種思想,減少了與監(jiān)督模型的性能差距。Zhou等人[51]提出的TiGAN 利用對比學習來更好的實現(xiàn)文本到圖像的映射從而促進交互過程中圖像的一致性,在文本引導圖像生成領(lǐng)域也有著突破性進展。對比學習框架的建立是為了下游任務(wù)獲得更好的效果,在文本圖像生成這個下游任務(wù)中,對比學習框架的嵌入通過建立和優(yōu)化圖像-文本間的對比損失來達到尋找圖像文本的語義共性和促進生成圖像多樣性的目的。因此,基于對比學習的文本圖像合成方法在圖像質(zhì)量,視覺真實度以及語義一致性方面都將優(yōu)于現(xiàn)有模型。
對比學習法中,對比損失的建立至關(guān)重要,現(xiàn)在常用的包括Info NCE、NCE loss等,對比損失的是否合理將對模型的穩(wěn)定性有較大影響。正負樣本對的建立也會影響訓練中模型收斂的速度與能力。該方法的缺點總結(jié)如下:
(1)對比學習的架構(gòu)設(shè)計和采樣技術(shù)會對下游任務(wù)的性能有著深遠的影響,對比損失的建立不當極易導致模型的坍塌。
(2)對比學習會受到數(shù)據(jù)集偏差的影響,只有建立合理的正負樣本對比較才能訓練好模型的對比損失,否則會限制整個模型快速收斂的能力。
(3)研究其方法的泛化能力時需要更多對比學習中的各個模塊的理論分析,但缺乏相應的理論基礎(chǔ)。
對比學習法的定量比較如下:在對比學習法中,對比學習+AttnGAN在COCO數(shù)據(jù)集上FID值為23.93,比AttnGAN 的FID 值降低32.57%;在CUB 數(shù)據(jù)集上FID值為16.34,比AttnGAN 的FID 值降低31.86%。對比學習+DM-GAN在COCO數(shù)據(jù)集上FID值為20.79,IS值為33.34,比DM-GAN 的FID 值降低36.31%,IS 值提高9.35%;在CUB數(shù)據(jù)集上FID值為14.38,比AttnGAN的FID值降低了10.63%。SD-GAN在COCO數(shù)據(jù)集上的IS值為35.69,比對比學習+DM-GAN 的IS 值提高7.05%。XMC-GAN 在COCO 數(shù)據(jù)集上的FID 值為9.33,比對比學習+DM-GAN的FID值降低了55.12%。
2.2.1.7 場景對象布局法
目前大多數(shù)的方法都只能在文本簡短,圖像簡單的數(shù)據(jù)集上(例如CUB 鳥類數(shù)據(jù)集、Oxford-102 花卉數(shù)據(jù)集等)取得較為不錯的結(jié)果,而面對每個圖像包含多個對象的復雜數(shù)據(jù)集(例如COCO數(shù)據(jù)集等),生成圖像較為困難且效果不佳。因此,場景對象布局法提出在生成圖像的過程中加入一個步驟,先生成圖像的場景布局(或者是邊界框等),以場景為基礎(chǔ)為生成器提供反饋,并聯(lián)合對應的文本描述,共同生成圖像。
Liu 等人[89]提出預測以語義標簽圖為條件的卷積核,以此更好的利用圖像生成器的語義布局,從噪聲圖生成中間特征圖并最終生成圖像。Hinz 等人[90]提出生成圖像過程中引入生成單個對象的對象路徑,生成以單個前景對象的邊界框為條件的圖像。Li 等人[44]提出的Obj-GAN是一種以對象為驅(qū)動的注意力生成網(wǎng)絡(luò),將注意力與場景布局相結(jié)合,更新了基于網(wǎng)格的注意力機制。Li 等人[69]提出的PasteGAN 以外部對象作為指導,基于注意力使用場景圖引導圖像生成,允許模型從其他圖像中裁剪對象再將其粘貼進生成的圖像中。Vo 等人[70]提出Stacking-GANs為給定的標題對應的對象加入邊界框,利用標題生成視覺關(guān)系場景布局,促進圖像的生成。
Sylvain等人[45]提出的OC-GAN以對象為中心,提出基于場景圖的檢索模塊(SGSM),在整個場景中利用對象之間的空間關(guān)系,提高模型的布局保證度。加入條件實例邊界來生成逼真的場景和清晰的對象。Hinz 等人[46]在原有對象路徑的基礎(chǔ)上,提出的OP-GAN專注于迭代的關(guān)注所有根據(jù)當前圖像描述生成的單個對象,利用全局路徑生成整個圖像的背景特征,再將背景特征與逐個對象特征合并。專注于單個對象的特征往往比關(guān)注全局圖像語義更好地生成逼真圖像。
場景布局的方法在文本到圖像的過程中加入一個中間狀態(tài),在預先展現(xiàn)的邊界框,場景對象布局的基礎(chǔ)上,調(diào)節(jié)生成器,促使生成逼真且場景豐富的圖像,該方法能更好地適應復雜場景和對象的數(shù)據(jù)集,適應文本和圖像約束,有效地提高了模型的關(guān)鍵屬性的生成以及細粒度特征的體現(xiàn)。
在場景對象布局法中,場景與對象的提取和建立會對模型的效果影響較大,如圖12所示,對象的邊界框可能會發(fā)生多個重疊以及細小對象的邊界框建立模糊會使最終圖像的真實性以及對象關(guān)系的合理性產(chǎn)生影響。該方法的缺點總結(jié)如下:
圖12 基于場景對象布局方法的流程圖Fig.12 Flowchart based on scene object layout method
(1)容易在布局中沒有相應邊界框的情況下生成虛假圖像。
(2)利用場景布局的方法極容易在布局中出現(xiàn)重疊的邊界框?qū)е聦獔D像特征的合并。
(3)在原有的文本到圖像的過程中加入場景布局的中間狀態(tài),這將需要耗費更長的訓練時間和計算資源。
場景對象布局法的定量比較如下:在場景對象布局法中,PasteGAN 在COCO 數(shù)據(jù)集上FID 值為38.29,IS值為10.2。OC-GAN在COCO數(shù)據(jù)集上FID值為36.04,比PasteGAN降低了5.88%;IS值為17.0,比PasteGAN的IS 值提高了66.67%。OP-GAN 在COCO 數(shù)據(jù)集上的FID 值為24.70,比PasteGAN 降低了35.49%,IS 值為27.88,比PasteGAN的IS值提高了173.33%。
2.2.1.8 因果關(guān)系法
當前的模型大都以結(jié)果作為導向,僅依靠文本和視覺實體之間的映射來完成文本到圖像的生成,模型更多強調(diào)的是圖像的質(zhì)量,忽略了圖像生成過程中的因果視覺場景。且以文本中的行為動作為導向的圖像生成缺乏挖掘。
Zhu 等人[54]提出的CookGAN 在食品烹飪的圖像生成上基于文本的因果鏈實現(xiàn)。CookGAN通過在三對堆疊的生成器和鑒別器中加入“烹飪模擬器”來模仿真實的動作場景,利用門控循環(huán)單元(GRU)編碼行為(烹飪)步驟,結(jié)果作為GRU的隱藏狀態(tài)。在整個文本描述中,每一個動作(例如炒、切等)施加于已有的特征(例如成分、顏色、形狀等)都會沿著過程對現(xiàn)有狀態(tài)進行改變。整個網(wǎng)絡(luò)可以控制文本中的動作和成分間的明確互動,將成分在動作中的改變準確的可視化。
基于因果關(guān)系的方法關(guān)注其特征和行為動作,使特征作用的捆綁效應可以被建模(例如同一特征在不同動作的情況下會發(fā)生改變),可以顯著的表現(xiàn)出文本中的成分(可見或不可見)對最終圖像生成的影響。因果關(guān)系的準確表達會使最終生成的圖像更加符合復雜文本的內(nèi)在聯(lián)系,生成的圖像視覺感知度更強,語義一致性更強。
該方法的缺點總結(jié)如下:
(1)目前在基于因果關(guān)系的方法上研究過少,適用的范圍局限性較大(目前僅在食品烹飪領(lǐng)域),方法遷移后的效果有待考量。
(2)基于因果關(guān)系的方法需要盡可能考慮文本描述中的各個特征和動作,目前的方法考慮不完善(例如烹飪方式和成分數(shù)量未考慮完整等)。
基于GAN 的文本直接生成圖像方法從2016 年取得初步成效,大都使用多階段的網(wǎng)絡(luò)架構(gòu)以及初步注意力機制的應用,盡管在CUB 鳥類數(shù)據(jù)集等簡單數(shù)據(jù)集可以準確生成文本描述的細節(jié)信息,但在COCO數(shù)據(jù)集等復雜場景中無法較好應用。2020 年,Vo 等人[70]提出的stacking-GANs和Hinz等人[46]提出的OP-GAN延續(xù)場景對象布局的方法,利用標題對應對象的邊界框以及專注于單個對象的描述和全局背景的融合,繼續(xù)提高了場景對象布局這一類方法的模型效果。近幾年對比學習發(fā)展迅速,并且較為成功的嵌入到文本圖像的合成中,2021 年,Ye 等人[53]提出的現(xiàn)有經(jīng)典模型(AttnGAN[26]、DM-GAN[42])加入對比學習框架以及Zhang 等人[28]提出的XMC-GAN 都是將對比學習的思想應用于文本圖像生成中,并且在復雜數(shù)據(jù)集(COCO)和簡單對象數(shù)據(jù)集(CUB 等)上FID 值和IS 值都有著顯著的影響。同時2020年Zhu等人[54]提出的CookGAN利用對象動作間的因果邏輯關(guān)系使得最終的圖像中對象間的聯(lián)系更加突出,語義一致性更高。基于GAN 的文本直接生成圖像的各類方法間的效果比較如表2所示。
表2 文本直接生成圖像模型的定量比較Table 2 Quantitative comparison of text direct synthesis image models
表2是上述文本直接合成圖像模型的評估效果(FID值越低效果越好,其余指標值越高效果越好)。可見DM-GAN[42]在加入對比學習后在各個數(shù)據(jù)集的大多數(shù)指標的效果顯著高于原模型和其他的模型;XMC-GAN[28]在COCO 數(shù)據(jù)集中FID 值達到了9.33,優(yōu)于其他模型;DF-GAN[91]在CUB數(shù)據(jù)集中IS值達到了5.1,優(yōu)于其他模型。表中“—”表示評估實驗未用到該指標或該數(shù)據(jù)集。
2.2.2 基于文本引導生成圖像
上文所述,基于文本直接合成圖像的各類方法大多屬于無監(jiān)督范疇的方法,生成的圖像只需要達到分辨率高,文本圖像一致性強,圖像生成質(zhì)量高即可。而現(xiàn)實中更需要對于給定的圖像,使用不同的文本進行區(qū)域性的編輯和改動,并在圖像的其他部分仍然保留具體的細節(jié),具有目的性和指向性改動的特點,該領(lǐng)域可以稱之為基于文本引導圖像生成[92]。Li 等人[41]提出的可控性文本圖像生成模型ControlGAN為文本引導圖像生成奠定了基礎(chǔ)。目前文本引導生成圖像領(lǐng)域仍有巨大的發(fā)展空間。本文將文本引導圖像生成分為仿射組合法和基于StyleGAN法兩類方法(如表3)。
表3 基于文本引導生成圖像的分類與參考Table 3 Classification and reference of generated images based on text guidance
在仿射組合法中,Li等人[47]于2020年提出ManiGAN,采用文本圖像仿射組合模塊將文本與對應圖像區(qū)域仿射關(guān)聯(lián),且使用帶有注意力機制的細節(jié)糾正模塊對錯誤細節(jié)進行重構(gòu),維持新屬性和原有細節(jié)的平衡[93]。為解決搭建輕量級架構(gòu)(較少模型參數(shù)、訓練所需計算資源少)下的圖像質(zhì)量變差情況,Li等人[48]在ManiGAN基礎(chǔ)上提出Lightweight GAN,利用原有的部分框架加入包含詞級監(jiān)督標簽的單詞級鑒別器,以此構(gòu)建結(jié)構(gòu)簡單的輕量型生成器網(wǎng)絡(luò)。在基于StyleGAN 的方法中Xia 等人[50]于2021年提出TediGAN,利用反演圖像編碼器將圖像映射到預訓練StyleGAN[49]的潛在空間中,使用簡潔的視覺-語言相似模塊在潛在空間中進行實例級映射對齊。使用實例級優(yōu)化模塊重構(gòu)不相關(guān)屬性和改善與文本一致的屬性。Zhou等人[51]于2022年提出的TiGAN利用多輪交互的圖像生成,以StyleGAN2[94]為主干網(wǎng)絡(luò),集成了CLIP模型來評估文本與聯(lián)合嵌入空間內(nèi)的圖像間的語義相似性,利用對比學習的思想,加入對比損失促進模型解開文本到圖像的映射和中間特征。目前,文本引導圖像生成領(lǐng)域的研究較少,會面臨很多問題,如潛在空間中的屬性糾纏,引導產(chǎn)生的低質(zhì)量圖像,或無法有效處理的復雜情況下的場景等。下文將對仿射組合法、基于StyleGAN兩類方法進行具體介紹。
2.2.2.1 仿射組合法
(1)ManiGAN
基于給定文本引導圖像合成的關(guān)鍵就是同時利用自然語言和圖像的跨模態(tài)信息,生成新的匹配屬性樣本,同時保留與文本無關(guān)的原始圖像內(nèi)容。當前大多方法都是選擇沿著通道方向直接連接圖像和全局句子特征[95-96],這樣會帶來一些潛在問題,如不能準確地將細粒度詞和需要修改的屬性進行關(guān)聯(lián);或者無法有效識別與文本無關(guān)的內(nèi)容,無法將其重構(gòu)。Li 等人[47]提出Mani-GAN(如圖13)利用文本圖像仿射組合模塊(ACM)與細節(jié)校正模塊(DCM)來產(chǎn)生高質(zhì)量的保留原有細節(jié)特征的圖像。
圖13 ManiGAN框架Fig.13 ManiGAN framework
ACM模塊是ManiGAN中最重要的模塊,它主要包含兩個部分:第一個是將給定文本描述的相關(guān)區(qū)域與圖像進行關(guān)聯(lián),通過關(guān)聯(lián)的語義詞生成新的對應的圖像屬性,達到替換原圖像特征的目的;第二個部分是將原圖像進行重新編碼,對文本未描述到的部分進行重構(gòu),生成新的文本下的圖像。ACM 模塊的最大特點是,相較于現(xiàn)有方法無法準確區(qū)分修改和重建的圖像區(qū)域,無法在新屬性和原有細節(jié)上達到平衡。ACM模塊使用的文本與圖像之間的乘法,可準確地對修改區(qū)域進行選擇和細粒度重構(gòu),再對圖像無需修改部分重新編輯。DCM 模塊在單詞級特征上進行生成圖像細節(jié)的修改,添加空間和通道注意力將詞級特征進行關(guān)聯(lián),加強對細粒度特征的調(diào)整來達到細節(jié)重構(gòu)缺失,校正錯誤屬性。ManiGAN 的目標函數(shù)提出了額外的正則化項[66],如式(4),
式中I′表示真實圖像分布的采樣,I表示修改圖像后的結(jié)果,通過加入正則化來防止生成的圖像與輸入圖像相同,以此來確保生成圖像多樣性。
(2)Lightweight GAN
長時間的訓練推理和巨大的內(nèi)存計算需求使基于GAN 的圖像生成研究變得困難。Li 等人[47]在訓練ManiGAN 時減少模型的參數(shù),而最終的圖像質(zhì)量明顯變差。ManiGAN的鑒別器無法為生成器提供的單詞建立細粒度訓練反饋,較少的模型參數(shù)下無法將圖像屬性和對應文本之間建立確切的聯(lián)系。因此Li 等人[48]在ManiGAN的基礎(chǔ)上提出了一個輕量級文本圖像生成網(wǎng)絡(luò)(lightweight GAN,Lw-GAN)(如圖14)。它包含了兩個部分:單詞級鑒別器、輕量級架構(gòu)的生成器。
圖14 Lightweight GAN框架Fig.14 Lightweight GAN framework
單詞級鑒別器中使用詞級監(jiān)督標簽和詞級鑒別器,前者為生成器提供的每一個詞(主要保留名詞和形容詞)進行訓練反饋,建立生成圖像與對應文本間準確的對應關(guān)系,保證訓練參數(shù)較少時也能正確地進行映射。在單詞級鑒別器和ManiGAN 的大致框架下,可以構(gòu)建一個結(jié)構(gòu)簡單的輕量級生成器網(wǎng)絡(luò)。模型僅依靠文本編碼器、圖像編碼器以及一些少量的ACM模塊、殘差模塊、上采樣組成,且只需要一對生成器和鑒別器,模型對前后兩個ACM 模塊利用兩種不同特點的圖像編碼器Inception-v3[97]和VGG-16[98],前者網(wǎng)絡(luò)層更深,提取的特征更具有語義性,后者較淺,提取的特征包含更多內(nèi)容細節(jié),使得最終生成的圖像文本描述區(qū)域和其他不變區(qū)域質(zhì)量都較高[99]。多階段的多對生成器和鑒別器框架需要依靠更大的內(nèi)存,需要大量的時間進行訓練和推理,無法移植到有限的設(shè)備上(例如手機、平板等)進行使用。Lw-GAN 的提出使得較少參數(shù)下的圖像生成質(zhì)量提高,競爭性更強,在生成圖像的質(zhì)量層次上也高于ManiGAN。
ManiGAN和Lw-GAN模型作為仿射變換法的核心就是其主要的仿射變換(ACM)模塊,在文本到圖像的跨通道上,利用文本與圖像的元素乘法促進了文本描述與對應區(qū)域的關(guān)聯(lián)以及重構(gòu),避免簡單的沿通道方向連接文本與句子導致的圖像粗糙。DCM細節(jié)處理模塊和單詞級鑒別器加強了訓練反饋和細粒度特征的修改和保留。仿射變換法使得最終的模型視覺真實性高,多樣性強,未改動的細節(jié)保留完整。
對于仿射組合法,文本與圖像之間仿射變換的模態(tài)間乘法結(jié)果可能會使模型最終產(chǎn)生錯誤的布局及對象關(guān)系等。其次,多階段的仿射變換會對計算資源的完備有較高要求。該方法的缺點總結(jié)如下:
(1)使用跨模態(tài)的元素乘法有時會有細節(jié)的錯誤生成,與新屬性的穩(wěn)定共存也需要進一步的探索和完善。
(2)使用多對生成器和鑒別器的多階段框架較為繁重,訓練的穩(wěn)定性需要加強,使用計算資源較多;Lw-GAN 的輕量型架構(gòu)在圖像生成質(zhì)量上與多階段框架仍具有一定差距,需要考慮兩者的平衡發(fā)展。
仿射組合法的定量比較如下:仿射組合法中,Lightweight GAN 在COCO 數(shù)據(jù)集上的FID 值為12.39,比ManiGAN 的FID 值(25.08)降低50.60%;Accuracy 值為77.97,比ManiGAN的Accuracy值(22.03)提高253.93%;Realism值為67.53,比ManiGAN的Realism值(32.47)提高107.98%。Lightweight GAN在CUB數(shù)據(jù)集上的FID值為8.02,比ManiGAN 的FID 值(9.75)降低17.74%;Accuracy值為65.94,比ManiGAN的Accuracy值(34.06)提高93.60%;Realism值為57.82,比ManiGAN的Realism值(42.18)提高37.08%。
2.2.2.2 基于StyleGAN方法
(1)TediGAN
針對如今性能最好的一些文本圖像生成方法,大多是采用多階段的網(wǎng)絡(luò)框架。StyleGAN[49]是2020 年基于ProGAN[100]提出的模型,沿用了漸近性網(wǎng)絡(luò),加入映射網(wǎng)絡(luò),使得特征更好分離,生成圖像更加隨意,且加入自適應規(guī)范化(AdalN),從低分辨率到高分辨率都由style控制。受StyleGAN映射網(wǎng)絡(luò)和AdalN的啟發(fā),提出了一種GAN 的反演技術(shù)[101-102]——TediGAN[50],將文本、標簽、草圖等多模態(tài)信息映射到一個訓練好的StyleGAN 的公共潛在空間(如圖15)[50],再對其進行操作。與現(xiàn)有的多階段網(wǎng)絡(luò)框架不同,TediGAN 統(tǒng)一了整個過程,直接可生成高質(zhì)量的圖像。TediGAN 包含了StyleGAN 反演模塊、視覺-語言相似模塊、實例級優(yōu)化模塊。
圖15 StyleGAN潛在空間Fig.15 Latent space of StyleGAN
StyleGAN反演模塊將多模態(tài)信息(例如文本、語義標簽、草圖等)映射到預訓練的StyleGAN模型的潛在空間中,通過StyleGAN 的無監(jiān)督性提高方法的多樣性。視覺-語言相似模塊不同于往常的圖像-文本編碼器,它將圖像和對應的文本投影到訓練好的公共空間中學習與視覺表示一致語言表示,以此來進行圖像和對應文本之間的聯(lián)系和實例級對齊。相比較于DAMSM,該模塊更簡潔,更易于訓練。實例級優(yōu)化模塊以文本的反演潛在代碼作為初始化,圖像編碼器作為正則化使?jié)撛诖a保留在生成器的語義域內(nèi),使得在潛在空間中可以準確的編輯與文本描述一致的屬性和原來存在的細節(jié)屬性。最終得到高質(zhì)量,多樣性強的生成圖像(圖像分辨率可達到1 024×1 024)。TediGAN 的關(guān)鍵部分是預訓練好的StyleGAN 的潛在空間,潛在空間覆蓋面足夠廣則可以保證模型的魯棒性較強。
(2)TiGAN
真實用戶和模型交互的過程中,自然語言的反饋很難預測,交互式的圖像生成將文本引導的圖像操作推廣到多輪設(shè)置。文本到圖像的映射和交互過程中的難以理解的圖像操作是難以避免的挑戰(zhàn)。
現(xiàn)有的方法將圖像映射到潛在空間中,操作潛在向量生成預期圖像,更多的在操縱潛在向量方面進行改進,針對Xia等人[50]提出的TediGAN利用編碼器將不同模態(tài)映射到潛在空間中,Zhou 等人[51]提出的TiGAN 將文本和圖像都映射到聯(lián)合的潛在空間中,再對文本和圖像潛在向量中的元素重新組合。TiGAN將StyleGAN2[94]作為模型的主干,聯(lián)合預訓練的對比語言圖像模型(CLIP)[103],CLIP作為一個預訓練的多模態(tài)模型,可以將圖像和文本映射到統(tǒng)一的聯(lián)合嵌入空間中,以此可以評估文本和聯(lián)合嵌入空間中圖像的語義一致性,提供訓練反饋。TiGAN 利用映射網(wǎng)絡(luò)和可以在給定文本描述而生成樣式向量的模塊構(gòu)成整個合成網(wǎng)絡(luò),在CILP 提取的文本特征下精準改動預想的圖像區(qū)域,保留先前交互的信息。
TediGAN 與TiGAN 都 是在基于StyleGAN 的模型上,將文本和圖像映射到訓練覆蓋面廣的潛在空間中進行潛在向量的重新組合,實現(xiàn)文本對圖像的引導?;赟tyleGAN 的方法中,潛在空間的建立直接影響著最終的模型效果,廣度和深度越完整的潛在空間會使最終模型圖像的細粒度特征建立的越豐富。該方法的缺點總結(jié)如下:
(1)潛在空間的覆蓋面需要足夠大,圖像的微小細節(jié)在生成器未覆蓋到的區(qū)域內(nèi)無法很好的體現(xiàn)。
(2)與文本無關(guān)的屬性在潛在空間中可能會糾纏導致特征無法重新映射到引導后的圖像中。
基于StyleGAN方法的定量比較如下:基于StyleGAN的方法TediGAN 在CelebA-HQ 數(shù)據(jù)集上的FID 值為107.25,比仿射組合法中的ManiGAN 的FID 值降低9.03%;Accuracy 值為59.1,比ManiGAN 的Accuracy 值(40.9)提高44.50%;Realism 值為63.8,比ManiGAN 的Realism 值(36.2)提高76.24%?;赟tyleGAN 的方法中,TiGAN 在COCO 數(shù)據(jù)集上的FID 值為8.9,比LightweightGAN的FID值(12.39)降低28.17%;在CelebA-HQ數(shù)據(jù)集上的FID值為11.35,比TediGAN的FID值(107.25)降低89.42%。
從2016 年開始,文本直接生成圖像的方法開始逐漸完善,而僅在近兩年,文本引導圖像生成的方法才開始研究與探索。在該領(lǐng)域中,提出的仿射組合法(ManiGAN、Lw-GAN)延續(xù)了文本直接生成圖像的一般方法,在多階段的級聯(lián)網(wǎng)絡(luò)中加入文本和圖像元素間的仿射變換以及細節(jié)保留模塊,Lw-GAN中更是加入單詞級鑒別器來促使最終引導的圖像語義一致性高,細節(jié)效果保留更完備,并促使保證圖像質(zhì)量的前提下,模型的輕量化。而提出的TediGAN和TiGAN則是在StyleGAN中的潛在空間中操作,將文本和圖像的潛在向量進行關(guān)聯(lián)組合,以此達到引導圖像生成的目的。同時TiGAN利用了對比學習預訓練的CLIP模型來提高文本圖像特征間的關(guān)聯(lián)和語義一致性并完整保留先前的圖像信息。基于GAN的文本引導圖像生成的各類方法間的效果比較如表4所示。
表4 是文本引導圖像生成模型的評估效果(FID值越低效果越好,其余指標值越高效果越好)。可見Lw-GAN[48]在CUB、COCO 數(shù)據(jù)集上評估效果全面超過ManiGAN[47],而TediGAN[50]在CelebA-HQ數(shù)據(jù)集上也超過了ManiGAN。此外,TiGAN[51]在COCO數(shù)據(jù)集與CelebAHQ 數(shù)據(jù)集中的FID 值達到最優(yōu),分別是8.9 和11.35。表中“—”表示評估實驗未用到該指標或該數(shù)據(jù)集。
表4 文本引導圖像生成模型的定量比較Table 4 Quantitative comparison of text-guided image generation models
為了評估文本圖像合成方法的實用價值,對不同方法的復雜度進行了分析對比。如圖16 所示,從GANINT-CLS到最近的XMC-GAN、TediGAN的模型架構(gòu)圖來看,圖像生成模型的復雜度在不斷提高,計算資源的需求也在變大。與此同時,最終生成圖像的效果也越佳,語義一致性、多樣性以及視覺真實性也在不斷提高。
圖16 模型復雜度與模型效果的發(fā)展流圖Fig.16 Development flow diagram of model complexity and model effect
高質(zhì)量模型的研究需要更多高質(zhì)量、大型的數(shù)據(jù)集去驗證其效果和精度以及提高模型的泛化能力。優(yōu)質(zhì)數(shù)據(jù)集的建立往往更能推動圖像領(lǐng)域的發(fā)展。
在文本圖像生成領(lǐng)域,GAN 中最常用的數(shù)據(jù)集包括Oxford-102花卉數(shù)據(jù)集、CUB鳥類數(shù)據(jù)集、COCO[31]、CelebA-HQ[100]等。
Oxford-102 花卉數(shù)據(jù)集中包含了102 個類別的花,共有8 189張圖片數(shù)據(jù),每張圖片對應著10個不同文本的描述。CUB鳥類數(shù)據(jù)集和Oxford-102相類似,圖片都是對單個對象的展示,不過CUB數(shù)據(jù)集中包含200個類別的鳥類圖片數(shù)據(jù),共有11 788張圖片數(shù)據(jù)。
COCO 數(shù)據(jù)集幾乎是目前使用的最大的數(shù)據(jù)集,2014版本中包含了超過80 000張訓練集圖片,40 000張測試集圖片,擁有80個類別的thing類別(人、汽車等)和91種stuff類別(天空、陸地等),其擁有比其他數(shù)據(jù)集更多的對象場景且分辨率較高,可用于提高模型的細節(jié)。
CelebA-HQ 是專注于人臉的數(shù)據(jù)集,包含了超過30 000張高分辨率人臉圖像,有著詳細的描述文本。此外CIFAR10[104]、FASHION-MNIST[105]數(shù)據(jù)集也經(jīng)常被使用。
評價一個生成模型的質(zhì)量,需要從三個角度來進行分析。首先是圖像的生成質(zhì)量,要考慮到生成圖像是否清晰、圖像是否符合要求、是否全面等。其次是生成圖像的多樣性,是否生成的類型多樣也很關(guān)鍵,不僅僅是某一種或幾種的圖像。最后是生成圖像的評價,最終的圖像也需要人工對其進行觀察和評估。
Inception score(IS)[32](如式(5))是文本生成圖像領(lǐng)域最常用的評估指標之一,它客觀地從圖像的生成質(zhì)量和多樣性兩個方面進行評估。它更多地使用預訓練好的Inception v3模型來計算邊緣分布和條件分布之間的Kullback Leibler(KL)散度。
其中,E表示期望,DKL表示兩分布間的KL 散度。IS得分越高,即KL 的值越高,說明生成圖像的質(zhì)量越高,多樣性更豐富。
Frechet inception distance(FID)(如式(6))[33]也是該領(lǐng)域常用的指標之一,它用來描述兩個數(shù)據(jù)集之間的相似性程度。FID 也使用預訓練好的Inception 模型對圖片中的特征進行編碼,再計算原始圖像數(shù)據(jù)分布和生成圖像數(shù)據(jù)分布間的Frechet距離。
x1、x2表示真實圖像和生成圖像,μx1、μx2表示各自特征向量的均值,Σx1、Σx2表示特征向量的協(xié)方差矩陣,tr 表示矩陣的跡。FID值越低,兩個圖像的分布越接近,圖像越相似,生成圖像的質(zhì)量越高。
IS指標可以反應圖像質(zhì)量和多樣性,卻體現(xiàn)不了生成圖像與原始圖像間的相似程度,F(xiàn)ID指標剛好與之相反。兩者各有利弊,因此,在文本合成圖像領(lǐng)域更多的同時使用兩個指標進行評估。但IS 和FID 指標只能粗略評估圖像質(zhì)量,無法更好體現(xiàn)文本描述和圖像間的相似程度。一些模型中也會用到人工評估(human rank)指標,來彌補此缺陷,通過圖像的真實性和語義一致性來評判圖像的相似度以及文本和圖像間的符合程度。同時,R-precision 指標也經(jīng)常用于計算生成圖像和文本描述間的余弦距離從而評估其相關(guān)性。此外,Accuracy、Realism、Similarity、VS、文本圖像相似度(sim)、像素差(diff)、操縱精度(MP,如式(7))等指標也會用來驗證模型的性能。
MP=(1-diff)×sim(7)
表5 中總結(jié)了上文中提到的絕大多數(shù)模型的圖像分辨率、優(yōu)缺點,使用的數(shù)據(jù)集以及評估指標。評估指標包括IS、human rank、FID、多尺度結(jié)構(gòu)相似性(MS-SSIM)、R-precision、VS、MedR(median rank,檢索性能的中位數(shù),值越低,檢索能力越好)、MP、sim、diff、Accuracy、Realism、NoP-G/D(生成器或判別器中的參數(shù)數(shù)量)、RPE(每個epoch的運行時間)、IT(生成100個新修改圖像的推理時間)、學習感知圖像塊相似度(learned perceptual image patch similarity,LPIPS)[106]等。
表5 所提模型在文本到圖像合成領(lǐng)域的總結(jié)Table 5 Summary of proposed models in field of text-to-image synthesis
文本圖像合成是涉及自然語言處理和圖像生成的跨模態(tài)研究,目前的方法雖然已經(jīng)在生成圖像質(zhì)量方面以及圖像和語義一致性方面有大幅度的提高。但是在已經(jīng)達成共識的一些問題(例如文本圖像合成過程中的解釋性不足,以及如何利用更好的詞嵌入模型處理文本等)之外仍然有很多難點待研究。
(1)復雜場景與復雜文本的適應。目前的基于類型一致性的模型在對花、鳥等簡單對象的視覺一致性上有較好的約束,但缺乏對復雜場景的多目標視覺一致性約束。針對復雜場景圖像,需要將文本視覺表示引入到多標簽分類、多目標對象的識別和分割模型中。同時,目前大多模型以圖像單條描述語句為研究對象,更為復雜的文本(例如段落式文本、組合型文本描述、對話交互式文本等)也具有很高的研究價值,對復雜文本中不同語句描述內(nèi)容在圖像中的定位、大小以及語句間的交互關(guān)系都是需要解決的問題。因此,如何進一步挖掘文本視覺表示和更復雜的視覺識別模型的融合以及文本圖像的迭代和交互式操作再生是未來重要的研究方向之一。
(2)多模態(tài)的模型。目前在文本到圖像合成的模型有了極大的發(fā)展,受益于文本到圖像,語音到圖像可以將已有的文本編碼器替換為語音編碼器,該方法在未來或許會得到更多的關(guān)注。此外利用文本生成視頻或許也是未來重要的研究方向之一,但需要探索更多的語音視頻評估方法。
(3)輕量化模型和弱監(jiān)督、無監(jiān)督方法的應用。局限于數(shù)據(jù)集的龐大和設(shè)備內(nèi)存的不足,繁重的模型不適用未來在有限時間內(nèi)的便攜式或輕量型設(shè)備上(例如手機、平板等)廣泛推廣,使用較少訓練次數(shù)和模型參數(shù)的輕量型網(wǎng)絡(luò)或許是文本生成圖像領(lǐng)域的未來重要的研究方向之一。同時目前大多數(shù)模型都是基于大量文本和類標注的數(shù)據(jù)集,但人工標注的代價極為昂貴,若利用少量標注信息的圖像可以挖掘更多的文本-圖像信息或許可以減少模型的監(jiān)督依賴。
(4)注意力機制的深入應用。自注意力機制[107]可以通過計算圖像中像素點之間的關(guān)系來協(xié)調(diào)生成圖像的細粒度特征和文本描述的主要特征細節(jié)。結(jié)合目前最新的目標檢測技術(shù)和超分辨率重建技術(shù),深度注意力機制的探索與應用或許可以進一步優(yōu)化模型,依據(jù)文本找到實例級別的對應關(guān)系,生成分辨率更高、細節(jié)與結(jié)構(gòu)更加豐富的圖像。
(5)模型評價方法。目前的模型大多使用IS、FID等常用指標評價模型,但存在很多模型在評估時又提出其他的評估方法(或許僅對本模型適用),同時,模型在不同的主觀因素(例如實驗過程的變動、圖像分辨率等)下,使用同樣的評估指標會產(chǎn)生不同的結(jié)果。此外,使用不同的評估指標可能會導致評價圖像合成質(zhì)量的相互矛盾。因此,探索可以適用于絕大多數(shù)模型的優(yōu)點和局限性公平比較的評價指標是未來需要完善的重要方面,這將有利于更系統(tǒng)、更科學地評價和對比各個模型。
基于計算機視覺和自然語言處理任務(wù)的高速發(fā)展,將兩者搭建聯(lián)系的跨模態(tài)文本圖像生成任務(wù)是近幾年迅速發(fā)展的研究方向之一。本文詳細地從文本編碼、文本直接合成圖像、文本引導圖像合成三個方向全面回顧了各種基于GAN的文本生成圖像方法和網(wǎng)絡(luò)結(jié)構(gòu)。本文首先在各個類別中將各個模型進行對比分析,介紹了代表性模型的框架和關(guān)鍵貢獻(StackGAN[24]、AttnGAN[26]、DM-GAN[42]、ManiGAN[47]、TediGAN[50]、XMC-GAN[28]、TiGAN[51]等);介紹了數(shù)據(jù)集的發(fā)展過程,從單一對象的CUB,Oxford-102的數(shù)據(jù)集到圖像內(nèi)容豐富的COCO數(shù)據(jù)集,不斷地從龐大且豐富的數(shù)據(jù)集中訓練和驗證模型的性能。本文還重新研究了最常用的評估技術(shù)(IS、FID、human rank 等),從圖像質(zhì)量、多樣性、語義一致性三個方面來評估生成的圖像。最后,從復雜場景和文本表示、多模態(tài)模型、輕量型網(wǎng)絡(luò)等角度客觀地評價了該領(lǐng)域可能存在的不足和未來的研究方向??傊谋緢D像合成是一項具有挑戰(zhàn)性的課題,有著重要的研究價值,本文的目的也是為基于GAN 的方法進一步研究提供參考。