吳 倩, 應 捷, 黃影平, 楊海馬, 胡文凱
(1 上海理工大學 光電信息與計算機工程學院, 上海 200093; 2 上海理工大學 測試技術與信息工程研究所, 上海 200093;3 上海市現(xiàn)代光學系統(tǒng)重點實驗室(上海理工大學), 上海 200093)
圖像語義理解融合了計算機視覺與自然語言處理兩個方向,是利用人工智能算法解決多模態(tài)、跨領域問題的典型代表。通過計算機實現(xiàn)圖像語義理解,再通過語音播報系統(tǒng)傳送語義信息,不僅能夠幫助視覺障礙者獲取圖像信息,而且能輔助駕駛,便利人們的日常生活。另外,圖像語義理解的研究成果可用于圖像檢索、智能兒童早教機、智能機器人等方面[1-20],具有較為廣泛的應用前景和現(xiàn)實意義。
隨著深度學習的發(fā)展,人們提出了基于編碼-解碼的圖像語義理解模型[5-19],這種模型通常采用卷積神經(jīng)網(wǎng)絡(Conventional Neural Networks, CNN)提取圖像特征,再通過循環(huán)神經(jīng)網(wǎng)絡(Recurrent Neural Network, RNN)構(gòu)建語言模型生成文本。Vinyals等人[7]提出了NIC 模型,該模型在m-RNN[5]的基礎上將RNN部分替換成性能更好的長短期記憶網(wǎng)絡(Long Short-Term Memory,LSTM),并且圖像的特征只在LSTM的第一個時刻輸入。這種改進不僅能夠減少模型參數(shù),而且還能夠解決神經(jīng)網(wǎng)絡訓練中的梯度消失和梯度爆炸問題。
單純的編碼-解碼模型不能很好地解釋生成的單詞與圖像中對象的位置關系,因此基于注意力機制的圖像語義理解模型隨之產(chǎn)生。Kelvin等人[8]首次將注意力機制引入圖像語義理解模型,提出了soft-Attention和hard-Attention,并取得了較大的成果,為后續(xù)注意力的發(fā)展提供了基礎。Qu等人[9]使用CNN提取了更加豐富的特征,如顏色,輪廓等,并且將這些額外的視覺特征加入注意力機制中,使得生成的描述更加準確。Chen等人[10]提出的SCA-CNN模型不僅考慮圖像平面中物體的位置,而且將提取到的圖像特征通道信息也加入其中,并且驗證了先使用空間信息再使用通道信息的模型效果更好。Marcella等人[11]提出了一種結(jié)合顯著圖和上下文的注意力機制,并且驗證了顯著圖在生成文本中的重要性。呂凡等人[12]引入注意力反饋機制,不斷強化圖像與文本的匹配關系,在一定程度上解決了注意力分散的問題。Jiang等人[13]改進了LSTM的內(nèi)部結(jié)構(gòu),分別在輸入門和輸出門中增加存儲單元,使得LSTM單元在必要的時候能夠讀取這些之前沒有計算到網(wǎng)絡中信息。此外,該模型還將前一時刻的attention信息引入下一時刻,解決了模型重復關注的問題。
為了解決傳統(tǒng)編碼-解碼可能出現(xiàn)預測物體不正確的問題,You等人[14]首次提出了基于屬性預測的圖像語義理解模型,即首先使用多標簽分類獲取圖像的視覺屬性,再結(jié)合視覺屬性和圖像特征生成文本。隨后,Zhe等人[15]基于標簽檢測提出了SCN-LSTM模型,該模型中LSTM每個時刻的權值矩陣被擴展為一個與標簽相關的權值矩陣的集合,根據(jù)標簽與圖像的相關性來決策生成的單詞。這種模型在語言概念被修改時,仍然能夠生成正確且流暢的句子,但是整個模型的參數(shù)會隨著標簽數(shù)量的增大而增加,訓練十分困難。Zhao等人[16]提出了一種多模型融合的圖像語義理解方法,采用CNN提取圖像的全局特征與圖像的視覺屬性,在LSTM的0時刻輸入全局特征向量,在后續(xù)的每個時刻均輸入前一時刻產(chǎn)生的單詞編碼向量、圖像的視覺屬性與時變的語句特征向量。這種方法解決了因時間的推移造成的信息丟失問題,但存在大量冗余信息。He等人[17]提出了一種融合視覺屬性和注意力機制的圖像語義理解模型,使用DenseNet提取圖像的全局特征和視覺屬性,并且將DenseNet網(wǎng)絡的參數(shù)共享到注意力模塊以及文本生成模塊,該模型增強了屬性預測模塊與文本生成模塊的關系,減小了模型的復雜度。
現(xiàn)有的研究成果表明,基于注意力機制的方法和基于屬性預測的方法均能提高模型的預測效果。但現(xiàn)有的注意力模型只關注圖像特征而沒有考慮到之前生成的文本,也沒有考慮前后注意力區(qū)域之間的聯(lián)系,并且多采用單向LSTM,不能很好地結(jié)合未來的信息生成文本。此外,基于屬性預測的方法均采用CNN進行多標簽分類,選取概率最大的K個屬性標簽作為生成文本的前提,這種方法能夠獲得豐富的視覺信息但存在大量冗余信息。
為了解決上述問題,本文提出了一種帶有視覺屬性三元組且能夠挖掘潛在信息的圖像語義理解模型VT-BLSTM(Visual-text Bi-directional Long Short-Term Memory)。該算法使用VGG19的卷積層提取圖像的全局特征,并且為每個圖像選定<物體,動作,場景>三元組,訓練多標簽分類模型得到每張圖像的屬性三元組信息,減少額外視覺屬性的引入。其次,構(gòu)建雙向LSTM神經(jīng)網(wǎng)絡,在傳統(tǒng)視覺注意力的基礎上,加入文本注意力機制,通過變量控制當前輸入單詞參與生成文本的比例,決定此時生成的單詞更多地依靠圖像視覺信息還是之前生成的文本,得到視覺語義上下文。另外,視覺注意力模型的輸入向量在原有基礎上擴展一個上一時刻注意力模型的中間狀態(tài),使得模型在選擇關注區(qū)域時充分考慮歷史信息。最后,融合視覺三元組屬性、視覺語義上下文和LSTM隱含層特征,預測文本信息。經(jīng)過實驗研究證明,本文提出的VT-BLSTM模型不僅引入未來信息,改善了單向LSTM生成文本僅依靠之前生成單詞的缺陷,使之生成更加豐富、更符合圖像的描述,而且考慮之前關注的區(qū)域,增強了前后時刻關注區(qū)域的聯(lián)系。同時,解決了視覺屬性冗余的問題,在不降低模型正確率的同時減小了模型的復雜度。
本文提出的基于視覺注意力的圖像語義理解模型VT-BLSTM包括圖像視覺概念提取模塊、視覺語義上下文提取模塊和文本生成模塊三個部分,如圖1所示。視覺概念提取模塊使用VGG19的卷積層提取圖像的全局特征V,并且修改VGG19的最后一個全連接層,利用多示例學習獲得<物體,動作,場景>三元組Vattr。視覺語義上下文提取模塊由雙向LSTM組成,圖1中LSTM _f和LSTM_b分別表示前向LSTM和后向LSTM,att_unit表示注意力單元,用于獲取圖像的視覺語義上下文。文本生成模塊由一個多模態(tài)融合層組成,其輸入包括視覺屬性三元組Vattr、LSTM的隱含狀態(tài)h、視覺語義上下文CO和輸入單詞S,根據(jù)多模態(tài)層的輸出計算模型VT-BLSTM的誤差,利用反向傳播更新模型權重。
圖1 VT-BLSTM模型框架圖
本文的圖像視覺概念是指圖像的全局特征和圖像的視覺屬性三元組<物體,動作,場景>。圖像語義理解模型中常使用在ImageNet上預訓練的VGG19進行特征提取,將調(diào)整為2242243的圖像輸入VGG19,使用其第一個全連接層之前的網(wǎng)絡提取圖像全局視覺特征V,那么V={V1,V2,V3,…,VL},Vi∈RD,即將圖像i劃分為L(196)塊區(qū)域,每個區(qū)域Vi都是一個D(512)維的向量。
圖像的視覺屬性提取通常由多示例學習完成[18-19],為了得到圖像的視覺屬性三元組,本文沿用文獻[18]的思想,并在其基礎上做相應的修改。文獻[18]選取了出現(xiàn)次數(shù)最多的1 000個屬性詞構(gòu)建屬性詞典,當測試圖片對應的某個屬性概率大于0.5時,該屬性被認為是圖片擁有的屬性。這種方法能夠獲得豐富的圖像視覺屬性,但存在屬性之間關聯(lián)度過高,比如“green”和“grass”,以及僅依靠語法而不需要看圖就能生成的單詞,比如“in”、“the”。針對上述問題,本文提出了使用視覺屬性<物體,動作,場景>作為屬性前提,參與后續(xù)文本的生成。該方法不僅能夠在視覺屬性預測時極大地減少模型的訓練參數(shù),而且在生成文本時也減小了模型的復雜度。
(1)
(2)
其中,φ(bij)表示圖像i中,第j區(qū)域的fc7輸出向量,φ(bij)∈R4096,Vw和uw都是與單詞w相關的權重和偏置。
最后,計算模型的交叉熵損失函數(shù)并更新權重,利用訓練好的模型得到每張圖片的<物體,動作,場景>屬性。假設數(shù)據(jù)集含有N張圖片,每張圖片i的標簽yi={yi1,yi2,yi3,……,yic},當yi包含屬性k時,yik=1,否則,yik=0。那么,本模塊中屬性預測損失函數(shù)L(I)的計算公式為:
(3)
傳統(tǒng)的注意力機制單指視覺注意力[8,17]即前一時刻LSTM的隱含層狀態(tài)決定當前關注圖像的哪些區(qū)域,該機制極大地提高了生成文本的準確率。但是這種機制存在以下兩點問題。一方面,某些單詞的生成并不依靠圖像,而是依靠之前生成的文本。比如已經(jīng)生成某句子片段“A girl is sitting in front”,那么后面的“of”就可以根據(jù)前面生成的單詞決定。另一方面,關注的圖像區(qū)域之間可能存在某種聯(lián)系。
針對上述問題,本文在文獻[8]的基礎上提出了一種新的注意力機制提取上下文信息,包含視覺注意力單元、語義注意力單元和融合單元,其生成上下文的結(jié)構(gòu)與傳統(tǒng)注意力的結(jié)構(gòu)對比如圖2所示。視覺注意力單元用于獲取當前時刻每個圖像區(qū)域的權重α,α={α1,α2,α3,…,αL},α∈R。語義注意力單元用于獲取當前時刻保留文本信息的概率β,β∈(0,1)。融合單元先根據(jù)α和圖像全局特征向量V得到視覺上下文CV,再根據(jù)“語義門”g和LSTM存儲單元m得到語義上下文CT,最后融合CV、CT以及β得到視覺語義上下文CO。這種新的注意力機制不僅考慮了歷史關注的區(qū)域,而且引入文本保留概率β,使得模型能夠自主地選擇多關注圖像還是之前生成的文本。
(a) 傳統(tǒng)方法
(b) 本文方法
Fig. 2 Traditional and the proposed attention visual context extraction graph
(4)
(5)
(6)
在本文的視覺注意力單元中,t時刻圖像區(qū)域權重at計算公式如下:
(7)
at=softmax(Weet)
(8)
其中,et表示t時刻關注區(qū)域權重的中間狀態(tài),t=0時刻的狀態(tài)由全局圖像特征得到,t>0時,該中間狀態(tài)由全局圖像特征V、前一時刻LSTM隱含層ht-1和前一時刻的中間狀態(tài)決定。這種改進的視覺注意力機制將中間狀態(tài)et看成一種記憶單元,能夠記憶歷史時刻關注的區(qū)域信息。公式(7)中的W0、W1和b,以及公式(8)中的We,均是可訓練參數(shù)。在t=0時刻,LSTM的隱含層狀態(tài)h0和存儲細胞狀態(tài)c0由輸入圖像的平均全局特征決定:
(9)
(10)
語義注意力單元在t時刻生成文本保留概率βt的計算公式如公式(11)所示:
βt=softmax(We(WsSt+Whht)),
(11)
其中,We與公式(8)中的We相同;Wh與公式(7)中的Wh相同;Ws是與語句相關的可訓練參數(shù)。
(12)
其中,mt表示當前時刻LSTM的存儲單元;σ表示sigmoid激活函數(shù);gt表示一個“語義門”,用來控制當前單詞遺留下來的概率,計算時會用到如下公式:
(13)
(14)
本文提出的注意力機制引入了視覺注意力存儲單元和語義注意力模塊,視覺注意力存儲單元能夠保留歷史時刻關注的區(qū)域,語義注意力模塊能夠自主地選擇關注之前生成的文本,使得模型的在每個時刻關注的區(qū)域更加準確,生成更符合圖像的描述。
文本生成模塊由一個多模態(tài)融合層組成,根據(jù)輸入單詞S、LSTM的隱含狀態(tài)h、視覺語義上下文CO和視覺屬性三元組Vattr,預測圖像對應的文本。由于本文采用了雙層LSTM,因此會從2個方向生成文本。在訓練時,根據(jù)前向LSTM和后向LSTM的預測損失之和更新權重。在測試時,分別計算前后向LSTM生成文本的概率和,選擇概率和最大的文本作為模型最終的輸出。以訓練過程中前向LSTM為例,文本生成模塊的實現(xiàn)流程如下:
過程中,ot表示wt的獨熱編碼,ot∈RV,V表示詞匯庫的大??;使用word embedding降維,得到St,St∈RM,其中M表示詞嵌入向量的維度。
(2)LSTM的隱含層狀態(tài)更新。其中ht表示t時刻LSTM單元的隱含層向量,ht∈RH。用公式表示為:
(15)
(16)
(17)
mt=ft*mt-1+it*mi;
(18)
(19)
ht=ot*tanh (mt).
(20)
其中,mt-1和mt分別表示t-1時刻和t時刻的細胞狀態(tài);σ表示sigmoid函數(shù);ft表示遺忘門函數(shù),用于控制前一時刻細胞保留下來的信息;it表示輸入門函數(shù),用于更新當前時刻的信息;ot表示輸出門函數(shù),控制更新后細胞狀態(tài)的輸出。Wf、Wi、Wo分別表示遺忘門、輸入門、輸出門的參數(shù)矩陣,bf、bi、bo分別為對應的偏置。*表示矩陣點乘。
(3)根據(jù)上述得到的單詞編碼向量S、LSTM的隱含狀態(tài)h、視覺語義上下文CO和視覺屬性三元組Vattr生成文本Yt。其過程如下:
在單詞編碼階段,先采用獨熱編碼得到V維向量,后采用embedding得到M維向量,因此生成Yt需要經(jīng)過3個步驟。首先,將上述4個特征向量輸入多模態(tài)層,得到一個M維向量rt,其計算方法如公式(21)所示:
(21)
其中,Ww_h、Wc2t和Wattr都是可學習參數(shù)。
其次,經(jīng)過一個全連接層fc得到一個V維的向量yt。最后,yt經(jīng)過歸一化得到每個單詞的概率pt,pt∈RV,在詞匯表中取pt的最大值所對應單詞作為最終輸出Yt。
針對一張圖像I,訓練模型的最終目的是得到模型中的最優(yōu)參數(shù)θ*,即:
(22)
其中,S表示圖像I的標定描述,θ是模型中的自學習參數(shù),訓練時模型的損失函數(shù)為:
(23)
公式(23)的第一部分和第二部分分別表示前向和后向LSTM的交叉熵損失函數(shù),其中N為訓練圖像的大小,wt表示t時刻生成發(fā)單詞,最后一項表示視覺語義上下文提取模塊中前向和后向LSTM每個時刻α的正則項。
本文訓練好的圖像語義理解模型能分別根據(jù)前向LSTM和后向LSTM生成文本,最終生成的句子由最大概率和決定,如式(24)所示:
本文中使用Flickr8K和Flickr30K數(shù)據(jù)集進行實驗。Flickr8K圖像集中含有6 000張訓練圖像,1 000張驗證圖像,1 000張測試圖像,其中每張圖像對應有5個人工標定的描述信息。Flickr30K數(shù)據(jù)集包含31 783 張圖片,每張圖片也對應5條標注文本,本文參考文獻[6]的分割方法,將數(shù)據(jù)集分割為29 000張訓練圖像、1 000張驗證圖像和1 000張測試圖像。使用VGG 提取圖像特征時,得到特征的維度是196*512,即L=196,D=512。在文本預處理部分,首先刪除標定語句中所有的標點符號,其次將單詞全部轉(zhuǎn)換成小寫字母,設置句子最大長度是20。使用Flickr8K數(shù)據(jù)集時,得到有效的29 318條語句,其中包含7 224個單詞,根據(jù)這些單詞建立詞匯庫。使用Flickr30K數(shù)據(jù)集時,詞匯庫包含18 344個單詞。在訓練時使用Adam優(yōu)化算法更新參數(shù),Adam的參數(shù)設定為alpha=0.001、beta1=0.9、beta2=0.999,同時使用dropout防止模型過擬合。
實驗中采用了BLEU(Bilingual Evaluation understudy)和METEOR兩種方法對生成的語句進行評價。BLEU表示候選語句與標定語句中n元組共同出現(xiàn)的程度,是一種基于精確度的評估方法,包括BLEU-1、BLEU-2、BLEU-3和BLEU-4。METEOR指標同時考慮了整個語料庫上的準確率和召回率,其結(jié)果和人工判斷的結(jié)果有較高相關性。這兩種評價指標得分越高表示模型能夠?qū)D像進行更加準確的語義理解,生成的語句質(zhì)量越好。
使用NLTK處理文本數(shù)據(jù),選取出現(xiàn)次數(shù)最多的屬性單詞組成數(shù)據(jù)集的屬性詞典,其<物體,動作,場景>三元組屬性詞云如圖3所示。
(a) 物體詞云 (b) 動作詞云 (c) 場景詞云
根據(jù)上述屬性詞構(gòu)建每個圖像的屬性標簽,通過多示例學習得到圖像的視覺三元組屬性如圖4所示。圖4中右上角的單詞分別表示圖像對應的屬性,屬性后的數(shù)字表示為該屬性的概率。如圖4(a)所示,該圖像生成的<物體,動作,場景>三元組為
(a)視覺三元組1 (b)視覺三元組2 (c)視覺三元組3 (d)視覺三元組4
(a)Visual triple 1 (b) Visual triple 2 (c) Visual triple 3 (d) Visual triple 4
圖4 視覺屬性生成示意圖
Fig. 4 Visual attributes schematic
為了驗證視覺三元組的有效性,本文分別對比使用視覺三元組、傳統(tǒng)視覺屬性提取[18]和不使用視覺屬性三種方法,實現(xiàn)圖像的語義理解,并使用BLEU和METEOR評價指數(shù)對生成的句子進行評價。表1記錄了上述三種不同的方法在Flickr8K數(shù)據(jù)集和Flickr30K數(shù)據(jù)集上生成文本的結(jié)果,B@1~B@4分別表示BLEU-1~BLEU-4評價指標,M表示METEOR評價指標。
通過對比可以看出,使用了屬性特征的模型效果最好,另外,在Flickr8K數(shù)據(jù)集下,使用傳統(tǒng)屬性提取方法和使用視覺屬性三元組方法生成文本的正確率相差不大,但是在Flickr30K數(shù)據(jù)集下,帶有視覺屬性三元組的模型效果更好。不帶屬性特征的模型是端到端的模型,僅根據(jù)文本預測得到的句子可能會導致圖像主體預測出錯,在模型中引入視覺屬性能夠在一定程度上減小這樣的錯誤。而傳統(tǒng)的屬性預測往往包含十幾個單詞,這些單詞之間可能存在包含關系或者單詞意思相近,會引入冗余屬性,而且使得模型的參數(shù)增加。視覺屬性三元組不僅能夠準確預測出圖像主要屬性,還能減小模型的參數(shù),降低模型訓練的復雜度。
綜合以上分析,得到結(jié)論:使用視覺屬性三元組的模型能夠在減小模型參數(shù)的情況下,有效地引導文本生成,且不降低模型生成文本的正確率。
表1 不同視覺屬性生成文本的結(jié)果
設置batch為64,迭代次數(shù)為15K,隨著迭代次數(shù)的增加,本文提出的VT-BLSTM模型在Flickr30K上的loss變化曲線如圖5所示,由loss的變化趨勢可知,VT-BLSTM是可訓練的、并且有效的。BLEU和METEOR評價分數(shù)隨著迭代次數(shù)的變化曲線如圖6所示。這五種評價分數(shù)總體來說都隨著迭代次數(shù)的增加呈現(xiàn)上升的趨勢,并且在迭代到10 000次左右時,能達到穩(wěn)定值。
圖5 訓練時模型的損失變化
圖6 不同迭代次數(shù)下VT-BLSTM的性能
圖7是采用VT-BLSTM模型實現(xiàn)圖像的語義理解,并且可視化每個時刻聚焦的區(qū)域以及視覺語義上下文模塊中“視覺門”1-β的示意圖。圖7(a)~(d)的上半部分均表示每個時刻生成的文本以及對應的關注區(qū)域,高亮的部分表示關注度更高,下半部分表示生成文本時“視覺門”的變化曲線。
圖7(a)生成文本描述“Two people are shoveling snow on a snowy hill.”,在生成單詞“people”、“snow”的時候能夠準確定位到人和雪地的部位。并且在“people”、“shoveling”、“snow”和“hill”對應時刻,1-β數(shù)值較大,表明該模型更多地關注圖像而不是文本,而在生成“are”這種無視覺的信息時,1-β較小。另外,圖7(a)顯示,該圖像生成的屬性單詞為
由此可見,VT-BLSTM模型能夠很好地識別出圖中的主要目標和屬性信息,選擇性地關注圖像或之前生成的文本,并且結(jié)合未來信息生成更豐富的、具有多樣性的圖像描述,實現(xiàn)圖像的語義理解。
(a) 生成文本描述1
(c) 生成文本描述3
(b) 生成文本描述2
(d) 生成文本描述4
圖7 可視化注意力機制
Fig. 7 Visual attention mechanism
為了驗證模型VT-BLSTM的有效性,本文選擇了近3年圖像語義理解領域中具有代表性且性能優(yōu)越的模型進行對比實驗。具體對比模型如下:
(1)DeepVS[6]。Karpathy 等人將圖像中的多個局部區(qū)域和文本描述片段相對應,再使用RNN生成圖像的文本描述。
(2)GoogleNIC[7]。Vinyals 等人提出基于 CNN 和LSTM的圖像語義描述模型,為了減少模型參數(shù),圖像的特征只在LSTM的第一個時刻輸入,但性能并沒有降低。
(3)Hard-Attention[8]。Kelvin等人提出了Soft Attention和Hard Attention機制。前者是對每個局部區(qū)域計算注意力權值,不會設置篩選條件。后者會在得到權重后篩選出不符合條件的權重,并將其置0,使得每個時刻只注意到更小的區(qū)域。文獻[12]中指出Hard-Attention比Soft-Attention生成的句子準確率更高,因此本文將Hard-Attention作為對比模型。
(4)VA-LSTM[9]。Qu等人建立了一個大小為6的顏色詞典,并且預測物體邊框,在注意力機制中加入圖像的顏色信息和物體的輪廓信息,從而生成更加準確的文本描述。
(5)Saliency+Context Att[11]。Marcella等人提出了一種結(jié)合顯著圖和上下文的注意力機制。首先使用SAM[20]獲得圖像的顯著圖,再將顯著圖與圖像全局特征結(jié)合,分別輸入顯著圖注意力模型和上下文注意力模型,最后根據(jù)LSTM得到圖像對應的文本。
(6)CNN-RNN-f3[12]。呂凡等人在傳統(tǒng)的CNN-RNN結(jié)構(gòu)上加入了生成文本的反饋信息,并且配合循環(huán)迭代結(jié)構(gòu),通過不停循環(huán)使得關注信息得到強化。
(7)LSTM-EM-DA[13]。Jiang等人在LSTM的輸入門和輸出門中分別增加存儲單元和門控信號,并且使用上一時刻的attention信息來獲得當前的關注區(qū)域。文獻[13]指出,這種使用額外記憶信息的注意力模型比soft -attention更能從不同的角度生成圖像的文本描述。
(8)ATT-FCN[14]。You等人提出了一種將圖像視覺屬性參與LSTM更新以及單詞解碼的方法,并且對比分析了3種產(chǎn)生視覺屬性的方式和3種屬性與模型的結(jié)合方式,文獻[14]指出,ATT-FCN模型效果最好,因此本文將ATT-FCN作為對比模型。
(9)SCN-LSTM[15]。Gan等人為每個視覺屬性都擴展了一個LSTM參數(shù),使得每個屬性都對應一個概率,根據(jù)加權視覺屬性計算每個時刻生成的單詞。
(10)LSTMp+ATTssd+CNNm[16]。Zhao等人提出了一種多模型融合的圖像語義理解模型,該模型分為圖像特征提取模塊、屬性預測模塊、語句特征提取模塊和文本生成模塊。文本生成模塊的輸入包含前一時刻生成的單詞、預測的屬性以及時變的語句特征。
(11)VD-SAN[17]。He等人提出了一種包含共享參數(shù)的圖像語義理解模型,DenseNet中的參數(shù)不僅用于圖像特征提取、視覺屬性預測,而且用于注意力模型和LSTM。
在Flickr8K和Flickr30K數(shù)據(jù)集中,VT-BLSTM與該領域其它模型的性能對比結(jié)果見表2。在Flickr8K數(shù)據(jù)集中,除了BLEU-1分數(shù)比LSTM-EM-DA低,其余的評價得分與對比模型相比均有較大的提升,尤其是在METEOR上,比其它基于注意力的模型性能平均提升了7.7%。在Flickr30K數(shù)據(jù)集下,BLEU-3和BLEU-4指數(shù)相比于其它模型有較大提升。
表2 實驗結(jié)果
表2中的Deep VS和Google NIC都只在文本生成模塊的開始輸入圖像信息,后面的任何一個時刻,均不輸入與圖像信息有關的數(shù)據(jù)。因此隨著時間的推移,圖像中的有效信息會逐漸減小,即使生成的句子通順,但有時候與圖像關系不大,從而導致模型效果不好,準確率不高。而基于時序信息的VT-BLSTM能夠定位到具體區(qū)域,結(jié)合圖像深層特征對圖像進行理解,與Deep VS和Google NIC相比,在Flickr8K數(shù)據(jù)集下,BLEU-1、BLEU-2和BLEU-3指數(shù)平均提升13.4、21.5、31.2,在Flickr30K數(shù)據(jù)集下,BLEU-1、BLEU-2和BLEU-3指數(shù)平均提升了10.8、23.3、35.3,證明注意力機制能夠大幅度提升語義理解模型的準確性。
在具有注意力機制的模型中,本文提出的VT-BLSTM模型除了BLEU-1得分略低于LSTM-EM-DA,在METEOR指數(shù)上略低于CNN-RNN-f3之外,在其它得分上均超過這五個模型。Hard-Attention模型通過前一時刻LSTM隱含層的全連接層來預測當前關注的區(qū)域,即是通過語義特征預測圖像特征,并且通過設置閾值得到更小的注意力區(qū)域,但文獻[8]的可視化結(jié)果顯示,注意的區(qū)域常與生成的單詞沒有直接關系。VA-LSTM在原本的LSTM單元中,融入圖像的顏色特征和輪廓,更新了原有的輸入門、遺忘門和輸出門的信息,但并沒有考慮當前生成單詞與前文的關系。Saliency+Context Attention模型通過兩路注意力機制預測文本,顯著圖注意力機制能夠聚焦圖像局部區(qū)別,上下文注意力機制使得生成的文本更加自然,但該模型不能用未來信息預測潛在的視覺單詞。CNN-RNN-f3模型通過引入循環(huán)結(jié)構(gòu)更新網(wǎng)絡參數(shù),能夠在一定程度上解決注意力分散的問題,但是對于復雜的圖像,該模型不能進行準確矯正。LSTM-EM-DA模型通過門控信號使用額外的記憶信息,能夠更加全面地關注圖像,但存在聚焦區(qū)域分散的問題。而本文提出的VT-BLSTM不僅使用圖像局部特征和之前生成的文本作為視覺語義信息,而且使用雙向LSTM,關注歷史信息與未來信息,改善了注意力機制中沒有考慮時序這一缺陷,使得生成的注意力區(qū)域更加準確,并且能夠預測圖像中的潛在視覺單詞。
在具有屬性特征的ATT-FCN、SCN-LSTM、LSTMp+ATTssd+CNNm和VT-BLSTM中,除了本文提出的VT-BLSTM用到了注意力機制,其它的均沒有使用注意力機制。并且除了評價指數(shù)BLEU3和BLEU4指數(shù)比SCN-LSTM低,其它指數(shù)均比這三個模型高,說明了模型在屬性特征的基礎上增加注意力機制能在一定程度上提高模型的性能。
由以上實驗數(shù)據(jù)以及分析可知,本文提出的VT-BLSTM模型在考慮關注已生成文本和聚焦區(qū)域的時序基礎上,能夠聯(lián)系歷史和未來的信息使得模型定位更加準確,并且生成更加豐富多樣的句子,有效地提升圖像語義理解的準確率。
本文分析了現(xiàn)有圖像語義理解模型存在的問題,提出了一種新的注意力模型VT-BLSTM,首先通過VGG19提取圖像的特征和視覺屬性三元組,再使用雙向LSTM獲得當前時刻的視覺語義上下文,該視覺語義上下文和視覺屬性三元組引導模型實現(xiàn)圖像的語義理解。VT-BLSTM在傳統(tǒng)注意力機制的基礎上,充分考慮了對生成文本的關注和聚焦的時序信息,使得每個時刻聚焦區(qū)域更加準確,從而生成更加符合人類描述的文本。