孟 潔, 李 妍, 趙 迪, 張倩宜, 劉 赫
1(國網天津市電力公司 信息通信公司, 天津 300010)
2(天津市能源大數據仿真企業重點實驗室, 天津 300010)
電力行業[1]是關系到國計民生的基礎性行業. 電力業務運營過程產生了海量的多種形態的自然語言數據, 但是海量的數據會造成信息過載, 導致關鍵信息淹沒在大量的其他數據中, 增加了工作人員篩選、獲取有效信息的難度, 導致對已有數據缺乏有效的處理和利用, 造成信息資源的浪費. 在我們相關的研究中, 已實現針對電力業務語音數據設計自然語言識別模型,智能化地提取語音信息中的重要特征并根據語音數據自動生成對應文字內容; 進一步地, 由于電力行業專業性較強, 通過基于自然語言理解技術將非結構數據結構化, 實現電力業務知識庫地自動構建. 而在本文的研究中, 針對對話信息進行有效的分析和理解, 改進了傳統的繁雜、費時費力且重復性較高的客服電話質檢工作, 有利于電力系統高效而穩定的運行, 將工作人員從繁雜的記錄工作中解脫出來, 極大地提升數據的利用率及信息服務的自動化、智能化. 客服的話務質量關系著用戶的滿意度, 是服務中的一項重要指標. 在社交網絡平臺以及在客服服務等情境中, 都會出現大量的對話文本, 隨著開源會話數據集的增加, 會話中的數據挖掘也得到了越來越多研究者的關注[2,3], 目前在客服對話領域數據挖掘工作主要是從對話系統的設計[4,5]以及在商業領域的客戶購物預測[6]進行的, 而在客服對話的情感分析領域的研究也有越來越多的工作, 如胡若云等[7]提出基于雙向傳播框架, 首先從外部語料中獲取情感詞和評價屬性并對其進行擴展, 然后使用基于詞向量的語料相似度計算方法識別長尾詞, 最后挖掘出客服對話文本的情感詞和評價屬性. 王建成[8]通過長短時記憶網絡和注意力機制挖掘對話歷史中的相關信息, 融入句子的語義表示; 在解碼器中將已解碼句子的情感類別的概率分布融入當前句子的情感分類過程中實現客服對話情感分析. Wang 等[9]提出基于主題感知的多任務學習方法, 該方法通過捕捉各種主題信息來學習客服對話中主題豐富的話語表達. 對話情感識別是識別對話中說話人所說語句的情緒, 本質上也可以歸納為文本分類問題.
傳統的情感分析(又稱觀點挖掘)是從文本中分析人們的觀點和情感, 是自然語言處理中一個活躍的研究領域[10]. 現有的基于文本的情感分類研究, 作為情感分析的一個重要組成部分, 可以分為基于句法分析、基于詞典分析與基于機器學習分析3 大類. 基于句法分析的情感分析主要采用句法知識對文本進行分析,從而確定文本情感類別; 基于詞典的情感分析方法通常將文本看成詞的集合, 通過統計文本中的關鍵詞再使用相關算法對文本情感進行評分, 從而判斷情感類別; 基于機器學習的情感分類方法主要基于Pang 等[11]的工作, 將文本情感分類看作文本分類問題, 利用從情感詞選取的大量嘈雜的標簽文本作為訓練集直接構建分類器(樸素貝葉斯、支持向量機等). 近年來, 隨著深度學習技術的發展, 人們提出了各種神經網絡模型, 并在文本情感分類方面取得了顯著的效果.
Kim[12]首次將神經網絡用于情感分類, 該方法是卷積神經網絡(convolutional neural networks, CNN)的直接應用, 具有預先訓練好的詞嵌入功能. Kalchbrenner等[13]提出了一個動態CNN 方法, 用于句子語義建模,來處理長度不同的輸入句子, 并在句子上生成一個特征圖.這種模型能明確地捕捉短期和長期的關系; Xu 等[14]提出了一個緩存的長短期記憶網絡(long-short term memory, LSTM)模型來捕獲長文本中的整體語義信息;Zhou 等[15]設計了由兩個基于注意力的LSTM 模型用于跨語言情感分類; 宋曙光等[16]提出基于注意力機制的特定目標情感分析方法; Wang 等[17]提出利用CNNLSTM 組合模型預測文本情感極性. Poria 等[18]使用雙向門控循環單元(bi-directional gated recurrent unit, Bi-GRU)提取對話句子表征, 指出對話中的信息主要依賴于話語中的序列上下文信息; 王偉等[19]將Bi-GRU模型與注意力機制相結合, 并成功提成了情感分類效果. 孟仕林等[20]提出利用情感詞的情感信息構造出情感向量, 與語言模型生成的向量相結合來表示文本, 并使用雙向LSTM模型作為分類器進行情感分析. 邱寧佳等[21]提出融合語法規則構建雙通道中文情感模型,首先設計語法規則對文本進行預處理, 然后使用CNN和BiLSTM 模型提取局部情感特征并挖掘到文本時間跨度更大時的語義依賴關系. Shen 等[22]和Wang 等[23]利用雙向注意網絡捕捉單輪問答對話中的語義匹配信息. 以上對話情感分析研究主要集中在話語間語境聯系的建模上, 而沒有考慮對話的整體特征, 也沒有考慮特定說話人的特征. Majumder 等[24]提出采用注意機制, 將每個目標話語的全部或部分對話信息集中起來.然而, 這種聚合機制沒有考慮說話人的話語之間信息以及其他話語與目標話語的相對位置關系.
從理論上分析, RNN、LSTM、GRU 等網絡模型,可以傳播長期的上下文信息, 然而在實際應用中, 這些方法過度依賴于對話上下文和序列信息, 容易忽略對話中的上下文情感動態建模, 并且由于缺乏標準數據集對文本的有效標記, 難以實現對文本的意圖、個性以及主題等方面的建模.
近年來, 圖卷積神經網絡(graph convolutional networks, GCN)受到越來越多的關注. 在最近對相關自然語言處理任務的研究中, Yao 等[25]提出在整個語料庫上構建一個異構圖來進行文本級分類. Wu 等[26]反復消除GCN 層之間的非線性, 并將函數折疊成線性變換, 以降低GCN 的復雜性. Zhang 等[27]將句法依賴樹引入到GCN 中對句法結構進行編碼, 并將新的GCN 結構用于句子和體層的情感分析. 陳佳偉等[28]提出基于自注意力門控圖卷積網絡的特定目標情感分析模型, 并將預訓練BERT 應用到該任務中實現情感極性的分析.
由于圖神經網絡在文本分類[25,29]、鏈接預測[30]、文檔摘要[31]和關系分類[32]等方面取得了成功, 受以上研究的啟發, 本文將圖網絡應用于客服對話的情感識別問題.
首先, 在對話過程中, 詞語是構成語句的主要成分,詞語在決定句子的情感極性方面起著最重要的作用,詞語的出現、排列和定位以及文檔不同組成部分之間的關系對于理解文檔是必要的和有價值的. 另外, 在雙方對話的交互語句進行建模時, 說話人信息是建模說話人之間依賴的必要條件, 即模型能夠理解說話人是如何影響其他說話人的情感狀態; 同樣地, 對說話人自身話語的建模有助于模型理解說話人個體的情感狀態變化. 此外, 在對話過程中, 上下文話語的相對位置決定了過去話語會對未來話語產生影響.
基于以上因素, 本文提出了一種新的基于異構圖卷積網絡的對話情感識別模型(conversation sentiment analysis based on graph convolution network, CS-GCN).
在該模型中, 首先, 根據詞共現關系構建詞語關系圖,對整個語句進行非連續長距離的語義建模; 其次使用Bi-GRU 模型來捕捉連續順序語句之間的上下文信息,并根據對話雙方語句信息建立順序語句的自我上下文依賴關系和交互語句上下文依賴關系, 并通過鄰居語句特征聚合進而得到每個語句的特征. 最后通過以上圖模型的建立, 將詞結構嵌入表示、語句上下文之間的自我順序依賴和交互依賴關系得到的語句嵌入表示聚合得到文本信息的最終嵌入表示, 實現對話情感狀態檢測.
在大數據時代, 文本是存儲數據和元數據最普遍的形式之一, 數據表示是數據挖掘中特征提取階段的關鍵步驟. 因此, 如何構建一個合適的文本表示模型,能夠更好地描述文本數據的固有特征, 仍然是一個挑戰. 本文從詞共現關系、語句的自依賴關系和互依賴關系兩方面構建分別構建詞圖模型和有向語句圖模型,并采用圖卷積網絡提取文本特征, 進一步得到文本最終的嵌入表示用于識別對話情感狀態. 該模型主要由4 部分組成: 字圖編碼結構、順序上下文語句編碼結構、交互上下文語句編碼結構和情感分類器. 所提出框架的總體架構如圖1 所示.

圖1 基于圖卷積網絡的客服對話情感分析框架
1.2.1 詞共現圖構建
詞語是構成語句的主要成分, 詞語在決定句子的情感極性方面起著最重要的作用, 詞語的出現、排列和定位以及文檔不同組成部分之間的關系對于理解文檔是必要的和有價值的. 對話情感識別的第一個關鍵問題是對對話語句詞語進行建模并提取特征, 盡管有各種基于圖形的文檔表示模型, 但詞共現圖是表示社交媒體內容中一個詞和另一個詞之間關系的有效方法. 在文獻[33] 的啟發下, 本文構建窗口大小為3 的詞圖. 圖2 給出了一個示例句子的圖, 當兩個節點在一個最大長度為3 的窗口內時, 則認為兩節點之間具有連邊.

圖2 窗口為3 的示例詞圖
1.2.2 字圖編碼結構



1.3.1 構建對話語句有向圖
對話情感識別另一個關鍵的是對語句上下文進行建模, 語句上下文包括說話者自身語句的上下文以及雙方對話形成的上下文. 受Majumder 等[24]的啟發, 針對每一句對話本文都通過兩種上下文關系進行建模.但考慮到在對上下文語句進行建模時, 情感動態會隨之改變, 即對話雙方未來語句的情感狀態不僅會受到自身過去語句的影響, 還會受到對方過去語句的影響,這種對話語句自身的依賴性和語句交互的依賴性分別稱為順序語句自身依賴和交互語句相互依賴關系. 在本文提出的方法中, 將這兩種截然不同但相關的上下文信息(順序語句編碼和交互語句編碼)結合起來, 實現增強的上下文表示, 從而更好地理解會話系統中的情緒狀態. 如圖3 所示為語句自依賴和交互語句依賴關系.

圖3 語句自依賴和交互語句依賴關系圖
1.3.2 順序語句編碼
對話的本質是一種序列信息, RNN 模型被廣泛用于序列信息建模, GRU 是一種與LSTM 相似的遞歸神經網絡, 它也被用來解決反向傳播中的長期記憶和梯度問題. GRU 的輸入輸出結構類似于RNN, 其內在思想類似于LSTM. 與LSTM 相比, GRU 具有更少的“選通”和更少的參數, 但可以實現與LSTM 相同的性能.因此考慮到計算開銷, 本文選擇Bi-GRU 來捕捉上下文信息. 首先在編碼語句時不區分說話人, 對全部對話語句信息進行特征表示. 以前向傳播GRU 為例, 每個GRU 單元包含更新門和重置門, 給定狀態向量ht∈RF,當前隱藏狀態可計算如下:




在實驗中, 首先將所提出的CS-GCN 方法與基線和性能較好的情感分析方法進行了比較, 驗證了不同上下文窗口對情感分析準確率以及F1 值的影響, 并且驗證了不同聚合函數的性能, 最后設置了消融實驗來驗證采用詞共現關系, 順序語句編碼器和交互語句上下文編碼器進行對話情感分析的有效性. 實驗環境為:Intel Xeon 2.30 GHz, RAM 256 GB 和Nvidia Quadro P620 GPU; 操作系統和軟件平臺是Ubuntu 16.04、TensorFlow 1.14 和Python 3.5.
IEMOCAP: 南加州大學的SAIL 實驗室收集的雙人對話數據. 該數據集包括151 段對話, 共7 433 句. 該數據集標注了6 類情緒: 中立, 快樂, 悲傷, 憤怒, 沮喪,興奮, 其中, 非中立情緒占比77%. 為簡化實驗, 實驗中對6 種情緒狀態只進行積極、消極以及中立3 種情感分類.
AVEC2012: SEMAINE 數據庫收集的多模態對話數據, 由4 個固定形象的機器人與人進行對話, 曾用于AVEC2012 挑戰賽使用的數據. 該數據有95 段對話,共5 798 句. 標注了4 個情感維度: Valence, Arousal,Expectancy, Power. Valence 表示情感積極的程度,Arousal 表示興奮的程度, Expectancy 表示與預期相符的程度, Power 表示情感影響力. 其中, Valence、Arousa和Expectancy 為[-1, 1]范圍內的連續值, Power 為大于等于0 的連續值.
為了評價不同模型的情感分析準確率, 采用準確率和F1 值作為評價指標
為了全面評估CS-GCN, 將本文提出的模型與以下方法進行比較, 選擇串聯操作作為聚合函數, 并且在參數設置過程中, 盡量保持4 種文本模型在參數設置上的一致性, 由于模型結構的不同而無法達到一致性時, 采用最優的參數設置. IEMOCAP 和AVEC2012 中沒有提供預定義的訓練集和驗證集分割, 因此使用10%的訓練對話作為驗證集.
CNN[12]: 基于卷積神經網絡的基線模型, 該模型是上下文無關的, 不使用上下文語境中的信息. 該模型中,詞向量維度為100, 學習率為0.001, 濾波窗口選擇3、4 和5; Dropout 為0.5, 批大小為64.
Memnet[34]: 每一個話語都被反饋到網絡中, 與先前話語相對應的記憶以多跳方式不斷更新, 最后利用記憶網絡的輸出進行情感分類. 該模型中, 學習率是0.01, 每25 個epoch 學習率自動減半, 直到100 個epoch.在梯度下降中, 沒有采用動量和權重衰減. 矩陣采用Gaussian distribution 隨機初始化, 均值為0, 方差為0.1.批大小為是32. 采用L2 正則化.
c-LSTM[35]: 通過使用雙向LSTM 網絡捕獲上下文內容進行建模, 然后進行情感分類, 但是上下文LSTM模型與說話人之間的交互無關, 即不對語句間交互依賴關系建模. 該模型詞向量維度為100, Bi-LSTM 隱藏層有64 個神經元, 學習率為0.001, Dropout 為0.5, 同時設置雙向LSTM 的層數為128 層.
CMN[36]: CMN 使用兩個不同的GRU 模型為兩個說話人從對話歷史中建模話語語境. 最后, 將當前話語作為查詢反饋給兩個不同的記憶網絡, 得到兩個說話人的話語表示. 對于CMN 模型, 卷積層的濾波器大小為3、4 和5, 每個濾波器具有50 個特征映射, 在這些特征圖上使用最大池, 池窗口大小為2, 最后使用100 個神經元的完全連接層.
DialogueRNN[24]: 基于說話者、過去話語的上下文和過去話語的情緒, 應用了3 個GRU 來對這3 方面進行建模, 該模型是目前在對話情感分析領域取得最好性能的模型, 因此在本文中選用原文的參數進行實驗.
在實驗中將所有的實驗都獨立運行5 次, 并取平均值作為最終實驗結果, 如表1 和表2 所示.

表1 IEMOCAP 數據集在不同模型上的情感分類準確率對比(%)

表2 AVEC2012 數據集在不同模型上的情感分類準確率對比(%)
在IEMOCAP 數據集上, CS-GCN 的準確率和F1 值分別為68.34%和71.26%, 相比于DialogueRNN模型的準確率和F1 值分別提高了5%和6%左右. 在AVEC2012 數據集上, CS-GCN 在所有4 個情感維度上的準確率和F1 值也同樣都優于其他模型. 與CNN,Memnet, c-LSTM 和CMN 4 個基線模型相比, CSGCN 和DialogueRNN 都對交互語句級別的上下文進行建模, 而其他基線模型都沒有對交互語句之間的依賴關系進行編碼, 因此其情感分類的準確率優于基線模型. 其次, CS-GCN 和DialogueRNN 都對交互語句級別的上下文進行建模, 但CS-GCN 同時采用了詞共現關系對語句進行編碼, 其次CS-GCN 通過卷積神經網絡對語句的鄰域信息進行聚合進而得到該語句的特征表示, 因此相比于DialogueRNN 模型, CS-GCN 模型獲得了更好的情感分類性能.
在實驗中分別驗證了不同的上下文窗口對情感分類準確率的影響, 分別設置P=10,Q=10;P=8,Q=8;P=4,Q=4;P=0,Q=0四組實驗進行對比, 在兩個數據集上得到的準確率和F1 值如圖4 所示.
由圖4 可知, 在兩類數據集上, 隨著上下文窗口的減小, CS-GCN 模型的情感分類性能也逐步下降, 當上下文窗口大小為P=0,Q=0, CS-GCN 模型只對詞共現結構和順序上下文進行編碼, 不再對交互語句之間的依賴關系進行編碼, 因此情感分類性能較差.

圖4 不同上下文窗口大小情感分類性能對比
為了驗證不同聚合函數對情感分類準確率的影響,我們測試了3 種聚合函數在兩個數據集上的性能, 實驗準確率如表3 所示.

表3 不同聚合函數測試準確度(%)
顯然, 串聯融合達到了最佳準確度, 而其他兩個聚合函數的性能相對較差. 這是因為串聯操作在嵌入聚合期間保留比求和和最大池更多的信息, 有助于學習更好的節點信息表示.
為了驗證采用詞共現關系, 順序語句編碼器和交互語句上下文編碼器進行對話情感分析的有效性, 在兩個數據集上對幾種模型的情感預測性能進行了實驗比較. 首先, 將只有順序語句編碼器模型視為對話語句情感分析的基線模型, 記為CS-GCNN. 此外, 為了驗證詞共現關系和交互語句上下文編碼對情感分析的有效性, 在基線模型的基礎上加入了詞共現編碼結構記為CS-GCNW. 為了驗證交互語句上下文編碼的適用性,在基線模型的基礎上增加了交互語句上下文編碼結構,記CS-GCNS. 最后, 將詞共現關系編碼結構和交互語句上下文編碼結構嵌入到基線模型之上, 進一步驗證組合的優越性. 模型類型如表4 所示, 實驗結果如圖5所示.

表4 不同模型類型

圖5 不同模型類型情感分類性能對比
從圖5 可以看出, 隨著詞共現關系編碼器, 交互語句上下文編碼器結構的加入, 情感分類的準確率和F1 得到了逐步提高. 在數據集IEMOCAP 上, 與CSGCNN模型相比, CS-GCNW模型的準確率和F1 值分別提高了10.38%和10.05%左右. 與CS-GCNN模型相比, CS-GCNS模型的準確率和F1 值分別提高了13.66%和10.75%. 通過詞共現關系編碼器, 交互語句上下文編碼器結構的加入, 證明了CS-GCNW和CSGCNS模型能夠提高情感分類的性能, 具有普遍適用性. 其次, 在CS-GCN 模型中, 實現了3 類編碼結構的嵌入和融合用于情感分類, 與CS-GCNN模型相比, CSGCN 模型的準確率和F1 值分別提高了40.98% 和38.06%. 最后, 將CS-GCN 模型與CS-GCNW和CSGCNS模型相比較, 準確率和F1 值同樣得到了顯著的提高. 綜上所述, 這些對比實驗充分驗證了本文提出的CS-GCN 模型通過引入詞共現關系編碼器, 交互語句上下文編碼器結構, 顯著提升了對話情感分析的性能.
受異質圖卷積網絡的啟發, 本文提出了一種基于圖卷積網絡的客服對話情感分析方法. 提出的CSGCN 模型與傳統的基于RNN 模型的對話數據情感檢測方法不同, CS-GCN 模型將詞共現關系, 語句的順序上下文特征以及不同說話人語句之間的交互依賴關系進行融合編碼, 通過圖卷積網絡實現對文本特征提取與聚合得到最終的文本表示, 進一步實現對對話情感的狀態識別. 在實驗中, 將CS-GCN 模型與基礎CNN,Memnet, c-LSTM, CMN 和DialogueRNN 模型在兩個數據集進行情感分類準確率的對比, 驗證了CS-GCN模型可有效提高情感識別準確度. 其次, 設計了相關的消融實驗驗證了融合詞共現編碼, 順序語句上下文編碼以及交互語句上下文編碼3 種結構對于對話情感識別準確率提高的有效性. 在未來的工作中可將多模態信息整合到CS-GCN 網絡中, 進一步提高對說話人之間的情感轉換檢測, 為客服的質檢工作提供及時、客觀、有效的分析.