孫赫文,孟佳娜,丁梓晴,江 烽
(大連民族大學(xué) 計算機(jī)科學(xué)與工程學(xué)院 遼寧 大連 116650)
基于方面的情感分析是一種細(xì)粒度的情緒分類任務(wù)[1],旨在推斷出整句話中某一方面的情緒極性(positive、neutral或negative)。與句子級情感分析不同,一個句子可能有多個方面,不同的方面可能有不同的情感詞和情感極性。因此,有必要挖掘與方面詞相關(guān)的情感詞來預(yù)測其情緒極性。
近年來,可以捕獲句法依賴關(guān)系的圖神經(jīng)網(wǎng)絡(luò)被探索建模方面詞和情感詞之間的聯(lián)系。因此,張等人[2]利用GCN學(xué)習(xí)句法依存圖上的節(jié)點(diǎn)表示,得到融合句法依存信息的上下文特征用于情感分類。Tang等人[3]通過重塑句法依存樹得到一個面向方面詞的圖結(jié)構(gòu),并利用關(guān)系圖卷積網(wǎng)絡(luò)對重塑后的句法樹進(jìn)行編碼判斷方面詞的情感傾向。
然而,大多數(shù)的研究在將句法依賴關(guān)系應(yīng)用到復(fù)雜數(shù)據(jù)集的ABSA任務(wù)時,就會面臨兩個問題。依賴關(guān)系解析結(jié)果不準(zhǔn)確,而且忽略了不同依賴關(guān)系所產(chǎn)生的不同影響;對于依賴關(guān)系不敏感的數(shù)據(jù)集,由于非正式表達(dá)和在線評論的復(fù)雜性,方面詞的分類效果往往很差。
針對上述問題,本文提出了一種結(jié)合句法信息和詞共現(xiàn)信息的圖卷積網(wǎng)絡(luò)方法對方面級情感分析任務(wù)。通過使用提出的基于雙策略圖卷積網(wǎng)絡(luò)模型的方法可以提升三個公共數(shù)據(jù)集的情感分類效果。
句法依存樹在實體抽取、文本分析,命名實體識別、情感分析、智能問答等領(lǐng)域有著廣泛的應(yīng)用[4]。使用依賴解析工具對文本數(shù)據(jù)進(jìn)行預(yù)處理,構(gòu)建句法依存圖已經(jīng)成為ABSA任務(wù)數(shù)據(jù)預(yù)處理的主流方法。句法依存圖展示了句子中各詞之間的句法依賴關(guān)系,圖中每一條邊都有自己的標(biāo)簽,不同標(biāo)簽代表不同依賴關(guān)系。例如依照句子“The Food is good but the smell is bad”構(gòu)造的句法依存圖如圖1。
圖1 句法依存圖
“DET”標(biāo)簽代表決定詞,圖中帶有“DET”標(biāo)簽的有向邊從定冠詞“the”指向方面詞“Food”,就代表“Food”的決定詞是“the”。
引入句法依存圖建模有利于處理長文本數(shù)據(jù),解決長距離依賴問題。因此,Dong 等人[5]提出了一種遞歸神經(jīng)網(wǎng)絡(luò),沿著依賴樹自適應(yīng)地將單詞的情感傳播到方面。Nguyen等人[6]引入了一個包含句法信息的注意力模型來計算注意力權(quán)重。Phan等人[7]利用句法依賴樹探討了句法關(guān)系,并運(yùn)用自注意機(jī)制進(jìn)行句法學(xué)習(xí)。近兩年,在傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)(CNN)和圖嵌入的驅(qū)動下,GCN作為高效的CNN變體,其可以直接在圖上運(yùn)行[8],其模型如圖2。
圖2 GCN模型結(jié)構(gòu)圖
(1)
式中:Wl為權(quán)重矩陣;bl為偏置項;σ為激活函數(shù)。
本文設(shè)計了雙策略圖卷積網(wǎng)絡(luò)(Dual-SGCN)模型以解決上述問題。首先,本文使用依賴解析器中反映所有依賴關(guān)系的概率矩陣來構(gòu)建一個基于句法的圖卷積網(wǎng)絡(luò)(Syntactic GCN)。這種方法背后的思想是,與依賴解析器的最終離散輸出相比,表示單詞之間依賴關(guān)系的概率矩陣包含豐富的句法信息。其次,利用自注意機(jī)制構(gòu)建了基于詞共現(xiàn)的圖卷積網(wǎng)絡(luò)(Word co-occurrence GCN)。這種方法背后的思想是,由自注意力形成的注意力矩陣,可以被視為一個邊加權(quán)無向圖,它反映了單詞對之間詞共現(xiàn)的頻率,無向圖的每條邊均會被賦予一個詞共現(xiàn)標(biāo)簽,記錄了訓(xùn)練中被該邊連接的單詞對出現(xiàn)在同一句子中的頻率,進(jìn)而表示單詞對的相關(guān)性。
具體而言,給出句子-方面對(s,a),將長度為n的句子評論表示為s={w1,w2…wn},長度m的方面詞表示為a={a1,a2…am},它也是整個句子s的子序列。同時,方面詞可能是一個單詞也可能是多個單詞組成的短語。利用BiLSTM提取隱含上下文表示,對于BiLSTM編碼器,首先從嵌入查詢表E∈R|v|xde中得到句子s的單詞嵌入x={x1,x2…xn},其中|V|為詞匯量,de表示單詞嵌入的維數(shù)。然后,將句子的單詞嵌入信息輸入BiLSTM,生成隱藏狀態(tài)向量H={h1,h2…h(huán)n},其中hi∈R2d是從BiLSTM得到的t時刻的隱狀態(tài)向量。再將隱藏表示分別輸入SynGCN和WcoGCN模塊,然后采用BiAffine方法實現(xiàn)有效的信息交流。最后,將SynGCN和WcoGCN模塊中所有方面詞節(jié)點(diǎn)的表示通過池化和連接聚合,形成最終的方面表示。整體模型框架圖如圖3。
圖3 整體模型框架圖
SynGCN模塊以句法編碼作為輸入。為了對句法信息進(jìn)行編碼,本文利用了依賴解析器中反映所有依賴關(guān)系的概率矩陣。與依賴解析器的最終離散輸出相比,反應(yīng)所有依賴關(guān)系的概率矩陣可以通過提供所有潛在的句法結(jié)構(gòu)來捕獲豐富的結(jié)構(gòu)信息。在這里,本文使用最新的依賴解析模型LAL-Parser[10]。
WcoGCN不像SynGCN,后者一般是依靠額外的句法知識,前者則利用Self-attention并行計算每個單詞對的注意分?jǐn)?shù)[11],從而獲得鄰接矩陣形式的注意力矩陣,表示為Awco∈Rn×n,然后將注意力分?jǐn)?shù)矩陣Awco作為WcoGCN模塊的鄰接矩陣,表示為
(2)
同時,前文中所獲得的注意力矩陣Awco也會被視為一個邊加權(quán)無向圖。圖中的每個單詞均會與其他單詞有一條直接相連的邊,這種全連接關(guān)系儲存在本文所構(gòu)造的鄰接矩陣中,為了體現(xiàn)單詞之間的語義相關(guān)性,每個單詞對之間的連接的邊均會被賦予一個詞共現(xiàn)標(biāo)簽,它記錄了在訓(xùn)練集中被該條邊連接的單詞對出現(xiàn)在同一句子中的頻率。為了避免詞共現(xiàn)標(biāo)簽特征過于離散,本文對詞共現(xiàn)頻率進(jìn)行分組:當(dāng)單詞對的共現(xiàn)頻率等于20和21時,連接該單詞對的邊將會被標(biāo)記為f0和f1;當(dāng)單詞對的共現(xiàn)頻率范圍在[2k,2k+1](1≤k≤5)時,詞共現(xiàn)標(biāo)簽則分別對應(yīng)f2,…,f6,以句子評論“Food was okay,just so so ”為例,其帶有詞共現(xiàn)標(biāo)簽的加權(quán)無向圖如圖4。
圖4 詞共現(xiàn)圖
因此,利用自注意力機(jī)制可以捕獲句子中每個詞的語義關(guān)聯(lián)詞,確定單詞對的詞共現(xiàn)頻率,比句法結(jié)構(gòu)更靈活。WcoGCN可以適應(yīng)對句法信息不敏感的在線評論。
為了有效交換SynGCN和WcoGCN模塊之間的相關(guān)特征,本文采用了BiAffine變換作為橋梁。流程如下公式:
(3)
(4)
式中,W1和W2是可訓(xùn)練參數(shù)矩陣,最后在SynGCN和WcoGCN模塊的方面節(jié)點(diǎn)應(yīng)用平均池化和連接操作。這樣,就得到了ABSA任務(wù)的最終特征表示:
(5)
(6)
(7)
其中f(·)是在方面節(jié)點(diǎn)表示上應(yīng)用的平均池化函數(shù)。將得到的表示γ送入一個線性層,再通過一個softmax函數(shù)得到情感概率分布P。
P(a) = softmax (Wpλ+bp)。
(8)
其中,Wp和bp都是可學(xué)習(xí)權(quán)重和偏置。
為了精確化詞共現(xiàn)特征,本文參考Li等人[12]設(shè)計了兩個正則化器來增強(qiáng)WcoGCN模塊。因此,在WcoGCN模塊的注意力分?jǐn)?shù)矩陣上加入了一個正交正則化器,來減少不相關(guān)語義的干擾。此外,WcoGCN模塊應(yīng)該能夠?qū)W習(xí)到不同于句法表示的詞共現(xiàn)信息。因此,在SynGCN和WcoGCN之間引入了差分正則化的算法。
每個單詞的相關(guān)詞應(yīng)該在句子中的不同區(qū)域,所以注意力分?jǐn)?shù)的分布應(yīng)該很少重疊。因此,所有單詞的注意力得分向量之間應(yīng)該是正交的。對于前文中給定的注意力得分矩陣Awco∈Rn×n,正交正則化器的表達(dá)式如下:
(9)
式中,I是一個單位矩陣,下標(biāo)F表示Frobenius范數(shù)。所以,AwcoAwcoT各非對角元素最小化,從而維持矩陣Awco正交。
為了從SynGCN和WcoGCN學(xué)習(xí)到的兩種類型特征表示能夠體現(xiàn)包含在句法依賴樹和詞共現(xiàn)相關(guān)性中的不同信息。因此,本文在上述兩大模塊的鄰接矩陣間引入了差分正則化器,且該差分正則化器只約束WcoGCN。表達(dá)式如下所示:
(10)
本文模型最終的損失函數(shù)計算如公式(11)所示:
(11)
式中:λ1,λ2,λ3為正則化系數(shù);Θ為所有可訓(xùn)練模型參數(shù);lC是標(biāo)準(zhǔn)的交叉熵?fù)p失。計算如公式(12)所示:
(12)
式中,S包含所有的句子和方面對,C是不同情緒極性的集合。
本研究在三個公共標(biāo)準(zhǔn)數(shù)據(jù)集上開展實驗。分別是Rest14,Lap14和Twitter的數(shù)據(jù)集,Rest14和Lap14來自SemEval ABSA公開挑戰(zhàn)賽[13]。此外,Twitter數(shù)據(jù)集是推文的集合。這三個數(shù)據(jù)集都有三種情緒極性:積極、消極和中性。這些數(shù)據(jù)集中的每個句子都用標(biāo)記的方面及其對應(yīng)的極性進(jìn)行了注釋。這三個數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)見表1。
表1 數(shù)據(jù)集統(tǒng)計表
對于本文實驗,運(yùn)用預(yù)訓(xùn)練的300維Glove[14]向量,從而實現(xiàn)初始化單詞嵌入的目標(biāo)。單詞嵌入的維數(shù)設(shè)為30,然后將它們輸入到BiLSTM模型中,該模型的隱藏大小設(shè)置為50。為了減少過擬合,對BiLSTM的輸入詞嵌入應(yīng)用dropout,其速率為0.7。SynGCN和WcoGCN模塊的dropout速率為0.1,SynGCN和WcoGCN層數(shù)為2層。全部的模型權(quán)值都進(jìn)行相應(yīng)的均勻分布初始化。本次研究中所運(yùn)用的Adam優(yōu)化器,實際設(shè)定的學(xué)習(xí)速率參數(shù)是0.002。Dual-SGCN于50個epoch之中開展訓(xùn)練處理,設(shè)定具體的批處理數(shù)據(jù)是32。將三個數(shù)據(jù)集的正則化系數(shù)λ1和λ2分別設(shè)為(0.3,0.2)、(0.2,0.2)和(0.2,0.3),λ3設(shè)為10-4。
為了驗證本文模型的有效性,將本文模型與一下方面級情感分析方法進(jìn)行對比分析。
1) RAM[15]:使用多種注意和記憶網(wǎng)絡(luò)學(xué)習(xí)句子表征。
2) TNet[16]:設(shè)計一個多粒度的注意機(jī)制捕獲方面和上下文之間的字級交互。
3) ASGCN[17]:首先提出使用GCN學(xué)習(xí)面向方面的表示來進(jìn)行面向方面的情感分類。
4) CDT[18]:在依賴樹上使用GCN來學(xué)習(xí)帶有句法信息的方面表示。
5) BiGCN[19]:采用層次圖結(jié)構(gòu)集成詞共現(xiàn)信息和依賴類型信息。
6) R-GAT[20]:提出了一種面向方面的依賴樹結(jié)構(gòu),然后用關(guān)系GAT對新的依賴樹進(jìn)行編碼。
為評估ABSA模型,應(yīng)用準(zhǔn)確率(Acc)、F1值為主要指標(biāo)。在Rest14、Lap14和Twitter數(shù)據(jù)集上,本文的Dual-SGCN模型始終優(yōu)于所有基于注意力和句法的方法。這些結(jié)果表明,本文的Dual-SGCN能夠有效地整合句法知識和詞共現(xiàn)信息。Dual-SGCN與RAM和TNet等以注意為基礎(chǔ)的方法進(jìn)行對比,本文模型依靠句法知識來構(gòu)建對應(yīng)的依賴關(guān)系,從而規(guī)避注意機(jī)制導(dǎo)入的噪聲。除此之外,以句法為基礎(chǔ)的方法,如ASGCN、CDT、BiGCN、R-GAT等,雖然比基于注意的方法有更好的性能,但是其忽略單詞對的聯(lián)系??紤]到非正式或復(fù)雜的句子時,僅運(yùn)用句法知識會造成表現(xiàn)不理想。主要實驗結(jié)果見表2。
表2 Dual-SGCN及主流ABSA方法在三個數(shù)據(jù)集的比較 %
為了進(jìn)一步研究各模塊在Dual-SGCN模型中的作用,本次實驗進(jìn)行了消融研究。SynGCN-模型只使用依賴解析器的離散輸出來構(gòu)造GCN的鄰接矩陣。相反,SynGCN利用在依賴解析器中生成的概率矩陣作為鄰接矩陣。在Restaurant和Laptop數(shù)據(jù)集上,SynGCN模型的性能優(yōu)于SynGCN-,這表明豐富的語法知識可以減輕依賴解析錯誤。WcoGCN模型利用自注意層構(gòu)造詞共現(xiàn)圖的鄰接矩陣。這個WcoGCN模型在Twitter數(shù)據(jù)集上的表現(xiàn)優(yōu)于SynGCN,因為與Restaurant和Laptop數(shù)據(jù)集相比,Twitter的評論在很大程度上是對語法信息不敏感的。Dual-SGCN w/oRO&RD表示去掉了正交正則化和微分正則化。類似地,Dual-SGCN w/oRO或RD表示只刪除一個正則化器。實驗結(jié)果表明,本文提出的兩種正則化方法能夠促進(jìn)Dual-SGCN準(zhǔn)確捕獲語義相關(guān)性。總的來說,Dual-SGCN模型所有模塊都被實驗證實其發(fā)揮的作用。消融實驗結(jié)果見表3。
表3 消融實驗研究結(jié)果 %
為了探究GCN層數(shù)這一關(guān)鍵超參數(shù)對于網(wǎng)絡(luò)性能的影響,本節(jié)設(shè)計了模型中圖卷積層數(shù)從1~8時在三個數(shù)據(jù)集上的對比實驗,實驗結(jié)果如圖5。
(a)GCN層數(shù)對準(zhǔn)確率的影響
實驗結(jié)果表明,GCN層數(shù)設(shè)置為2時,網(wǎng)絡(luò)的性能達(dá)到最優(yōu),準(zhǔn)確率(Acc)與F1值兩項指標(biāo)均達(dá)到最高。圖卷積層數(shù)的持續(xù)增加導(dǎo)致實際性能下降。當(dāng)圖卷積層數(shù)相對較少時,節(jié)點(diǎn)表示無法實現(xiàn)遠(yuǎn)距離的傳播,限制了信息的傳遞范圍。然而,當(dāng)層數(shù)過多時,由于梯度消失和信息冗余等實際存在的問題,模型變得非常不穩(wěn)定,導(dǎo)致過擬合的現(xiàn)象加劇。因此,需要在選擇圖卷積層數(shù)時進(jìn)行權(quán)衡,避免使用過多的圖卷積層,以免影響模型的性能。正確的層數(shù)選擇可以在保持信息傳遞范圍的同時避免過擬合的問題,從而提高模型的魯棒性和泛化能力。
提出一種Dual-SGCN模型架構(gòu),以解決基于注意力和基于句法依賴的ABSA任務(wù)方法的缺點(diǎn)。Dual-SGCN模型通過SynGCN和WcoGCN模塊集成了句法知識和詞共現(xiàn)信息。此外,為了有效地捕獲單詞之間的詞共現(xiàn)信息,從而提高語義相關(guān)性,本文在兩個模塊間提出了正交正則化和差分正則化。這些正則化器可以處理句法和詞共現(xiàn)相關(guān)的項,每個詞的重疊較少,并捕獲不同于句法結(jié)構(gòu)的特征表示。在三個公共數(shù)據(jù)集上的實驗表明,本文的Dual-SGCN模型優(yōu)于其他對比模型,提高了準(zhǔn)確率。