?

基于堆疊交叉注意力CLIP的多模態情感分析

2024-01-08 08:07汪召凱葉勇汪子文
黑龍江工業學院學報(綜合版) 2023年11期
關鍵詞:注意力模態特征

汪召凱,葉勇,汪子文

(安徽農業大學 信息與人工智能學院,安徽 合肥 230036)

在過去幾年里,多模態的相關研究非?;馃?例如利用多模態方法進行社區劃分的相關研究[1],以及多模態情感分析等。情感在我們的日常生活中扮演著重要的角色。它們有助于在以人為中心的環境中進行決策、學習、交流和態勢感知。在過去的二十年里,研究人員一直探索如何將認知能力賦予機器,使它們能夠像人類一樣識別、分析和表達情感的能力,這一認知能力也即是情感分析。情感分析也稱為意見挖掘或者情感計算,這一概念的來源最早可追溯到麻省理工實驗室Picard教授提出的“情感計算”[2]。情感分析旨在通過用戶發表的各類信息分析出用戶想要表達的情感極性[3]。但是鑒于情感表達方式的隱蔽性與復雜性,對不同模態的語言序列進行情感建模仍然存在著亟待解決的問題。

早在2011年,陽鋒等[4]設計了一個面向微博數據流的,集實時抓取多種模態數據和分析觀點傾向性于一體的觀點挖掘原型系統MICA(Microblog Item Crawling and Analyzing)。通過分別對圖文情感分類器預測的情感得分分配不同的權重并相加來判斷情感傾向[5],但該工作采用的手工圖文特征,由于其提取特征的方式較為簡單,致使多模態特征中包含的圖文情感信息不夠豐富,并不能有效捕捉情感分布,無法有效提升模型的情感傾向分類能力.后來,采用深度CNN分別提取了更加豐富的圖文特征[6],并將它們連接成聯合特征送入到分類器學習情感分布。MultiSentiNet[7]使用LSTM和CNN對文本和圖像進行編碼以獲得隱藏表示,然后連接文本和圖像的隱藏表示以融合多模態特征。CoMN[8]使用共記憶網絡對視覺內容和文本詞之間的交互進行迭代建模,以進行多模態情感分析。Yu等[9]針對基于實體的多模態情感分析任務,提出了ESAFN模型來融合文本表示和圖片特征。MVAN[10]通過注意力記憶網絡模塊利用文本和圖像特征來進行交互式學習,并使用多層感知機和堆疊池化模塊構建多模態特征融合模塊。Yang等[11]使用基于數據集全局特征構建的具有情感感知的多通道圖神經網絡進行多模態情感分析。ITIN[12]引入了一個跨模態對齊模塊來捕獲區域-詞的對應關系,在此基礎上,通過自適應跨模態門控模塊融合了多模態特征,另外整合了個體模態上下文特征表示,以實現更可靠的預測。

這些研究大多采用不同的模型來分別處理以及提取圖像和文本的特征,再加上圖像和文本在模態上天然具有較大的差距,一般融合模型很難捕獲到跨模態之間的互補信息。為了充分利用多模態信息,實現更有效的模態交互?;诖?我們提出了基于堆疊交叉注意力CLIP(SCA-CLIP)框架,由于CLIP提取的特征本身是對齊的,且特征之間有很強的關聯性,后續利用設計的堆疊交叉注意力機制和多頭注意力機制來對特征進行交互融合以及信息的提取。在MVSA-Single、MVSA-Multiple數據集上進行了驗證,與這兩個數據集中的最新的多個基線模型相比,SCA-CLIP實現了更好的性能,通過一組消融實驗的研究,展示了SCA-CLIP在多模態融合方面的優勢。

1 方法

在本節中,詳細闡述了用于多模態情感分析的堆疊交叉注意力機制的CLIP多模態情感分析模型(SCA-CLIP)的細節,模型的整體架構如圖1所示,首先利用CLIP提取圖像文本特征,由于提取到的特征本身就是對齊的以及強相關的,之后利用設計堆疊交叉注意力機制對特征信息進行充分模態交互與融合信息,最后利用BERT的中維護的可學習的常量來學習特征信息進行最后的情感分類。

圖1 基于堆疊交叉注意力機制的CLIP多模態情感分析模型(SCA-CLIP)的總體框架

1.1 CLIP模塊

對比預訓練模型(CLIP)[13]的架構為經典的雙塔結構,由圖片編碼器和文本編碼器組成。對于每個圖像-文本對,圖像和文本編碼器將圖文對映射到同一特征空間。對于給定一批N個圖像-文本對,CLIP的訓練目標是最大化配對圖像和文本特征編碼的余弦相似度,同時最小化未配對圖像和文本特征編碼的余弦相似度。

CLIP在推理的過程中,對于具有K類的分類任務,它首先利用k類標簽值來構造k模板提示,例如“a picture of {class value}”,這些k模板提示將會通過文本編碼器進行編碼映射到k文本嵌入中,對于給定的任何圖像將會被映射到圖像嵌入。最后CLIP計算圖像嵌入和那些k文本嵌入之間的余弦相似度,將具有最大相似性的類值視為該類的預測。

CLIP模型訓練使用的是WIT數據集,該數據集包含從互聯網中收集的4億個圖文對。根據文獻[13]所展示的結果,其在多個數據集中取得了顯著的成果。

1.2 BERT模塊

BERT是基于Transformer的雙向語言編碼表示模型,不同于具有循環網絡的RNN,其中的Transformer完全基于注意力的序列轉換模型,它取代了循環或者卷積網絡而使用多頭自注意力的編碼解碼結構來對文件進行表示,比循環或卷積神經網絡具有更快的訓練速度。近年來注意力機制成為多種任務序列建模的重要組成部分,但它沒有形成輸入和輸出序列中的遠距離依賴關系,文獻[14]所提出的Transformer模型架構如圖2所示,其輸入與輸出之間的全局依賴關系完全基于注意力機制來構建。

圖2 Transformer編碼器

編碼器中輸入序列經過向量、位置編碼后進入自注意力層,編碼器采用多頭注意力使模型具有注意多個位置的能力,從而在自注意力層實現多個表征子空間以表征序列多方面的語義信息。解碼器比編碼器增加了掩蔽多頭注意力,確保某位置預測只依賴于之前的已知輸出,最后結果通過softmax函數輸出概率。

1.3 交叉注意模塊

圖3 交叉注意力模塊

圖3為單層交叉注意力模塊,其中的Feature表示輸入或輸出特征的一個表示,然后利用交叉注意力模塊來對模態信息進行充分交互以及融合。具體實現過程如下所述。對于輸入的圖像和文本,本文應用預訓練的CLIP模型將圖像文本嵌入到512維的嵌入向量T,V。CLIP內部包含兩個模型分別是Text Encoder和Image Encoder,其中Text Encoder用來提取文本的特征,采用的是NLP中常用的text transformer模型,其表達式如式(1)所示。

T=CLIPText(text)

(1)

式(1)中,text表示傳入的文本信息,CLIPText表示使用CLIP模型的文本編碼器對信息進行編碼,T表示編碼后得到的信息特征。

Image Encoder用來提取圖像的特征,采用的是常用的CNN模型或者vision transformer,本文采用的是vision transformer,其表達式如式(2)所示。

V=CLIPImage(image)

(2)

式(2)中,image表示傳入的文本信息,CLIPImage表示使用CLIP模型的圖片編碼器對信息進行編碼,V表示編碼后得到的信息特征。

CLIP得到的特征向量維度均為[batchsize,512],然后擴展維度為[batchsize,1,512]。對于文本相對圖片的注意力權重矩陣。用V的轉置點乘T得到相似矩陣,之后利用std函數進行標準化處理,最后通過一層Sigmoid激活函數,得到相對應的注意力權重,具體如式(3)所示。

VT=sigmoid(std(VT⊙T))

(3)

式(3)中,VT表示圖片特征的轉置,T表示文本特征,VT表示文本相對圖片的注意力權重矩陣。

得到文本相對圖片的注意力權重后,利用sum函數將權重與文本特征相乘再逐行相加,得到最后的文本相對圖片的注意力向量。Tatt表示最終的注意力向量,具體如式(4)所示。

Tatt=sum(VT*T)

(4)

對于圖片相對于文本的注意力權重的獲取,與文本相對圖片的流程基本一致具體如式(5)所示。

TV=sigmoid(std(TT⊙V))

(5)

式(5)中,TT表示文本特征的轉置,V表示圖片特征,TV表示圖片相對文本的注意力權重。

得到圖片相對文本的注意力權重后獲取注意力向量,過程與得到文本相對圖片的注意力向量一致。Vatt表示最終的注意力向量,如式(6)所示。

Vatt=sum(TV*V)

(6)

最后,在進行第一次交叉注意得到Tatt和Vatt后再與T和V向量拼接做交叉注意,之后將結果與自我注意即BERT中的可學習向量得到的向量信息繼續拼接后再次做交叉注意,之后將最終得到的融合向量拼接再輸入到BERT中通過BERT中維護的可學習變量提取到情感分析所需的信息,最后經過FC層得到情感預測結果。

2 實驗結果與分析

2.1 數據集

本文在兩個公共多模態情感分析數據集上評估我們的模型,即MVSA-Single和MVSA-Multiple[15]。MVSA-Single由從Twitter收集的5129個圖像-文本對組成。每對都有注釋標記,注釋分別為圖像和文本分配一種情緒(正面、中性和負面)。MVSA-Multiple包含19600個圖像-文本對。每對由三個注釋標記,每個注釋對圖像和文本的情感分配是獨立的,這些注釋均為人工標注。

為了公平比較,我們按照文獻[7]中的方法對兩個數據集進行預處理,其中不一致的圖像標簽和文本標簽對被刪除,預處理后的結果展示如圖4所示。具體來說,如果一個標簽是正面(或負面)而另一個是中性,本文將這對的情感極性視為正面(或負面)。因此,得到了新的MSVA-single和MSVA-multiple數據集用于實驗,如表1所示。首列表示使用的數據集種類,后面的各列表示在相對應的數據集中該類標簽的樣本數目,最后一列表示該數據集的樣本總數。

圖4 對數據集預處理后的一些樣本展示

表1 數據集處理之后的統計

2.2 實現細節

在本文的實驗中,數據集按照8:1:1的分割比例隨機分為訓練集、驗證集和測試集。提出的SCA-CLIP由Adam優化。Learning rate設置為5e-5,weight_decay設置為1e-4??紤]到兩個數據集中的樣本數量不同,本文將MVSA-Single的batch size設置為32,將MVSA-Multiple的batch size設置為128。本文的框架由PyTorch[16]實現。本文使用準確率和F1-score作為評價指標,其中準確率的公式如式(7)所示。

(7)

F1-score的公式如式(8)-式(10)所示。

(8)

(9)

(10)

式(8)-式(10)中,Precision表示精準率即代表對正樣本結果中的預測準確程度。Recall表示召回率即表示所有被預測為正的樣本中實際為正的樣本的概率。TP是被判定為正樣本,事實上也是正樣本的樣本數,FP是被判定為負樣本,事實上也是負樣本的樣本數。TN是被判定為正樣本,但事實上是負樣本的樣本數。FN是被判定為負樣本,但事實上是正樣本的樣本數。

2.3 基線模型

對于MVSA數據集,本文列舉了如下的六個基線方法。

(1)MultiSentiNet[7]:利用CNN獲取圖像的對象和場景深度語義特征,利用視覺特征引導注意力LSTM提取重要詞特征;所有這些特征都被聚合起來進行情感分析。

(2)CoMN[8]:考慮圖像和文本之間的關系,提出了一種具有注意機制的迭代共記憶模型;該網絡多次探索視覺和文本信息的交互作用,分析用戶的情緒。

(3)MVAN[10]:提出了一種基于多視圖注意的交互模型,該模型構建了迭代的場景-文本共記憶網絡和迭代的對象-文本共記憶網絡,以獲取用于情感分析的語義圖像-文本特征。

(4)MGNNS[11]:提出了一種多通道情感感知圖神經網絡(MGNNS)用于圖像文本情感檢測。他們首先編碼不同的模式來捕獲隱藏的表示。然后,他們引入多通道圖神經網絡來學習基于數據集全局特征的多模態表示。最后,利用多頭注意機制實現多模態深度融合,預測圖文對的情感。

(5)CLMLF[17]:介紹了一種基于多層transformer的對比學習融合方法。提出了基于標簽的對比學習和基于數據的對比學習兩種對比學習任務,以幫助模型學習情感分析的共同特征。

(6)ITIN[12]:開發了一種圖像-文本交互網絡,以對齊圖像區域和單詞之間的信息,并使用跨模態門控模塊保留有效的區域-單詞對,以實現有效的融合特征。將單模態特征與跨模態融合特征相結合,實現情感分類。

所提出的模型與基線之間的實驗結果比較如表2所示?;€方法的結果是已發表論文中展示的最佳結果。

表2 在MVSA數據集上各種方法的比較

在MVSA-Single數據集上,本文的模型在準確率和F1分數方面分別優于現有的最佳模型2.37%和1.61%。對于MVSA-Multiple數據集,本文的模型在準確率上提升了1.3%,在F1分數上取得了具有競爭力的性能??傮w而言,這些結果證明了所提出的SCA-CLIP在多模態情感分析中的優勢。性能的提升得益于SCA-CLIP的優越性。首先,通過CLIP來提取對齊的圖像文本特征,同時利用BERT自注意提取特征,之后再利用堆疊交叉注意來融合特征,最后通過BERT學習融合特征以進行情感分類。

為了進一步分析該模型在不同類別中的判別力,圖5和圖6顯示了不同數據集下SCA-CLIP模型的混淆矩陣。由圖5和圖6可知,SCA-CLIP模型對Positive和Negative類別的判別力較強,而對Neutral類別的判別力較弱,這意味著它對模棱兩可案例的判別力較弱,而對有明顯情感傾向案例的判別力較強。由于MVSA-multiple中類別的不平衡性較高,導致對負面類別的判別結果較低。

圖5 MVSA-Single數據集的混淆矩陣

圖6 MVSA-Multiple數據集的混淆矩陣

2.4 消融實驗

為了進一步驗證每個提出模塊的有效性,對兩個MVSA數據集進行了幾次消融實驗,在本文的模型中,最后學習融合特征的BERT為BERT2。在SCA-CLIP模型上只留下CLIP、只留下BERT2、去除BERT2、去除交叉注意、去除所有BERT,分別表示為“SCA-CLIP onlyCLIP”“SCA-CLIP onlyBERT2”“SCA-CLIP w/o BERT2”“SCA-CLIP w/o CrossAtt”“SCA-CLIP w/o AllBERT”,這些研究結果如表3所示。

表3 在MVSA數據集上的消融實驗結果

從表3這些結果中,可以觀察到如下內容。

由各個模塊組成使得提出的SCA-CLIP在兩個數據集上實現了最佳性能。移除任何一個模塊都會導致預測的結果不理想。

SCA-CLIP onlyCLIP比SCA-CLIP結果差,證明了堆疊交叉注意和多頭注意在特征提取和特征融合方面的有效性。

SCA-CLIP onlyBERT2比SCA-CLIP w/o BERT2的結果好,證明了單流方法在學習特征方面的有效性,能夠充分學習到更多有用的信息。

SCA-CLIP w/o AllBERT表現得比SCA-CLIP w/o CrossAtt好,證明了交叉注意在特征融合以及特征學習的有效性。從以上的分析中,可以得出結論,每個提出的模塊都是不可或缺的,它們共同為最終的性能做出了必要的貢獻。

此外,進一步分析可以得到,大多數模型采用不同的模型來提取文字和圖像特征,提取的特征不具有相關性,而且圖像和文字的模態差距天然很大,因此后續的特征信息融合很困難。而CLIP的預訓練模型是基于對比訓練的,CLIP提取的特征是高度相關的,包含更多的有效信息。從SCA-CLIP onlyBERT2的結果可以驗證,直接拼接CLIP提取的特征,利用BERT的自我注意機制提取分類信息,可以獲得較高的準確率。從SCA-CLIP onlyBERT2和SCA-CLIP的結果對比可以分析出,所提出的疊加交叉注意力模塊充分利用了模態信息,實現了模態之間的充分交互與融合,匯聚了更多有用的分類信息,最后利用BERT提取分類信息,得到了最優的分類結果。

最后,圖7展示了SCA-CLIP模型在不同參數值下的性能,以分析超參數敏感性。實驗分析了SCA-CLIP模型的超參數敏感性,包含Dropout, Learning rate。在兩個數據集的實驗中,模型參數的dropout, learning rate均設置為(0.3,0.00005)。

(a)準確率與learning rate之間的關系

(b)準確率與dropout之間的關系圖7 在MVSA-single,MVSA-multiple數據集上的參數實驗結果

如圖7所示,實驗中將dropout值分別設置為(0.1,0.3,0.5,0.7,0.9),learn rate的值分別設置(0.00001,0.00002,0.00003,0.00005,0.0001)??梢杂^察到當dropout為0.3,learning rate為0.00005時,MVSA-Single數據集和MVSA-Multiple數據集都取得了最高的準確率,分別為77.70%,74.82%。同時兩個數據集的曲線變化趨勢基本保持一致,都是在開始的一段范圍內變化不大,最后下降很多。我們可以得出結論SCA-CLIP模型對于兩個超參數均略微敏感。

3 結論

社交媒體多模態情感分析是一項非常具有挑戰性的任務。在本文中,為多模態情緒預測任務提出了一個利用基于堆疊交叉注意力機制CLIP的網絡框架(SCA-CLIP)。具體而言,首先采用預訓練模型CLIP來提取圖像和文本的特征,由于CLIP預訓練模型使用的是圖文對進行對比學習,所以提取的圖像文本特征本身就是對齊的和強相關的。之后我們利用設計的堆疊注意來充分對模態交互以及特征融合,最后利用BERT中維護的可學習常量來學習最后情感分析所需的信息,進行有效情感預測。通過實驗結果的比較表明,本文的模型顯著提高了多模態數據集中的情感分類性能。盡管本文獲得了很好的結果,但該模型仍然具有較大的局限性。由于有些帖子的圖片和文字不相關,這就導致了情感表達實際上是依賴于獨立的特征,這可能會限制SCA-CLIP的性能。因此,在未來的工作中,可以在模型的擴展性方面展開進一步的研究工作。

猜你喜歡
注意力模態特征
讓注意力“飛”回來
如何表達“特征”
不忠誠的四個特征
抓住特征巧觀察
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
國內多模態教學研究回顧與展望
基于HHT和Prony算法的電力系統低頻振蕩模態識別
由單個模態構造對稱簡支梁的抗彎剛度
線性代數的應用特征
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合