曾 輝,胡 蓉,淦修修,彭志穎,熊李艷
(華東交通大學信息工程學院,江西 南昌330013)
在信息時代,為了便于人們獲取感興趣的視覺數據,從一個大規模數據庫中快速地找到和查詢圖像內容相關或相似的圖像,并按相關的排序返回給用戶是很常見的需求。 但是隨著多媒體數據,特別是圖像視頻文字數據,呈爆炸式增長,單純使用圖像來檢索圖像的單模態檢索方式已經難以滿足當前用戶的需求[1],以互聯網上龐大數目的圖像視頻以及描述性文本等數據為基礎的多模態數據研究已經成為當前檢索系統領域的研究熱點。
目前相關的研究大多利用數據間的共存與互補特征來分析多模態之間的語義理解與關聯性表示。 其中典型相關分析(canonical correlation analysis,CCA)[2]是跨模態檢索研究中最常用的方法,通過尋找一個線性映射向量能夠將映射至相同子空間后的兩類模態數據相關系數最大化來實現跨模態檢索。Tenenbaum J B 等[3]為跨模態識別提出雙線性因子模型(bilinear model,BLM),能夠對因子交互進行充分表達,并基于奇異值分解算法來擬合數據。Akaho S[4]就運用了改進的非線性CCA 算法KCCA,即核典型相關分析算法,把核函數的思想引入CCA 中。 Gong Y[5]使用改進的KCCA 算法,但是增加了圖像和文本之外的第三類特征—語義關鍵詞。 語義相關匹配[6](semantic correlation matching,SCM)將文本語義抽象化并融合入典型相關分析學習過程中,提高了跨模態檢索的準確性。 Jacobs D W 等[7]提出廣義多視判別分析方法(generalized multiview analysis,GMA),將特征提取轉化為求解廣義特征值問題,解決在不同特征空間的聯合表示,獲得有效的潛在子空間表示,這是CCA 方法的有監督擴展。Kan M[8]在研究中基于神經網絡架構而改進典型相關分析CCA 算法,通過多分支的多層神經網絡對圖像和文本數據進行特征提取, 并將CCA 的優化目標設計成為雙分支網絡的優化函數。 Wang L[9]設計一個雙分支的全連接神經網絡(convolutional neural network,CNN)來對圖像和文本特征信息分別進行表示學習,進而進行總體的聯合嵌入空間表示,作者新穎地使用類間距離和類內距離作為優化目標。 深度學習算法對這類包含位置、色彩、時序性的結構數據擁有很好的特征學習能力,其中卷積神經網絡被廣泛應用于圖像表征的學習。 Diaz-chito K[10]使用CNN 和LSTM 網絡對圖片和文本進行編碼,再嵌入聯合空間表示,并通過解碼網絡來保證各自的信息的重構性。 Karpathy A[11]通過多目標識別算法RCNN對圖片樣本進行區域切割和文本識別,利用句法依賴樹對文本句子樣本進行詞語切割。 最后比對各片段相似度和整體相似度,通過保證類內差異小,類間差異大來進行模型學習。 然而對于描述圖像內容的文本數據來說,真正能夠代表圖像主要語義內容的只有一個或幾個詞,即不同的詞在語義表達中的重要程度存在差異性。 本文參考注意力機制在機器翻譯、圖文理解任務中的廣泛應用模式,通過對句子依存樹結構的片段化處理,添加關于依存關系元組注意力機制,使關鍵詞組片段在文本數據表示時具有更加重要的影響作用,并基于雙分支網絡結構模型訓練,實現跨模態檢索任務。
本文所提的模型框架主要包含3 部分,雙分支網絡、注意力機制嵌入和聯合空間表示。 如圖1 所示,雙分支網絡分別由圖像特征輸入部分和文本特征表示部分組成,每個分支都存在3 個全連接隱含層,其中使用relu 函數作為全連接層之間對各層輸出作非線性映射;注意力機制嵌入部分通過學習基于句子依存關系拆分的不同詞組的權重分布,使重要的詞組在特征表示中占更多的權重;而聯合嵌入表示空間將圖像和文本在相同的維度空間內進行表示,從而計算相似性,并通過hinge loss 目標函數來對整個模型進行訓練,使對應的圖片—句子組合具有更高的相似度。

圖1 跨模態檢索模型框架Fig.1 Cross-modal retrieval model framework
1.2.1 圖像表示
現實的圖像是通過無數像素點的集合來表示,而單純的像素點的灰度值無法有效表達圖像的高層語義特征,故需要進行圖像數據特征向量化。 對于圖像數據,本文采用遷移學習的思想,選擇當前圖像表征效果卓越的卷積神經網絡CNN 模型,使用基于CNN 網絡架構的VGG 預訓練模型[12],從原始圖像I 中提取圖像特征VI,VGG 模型是由牛津大學計算機視覺組合和Google DeepMind 公司研發的一種16~19 層深度的卷積神經網絡,并在2014 年的機器視覺領域頂級學術競賽(imagenet large scale visual recognition challenge,ILSVRC)中獲得分類項目第二名以及圖像定位比賽的第一名,目前為止被廣泛運用于深度學習中提取圖像特征。
如圖2 所示,VGG 模型能夠有效對圖像做特征表示, 而VGG 模型需要輸入圖像的維度是224×224,本文首先進行圖像增強操,用于增加數據量,將圖像先統一放縮成256×256 大小,然后分別裁剪左上角、左下角、右上角、右下角和中部5 個位置224×224 大小的圖像擴充數據,選擇VGG 模型最后一層池化層輸出作為圖像表示特征向量, 每張圖片向量維度為4 096 維。
圖像特征提取過程用公式(1)表示,其中I表示原始圖像,VI表示提取的圖像特征


圖2 VGG 預訓練模型提取特征Fig.2 VGG pre-training model extraction feature
1.2.2 文本表示與句子依存結構構建
對于文本數據的表示,分為兩個方面,一方面需要對句子文本自身作句子向量表示;另一方面需要將句子進行結構拆分,構造出多個子結構區域,用于注意力機制嵌入計算。 文本數據集合用UT表示。
1) 句子向量表示。 對于單個句子文本S(S∈UT),由于句中副詞等詞語出現的頻次較高,會影響句子的語義表達。本文首先對句子進行去停用詞處理。句子是由多個詞組成,要對句子進行表示首先需要進行詞表示,本文使用基于word2vec[13]模型改進的GLOVE 方法訓練的詞向量來對每個詞作詞向量表示,經GLOVE訓練好的詞向量表示維度分別有50 維、100 維、200 維和300 維等,能夠根據不同的需求選擇不同的向量維度。 本文考慮模型結構和計算的復雜性,選擇300 維的GLOVE 詞向量來表示每個詞vt,然后以整個訓練集文本為集合,計算句子中每個詞在整個訓練集中的TF-IDF 值WTF-IDFt(t∈S),并以每個詞的TF-IDF 值作為GLOVE 詞向量的權重進行加權求和,如公式(2)所示,最終得到300 維的向量即代表此句子表示向量VS。WTFt表示對應單個句子文本中的某一個詞t 在整個訓練集中的TF-IDF 值。

2) 基于依存語法拆分句子。 句子結構拆分的目的是將句子拆分成多個元組,每個元組由多個詞組成,并且分別代表了某種詞組結構關系,這樣就能夠將句子片段化。因此首先需要對句子作句法結構分析,并確定句子中詞匯之間的依賴關系,本文選擇當前廣泛使用的句法解析工具斯坦福分析器(Stanford Parser)來處理英文文本,獲得有效的句子依存結構關系。

圖3 短語結構樹Fig.3 Phrase tree
句法結構普遍分成兩種表現形式,經過分詞和詞性分析過程后,生成如圖3 的樹結構,稱為短語句法結構樹。 短語結構樹能夠表達句子的句法結構,源自傳統的句子圖解法,把句子分割成各個組成部分,較大的組成成分能夠由較小的組成成分合并得到,由此逐級傳遞分解。 只有葉子結點代表句子中各個詞本身,而其他的中間結點是短語成分的標記,短語結構樹能夠表示每個詞在句子中的所屬成分和位置,但是無法直接處理詞與詞之間的依賴關系。 圖4 是簡化的圖結構。 依存關系樹用于表達句子詞與詞之間的依存關系,依存結構中每個結點都是一個詞,通過詞之間的連接弧表示詞之間的“主謂賓”和“定狀補”語法修飾關系,同時由于總體的節點數大大減少,使結構更加簡潔清晰。 本文通過Stanford Parser 生成句子依存關系樹,獲得如圖4 中右框中所示的依存關系元組,以TF-IDF 作為詞權重加權求和獲得句子依存關系元組表示矩陣VQ。
1.2.3 句子依存關系的注意力機制嵌入
不同的詞匯依存關系組合對于句子語義表達的重要程度是存在差異的,因此本文在模型中加入注意力機制來學習每個詞匯組合表示的權重分布[14],以此反映出句子各片段區域的偏重性,并將其加入句子表征向量中。 如公式(3)所示,首先通過一個單層神經網絡對句子表示向量VS和句子依存關系元組表示矩陣VQ進行非線性變換來激活組合,然后通過公式(4)的softmax 函數獲得關于各依存關系元組的關注度概率分布。

式中:VQ∈Rd×m,d 代表每個依存關系元組向量的維度,m 是句子元組的數目,即句子經過依存語法拆分后保留的詞語組合的個數;VS∈Rd是d 維句子表示向量。 設定映射參數矩陣WQ,A,WS,A∈Rk×d以及WP∈Rl×k,通過softmax 函數計算后得到PI∈Rm的m 維向量,表示此句子每個依存關系組合片段的注意力概率值。 由于WQ,AVQ∈Rk×d是k×m 的矩陣而WS,AVS∈Rk是k 維向量,故將矩陣的每一列分別與該向量進行求和,得到hA∈Rk×m。 WQ,A,WS,A,WP,bA,bP是通過模型學習得到的參數。 PQ表示每個依存關系詞組對于句子語義內容的重要性度量。


圖像、文本數據分別用X,Y 表示,對于給定的訓練集圖像樣本xi,設定文本樣本yi和yi-,它們分別表示與圖像xi正確匹配的文本和不正確對應的文本,E(xi),E(yi),E(yi-)分別代表各自的嵌入空間的最終輸出向量。 跨模態檢索的目標是期望E(xi)與正確文本E(yi)之間的相似度比E(xi)和E(yi-)之間的相似度更高,如公式(6)所示

其中m 是閾值參數,表示兩者相似度期望的差值,設m=0.3。 Sim(·)表示兩者相似性計算函數,本文采用余弦函數作為相似度計算方式,通過計算向量之間的余弦夾角體現相似程度。 如公式(7)所示

同樣,對于給定的文本數據yi來檢索相關圖像,如公式(8)所示

對于圖像檢索文本過程,三元組{xi,yi,yi-}損失函數L(xi,yi,yi-)定義如下

對于文本檢索圖像過程,損失函數計算方式定義

因此,使用hinge loss 函數方法定義圖像分支xi與文本分支yi聯合損失,如公式(11)所示

故定義模型的總損失LX,Y如下

其中N 是測試集樣本數。
本文選擇公共數據集Flickr8K 和Flickr30K 用來對所提算法進行實驗評估,Flickr8K 和Flickr30K 是圖片分享網站Flickr 上篩選出的專門用于圖像研究的公共數據集,分別包含8 000 和30 000 幅圖像,每幅圖像使用標5 個獨立的描述句子標注,數據集樣本的內容如圖5 所示。

圖5 數據集表示Fig.5 Dataset representation
本文采用排序問題評價指標P@K 對算法性能進行評估,計算方式如下

P@K 用于判斷檢索排在前k 位的相關性,N 是測試集樣本數, 若在檢索結果中排序前k 個中有正確對應的樣本,則δ(k)=1 表示檢索正確。
在模型訓練過程時通過交叉驗證方式選取最優實驗參數設置,選擇隨機梯度下降方法(stochastic gradient descent,SGD)優化目標函數,學習率設置為0.01,隱含網絡層激活函數選擇relu 函數。 嵌入表示空間維度為300, 即將每類模態數據最終使用300 維的向量進行特征表示, 從而計算相似度。 每層隱含層之后的dropout 方法的節點丟棄率設為0.5,以分批度訓練的方式訓練樣本,每個批度數據數目設為100,每個單分支網絡的3 層全連接網絡層的神經元節點數設置為1 000*1 000*1 000。
本文分別使用4 種算法與所提算法VSDA 進行實驗對比,其中“CCA”是典型相關分析算法,是一種經典的無監督關聯學習方法,通過最大化不同模態間在投影子空間的相關性實現匹配。 “SCM”是語義關聯匹配方法,基于CCA 方法學習子空間映射,再基于多標簽的邏輯回歸方法學習不同模態間的語義匹配。 “KCCA”是一種將核函數思想引入CCA 進行高維映射的方法。 “DCCA”是基于典型相關分析理論的深度網絡改進模型。 結果如表1 所示。

表1 各算法實驗結果Tab.1 Experimental results of various algorithms
表1 是各類算法在Flicker8K 和Flicker30K 數據集下的P@K 指標的實驗結果,分別對給定文本的情況下檢索與文本內容匹配的圖像,和給定圖像的情況下查找與圖像內容匹配的相關文本。 整體來說,本文所提的VSDA 算法相較于其他對比方法無論是P@1、P@5 還是P@10 的檢索準確率都有一定程度的提高, 尤其是相比于CCA、SCM、KCCA 算法,在P@5 和P@10 指標上效果提升顯著,可能是神經網絡模型在異構數據之間具有復雜關系情況下對比于傳統理論模型擁有更強大的學習能力。 其次,檢索準確率普遍非常低,但是對于檢索任務來說,其目的類似于推薦系統形式是為用戶提供合理的檢索結果集合,對于Top1 即正確對應的樣本一定要排序在首位的需求并不是必須, 故P@1 的結果偏低是可以接受的。 隨著數據量的增加,由Flicker8K 的8 000 張圖片到Flicker30K 的30 000 張圖片, 本文的VSDA 算法和DCCA 方法的Text 檢索Image、Image 檢索Text 的檢索準確率都有可觀的提高,然而其他方法的檢索準確率普遍都有相對應的降低,說明VSDA 算法在大數據集情形下同樣可以獲得好的性能。 對比VSDA 算法和DCCA 方法,Flicker8K 數據集和Flicker30K 數據集的各項指標都高于DCCA 方法,而DCCA 方法同樣是使用雙分支網絡結構,說明本文所提的VSDA 算法針對句子依存關系注意力機制的嵌入改進是具有可行性的。
本文針對跨模態多媒體檢索領域中圖像與文本之間的互檢任務,考量句子文本的不同片段對于整體語義表達具有不同的偏重性,通過基于依存關系結構的句子拆解,嵌入注意力機制從而學習各片段元組的權重分布,并設計雙分支神經網絡模型實現跨模態檢索。 實驗結果表明該方法的檢索準確率相比于其他算法有著顯著的提高。 未來的研究工作將從以下兩個方面去考慮:①模型學習主要采用的是全連接網絡,可以考慮替換成其他更優越的模型架構,可能獲得更好的效果;②可以考慮圖像和文本之間是否存在其他聯系。