


















摘" 要: 情感分析三元組任務是情感分析任務的研究熱點,其目的在于將方面詞、情感詞與情感極性組成三元組。圖神經網絡是提取句子特征的有效手段,但其無法關注節點與節點之間的關系,并且注意力權重賦予不合理。為此,提出一種聯合雙向對抗GRU與基于句法注意力機制的GAT模型。利用依存句法樹的句子向量和ATGAT模型提取句子情感詞,并將句子用syn?str更新向量表示;再融合句法結構的向量,通過雙向對抗GRU提取特征進行情感判斷。在三個公開英文數據集中開展實驗,結果表明,所提模型相對其他基線模型具有更優異的性能。消融實驗和對比實驗也說明,所提出的各個網絡模型組件比其他組件能更有效地將句法信息與原句向量融合。
關鍵詞: 情感分析; 三元組; 雙向對抗GRU; GAT模型; 句法注意力機制; 依存句法樹; 特征提取
中圖分類號: TN919?34; TP391" " " " " " " " " "文獻標識碼: A" " " " " " " " " " " 文章編號: 1004?373X(2024)08?0149?06
A triple method for emotional analysis using con?GRU and ATGAT models
BI Xiaojie1, 2, LI Weijiang1, 2
(1. Faculty of Information Engineering and Automation, Kunming University of Science and Technology, Kunming 650500, China;
2.Yunnan Key Laboratory of Artificial Intelligence, Kunming University of Science and Technology, Kunming 650500, China)
Abstract: The emotional analysis triplet task is a hot research topic in emotional analysis tasks, with the aim of combining aspect words, emotional words, and emotional polarity into triplets. Graph neural networks are an effective means of extracting sentence features, but they cannot pay attention to the relationships between nodes during the process, and the allocation of attention weights is unreasonable. A GAT model joint bidirectional adversarial GRU and based on syntactic attention mechanism is proposed. The sentence vectors from dependency syntax trees and the ATGAT model are used to extract sentence sentiment words, and the sentences are represented by syn?str update vectors. The experimental results on three publicly available English datasets show that the proposed model has better performance compared with the other baseline models. The ablation and comparative experiments also demonstrate that the proposed network model components can more effectively fuse syntactic information with the original sentence vector than other components.
Keywords: emotional analysis; triple; bidirectional adversarial GRU; GAT model; syntactic attention mechanism; dependency syntax tree; feature extraction
0" 引" 言
自然語言處理是一種專業分析如文本、圖像、視頻等多種人類語言的人工智能。自然語言處理分為情感分析[1]、關系抽取[2]等多種具體問題,本文主要研究情感分析問題。
在日常生活中,人們更多關注的是某一個方面的具體情感,傳統的情感分析也僅僅是判斷出某一個方面的情感,并沒有指出文本的方面詞表示。Peng等人在2020年提出了三元組的概念[3],三元組是指將方面詞、情感詞以及情感極性作為一個組合共同輸出,是當前情感分析的主要方向。三元組的示例如下:
Sentence1:The environment here is poor,but the food is delicious.
Sentence2:Overall,it's okay.
Aspect term:environment,food,NULL
Opinion term:poor,delicious,okay
Sentimental Polarities: negative, positive, positive
Opinion Triplets:(environment, poor, negative),(food,delicious,positive),(NULL,okay,positive)
三元組示例中,句子2沒有指明方面詞,故在三元組中使用NULL代表方面詞。在三元組概念被提出后,研究者們對此進行了深入的研究,如Cai等人基于三元組概念,構建了四元組(方面詞、方面詞所屬類別、情感詞、情感極性),對目標分析更具體,所述內容更具體,并且解決了隱含信息提取的問題[4]。目前對于方面情感三元組提取(ASTE)的研究,更多的關注點在于語義信息的提取,或者使用多重神經網絡模型,沒有將語義信息與語法信息進行融合,這不利于情感詞的提取。對于ASTE任務,大多研究者將情感詞提取與情感判斷分為兩個步驟,但更多關注情感詞的提取。然而,特征提取和情感判斷作為傳統的情感分析任務,也是重要內容,不可忽視。
本文提出一種句法注意力機制,融合GAT卷積網絡,利用句法信息計算部分注意力權重,精簡模型以提高運算效率;其次,提出con?GRU模型對方面詞與情感詞進行情感判斷,優化損失函數,實現雙向GRU對抗;最后,在三個公開的英文數據集中對本文模型進行有效性驗證。
1" 相關工作
傳統情感分析是根據字典及規則提取文本的情感[5],同時期研究者使用Boosting技術[1]整合“弱”支持向量機分類器,使文本情感分類更加準確。Sun等人提出CDT模型,利用GCN操作依賴樹(語法信息)來對句子的語法信息進行建模[6]。但以上研究都只是針對目標情感,沒有關注到方面詞和情感詞的提取。
Peng等人在2020年提出第一篇有關于構建情感三元組的概念[3],所提出的模型將該任務分為兩個子任務串聯進行[3]。隨后,Xu等人提出了使用基于span的方法來進行方面情感三元組抽取[7];Wu等人提出一種新穎的網絡標記方案(GTS)[8];Chen等人基于文獻[8]的研究,在GTS基礎上設計了一個句子的圖表示,集成了句法依賴性、語義關聯性和單詞之間的位置關系[9]。
注意力機制在情感分析中應用廣泛,其可賦予研究對象不同的權重。Wang等人將注意力機制加入到LSTM中進行情感分析[10]。Zhang等人使用帶自注意的方面感知注意力機制獲得句子的注意力分數矩陣[11]。目前對注意力機制的研究只關注到語義信息,并沒有融合語法信息,本文針對這個問題,提出句法注意力機制,將句法結構信息與傳統注意力機制相融合。
圖卷積神經網絡(GCN)本質上是一個特征提取器,只不過它的對象是圖數據。Zhang等人首次提出使用GCN模型來處理情感分析任務[12],Li等人提出雙GCN模型。圖卷積神經網絡GCN被提出之后,GCN模型的局限性也逐漸顯現出來[13]。相對于GCN,GAT模型頂點特征之間的相關性被更好地融入到模型中。
GRU(Gated Recurrent Unit)是循環神經網絡中一種常用的門控循環單元結構。GRU具有更少的參數數量,計算速度更快,表現效果更好,所以得到廣泛的應用。本文借鑒對比學習中的對抗思想,提出雙向GRU的對抗訓練,生成對抗網絡,反復迭代相互對抗,最終得到模型輸出結果。本文模型結構圖如圖1所示。
2" 模型描述
本文的核心目標是:給定一個句子X和一個方面詞A,定義輸出為三元組(a,o,s),其中a為方面詞,o為情感詞,s為方面詞a的情感極性。首先將文本輸入BiLSTM中編碼,得到文本的向量表示。文本輸入時,將句子的方面詞與文本并聯共同輸出,以方面詞為根節點,通過依存句法樹得到文本的句法信息;再使用句法注意力機制與GAT模型的融合得到文本的情感詞,同時使用syn?str結構更新文本向量表示,將新的向量表示輸入雙向對抗GRU中提取文本的特征表示;最后將雙通道的結果組合成為三元組并輸出。
2.1" 詞嵌入
在本文的數據集中,給定一個句子?方面詞對(s,a),其中a={a1,a2,…,am}是一個方面詞,同時s={w1,w2,…,wn}表示這個句子。詞嵌入是將每個單詞映射到一個高維向量空間,定義[L=Rdemb·V]為預訓練GloVe的嵌入矩陣,其中:demb是詞向量的維度;[V]是詞向量的大小。然后將每一個單詞[wi?RV]映射到其對應的嵌入向量。
2.2" 編碼層
BiLSTM的核心是利用記憶細胞來記憶長期的上下文關系。公式(1)描述了BiLSTM的具體計算公式,也可以得到方面詞的隱藏狀態hs。
[hs=LSTM([w1,w2,…,wn])hs=LSTM([w1,w2,…,wn])hs=[hs,hs]]" "(1)
根據BiLSTM操作之后,得到的句子表示為[H={h1,h2,…,hs,hs+1,hs+2,…,ht+s}]。
2.3" 特征提取
2.3.1" ATGAT模型
本文首先通過依存句法樹的臨界矩陣來構建圖結構,并且通過所提出的句法注意力機制優化圖結構中各個節點的表示。在構建依存句法樹時,本文將句子的方面詞作為樹的根節點,以方面詞為中心構建樹結構,如果有多個方面詞則依次構建樹結構;如果文本沒有方面詞,則將方面詞定義為NULL,以規則的方式構建文本樹結構。圖2所示為依存句法樹轉換為圖結構的示意圖。
對于頂點i(即方面詞),首先逐個計算相鄰節點和頂點之間的相似系數,公式如下:
[eij=a([WhiWhj])," j?Ni]" " " " " (2)
式中:[eij]表示頂點i與節點j的相似系數;W是可學習的共享參數,其是為了線性映射,對于頂點的特征進行增強;[··]表示將頂點i、j變換后的特征進行拼接,最后使用[a(·)]前饋神經網絡將拼接后的高維特征映射到一個實數上。由式(2)可知,頂點i、j之間的相關性是通過可學習的參數W與映射來實現的。
隨后進行注意力系數歸一化:
[αij=exp(LeakyReLU(eij))k?Niexp(LeakyReLU(eik))]" " " "(3)
公式(3)中使用的是[LeakyReLU]激活函數。將句法注意力系數與文本向量作為GAT模型的輸入,表示為:
[hi′(K)=k=1Kσj?NiαkijWkhj]" " " " (4)
式中[σ(·)]是激活函數。在GAT模型中,本文選擇使用多頭注意力機制,通過GAT模型卷積,選取特征值最大的向量作為方面詞a的情感詞。
2.3.2" syn?str
對于句子中的單詞q,如果單詞q與單詞m1、m2等有句法結構關系,則將單詞m1、m2等的向量與單詞q的向量做內積,得到該詞的權重p1、p2,公式如下:
[pi=exp(mi?q)i=1mexp(mi?q)]" " " " " " " " "(5)
式中:m代表與單詞q有句法結構的單詞數。
隨后將權重嵌入該詞向量中得到ri。對于兩兩節點相連接的節點都進行上述操作,得到嵌入向量的加權平均,計算公式如下:
[ri=i=1mpiq]" " " " " " " " (6)
由式(6)得到句法結構向量表示,平均向量更新該節點的向量表示。
2.3.3" 雙向對抗GRU
雙向GRU的主要結構就是兩個單向GRU的結合,在輸出當前節點時,輸入會同時提供兩個方向相反的GRU,輸出則是由兩個方向GRU共同決定。本文提出在雙向GRU輸出時,將雙向GRU的輸出結果進行對抗訓練。
GRU網絡中有兩個門控單元:更新門zt和重置門rt。更新門作用在于捕捉時間序列當中的長期依賴關系,公式為:
[zt=σ(Wz?[ht-1,xt])=σ(Wzhht-1+Wzxxt)] (7)
式中:[ht-1]代表t-1時刻的隱藏狀態輸出;Wz是更新門的權重矩陣。
重置門作用在于捕捉時間序列里的短期依賴關系,表示為:
[rt=σ(Wr?[ht-1,xt])=σ(Wrhht-1+Wrxxt)]" " "(8)
式(9)為重置門是如何在GRU中使用的,新的記憶內容將使用重置門存儲過去相關信息。
[ht=tanh(Wh?[rt?ht-1])" " "=tanh(Whh(rt?ht-1)+Whxxt)] (9)
式中:Wh、Whh和Whx是可訓練的權重矩陣;重置門rt是一個由0~1的向量,會衡量門控開啟的大小,例如某個向量的門控值為0,則代表這個向量將被完全遺忘掉。
式(10)為更新門是如何在GRU中使用的,控制當前時間點的隱藏狀態應該如何被當前時間點的信息候選狀態[ht]所更新。
[ht=ht-1?zt+ht?(1-zt)] (10)
式中:[zt]與[ht-1]的Hadamard乘積表示前一時間點保留到最終記憶的信息。
本文采用雙向GRU對文本進行特征提取,雙向GRU的結構圖如圖3所示,其中h1、h2、h3、h4代表文本通過正向GRU后的輸出,[h′1]、[h′2]、[h′3]、[h′4]代表文本通過逆向GRU后的輸出,將正反向GRU的輸出輸入到gan對抗網絡中,實現雙向對抗GRU。在訓練的過程中,本文將正向GRU看作判別器,將逆向GRU看作生成器。對于每一輪的迭代訓練,先進行一輪正向GRU卷積,固定好正向GRU的參數,并使用正向GRU的損失函數來優化逆向GRU的卷積;然后進行逆向GRU卷積,固定好逆向GRU的參數,并使用逆向GRU的損失函數來優化正向GRU。該過程一直迭代,直至達到預定的迭代次數或者損失函數收斂,這樣就形成了雙向GRU的對抗訓練,兩個方向的GRU訓練相輔相成。通過syn?str更新向量表示,并把新的向量通過雙向對抗GRU提取特征,最后將這些特征輸入Softmax中進行情感判斷。本文模型最后一步是將通過ATGAT模型提取的情感詞以及syn?BGRU模型進行的情感極性判斷與文本方面詞拼接,組成情感三元組(方面詞、情感詞、情感極性)。
2.3.4" 損失函數
本文使用交叉熵損失作為損失函數,交叉熵損失LCE的計算公式如下:
[LCE=-1Ni=1Nj=1Myijlog Q] (11)
式中:N表示樣本數量;M表示類別數量;yij∈[0,1],表示樣本i是否屬于類別j;Q表示樣本i屬于類別j的預測概率。
3" 實驗分析
從餐廳、便攜式計算機、Twitter數據庫三個公開標準數據集上進行實驗,所有數據集都有三種情緒極性:積極、消極和中性。三個數據集的統計數據如表1所示,其中,#s、#T、#-、#0、#+分別代表句子數、三元組個數、消極三元組數、中性三元組數和積極三元組數。
在訓練過程中,本文設置詞向量的維度大小為300,通過空格把每個句子分為一個個單詞,在去除停用詞后,句子長度設置為200,小于此長度的句子進行補零。學習率取值為[0.1,0.02],為了防止過擬合現象,本文使用L2正則化和dropout機制,L2正則化參數為[0.000 1,0.000 01],dropout取值為[0.3,0.5],批處理大小為16。
3.1" 評價指標
為評估本文實驗的效果,采用準確率P、召回率R、F1值(F1?measure)作為評價指標,公式如下:
[P=TPTP+FP]" " " " " " " " " (12)
[R=TPTP+FN]" " " " " " " " "(13)
[F1=2PRP+R] (14)
3.2" 對比實驗
為驗證本文模型的有效性,選取近幾年的基線模型進行對比。基線模型具體介紹如下:
EMC?GCN:Chen等人在2022年提出一種EMC?GCN模型,用于處理情感三元組問題,提出使用多通道來編碼單詞之間的關系,包括詞性組合、句法依賴關系等[14]。
Span?aste:Lu等人在2021年提出使用基于span的方法來進行方面情感三元組抽取,使用span的好處是可以實現觀點詞和目標詞的整體交互[7]。
S3E2:Chen等人在2021年提出GTS模型,通過將句子中的語義和語法關系表示為圖,并使用GNNs編碼,能夠更加精確地捕捉到三元組元素之間的復雜關系[9]。
TwoStage:Peng等人在2020年提出使用兩階段框架的解決方案,第一階段提取方面詞、情感詞以及判斷情感極性,第二階段將方面詞與情感詞進行配對[3]。
JET:Wan等人在2020年提出一種解決方案,用于捕捉情感對目標和方面的雙重依賴,并處理隱性目標[15]。
Gen?ABSA:Xu等人在2020年提出使用position?aware標記方案的end?to?end模型,聯合抽取三元組[16]。
PASTE:Yan等人在2021年制定了7個子任務,并且設計了一套范式,不需要為每個任務設置不同的decoder,可以讓統一的ABSA任務轉換在大語言模型上使用[17]。
BMRC:R. Mukherjee等人為ASTE任務提供了一個端到端的無標記方案,克服了以前基于標記的方法的局限性[18]。
Chen等人提出了雙向MRC框架,把ASTE任務作為三輪機器閱讀理解任務,在一個統一的框架下標識出句中的三元組[19]。
不同模型對比實驗結果如表2所示。
將本文模型與其他基線模型的性能進行對比,具體結果如下:
EMC?GCN模型只單獨考慮各個關系,本文模型提出的句法注意力機制有效地將句子的語義信息與句法信息結合,有效提高了提取情感詞的準確率。Span?aste模型忽略了句子中的語義等信息,本文模型相較于該模型更加關注句子中的語義等信息,并且優化了情感判斷方法;S3E2模型對情感判斷方法并沒有改進;TwoStage模型使用大量的卷積網絡和小模型實現任務;JET模型使用的標記方案不具備普遍性;Gen?ABSA模型主要用于處理將所有的ABSA任務轉換為統一的框架,本文相較于該模型任務精簡,模型簡單且高效,對于三元組提取任務效果更好;PASTE模型重點在于利用方面詞與情感詞之間的相互依賴關系,本文模型同時也考慮了PASTE模型所關注的重點,實驗結果表明,本文方法比該模型的效果更好;BMRC模型將三元組抽取任務使用MRC方法來解決,而本文側重點在于使用語法、語義等關系,兩個模型使用不同的方法研究相同的內容,從實驗結果來看,本文方法比MRC方法取得的效果更好。
3.3" 消融實驗
為驗證本文模型的有效性,對本文模型的原有組件進行刪除。消融實驗評價指標使用準確率,結果如表3所示。
消融實驗結果表明:Bigru?gat w/o atgat實驗中準確率相較于原模型下降最多,說明本文提出的atgat網絡對三元組提取任務有重要作用,atgat模型能夠有效地提取到文本特征,對于提取情感詞有重要意義。Bigru?gat w/o gat模型相較于Bigru?gat w/o atgat準確率有所提升,證明本文提出的句法注意力機制能夠提升傳統GAT模型的效率以及準確率。Bigru?gat w/o bigru實驗證明,雙向對抗GRU能夠充分提取情感特征并做出情感判斷,證明了雙向對抗GRU的有效性;Bigru?gat w/o syn?str對比原模型準確率下降最少,本文提出的使用syn?str更新句子向量表示的方法能有效地將句法信息與原句向量融合。
4" 結" 語
本文提出一種聯合雙向對抗GRU與ATGAT的網絡模型,用于解決情感分析三元組問題。提出使用syn?str更新原句子向量,提出句法注意力機制并與傳統GAT模型融合,來解決傳統注意力機制權重賦予不合理問題。此外,在三個公開數據集中驗證了模型及其組件的有效性。在情感分析三元組提取任務中,有效利用依存關系類型以及距離、語序等信息將是本文繼續研究的方向。
注:本文通訊作者為李衛疆。
參考文獻
[1] SHARMA A, DEY S. A boosted SVM based ensemble classifier for sentiment analysis of online reviews [J]. ACM sigapp applied computing review, 2013, 13(4): 43?52.
[2] ZENG D, LIU K, LAI S, et al. Relation classification via convolutional deep neural network [C]// International Conference on Computational Linguistics. Dublin, Ireland: Dublin City University and Association for Computational Linguistics, 2014: 2335?2344.
[3] PENG H, XU L, BING L, et al. Knowing what, how and why: a near complete solution for aspect?based sentiment analysis [J]. Proceedings of the AAAI conference on artificial intelligence, 2021, 34(5): 8600?8607.
[4] CAI Hongjie," XIA Rui," YU Jianfei. Aspect?category?opinion?sentiment quadruple extraction with implicit aspects and opinions [C]// Proceedings of the ACL. [S.l.]: Association for Computational Linguistics," 2021: 340?350.
[5] 趙妍妍,秦兵,石秋慧,等.大規模情感詞典的構建及其在情感分類中的應用[J].中文信息學報,2017,31(2):187?193.
[6] SUN K, ZHANG R C, MENSAH S, et al. Aspect?level sentiment analysis via convolution over dependency tree [C]// Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing. Hong Kong, China: ACL, 2019: 5679?5688.
[7] XU L, CHIA Y K, BING L. Learning span?level interactions for aspect sentiment triplet extraction [EB/OL]. [2023?01?12]. https://arxiv.org/abs/2107.12214.
[8] WU Z, YING C, ZHAO F, et al. Grid tagging scheme for aspect?oriented fine?grained opinion extraction [EB/OL]. [2023?12?11]. https://www.xueshufan.com/publication/3105293920.
[9] CHEN Z, HUANG H, LIU B, et al. Semantic and syntactic enhanced aspect sentiment triplet extraction [EB/OL]. [2023?04?08]. https://www.xueshufan.com/publication/3168041866.
[10] WANG Y, HUANG M, ZHU X, et al. Attention?based LSTM for aspect?level sentiment classification [C]// Attention?based LSTM for Aspect?level Sentiment Classification. Austin, Texas: ACM, 2016: 606?615.
[11] ZHANG Zheng, ZHOU Zili, WANG Yanna. SSEGCN: syntactic and semantic enhanced graph convolutional network for aspect?based sentiment analysis [C]// Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. Seattle, United States: ACL, 2022: 4916?4925.
[12] ZHANG C, LI Q, SONG D. Aspect?based sentiment classification with aspect?specific graph convolutional networks [EB/OL]. [2023?04?12]. https://www.xueshufan.com/publication/2971488408.
[13] LI R, CHEN H, FENG F, et al. Dual graph convolutional networks for aspect?based sentiment analysis [EB/OL]. [2023?08?17]. https://aclanthology.org/2021.acl?long.494.pdf.
[14] CHEN H, ZHAI Z, FENG F, et al. Enhanced multi?channel graphconvolutional network for aspect sentiment triplet extraction [C]// Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics. Dublin, Ireland: ACL, 2022: 2974?2985.
[15] WAN H, YANG Y, DU J, et al. Target?aspect?sentiment joint detection for aspect?based sentiment analysis [J]. Proceedings of the AAAI conference on artificial intelligence, 2020, 34(5): 9122?9129.
[16] XU L, LI H, LU W, et al. Position?aware tagging for aspect sentiment triplet extraction [EB/OL]. [2023?01?15]. https://www.xueshufan.com/publication/3092313831.
[17] YAN H, DAI J, JI T, et al. A unified generative framework for aspect?based sentiment analysis [EB/OL]. [2022?08?14]. https://www.xueshufan.com/publication/3176038554.
[18] MUKHERJEE R, NAYAK T, BUTALA Y, et al. PASTE: a tagging?free decoding framework using pointer networks for aspect sentiment triplet extraction [EB/OL]. [2022?06?19]. https://www.xueshufan.com/publication/3214720333.
[19] CHEN S, WANG Y, LIU J, et al. Bidirectional machine reading comprehension for aspect sentiment triplet extraction [EB/OL]. [2023?08?14]. https://www.xueshufan.com/publication/3174945579.
作者簡介:畢曉杰(1998—),男,山東菏澤人,碩士研究生,CCF學生會員,主要研究領域為自然語言處理、情緒分析。
李衛疆(1969—),男,博士,教授,博士生導師,主要研究領域為信息檢索、自然語言處理。