李曉莉,張慧明,李曉光
(遼寧大學(xué) 信息學(xué)院,沈陽(yáng) 110036)
圖像描述生成[1-4]是指對(duì)給定的圖像,根據(jù)內(nèi)容生成相關(guān)的文字描述.圖像描述生成技術(shù)廣泛應(yīng)用于圖像檢索[5]、輿情分析等場(chǎng)景.目前,基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成方法是圖像描述生成的主流方法之一.基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成方法通常采用Encoder-Decoder[6]神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),利用Encoder神經(jīng)網(wǎng)絡(luò)對(duì)圖像生成中間編碼,并以此利用Decoder神經(jīng)網(wǎng)絡(luò)解碼成最終文本描述序列.在該類方法中,Encoder通常采用基于CNN的神經(jīng)網(wǎng)絡(luò)提取圖像主要特征.由于文本描述的序列性,Decoder通常采用基于LSTM的循環(huán)神經(jīng)網(wǎng)絡(luò)生成文字描述序列.目前基于Encoder-Decoder結(jié)構(gòu)的圖像描述生成質(zhì)量要優(yōu)于其他方法,也是當(dāng)前該領(lǐng)域研究主要方向.
基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成方法利用Decoder對(duì)中間編碼生成詞序列時(shí),通常僅考慮訓(xùn)練文本的詞分布,假定任何主題下的詞分布是一致,并沒(méi)有考慮主題對(duì)詞分布的影響,導(dǎo)致解碼器擬合了一般意義上的詞分布.事實(shí)上,不同主題下的詞分布的區(qū)別往往非常明顯.例如,LDA[7]中提到文本內(nèi)容通常是由多個(gè)潛在主題概率模型混合構(gòu)成的混合概率模型,不同主題下詞分布是不同的.在圖像描述生成中,圖像內(nèi)容往往與多主題相關(guān).如何結(jié)合圖像的主題以及圖像特征獲得更為準(zhǔn)確的文本描述,是本文主要解決的問(wèn)題.針對(duì)于此,本文提出一種基于多主題的圖像描述生成方法TIC(Topic based Image Caption),設(shè)計(jì)了一種多主題神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu).TIC中的解碼器考慮了主題因素對(duì)詞分布的影響,設(shè)計(jì)了一種結(jié)合主題的詞權(quán)重計(jì)算方法,從而提高解碼器對(duì)給定主題下詞分布的擬合能力.
圖像描述生成技術(shù)主要有基于語(yǔ)言模板的圖像描述生成(Template-based)方法[8-10]、基于相似性檢索的圖像描述生成(Retrieval-based)方法[11-13]以及基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成(Neural Network-based)方法[14-18].基于語(yǔ)言模板的圖像描述生成方法是在圖像識(shí)別目標(biāo)的基礎(chǔ)上,匹配給定的語(yǔ)言模板,從而生成文字描述.該類方法生成的文字描述通常局限于給定的語(yǔ)言模板空間中,只能生成簡(jiǎn)單的描述,對(duì)于復(fù)雜關(guān)系描述準(zhǔn)確度很低.基于相似性檢索的圖像描述生成方法在給定圖片和對(duì)應(yīng)描述的訓(xùn)練集的基礎(chǔ)上,通過(guò)圖片相似性,檢索最佳表述.該類方法生成的圖像描述局限于訓(xùn)練集,且嚴(yán)重依賴于相似性度量.然而對(duì)于圖像這種高維數(shù)據(jù)來(lái)說(shuō),由于維災(zāi)現(xiàn)象的存在,導(dǎo)致生成描述的質(zhì)量較低.基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成方法主要有Google NIC[19], Toronto[20],ATT[21],m-RNN[22],R-LSTM[23], V2L[24],MIL[25]等.Google NIC較早的提出基于神經(jīng)網(wǎng)絡(luò)的圖像描述生成方法,其采用Encoder-Decoder神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),編碼器采用CNN結(jié)構(gòu),提取圖像的特征并編碼成向量,然后采用LSTM解碼器生成詞序列.Google NIC優(yōu)點(diǎn)是將Encoder-Decoder結(jié)構(gòu)用到圖像描述生成問(wèn)題上,并獲得了較好的生成效果,但NIC對(duì)于數(shù)據(jù)集大小敏感,只有在數(shù)據(jù)集足夠大的情況下,圖像描述生成效果較好.另外,NIC中的Encoder將所有輸入編碼成統(tǒng)一的語(yǔ)義特征,要求這個(gè)語(yǔ)義特征必須包含原始句子中所有的信息,僅適用于短句子情況.Toronto在Google NIC的基礎(chǔ)上引入了注意力機(jī)制(Attention),不再使用統(tǒng)一的語(yǔ)義特征,而是利用了CNN的空間特征,使用卷積層的特征映射(feature map),提取了不同位置的特征,進(jìn)而保持信息的完整性.Toronto圖像描述生成方法的準(zhǔn)確率高于Google NIC,但是通常認(rèn)為對(duì)于任何主題下的詞的分布是一致的,并沒(méi)有考慮不同主題下對(duì)詞分布的影響,除此之外,生成的描述還會(huì)受不相干的詞的干擾.ATT在Toronto(Attention)方法的基礎(chǔ)上設(shè)計(jì)了一個(gè)反饋過(guò)程,結(jié)合了圖片的全局特征(top-down)和局部特征(bottom-up).并且能夠?qū)Σ煌直媛实膱D片的不同區(qū)域獲取相應(yīng)的概念,對(duì)圖片的分辨率沒(méi)有限制.ATT圖像描述生成方法的準(zhǔn)確率高于Toronto,但是沒(méi)有考慮到不同主題下對(duì)詞分布的影響. m-RNN是由一個(gè)語(yǔ)言模型,一個(gè)視覺(jué)模型,和一個(gè)多模型的部分組成.語(yǔ)言模型生成一個(gè)字典來(lái)保存語(yǔ)義信息,視覺(jué)模型用一種表示形式來(lái)表示圖像特征,多模型用神經(jīng)網(wǎng)絡(luò)將語(yǔ)言模型和視覺(jué)模型連接起來(lái),較傳統(tǒng)的相似性檢索圖像描述生成方法準(zhǔn)確率提高,但是較ATT方法準(zhǔn)確率較差.R-LSTM 采用Tag ranking[26]中的方法來(lái)獲取詞權(quán)重,并按照單一權(quán)重序生成詞序列.沒(méi)有考慮到不同主題下對(duì)詞分布的影響. V2L方法在Encoder-Decoder結(jié)構(gòu)模型中引入被稱為“多標(biāo)簽”的高層語(yǔ)義特征,認(rèn)為一個(gè)圖像應(yīng)有多個(gè)標(biāo)簽分類,以對(duì)應(yīng)圖像中多個(gè)物體.V2L利用多標(biāo)簽訓(xùn)練模型,圖像描述生成質(zhì)量有所提高,目標(biāo)識(shí)別錯(cuò)誤率下降.但是V2L無(wú)法描述抽象目標(biāo),而且很難區(qū)分圖像標(biāo)簽的重要程度.與基于Encoder-Decoder結(jié)構(gòu)模型的圖像描述生成方法不同,Multiple instance Learning(MIL)方法并沒(méi)有使用該結(jié)構(gòu)模型,而是采用傳統(tǒng)的語(yǔ)言建模的方式.與V2L方法類似,MIL首先提取所有與圖像內(nèi)容相關(guān)的詞,然后在對(duì)語(yǔ)言進(jìn)行建模.但不同的是,V2L為多標(biāo)簽學(xué)習(xí)方法,而MIL為多實(shí)例學(xué)習(xí)方法,不僅僅要提取圖像中可能的單詞,而且還會(huì)將單詞對(duì)應(yīng)到具體的圖像區(qū)域.但是MIL方法生成的文字描述通常局限于給定的語(yǔ)言模板空間中,只能生成簡(jiǎn)單的描述,對(duì)于復(fù)雜關(guān)系描述準(zhǔn)確度很低.
圖1 概率依賴關(guān)系Fig.1 Probability dependence
本文采用了多主題圖像描述生成概率模型,并以此設(shè)計(jì)了一個(gè)多主題神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu).本節(jié)首先給出TIC圖像描述生成概率模型,其次給出了TIC基本結(jié)構(gòu),最后給出TIC訓(xùn)練方法.
給定圖像I,令S=(S1,S2,…,SN)為詞向量,T=(T1,T2,…,TM)為主題向量,則令圖像描述生成概率為聯(lián)合概率p(S,I,T;θ),θ為概率模型參數(shù).對(duì)于p(S,I,T;θ),設(shè)有如圖1所示的概率依賴關(guān)系,即S與I,T相關(guān),I與T相關(guān).那么,我們有:
(1)
對(duì)于公式(1)中的(a)部分為傳統(tǒng)圖像描述生成概率模型,(b)部分為基于主題圖像描述生成概率模型.對(duì)于(a)部分,我們有:
(2)
對(duì)于(b)部分,我們進(jìn)一步假設(shè)主題間概率獨(dú)立,則有:
(3)
(4)
結(jié)合公式(1)-公式(4),則有:
(5)
圖2 TIC結(jié)構(gòu)Fig.2 TIC structure
對(duì)公式(5)兩邊取對(duì)數(shù),則有:
(6)
那么,求圖像生成的最大似然概率,我們需要進(jìn)一步假設(shè)圖像先驗(yàn)概率p(I)一致,則有:
argθMaxlogp(S,I,T;θ)
(7)
其中θ=(θG,θT),θG為傳統(tǒng)圖像描述生成概率模型PG的參數(shù),θT為基于主題圖像描述生成概率模型PT的參數(shù).基于主題圖像描述生成概率模型PT由兩部分組成:p(S|T)—主題語(yǔ)言模型(Topic Lan guage Model,TLM)和p(T|I)—圖像主題模型(Image Topic Model,ITM).
根據(jù)圖像描述生成概率模型,TIC神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)如圖2所示.對(duì)于圖像描述生成概率模型PG部分(圖2中下虛框),同傳統(tǒng)方法類似,TIC采用CNN作為編碼器,獲得圖像I的特征編碼x0(公式(8)).采用LSTM作為解碼器,對(duì)于t步輸入xt(t=0,…,N)(t-1步輸出經(jīng)過(guò)We維度變換(公式(11)),獲得預(yù)測(cè)詞輸出(公式(9)).采用Softmax獲得詞St生成預(yù)測(cè)概率p(St|I,S0…St-1)(公式(10)).
x0=CNN(I)
(8)
mgt=LSTMG(xt),t=0,…,N
(9)
pG(St|I,S0…St-1)=Softmax(mgt)
(10)
xt+1=WeSt
(11)
對(duì)于多主題圖像描述生成概率模型PT部分(圖2中上虛框),這里采用RBF[27]神經(jīng)網(wǎng)絡(luò)擬合圖像主題模型ITM,采用LSTM擬合主題語(yǔ)言模型TLM.ITM中的RBF為三層結(jié)構(gòu),輸入層神經(jīng)元數(shù)量與特征編碼x0維度相同,隱藏層神經(jīng)元數(shù)量為r×M,即每個(gè)主題對(duì)應(yīng)r個(gè)神經(jīng)元,每個(gè)神經(jīng)元中心為該主題下的樣本.隱藏層的神經(jīng)元核函數(shù)采用高斯函數(shù),如公式(12)所示,其中σ為RBF擴(kuò)展參數(shù),xs為主題樣本,wji為權(quán)值.輸出層mI的神經(jīng)元數(shù)量為M,則對(duì)于第i輸出單元mii(i=1,…,M),計(jì)算見(jiàn)公式(13).
(12)
(13)
p(T|I)=Softmax(mi)
(14)
對(duì)于TLM,采用10個(gè)主題LSTMT來(lái)擬合主題下詞依賴關(guān)系,LSTMT結(jié)構(gòu)類似于傳統(tǒng)概率模型PG部分的解碼器LSTMG,不同的是,LSTMG的初始輸入是圖像的特征向量x0,而LSTMT的初始輸入是LSTMG第一個(gè)輸出.TLM中LSTM輸入層神經(jīng)元數(shù)量與圖像生成概率PG部分維度相同,即對(duì)于t步輸入xt(t=1,…,N),獲得主題預(yù)測(cè)詞輸出mlk(公式(15)).采用Softmax獲得主題下詞St生成預(yù)測(cè)概率p(St|tk,s0…st-1)(公式(16)).TLM相關(guān)計(jì)算見(jiàn)公式(15)和公式(16).
(15)
pk(St|Tk,S0…St-1)=Softmax(mlk),k=1,…,M
(16)
TIC詞序列生成在TIC訓(xùn)練的基礎(chǔ)上,通過(guò)公式(10)、公式(14)和公式(16),獲得詞概率,進(jìn)而選取t步最大概率的詞.TIC訓(xùn)練采用了Encoder-Decoder、ITM和TLM分別獨(dú)立訓(xùn)練的方式進(jìn)行.對(duì)于Encoder-Decoder采用傳統(tǒng)方法進(jìn)行訓(xùn)練.對(duì)于ITM訓(xùn)練,ITM輸出采用one-hot[28]方式,輸入層權(quán)重為固定值1,主題樣本xs采用編碼器編碼x0.在Encoder-Decoder訓(xùn)練的基礎(chǔ)上,對(duì)每個(gè)主題下圖像編碼中隨機(jī)抽取r個(gè)作為主題樣本.對(duì)于TLM訓(xùn)練,利用每個(gè)主題下的訓(xùn)練文本集合分別訓(xùn)練對(duì)應(yīng)主題下的LSTMT.
實(shí)驗(yàn)采用的數(shù)據(jù)集有:MSCOCO數(shù)據(jù)集[注]http://mscoco.org,Flickr8k數(shù)據(jù)集[注]https://forms.illinois.edu/sec/1713398和Flickr30k數(shù)據(jù)集[注]https://forms.illinois.edu/sec/7805261,數(shù)據(jù)集的具體信息如表1所示.對(duì)于ITM訓(xùn)練的主題相關(guān)數(shù)據(jù)集,本文通過(guò)人工方式,定義了10個(gè)主題,分別為戶內(nèi)場(chǎng)景,戶外場(chǎng)景,動(dòng)物,飛機(jī),船,車,植物,建筑,人,街道十大主題,每個(gè)主題下人工挑選主題相關(guān)圖片,圖3為各個(gè)主題下對(duì)應(yīng)的圖片的舉例.每個(gè)主題中的75%的圖片作為訓(xùn)練集,15%作為驗(yàn)證集,10%作為測(cè)試集.各主題數(shù)據(jù)集相關(guān)數(shù)據(jù)見(jiàn)表2.
圖3 各個(gè)主題對(duì)應(yīng)的圖片舉例Fig.3 Examples of images corresponding to various themes
本文選取了當(dāng)前圖像描述生成研究中典型的五種方法作為對(duì)比方法,主要包括Google NIC, Toronto,ATT,m-RNN,R-LSTM.關(guān)于句子生成質(zhì)量評(píng)價(jià),本文采用評(píng)價(jià)標(biāo)準(zhǔn)[29,30]有BLEU(1~4),METEOR,CIDER和ROUGE.其中BLEU又被稱為機(jī)器翻譯評(píng)測(cè)標(biāo)準(zhǔn),通常分為BLEU1,BLEU2,BLEU3,BLEU4.BLEU(1~4)是基于準(zhǔn)確率(precision)的評(píng)測(cè),在圖像描述生成任務(wù)中,處理的方式與機(jī)器翻譯的處理方式相同,都是計(jì)算由模型生成的句子中占參考句子的百分比.METEOR也是機(jī)器翻譯的評(píng)測(cè)標(biāo)準(zhǔn),其結(jié)果與人工判斷的結(jié)果具有較高的相關(guān)性,在圖像描述生成的任務(wù)中計(jì)算模型生成的句子與參考句子的詞匯匹配,詞干匹配,同義詞匹配.CIDER計(jì)算模型生成的句子與參考句子之間的余弦相似度,即向量空間模型.ROUGE是評(píng)測(cè)自動(dòng)摘要的評(píng)價(jià)標(biāo)準(zhǔn),基于召回率的相似性度量方法,與BLEU(1~4)相似.
表1 數(shù)據(jù)集Table 1 data set summary
表2 主題數(shù)據(jù)集Table 2 Topic data set summary
TIC訓(xùn)練采用了NIC、ITM和TLM分別獨(dú)立訓(xùn)練的方式進(jìn)行.對(duì)于NIC部分的訓(xùn)練,Encoder采用VGG16,Decoder使用LSTM,其他網(wǎng)絡(luò)參數(shù)設(shè)置與傳統(tǒng)方法相同.對(duì)于ITM部分的訓(xùn)練,采用隨機(jī)梯度下降方式[31],輸出采用one-hot方式,輸入層權(quán)重為固定值1,RBF的初始擴(kuò)展參數(shù)取[0.1,0.3]內(nèi)的隨機(jī)數(shù),輸入層神經(jīng)元數(shù)量與CNN特征編碼維度相同,本文定義了10個(gè)主題,每個(gè)主題下60個(gè)樣本,所以隱藏層大小為60×10個(gè)神經(jīng)單元,batch_size大小為600,迭代次數(shù)設(shè)置為20,使用指數(shù)衰減法[32],初始學(xué)習(xí)率為0.1,衰減率設(shè)置為0.9,衰減的速度為50.對(duì)于TLM部分的訓(xùn)練,采用隨機(jī)梯度下降方式,利用每個(gè)主題下的訓(xùn)練文本集合分別訓(xùn)練對(duì)應(yīng)主題下的LSTMT,LSTMT與主題的個(gè)數(shù)為10,初始學(xué)習(xí)率設(shè)置為0.05,batch_size大小為600,迭代次數(shù)設(shè)置為20次,門(mén)激活函數(shù)為sigmoid函數(shù),輸出激活函數(shù)為tanh函數(shù).
表3 句子多樣性實(shí)驗(yàn)結(jié)果Table 3 Sentence diversity experiment results
圖4為在TIC模型下的圖像描述生成的實(shí)驗(yàn)結(jié)果,圖4上方是輸入的圖片,下方是圖片對(duì)應(yīng)的描述.表3為句子生成多樣性結(jié)果的舉例,帶有三角形標(biāo)注的是訓(xùn)練后生成的不屬于訓(xùn)練集里的描述,可以看出TIC方法在BLEU-n,METEOR,CIDER,ROUGE提高的基礎(chǔ)上對(duì)句子生成的多樣性方面依然有一定的保證,也具有一定的新穎性,因此證明TIC生成句子具有多樣性.表4為MSCOCO數(shù)據(jù)集下各方法的比較結(jié)果.可以看出,TIC在MSCOCO數(shù)據(jù)集上BLEU-1,BLUE-2,METEOR,CIDER,ROUGE分別提高了0.7,0.8,0.4,1.3,0.3.由于TIC的Decoder考慮到了不同主題下的詞分布,生成的句子的準(zhǔn)確率更高,所以BLEU-1,BLUE-2匹配句子上表現(xiàn)較好,METEOR,CIDER指標(biāo)分?jǐn)?shù)相比其他方法要高.但隨BLEU-n中n的增加,樣本的數(shù)量比較小,在句子層面上的匹配就會(huì)越來(lái)越差,所以BLEU-3,BLEU-4的結(jié)果并沒(méi)有達(dá)到理想結(jié)果,ROUGE與BLEU-n相似.表5為 Flickr8k數(shù)據(jù)集下各方法的比較結(jié)果.TIC在Flickr8k數(shù)據(jù)集上BLEU-1,BLUE-2,METEOR,ROUGE分別提高了1.3,1.2,0.6,0.2.表6為Flickr30k數(shù)據(jù)集下各方法的比較結(jié)果.TIC在Flickr30k數(shù)據(jù)集上BLEU-1,BLUE-2,METEOR,ROUGE分別提高了1.3,1.3,0.7,0.6.由于Flickr8k數(shù)據(jù)集和Flickr30k數(shù)據(jù)集的主題數(shù)據(jù)集樣本較少,所以較MSCOCO數(shù)據(jù)集提高的并不是很明顯.
表4 MSCOCO數(shù)據(jù)集下的性能指標(biāo)比較Table 4 Comparison on MSCOCO data set
表5 Flickr8k數(shù)據(jù)集下的性能指標(biāo)比較Table 5 Comparison on Flickr8k data set
表6 Flickr30k數(shù)據(jù)集下的性能指標(biāo)比較Table 6 Comparison on Flickr30k data set
圖4 圖像生成描述實(shí)驗(yàn)結(jié)果Fig.4 Image caption generation experimental results
針對(duì)當(dāng)前圖像描述生成方法的主題特性缺失問(wèn)題,本文提出了一種基于多主題的神經(jīng)網(wǎng)絡(luò)模型TIC.通過(guò)在MSCOCO、Flickr8k、Flickr30k數(shù)據(jù)集上的實(shí)驗(yàn)表明,TIC方法的BLEU(1~2), METEOR,CIDER,ROUGE都有所提高.TIC方法優(yōu)于傳統(tǒng)的圖像描述生成方法,特別是在CIDER指標(biāo)上,與傳統(tǒng)模型相比分?jǐn)?shù)提高較大,與用人工描述圖像結(jié)果相近.