張 超,張信明
(中國科學技術大學 大數據學院,安徽 合肥 230026)
隨著互聯網與社交媒體的不斷發展,越來越多的人使用包含文本、語音、圖像在內的多模態數據在社交媒體上表達自己的看法或觀點。海量的多模態數據中蘊含著豐富的情感信息,對多模態數據進行情感分析有利于了解人們對某些事件的態度和看法,在輿論監控、商品推薦、股市預測等方面具有很大的應用價值。此外,近年來的研究表明,與單模態情感識別模型相比,多模態模型在處理社交媒體數據時具有更強的魯棒性,并在識別準確率方面取得了顯著的改進[1]。不同的模態信息可能暗含著不同的情緒,如圖1所示,可能從文本信息中只能推斷出厭惡的情緒,而從視覺和語音的組合信息中推斷出悲傷和生氣的情緒,因此必須充分融合來自不同模態的信息才能準確識別出多模態數據中的情感信息。

圖1 多模態多標簽情感識別樣本實例
盡管目前多模態情感分析在模型性能方面已經取得了較好的效果,但是仍然存在兩個問題需要解決。第一個問題是情感識別在現實場景中通常是一個多標簽分類問題,如何對標簽依賴關系建模并使用標簽信息是一項具有挑戰性的任務。目前大多數工作將多標簽分類問題轉換為多個二分類問題,而忽視了標簽之間的依賴性。另一個問題是異構模態信號之間的巨大語義差異,使得模態特征難以直接融合。
目前關于多模態情感分析的研究主要集中在設計高效的模態融合機制。Zadeh等[2]利用張量的外積來對不同模態之間的相互作用進行建模,Tsai等[3]提出了基于注意力的模型,使用跨模態注意力融合來自不同模態的信息。盡管這些模型在多模態情感識別任務中取得了良好的效果,但是忽略了模態特征之間的語義差異,影響了多模態特征融合的效果。Ju等[4]提出了基于序列生成的模型來解決多模態多標簽情感識別問題,利用序列生成的方式對標簽之間依賴關系建模,但是這種方法依賴于預先定義的標簽順序并且計算效率低。
本文提出了一種基于標簽嵌入的多模態多標簽情感識別算法,即使用標簽嵌入向量對標簽依賴性建模,使用模態不變表示來減少模態語義差異。首先,鑒于情感標簽包含著豐富的信息,本文使用標簽之間的共現信息來學習多模態情感標簽嵌入。然后,使用CMD分布度量[5]限制不同模態特征的分布差距,獲得模態不變表示,這種限制有助于縮小不同模態之間的語義差距,從而使用更簡單的融合方法融合不同模態特征。最后,將所有的模態特征連接起來,利用學習到的標簽嵌入和融合特征完成情感識別任務。
本文在一個公開的多模態多標簽情感數據集CMU-MOSEI上進行了廣泛的實驗,以評估方法性能。實驗結果表明,該方法能夠有效地融合模態特征并且對標簽依賴進行建模。本文主要貢獻有:
(1)使用標簽的共現信息來學習標簽嵌入,用標簽嵌入來表示標簽依賴關系。
(2)考慮了模態特征之間的語義差距,通過在損失函數中添加對模態特征的約束來減小模態特征語義差距。
(3)MOSEI數據集的實驗結果表明,該方法在多模態多標簽情感識別任務上相較于現有方法,性能有明顯提升。
不同模態的情感信息之間往往具有互補性,有助于更全面、更準確識別出情感信息。多模態情感識別作為一個跨學科的研究領域,在自然語言處理和多模態領域都受到越來越多的關注。目前NLP領域里幾乎所有關于多標簽情感識別的研究都依賴于情感的特殊知識,例如跨域轉移[6]和外部資源[7]。多模態領域里的相關研究通常集中在單標簽多模態情感識別任務,而對多標簽情感識別任務研究較少。下面分別介紹多模態情感識別與多標簽情感識別相關工作。
近年來,多模態情感識別研究主要依賴于通過多模態融合框架對情感類別進行分類的方式。Zadeh等[2]提出了一種張量融合網絡,通過張量的笛卡爾積將每個模態的特征表示結合起來,表現出顯著的性能改進。然而,它受到張量笛卡爾積帶來的計算復雜性指數增長的限制。為了提高多模態融合效率,Liu等[8]提出了低秩多模態融合方案,利用低階張量進行多模態融合,減小了模態融合的計算量。隨著注意力機制在NLP社區中取得顯著的成功,許多研究試圖將其用于多模態機器學習任務中。Tsai等[3]提出了多模態Transformer(MulT)結構,使用交叉模態注意力融合不同模態特征,關注不同時間步的多模態序列之間的相互作用,并潛在地將特征實現模態自適應遷移,在模態數據不對齊的條件下仍然可以高效融合模態特征。Hazarika等[9]提出了一種靈活的多模態學習框架,強調多模態表示學習是多模態融合的前導,為每種模態信號學習不同的表示,并使用注意力機制將不同表示融合到一個聯合向量中。Mai等[10]提出了一種新的對抗式編解碼分類器框架來學習模態不變的嵌入空間,通過使用對抗性訓練將源模態的分布轉換為目標模態的分布,以此來減小模態分布之間的差異,此外,通過引入重建損失和分類損失對嵌入空間施加了額外的約束。這種方法在多個數據集上實現了優異的性能。最近,基于Transformer的上下文詞表示(包括BERT和XLNet)已經在NLP的多個領域中嶄露頭角,有學者嘗試將預訓練模型用于多模態情感分析任務中。Rahman等[11]提出了一個附加到BERT等預訓練模型的多模態自適應門(MAG),允許BERT在微調期間接受多模態非語言數據,這種自適應門通過注意力機制將非文本模態信息注入到文本向量表示中,在多個數據集上表現出與人類水平相當的性能。
最近的研究通常將多標簽情感識別任務視為一個分類問題,并利用特定知識作為輔助信息。Ando等[12]提出了一種主導情緒識別方法,該方法引入了判斷情緒存在與否的新任務,稱為多標簽情緒存在(MLEE)任務,提出的方法采用兩步訓練策略。首先,訓練MLEE任務來估計每個情緒是否存在。然后,利用MLEE任務的中間輸出訓練具有硬/軟目標標簽的主導情緒識別模型。Yang等[13]利用強化學習進行訓練,其中獎勵反饋的設計獨立于標簽順序,可以減少模型對標簽順序的依賴,并捕獲標簽之間的高階相關性,但其仍然依賴于預先訓練的seq2seq模型,而這種模型的訓練依賴標簽順序。Zhang等[14]提出一種多模態seq2set(MMS2S)方法來同時建模模態和標簽依賴性,首先使用單模態編碼器提取特征,然后用給定的情感表示控制不同模態特征對每個潛在情感標簽預測的貢獻,最后通過最大化top K序列預測所有潛在的情感標簽。Ju等[4]提出了多模態情感集合生成網絡,設計了一個基于變換器的區分解碼模塊,通過配備注意力來處理模態與標簽的依賴,同時采用了一種帶自評學習的增強解碼算法來處理標簽之間的依賴關系。文獻[15]提出了一種異構層次消息傳遞網絡,實現了對標簽之間以及標簽與模態之間依賴關系的有效建模。
多模態多標簽情感識別任務的模型——基于標簽嵌入與模態不變表示的網絡(Label Embedding and Modality-invariant Representations based Network,LEMRN)由兩個階段組成:標簽嵌入訓練階段和模態特征融合訓練階段。前一階段使用標簽編碼器網絡訓練所有標簽的嵌入向量,后一階段使用標簽嵌入輔助進行模態融合。圖2展示了提出的模型LEMRN的網絡結構,下面從任務定義、標簽嵌入表示和多模態特征融合三個部分來描述提出的方法。

圖2 LEMRN網絡模型結構
首先,使用符號來定義多模態多標簽情感識別任務。一條包含文本、語音、視頻三種模態的數據可能同時和多個情感標簽關聯。記為多模態數據樣本為情感標簽,N表示樣本數量。每個數據樣本包括來自語言、視覺和語音3個模態的低級特征序列,然后定義具有L個情感標簽的標簽集合空間為L={emo1,emo1,…,emoL},每一個標簽yi∈[0,1]L是L的一個子集,旨在為每一個數據樣本分配一個合適的標簽空間L的子集。多模態多標簽情感識別任務可以形式化定義為最大化下述似然函數:

不同標簽之間的相關性在多標簽任務中起著至關重要的作用。目前關于標簽相關性的計算并沒有統一的衡量標準,標簽之間的共現信息可以用來模擬不同標簽之間的相關性。標簽之間的共現特性可以被抽象描述為聯合概率,這適用于建模標簽之間的關聯關系。然而,聯合概率容易受到類別不平衡的影響,可以利用標簽之間的條件概率來解決這個問題,條件概率是通過將聯合概率除以邊際概率來規范化得到的。本文使用標簽圖來學習標簽嵌入,并將學習到的標簽嵌入作為附加信息輸入到模態融合網絡中。其中標簽表示節點,標簽之間的條件概率表示邊權重,標簽之間的條件概率越大,說明標簽之間的關聯性越強。
定義標簽圖為g=(V,C),其中頂點集合V={v1,v2,…,vn}代表標簽集合,標簽圖中的邊集合C定義標簽之間的關聯,標簽圖的鄰接矩陣Ai,j設置為條件概率矩陣,其中Ai,j=P(vi|vj),標簽之間的關聯應該具有對稱性,由于P(vi|vj)≠P(vj|vi),對鄰接矩陣進一步處理使其成為對稱矩陣:

為了學習標簽嵌入,使用神經網絡構建了學習器,利用標簽的文本語義ei,使用Glove文本詞向量初始化在多模態語義下的標簽嵌入表示,然后將其通過學習器映射到一個多模態語義嵌入空間并產生目標嵌入詞向量oi:

式中函數Φ()表示一個由兩層全連接網絡組成的神經網絡,網絡的目標是優化輸出的標簽嵌入向量oi,使得|cos(oi,oj)|接近損失函數定義為:

其中wi,j是松弛因子。在不添加松弛因子的情況下,損失函數要求所有的|cos(oi,oj)|必須充分接近
首先,對于每個模態信號的原始序列輸入數據,使用Transformer網絡的編碼器來處理并獲得向量表示。與傳統的RNN網絡、LSTM網絡相比,Transformer網絡更容易學習到句子之間的長距離依賴,因為其采用了多頭自注意力機制,用序列中所有位置向量的加權和來代表每一個位置的向量。具體來說,對于每一種模態序列um∈RTm×dm,其中m∈{t,a,v},將其映射到潛在空間的模態向量:

然后,使用模態編碼器將不同模態向量ht,ha和hv投影到公共子空間中。使用Trandformer網絡編碼器提取到的不同模態特征之間語義差距很大,難以直接融合,投影到公共子空間中有利于在相同的語義空間中進一步處理。模態編碼器由多層感知器(MLP)和模態自適應門組成,首先使用MLP將模態向量映射到公共子空間:


將不同的模態向量投影到一個特殊的公共子空間之后,使用CMD函數[5]限制不同模態特征的分布差距,獲得模態不變的特征表示。CMD函數度量兩個分布之間的距離,相比于KL散度包含了高階矩信息。CMD函數具體形式如下:

其中X,Y代表兩個不同分布,[a,b]表示的是X,Y的 取 值 范 圍,E(·)表 示 數 學 期 望,Ck(X)=E((X-E(X)k)表示分布X的k階中心矩。計算每對模態向量的CMD度量,并將其添加到損失函數中,通過梯度訓練減少模態間CMD度量,達到減小不同模態特征之間語義差距的效果,其計算公式為:


3.1.1 實驗數據集
在本文實驗中使用了現有最大的多模態多標簽情感識別基準數據集CMU-MOSEI來評估提出的方法。該數據集由從YouTube視頻中提取的22 856條帶注釋的話語組成,來自5 000個視頻,1 000位不同的發言人和250個不同的主題。每個數據點包含有文本、視頻和語音3種模態數據。對于原始的音頻信號,使用聲學分析框架COVAREP提取聲學特征,包括梅爾倒譜系數特征(MFCC)、基頻軌跡、濁音/清音分段特征、聲門源參數、峰值斜率參數和最大色散商,提取到的聲學特征維度是74。對于原始的視覺信號,使用Facet庫提取特征,包括面部表情動作單元(FAU)、面部特征點、頭部姿勢、視線軌跡以及HOG特征,視覺特征的維度是35。情感標簽共有6種,分別是快樂、悲傷、憤怒、恐懼、厭惡和驚訝。訓練集包含16 326個樣本,驗證集包含1 871個樣本,測試集包含4 659個樣本。
3.1.2 評價指標
本文采用了3個評估指標來評價不同方法在多模態多標簽情感識別任務上的性能,分別是多標簽準確率、漢明損失(HL)、Micro-F1分數,三個評價指標的計算公式如下:

3.1.3 參數設置
本文在操作系統為Ubuntu18.04.5環境中進行實驗,使用開源深度學習框架PyTorch。對于原始模態數據輸入,文本數據維度dT是300,視覺數據維度dV與語音數據維度dA維度分別是35和74,模態特征隱藏層單元維度是50。本文使用3層Transformer網絡的encoder來提取序列特征,在標簽嵌入向量的訓練過程中,使用預訓練的Glove詞向量初始化輸入向量,使用Adam作為優化器,并使用5e-4作為初始學習率。此外,本文還使用了dropout正則化來避免過擬合,并使用LayerNorm和梯度裁剪來克服梯度消失和梯度爆炸。
3.1.4 對比模型
為了綜合評估本文提出的方法的性能,本文在CMU-MOSEI數據集將本文模型與各種基線模型做比較。分別是:
(1)BR[16]:采用交叉訓練的方法,將多標簽任務轉化為多個單標簽二值分類問題。
(2)CC[17]:該算法將多標簽任務轉化為鏈式二元分類問題,沿著分類器鏈傳遞標簽相關信息,該方法可以保持在可接受的計算復雜度內對標簽相關性進行建模。
(3)LSAN[18]:利用標簽語義信息來確定標簽和文檔之間的語義聯系,從而構建特定于標簽的文檔表示。
(4)RAVEN[19]:對非語言子詞序列的細粒度結構進行建模,并根據非語言線索動態轉換單詞表示。
(5)MulT[3]:使用基于Transformer的結構提取序列特征,使用交叉模態注意力融合不同模態特征。
(6)HHMPN[15]:使用異構的分層消息傳遞網絡來有效地建模標簽-標簽依賴、特征-標簽依賴和模態-標簽依賴。
以上基線模型可以分為3組,前3種方法只考慮了標簽依賴性,沒有考慮模態依賴性,使用早期融合的方法融合不同模態特征;第4種與第5種方法只考慮了模態依賴性,融合了不同模態特征,但沒有考慮標簽依賴性;最后一種方法考慮了標簽依賴性與模態依賴性。
根據CMU-MOSEI數據集上不同多模態多標簽情感識別方法的結果顯示(如表1所示),僅考慮標簽依賴性的方法LSAN的準確率為0.393,僅考慮模態依賴性的方法MulT的準確率為0.445。與使用早期融合模態特征的多標簽方法相比,本文提出的方法準確率可以達到0.465,多模態方法獲得了更好的結果,分別比LSAN與MulT高7.2%與2%。與同時考慮模態依賴與標簽依賴的方法HHMPN相比,本文提出的方法在準確率與漢明損失指標上取得了更好的效果。
在驗證模型中標簽嵌入和模態約束必要性的消融實驗中,變體一LEMRN w/o M不添加模態約束,直接連接所有模態特征,變體二LEMRN w/o LE刪除了標簽嵌入,忽略標簽的依賴關系。如表1所示,如果去除標簽嵌入或模態約束,模型性能會明顯降低,表明標簽嵌入與模態約束是必要的。此外,移除標簽嵌入導致模型性能下降得更加劇烈,說明了標簽嵌入在模型中起到更關鍵的作用。

表1 模型在多模態多標簽情感識別任務結果
為驗證通過CMD函數添加的模態約束對模態特征的影響,分析了經過模態編碼器編碼的模態特征的分布,模態特征分布如圖3所示。可以看到,在不添加模態約束的條件下,3種模態特征分布差異較大,添加模態約束之后模態特征分布趨于一致,證明提出的方法能夠減小模態特征分布之間的差異,從而有利于更好地融合模態特征。

圖3 模態特征分布箱線圖
為進一步比較不同方法在多標簽多模態情感識別任務上性能的差別,選取了兩個樣本來觀察不同基準模型與LEMRN的預測結果,圖4展示了3種模型在樣本上的預測結果。從預測結果可以觀察到,在兩個樣本中LSAN模型都無法預測出所有的標簽,主要是因為模型沒有充分融合模態特征,只采用了簡單的早期融合策略;MulT模型能夠準確預測出左邊樣本的所有標簽,無法完整預測出右邊樣本標簽,主要是因為模型沒有考慮標簽之間的依賴關系,只將多標簽分類任務簡單轉化為多個二分類任務;本文提出的LEMRN模型能夠準確預測出兩個樣本的所有標簽,能夠高效完成模態特征融合以及標簽依賴性關系的建模。

圖4 LSAN、MulT、LEMRN預測標簽結果對比
在多模態情感識別中,存在多標簽場景下標簽間依賴性表示不充分、模態特征之間語義差距過大等問題。本文提出了一種基于標簽嵌入的多模態多標簽情感識別算法,為了充分對標簽之間依賴關系建模,利用標簽條件概率訓練標簽嵌入向量,利用標簽嵌入向量輔助多標簽情感識別任務;為了減小模態特征之間的語義差距,引入CMD分布損失函數來約束模態特征分布。在CMU-MOSEI數據集上的詳細實驗結果表明,該方法能夠對標簽之間依賴關系有效建模,能夠緩解模態特征之間語義差異大的問題,也因此能夠在多標簽多模態情感識別任務中取得更好的結果。