牛利月,鄭秋生,張 龍,王 鵬
(1 中原工學院 前沿信息技術研究院,鄭州 450007;2 河南省網(wǎng)絡輿情智能檢測與分析重點實驗室,鄭州 450000)
方面級情感分析(Aspect -Based Sentiment Analysis,ABSA)是近年來自然語言處理(Natural Language Process,NLP)領域的一個重要研究方向,現(xiàn)已廣泛應用于電商評論分析等多個領域,方面級情感分析任務的目標是預測句子中特定方面術語的情感極性。例如,給定句子“The food in the restaurant was ok,but the service was slow”中,對于給定的方面詞“food”,其對應的觀點詞“ok”表現(xiàn)出積極情感,對于方面詞“service”、觀點詞“slow”表現(xiàn)出消極情感。與文檔級或者句子級情感分類相比,方面級情感分析任務的主要挑戰(zhàn)是如何設計有效的算法,對相應的觀點詞和方面詞進行有效建模,使得模型能夠判定給定方面詞在語境中的情感傾向。
傳統(tǒng)的方面級情感分析方法有基于情感詞典的方法和結合人工設計特征的機器學習方法。近年來,深度學習的方法在情感分析任務中被廣泛使用并取得了可觀效果。值得關注的是,結合注意力機制的神經網(wǎng)絡模型也已應用在方面級情感分析任務中,且已驗證具有明顯的優(yōu)越性。
然而,注意力機制也有其局限性。因缺少句法的約束,在某些情況下,注意力機制可能會錯誤地捕獲方面詞與情感詞之間的線索。例如,在句子“The packaging should be more delicate”中,對于特定方面詞“packaging”,注意力機制往往給單詞“delicate”分配更多的關注,因此導致模型針對該方面詞取得了相反的情感極性。
圖卷積神經網(wǎng)絡(Graph Convolutional Networks,GCN)結合依存句法依賴樹獲取句子信息,近年來被廣泛應用于方面級情感分類任務中,并且取得了長足的發(fā)展。句法信息能夠有效地建立方面詞與意見術語之間的關系,可用作獲取方面級情感信息的關鍵,且能夠從根本上解決長序依賴的問題。圖卷積神經網(wǎng)絡GCN 以其處理圖結構的優(yōu)勢,在捕獲遠程單詞之間的依賴關系上表現(xiàn)出很大的潛力。
但是,由于人類語言的復雜性,在缺乏句法特征的句子中,句法分析會出現(xiàn)解析錯誤,句法結構分析的誤差會影響情感分類的準確率。
為解決以上問題,本文提出了結合句法增強的多通道方面級情感分析模型(Syntactic enhanced multi-channel aspect emotion analysis model,SE-MCGCN),旨在綜合提取句子的語義和句法特征。該方法借助依存句法樹,構建基于特定方面句法依賴樹,使用圖卷積神經網(wǎng)絡GCN 提取句法樹信息;同時采用單詞共現(xiàn)的方法構建單詞共現(xiàn)圖,使用GCN 提取共現(xiàn)圖信息,Bi-GRU 提取句子語義信息,將提取的信息融合進行情感分類。模型在公開的數(shù)據(jù)集上與基線方法進行實驗比較,以研究其工作性能。
注意力機制能夠有效分析每個單詞及其相關的語義成分,從而提取語境中的重要信息。將注意力機制與深度學習方法融合的相關研究工作,已經在方面級情感分析任務中取得了不錯的成果。如:文獻[6]中將注意力機制與LSTM 結合在一起,提出AE-LSTM、AT-LSTM、ATAE-LSTM 三個模型,通過注意力機制去獲取對不同方面詞更重要的上下文信息。文獻[7]提出了一種既考慮目標注意力又考慮上下文注意力的交互式注意力網(wǎng)絡(IAN),使用2個注意力網(wǎng)絡交互式檢測目標詞和上下文重要詞。文獻[8]采用多頭注意機制(multi-head attention)來捕獲距離較遠的情緒特征,從而對不相關信息確保了更強的魯棒性。文獻[9]提出了一種基于注意的層次位置感知網(wǎng)絡(HAPN),引入位置嵌入來學習句子的位置感知表示,并進一步生成語境詞的特定方面詞表示。此外,基于transformer 和Bert 等預訓練模型在方面級情感分析任務中也取得了可觀的進展[10]。
句法分析有效地在方位詞和觀點詞之間架起了一座橋梁,解決了句子長距離依賴問題。句法信息融入到句子表征過程中來處理方面級情感分析任務的相關工作取得了不小的成就,也逐漸成為方面級情感分析任務的研發(fā)基礎。文獻[13]提出了一個近似加權卷積網(wǎng)絡,利用上下文詞與方面的句法接近度、即接近權重,來確定其在句子中的重要性。
近來,基于GCN 的模型在NLP 中受到越來越多的關注。鑒于GCN 能夠處理圖數(shù)據(jù),包含豐富關系信息的依存句法樹與GCN 結合,為方面級情感分析研發(fā)提供了可行性依據(jù)。文獻[14]在句子的依賴樹上構建圖卷積網(wǎng)絡,利用句法信息和單詞依賴,提出一種特定方面的情感分類框架ASGCN。文獻[15]提出了句法和詞匯的概念層次,并以此為基礎建立了層次句法圖和層次詞匯圖,隨后設計了雙層交互式圖卷積網(wǎng)絡以充分融合層次句法和詞匯圖。文獻[16]重新構造和修剪一個普通的依賴解析樹,設計了一個基于目標方面詞為根節(jié)點面向方面的依賴樹結構,提出了一個關系圖注意網(wǎng)絡(R-GAT),來編碼新的情緒預測樹結構。
本文提出了一種結合句法增強的多通道方面級情感分析模型SE-MC-GCN,模型整體架構如圖1所示。該模型首先將輸入文本分別表示為基于方面詞的句法依賴樹和單詞共現(xiàn)圖,分別使用2 個GCN網(wǎng)絡學習圖表示,同時使用Bi-GRU 編碼句子語義特征,將3 個輸出特征池化后進行融合,最后通過softmax 分類器得到情感極性。
圖1 結合句法增強的多通道方面級情感分析模型Fig.1 Syntactic enhanced multi-channel aspect-based emotion analysis model
2.1.1 基于方面詞的句法圖
句法依賴樹通常使用依存句法分析的方法幫助構建。依存句法分析是在語法理論的基礎上,對自然語言進行的一種句法分析形式。句子中的任意2 個詞之間都存在著某種支配和被支配關系,句法分析的結果是有向的依存關系樹,可以表達句子整體結構。
依存句法分析得到的句法樹,通常不是以基于方面詞的句法樹。為了更好地建模方面詞與觀點詞之間的關系,將方面詞作為依存樹的根節(jié)點,轉換原來的根節(jié)點為葉子節(jié)點,得到基于方面詞的句法圖。給定句子“I like this ring because it is beautiful”,原來的依存句法樹如圖2(a)所示,轉換為基于方面詞的句法圖如圖2(b)所示。
2.1.2 單詞共現(xiàn)圖
使用單詞共現(xiàn)的方法構建文本圖,是將每一個文檔都看作是一個獨立的拓撲圖,單詞作為圖的節(jié)點,利用單詞之間的共現(xiàn)關系建立邊。該方法使用一個固定大小的共現(xiàn)窗口在文檔中滑動統(tǒng)計單詞共現(xiàn)信息。
圖2(c)則是使用單詞共現(xiàn)方法,設置共現(xiàn)窗口3 時構建的文本圖。
圖2 句子“I like this ring because it is beautiful”的文本圖Fig.2 The graph of the sentence“I like this ring because it is beautiful”
2.2.1 圖編碼器
設目標圖(,,)。其中,、、分別表示圖的節(jié)點、邊和鄰接矩陣。
圖卷積神經網(wǎng)絡GCN 學習圖的節(jié)點信息的過程可以表示為:
其中,h、h分別表示第1 層和第層的節(jié)點;W表示權重矩陣;是非線性激活函數(shù)。
對圖2(b)、(c)中構造的句法圖和單詞共現(xiàn)圖,分別使用GCN 捕獲每個節(jié)點與其相鄰節(jié)點之間的信息傳遞,信息交互公式如下:
2.2.2 Bi-GRU 編碼器
輸入序列{,,…,x},將每個單詞映射到低位向量,得到e={,,…,ex},e∈? ,是詞向量維度。模型中GRU 的前向傳播公式如下:
Bi-GRU 聯(lián)合2 個方向相反的GRU,其傳播過程如下:
在句法圖、單詞共現(xiàn)圖和句子編碼信息上執(zhí)行池化操作,得到:
模型采用高速網(wǎng)絡機制,最終的句子表示為:
與拼接相比,高速網(wǎng)絡機制通過使用門控單元,將輸入的句法樹提取信息、單詞共現(xiàn)圖提取信息和提取句意信息通過網(wǎng)絡進行調節(jié)。信息可以跨多個通道傳輸,選擇出比較重要的特征完成融合。
將融合后的句子經過全連接層后,輸入分類器中,輸出最后的情感極性的概率分布,公式如下:
模型使用交叉熵損失函數(shù),為防止模型過擬合,采用正則方法進行訓練,參數(shù)和權值通過反向傳播更新。損失函數(shù)可以表示為:
為驗證模型的有效性,實驗采用的數(shù)據(jù)集為:Laptop數(shù)據(jù)集、Restaurant數(shù)據(jù)集(Rest14)與Twitter 數(shù)據(jù)集。實驗數(shù)據(jù)被標記為3 種不同的情感極性,即正面、中性和負面。數(shù)據(jù)集詳細信息見表1。
表1 數(shù)據(jù)集詳情Tab.1 Dataset details
實驗中,對每個輸入的句子使用Stanford 句法解析器(https:/ /stanfordnlp.github.io/CoreNLP/)構建依存句法樹,使用共現(xiàn)窗口(3)構建單詞共現(xiàn)圖。同時對每個單詞使用Glove 預訓練的300 維詞向量進行初始化;將Bi-GRU 的隱藏狀態(tài)設置為300。為防止模型過擬合,設定為0.5,正則的權重設置為0.000 1;采用作為優(yōu)化器,學習率設置為0.001。此外,本文使用準確率()和宏觀值(Macro)來衡量模型效果。
為了驗證模型在方面級情感分析任務上的有效性,實驗中對一些基線模型進行了比對,實驗結果見表2。
表2 情感分類結果Tab.2 Sentiment classification results
由實驗結果可知,與基于注意力機制結合深度學習的方法(Attention-based),以及句法分析結合圖神經網(wǎng)絡的方法(Syn-based)相比,本文模型有效地結合了句法和語義特征,準確率和值都優(yōu)于大多數(shù)方法??紤]到Twitter 數(shù)據(jù)通常缺乏句法特征,本文模型有效地結合了語義信息,補充語法特征缺失,從而獲得更高的精度。
同時,實驗中對比了基于Bert 的預訓練模型,本文模型結果仍然是這組數(shù)據(jù)中較好的。以上結果證明,本文模型能夠有效捕獲句子語義和句法特征。
為了驗證不同模塊功能對模型的影響,進行了消融實驗對比。
從表2 可以看出,以本文模型SE-MC-GCN 作為基線模型,分別去除句法圖編碼、貢獻圖編碼、和句子語義編碼模塊,都會使實驗結果有所降低。以Twitter 數(shù)據(jù)為例,去除句子語義編碼實驗結果下降較為明顯,也進一步驗證了本文模型中語義編碼模塊的有效性。此外,特征融合模塊去除高速網(wǎng)絡機制,替換為向量拼接,實驗效果也有所下降,證明高速網(wǎng)絡機制更好地保留了對結果有用的特征。因此,模型SE-MC-GCN 中每個模塊都對整體結果有一定的貢獻。
實驗中涉及到使用的門控圖神經網(wǎng)絡的層數(shù),本文在Laptop 數(shù)據(jù)集上對比了不同層數(shù)的圖神經網(wǎng)絡對實驗最終性能的影響,結果如圖3 所示。
由圖3 可知,當GCN 層數(shù)為3 時,對于數(shù)據(jù)集Twitter 和Rest14,實驗效果相對最好;對于Laptop數(shù)據(jù)集,GCN 層數(shù)為4 時實驗效果相對最好。
圖3 不同GCN 層數(shù)對實驗結果的影響Fig.3 The effect of different GCN layers
為了分析模型捕獲重點信息的能力,采用掩碼實驗分析單詞相關性,計算公式如下:
其中,h是句子表示,h是掩蓋掉單詞的句子表示。如果(,)等于0,說明單詞對句子沒有貢獻度。
以句子“I bought the cup,that were many roses on the box,it was beautiful”為例,其方面詞為“cup”,方面詞對應的情感極性為正面,可以看出觀點詞“great”對方面詞的情感貢獻比較大。
CDT 和SE-MC-GCN 單詞相關性對比結果(句子方面詞為‘cup’)如圖4 所示。由圖4 可以看出,相比CDT 模型,本文模型增強了對重點信息的捕獲能力。CDT 和SE-MC-GCN 單詞相關性對比(句子方面詞為‘cup’)。
圖4 CDT 和SE-MC-GCN 單詞相關性對比(句子方面詞為‘cup’)Fig.4 Word correlation comparison between CDT and SE-MC-GCN(sentence aspect word as ‘cup’)
句法分析對文本理解有重要的幫助,在方面級文本情感分析的任務中,能夠有效地建立方位詞和觀點詞之間的依賴關系?;诖?,本文提出了基于句法增強的多通道方面級情感分析模型,對句子的句法圖、單詞共現(xiàn)圖分別編碼,與句子語義特征融合,目標是捕獲句子句法信息和語義信息,在特征融合部分采用高速網(wǎng)絡機制,用來選擇對模型效果更好的特征。實驗結果驗證了模型的有效性。