及昕浩,彭玉青
(河北工業大學 人工智能與數據科學學院,天津 300401)
圖像描述[1-2]是一種使用自然語言描述圖像內容的任務,是一項涉及計算機視覺領域和自然語言處理領域的跨領域研究內容。目前大多數方法使用卷積神經網絡(Convolutional Neural Network,CNN)編碼圖像以提取圖像特征,然后使用Transformer網絡結構來解析圖像特征并生成描述語句。Pan等人[3]提出了X-Linear注意力塊來捕獲單或多模態之間的二階相互作用,并將其集成到Transformer編碼器和解碼器中。Cornia等人[4]在Transformer編碼器和解碼器中設計了類似網格的連接,以利用編碼器的低級和高級特征。多數研究者針對Transformer網絡結構進行改進,沒有關注CNN提取到的圖像特征其對應的感受野是均勻的網格,難以明顯地關注圖像中對象內容信息的問題。此外Transformer模型中的注意力機制僅僅是隱式地計算單個區域和其他區域的相似性,無法捕捉長距離的關系。
為了解決以上問題,本文提出了融合全局和語義特征的圖像描述模型。該模型構建語義信息提取器,用語義信息來表示圖像中關鍵的對象內容。同時提出多元特征融合模塊,結合全局和語義特征來更加準確地表示圖像內容。此外,設計一種新的深度注意力機制來加強注意力機制的計算,增強圖像特征與文本特征的交互,提高描述語句的準確性。
基于深度學習的圖像描述方法是研究的重要方向,這類方法主要經歷了兩個階段。第一階段采用編碼器-解碼器框架,使用CNN作為編碼器,從圖像中提取固定大小的網格特征來表示視覺信息,然后使用RNN或者LSTM作為解碼器解析圖像特征并生成描述語句。Anderson等[5]在此框架基礎上利用目標檢測技術從圖像中提取實體目標來表示圖像內容。第二階段,由于Transformer在自然語言處理領域取得顯著突破,研究者們將Transformer引入圖像領域,許多基于Transformer改進的模型在圖像描述效果上也有顯著提升。Cornia[4]等人提出在圖像編碼階段加入記憶向量,編碼層和解碼層以網狀連接來利用低級和高級特征,顯著提升了圖像描述的效果。Guo等人[6]通過使用幾何信息來增強區域級特征,然后將這些特征輸入到Transformer模型中,取得了不錯的結果。Li等人[7]利用圖像場景圖實現圖像描述。從這些研究的成果來看,如何提取幾何特征,如何加入更多形式的圖像特征來更加準確地表示圖像內容,使得模型更好地理解圖像,進而生成更加準確而自然的描述語句,是一個值得深入研究的方向。
受文獻[7]的工作啟發,本文模型在場景圖的基礎上進一步提取語義信息并結合全圖特征進行圖像描述。具體工作如下:
(1)提出語義提取模塊,對場景信息進行編碼;
(2)提出多元特征融合模塊,將全局特征和語義特征進行融合;
(3)提出深度自注意力機制,使圖像特征和文本特征更好地交互。
本文提出的模型分為兩個部分:圖像特征提取部分和預測描述語句生成部分。圖1為該模型的結構圖。在圖像特征提取部分,圖片經過ResNet101[8]網絡獲得全局特征,經過Faster R-CNN[9]檢測得到圖像中的對象、屬性以及對象之間的關系信息,并經過語義信息提取模塊進行語義提取,獲得更高級的語義信息,全局特征和圖像的語義信息經過多特征融合模塊,輸入到預測描述語句生成部分。在描述語句生成部分,圖像特征經過編碼器處理,編碼后的圖像特征和文本特征在基于深度注意力的解碼器中進行交互,生成預測的描述語句。

圖1 融合全局和語義特征的圖像描述模型結構圖
為了解決傳統CNN編碼器在識別圖像特征方面的局限性,本文加入對象信息來使模型關注圖像中更為重要的區域。對象信息包括對象區域在圖像中的位置、對象之間的關系等信息。經過研究分析,本文認為Faster R-CNN得到的對象信息只是低階的對象信息特征,相較于經過ResNet 101網絡提取的圖像特征比較淺顯,與圖像特征并不在一個維度空間中,需要對對象和位置信息進行處理。因此本文提出語義信息提取模塊,將較為淺顯的對象信息——對象及對象之間的幾何關系重新進行編碼,學習各對象節點的上下文感知嵌入向量,提取出更豐富的高級語義信息,使對象信息映射到與全圖特征一樣的空間維度,如圖2所示。

圖2 語義特征提取模塊結構圖
給定一張圖片,本文方法使用Faster R-CNN提取到圖像的對象特征O={O1,O2,…,Oi}、對象屬性A={a1,a2,…,am}和對象位置信息Oi=(xi,yi,wi,hi),對象之間的幾何關系特征由式(1)計算獲得:
(1)


(2)
(3)
(4)
(5)
式中,φO、φA、φR是嵌入層,具體為Linear-FC-ReLU-Dropout層,[·,·]表示拼接操作,f(·)表示FC-ReLU-Dropout操作。
對于整張圖像來說,使用卷積神經網絡可以提取到圖像的全局信息和各種對象,獲得較為準確的背景信息,而使用Faster R-CNN和語義信息提取模塊對圖像進行語義特征提取,可以得到更具體、更準確的對象內容和空間信息。基于此,本文在使用卷積神經網絡對圖像編碼的基礎上加入語義特征,提出一種結合全局信息和包含關鍵對象內容的語義特征的多特征融合模塊,該模塊負責融合圖像的全局特征和語義特征,如圖3所示。

圖3 多元特征融合模塊結構圖
本文以與文獻[8]中相同的方式提取圖像的全局特征,用F表示。提取到的語義特征用G表示。為了能夠獲取準確的背景信息和局部的對象語義信息,全局特征和語義特征經過不同的卷積操作映射到統一空間維度,相加操作后得到特征H=(h1,h2,…,hm),以供圖像特征選擇全局信息和語義信息。為了更加充分地利用全局特征和語義特征,本文使用卷積操作對特征H進行處理得到特征S,使得全局特征和語義特征進行交互,可以有效地捕獲全局上下文關系。為了實現對全局信息和語義信息的選取,特征S經過不同的卷積操作得到向量A和向量B,之后A與B進行Softmax操作分別得到全局特征的權重a和語義特征的權重b,最后經過卷積操作處理之后的全局特征和語義特征分別乘以對應的權重再相加得到多特征融合模塊的輸出,即表示圖像內容的視覺特征V,具體過程如下:
H=fF(F)+fG(G)
(6)
S=Conv(H)
(7)
(8)
(9)
V=a·fF(F)+b·fG(G)
(10)
其中,fF和fG分別是對全局特征和語義特征進行卷積操作,fA和fB是對特征S進行不同的卷積操作。
為了更好地擬合特征,在得到視覺特征V之后,還要經過自注意力層、前反饋層和歸一化處理,得到最終的圖像特征X。
傳統的注意力機制在圖像文本交互時,需要對整個圖像特征圖進行注意力權重的計算,因此無法捕捉長距離的關系,基于此,本文提出基于深度注意力的解碼器,如圖4所示。

圖4 基于深度注意力的解碼器
為了緩解無法捕捉長距離關系的問題,首先對圖像特征X先進行一次線性操作得到K,長距離的特征之間可以相互獲得關系信息。文本特征T經過掩碼自注意力和線性操作得到Q。之后圖像特征K與文本特征Q進行點積操作,此時圖像特征與文本特征進行了對齊,得到圖像特征的注意力值,與文本相對應的圖像區域注意力值越高,與文本不相關的圖像特征注意力值就越低,最后注意力值與圖像特征V進行相乘,此時注意力值高對應的圖像區域就是圖像中最主要的信息,可以進而生成更加準確的描述語句。注意力的計算公式如下:
(11)
式中,Q是文本特征,K和X都是圖像特征,Q,K和X在同一維度,d是其維度。
圖像特征與文本特征交互之后經過Softmax操作,全連接層和前反饋層得到最終的描述語句。
本文設計的模型使用Microsoft COCO數據集進行訓練,該數據集有123 287張圖片,每張圖片有對應的5句英文描述,在實驗過程中,使用Karpathy方法對數據集進行劃分。在文本處理階段,將訓練集中對應的描述語句單詞均轉化為小寫形式,在建立單詞庫時,用特殊字符“UNK”來標記替換詞庫中出現次數少于等于5的單詞。在驗證和測試階段生成描述語句時,設置預測描述語句最多生成16個單詞。
本文采用在圖像描述工作中被廣泛應用的BLEU、ROUGE、METEOR和CIDEr評估指標來評估生成語句的質量。
3.2.1 消融實驗
為驗證本文提出的語義提取模塊、多特征融合模塊以及使用深度注意力機制對模型的影響程度,設置4組消融實驗進行分析,表1展示了消融實驗結果。其中Base表示基線模型,是本文所實現的M2-Transformer模型。DA表示使用基于深度注意力機制的解碼器來對齊視覺和文本特征并生成描述語句的模型。Sem表示在M2-Transformer模型的基礎上加入使用語義提取模塊所提取到的語義特征,全局特征和語義特征相加來表示圖像特征的圖像描述模型。Sem-Fus是加入語義特征之后,使用融合模塊來將全局特征和語義特征進行融合操作來表示圖像特征然后輸入到M2-Transformer模型中。Final為本文最終的模型。

表1 消融實驗結果
由表1可見,本文所提的模型相比于其他模型達到最佳,說明所提方法是有效的。具體來說,DA相較于基線模型在METEOR、ROUGE和CIDEr分數上有了顯著提升,說明基于深度注意力的解碼器能更好地對齊圖像和文本特征,生成更加準確的描述語句。加入語義特征的Sem模型在BLEU分數上明顯高于基線模型,說明生成的描述語句與標簽的N元數組個數明顯增多,生成單詞的準確率提高。在加入語義特征的基礎上,使用多特征融合模塊的Sem-Fus模型比只加入語義特征的Sem模型在分數上有了明顯的提升,可以說明多特征融合模塊可以很好地融合全局特征與語義特征,使得模型可以更加準確地建模背景信息和圖像中關鍵的對象內容信息。
3.2.2 驗證語義提取模塊有效性
為了驗證語義提取模塊的有效性,設置了兩組對比實驗,如表2所示,第一組實驗使用GCN網絡對對象節點進行處理,可以感知上下文節點,從中提取語義信息;第二組就是本文的語義特征提取模塊,在感知上下文節點的同時,進一步提取語義特征。

表2 語義提取模塊的有效性驗證
實驗結果表明,語義特征提取模塊能夠更好地提取圖像中的語義信息,更加準確地表示圖像內容。
3.2.3 驗證多元特征融合模塊有效性
為了驗證多元特征融合模塊的有效性,本文在使用語義特征提取模塊提取語義特征,并與全局特征進行融合的圖像描述模型基礎上,又做了一組實驗,對語義特征和全局特征各添加了一個可學習的參數α1和α2(α1和α2經過Softmax化),實驗結果表明,使用本文提出的多特征融合模塊可以很好地將全局特征和語義特征進行融合,使得模型可以更加準確地建模背景信息和圖像中關鍵的對象內容信息。實驗結果如表3所示。

表3 多特征融合模塊的有效性驗證
3.2.4 對比實驗
表4為本文方法與其他圖像描述方法的比較,其中Up-Down[3]首先從預訓練的對象檢測器中提取區域特征,然后通過注意機制選擇這些特征來生成描述語句;GCN-LSTM[10]和SGAE[11](Scene Graph Auto-Encoder)利用Graph CNN來捕獲圖像中的語義信息和關系信息,以提高描述語句的質量;ORT[12](Object Relation Transformer)對區域特征之間的空間關系進行建模;VSUA[5]使用圖像語義和幾何圖,利用單詞和不同類別的圖節點對齊實現圖像描述;M2[4](Meshed-Memory transformer)構造用于解碼的網狀連接網絡結構;AST[13]使用自適應門控機制來調整視覺和語義信息之間的注意力。由表4可見,本文模型相比其他模型在各項指標上均達最優。

表4 與現有的方法比較
本文分析了現有圖像描述研究中的特征提取方法,根據全局特征和局部特征的優缺點,提出了多特征融合模塊,該方法能有效地融合全局特征和語義特征。實驗結果表明,經過語義提取模塊的語義信息能夠提高模型對圖像內容的關注,同時深度注意力機制也能很好地對齊視覺與文本,生成更準確的描述語句。