劉 輝,馬 祥*,張琳玉,何如瑾
(1.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065;2.重慶郵電大學(xué) 通信新技術(shù)應(yīng)用研究中心,重慶 400065)
情感分析按分析的粒度不同可以分為文檔級、句子級和方面級[1],其中方面級情感分析(Aspect-Based Sentiment Analysis,ABSA)由于能分析出句子中特定方面的情感而受到廣泛研究。在使用深度學(xué)習(xí)前,Jiang 等[2]首次提出40%的情感分析錯誤是由于沒有考慮句子中的方面信息,并在Twitter 數(shù)據(jù)集上驗(yàn)證了方面詞對于情感分析的重要作用,由此引發(fā)了對于ABSA 的廣泛研究;Kiritchenko 等[3]利用支持向量機(jī)(Support Vector Machine,SVM)作為分類器在ABSA 中取得了不錯的效果。但這些方法依賴人工標(biāo)注特征,使ABSA 的發(fā)展受到了限制。近年來,深度學(xué)習(xí)方法被廣泛用于方面級情感分析,并且大多依賴于長短時記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò)和注意力機(jī)制。LSTM 由于可以避免梯度消失或爆炸的問題被廣泛用于特征提?。?-5],Tang等[6]使用LSTM 的隱藏表示預(yù)測情感;Ruder 等[7]使用雙向長短時記憶網(wǎng)絡(luò)(Bidirectional LSTM,Bi-LSTM)獲得了更好的分類效果;Li 等[8]提出了特定目標(biāo)的轉(zhuǎn)換網(wǎng)絡(luò)(Targetspecific transformation network,Tnet),將上下文特征和轉(zhuǎn)換后的特征卷積以獲取最終表示。但以上模型采用傳統(tǒng)的LSTM,同等地看待上下文詞,無法準(zhǔn)確地匹配與方面詞更相關(guān)的上下文詞。因此,Wang 等[9]引入注意力機(jī)制,并將方面嵌入直接拼接到上下文嵌入中,取得了不錯的效果,證明了注意力機(jī)制在ABSA 中的作用;Xu 等[10]結(jié)合局部上下文焦點(diǎn),依賴集群構(gòu)建注意力用于方面級情感分析;Basiri 等[11]基于注意力機(jī)制,構(gòu)建了一種融合卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)與循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的情感分析模型;Tang 等[12]提出深度記憶網(wǎng)絡(luò)(deep Memory Network,MemNet),采用多層注意力分配上下文權(quán)重獲得了更好的分類效果。但是以上模型采用的注意力機(jī)制忽略了方面詞與上下文的交互,限制了分類性能。為了實(shí)現(xiàn)方面詞與上下文的交互,獲取更好的特征表示,Ma等[13]和Huang 等[14]分別提出了交互注意力網(wǎng)絡(luò)(Interactive Attention Network,IAN)和雙重注意力網(wǎng)絡(luò)AOA(Attention-Over-Attention),使方面詞與上下文詞分別參與對方的建模,進(jìn)一步提高了分類性能。然而,這些交互注意力機(jī)制沒有逐詞地計算方面詞與上下文的一致性,可能錯誤地關(guān)聯(lián)與方面詞不相關(guān)的上下文詞,限制了分類性能,此外,也缺少對語法特征的分析。圖卷積網(wǎng)絡(luò)(Graph Convolutional Network,GCN)由于能夠捕獲單詞間的語法特征而被應(yīng)用于ABSA,Zhou 等[15]提出一種基于語法和知識的圖卷積網(wǎng)絡(luò);Zhu 等[16]提出一種利用局部和全局信息引導(dǎo)圖卷積網(wǎng)絡(luò)構(gòu)建的模型;Zhang 等[17]提出了特定方面的圖卷積網(wǎng)絡(luò)(Aspect-Specific GCN,ASGCN),用GCN 提取方面詞特征后再反饋給上下文表示,獲得交互注意力權(quán)重作為情感分類的依據(jù)。然而,GCN 使用相對位置權(quán)重,缺乏語法距離的考慮,很可能錯誤地將方面詞與語法上關(guān)聯(lián)度不高的上下文進(jìn)行匹配,導(dǎo)致情感分類錯誤。如“The food is great,the prices are very expensive.”中,方面詞“prices”與“great”和“expensive”的相對距離分別為2 和3,則很可能將“great”作為情感線索得到對“prices”積極的情感。
針對上述方面詞與不相關(guān)的上下文錯誤匹配的問題,本文提出了一種融合匹配長短時記憶網(wǎng)絡(luò)(match-LSTM,mLSTM)和語法距離的方面級情感分析模型mLSTM-GCN,從語義上逐詞計算方面詞和上下文的一致程度,將得到的方面詞注意力加權(quán)表示與上下文表示融合作為mLSTM 的輸入,得到與方面詞更關(guān)聯(lián)的上下文表示;同時,從語法層面引入語法距離作為位置權(quán)重,使與方面詞語法關(guān)聯(lián)度更高的上下文可以獲得更大的權(quán)重;最后,在計算上下文與方面詞之間的交互信息時,增加語法距離權(quán)重作為輸入,獲得含有更多特征的注意力表示用于情感分類。在Twitter、REST14 以及LAP14 數(shù)據(jù)集上驗(yàn)證,mLSTM-GCN 在準(zhǔn)確率和macro-F1 兩個指標(biāo)上明顯優(yōu)于對比模型。
mLSTM-GCN 模型如圖1 所示,由Bi-LSTM 層、mLSTM層、語法距離權(quán)重層、圖卷積層、方面掩蓋層和信息交互層等組成,其中,mLSTM 用于獲取更加準(zhǔn)確的方面詞與上下文匹配,得到與方面詞關(guān)聯(lián)度更高的上下文表示;語法距離權(quán)重層減少了方面詞和語法關(guān)聯(lián)度不大的上下文錯誤匹配的概率;信息交互層將語法距離權(quán)重的輸出也作為輸入,得到了有利于提升性能的最終表示。
圖1 mLSTM-GCN模型框架Fig.1 Framework of mLSTM-GCN model
傳統(tǒng)方法沒有逐一地匹配方面詞與上下文,方面詞可能會將不相關(guān)的上下文作為判斷情感的線索,導(dǎo)致錯誤的分類。受到Wang 等[18]的啟發(fā),將mLSTM 引入方面級情感分析,逐一計算方面詞與上下文詞的一致性,進(jìn)一步加強(qiáng)方面詞和重要的上下文詞的匹配,可以有效地避免錯誤匹配的問題。本文在得到方面隱藏狀態(tài)對上下文單詞的注意力向量時,采用拼接操作將該注意力向量與上下文表示融合以增強(qiáng)方面特征,并將該矩陣作為mLSTM 的輸入,得到與方面詞更加關(guān)聯(lián)的上下文表示。
逐詞匹配的主要思想是引入方面隱藏狀態(tài)的一系列注意力加權(quán)組合,每個組合用于上下文中對應(yīng)的特定單詞。使用和分別表示方面詞和上下文詞的隱藏狀態(tài),用ak表示方面隱藏狀態(tài)對上下文中單詞的注意力向量:
其中:αkj用于編碼上下文詞和方面詞之間的注意權(quán)重,注意力權(quán)重越大,方面詞與上下文之間的一致性越高。αkj由式(2)計算:
其中:ekj′用于獲取上下文詞與不同方面詞之間的關(guān)聯(lián);ekj由式(3)得到。
其中:we和所有的參數(shù)矩陣W*均為可學(xué)習(xí)的權(quán)重矩陣是由mLSTM 產(chǎn)生的第k個位置的隱藏狀態(tài)。mLSTM 模擬了方面詞和上下文的匹配,通過mLSTM,重要的匹配會被保留,非必要的匹配則會被忽略。將上下文中第k個單詞的關(guān)于方面詞的注意力權(quán)重ak與上下文中第k個單詞的隱藏狀態(tài)融合起來,作為mLS TM 的輸入mk。
得到mLSTM 的輸入后,用式(5)~(9)構(gòu)建mLSTM。
方面詞和上下文語法關(guān)聯(lián)度不高導(dǎo)致語法層面特征不足,分類效果不佳。引入語法距離代替?zhèn)鹘y(tǒng)的相對距離,語法距離是方面詞和上下文在句法依賴樹中的路徑長度,可以獲取更豐富的語法特征。句法依賴樹由spaCy 庫構(gòu)建,如:句子“This French food tastes very well,but the restaurant has poor service.”中方面詞“food”的句法依賴樹如圖2 所示,其中的數(shù)字為各單詞到方面詞“food”的語法距離。
圖2 “food”的句法依賴樹Fig.2 Syntactic dependency tree of “food”
構(gòu)建句法依賴樹后,根據(jù)蘇錦鈿等[19]提出的語法距離算法得到語法距離向量DS,a=(d1,a,d2,a,…,dn,a),其中dk,a為上下文中第k個單詞與方面詞的語法距離。上下文詞的權(quán)重值lk為:
其中:dmax為DS,a中語法距離的最大值。由式(10)可知,lk∈[0.5,1],保證了語法距離小的上下文具有更大的位置權(quán)重,可以減小與目標(biāo)方面無關(guān)的其他方面的情感詞的影響。
位置權(quán)重層的輸出為Hpm=,其中=
圖卷積網(wǎng)絡(luò)充分利用句法依賴樹,具備感知語法的能力,將詞匯表示為節(jié)點(diǎn),詞匯之間的關(guān)系用邊表示,可以將文本用圖結(jié)構(gòu)表示。單層的圖卷積網(wǎng)絡(luò)示例如圖3 所示。
圖3 圖卷積網(wǎng)絡(luò)示例Fig.3 Example of GCN
本文使用圖卷積網(wǎng)絡(luò)獲取情感特征,將位置權(quán)重層的輸出Hpm、上下文的隱藏表示Hm和句子依賴樹的鄰接矩陣Aij作為圖卷積網(wǎng)絡(luò)的輸入。假設(shè)圖卷積網(wǎng)絡(luò)為L層,則圖卷積網(wǎng)絡(luò)的更新規(guī)則如式(11)所示。
其中:為第l層圖卷積網(wǎng)絡(luò)的第i個節(jié)點(diǎn)的隱藏表示;為第l-1 層的第j個節(jié)點(diǎn)的隱藏表示;Aij是n×n的鄰接矩陣,由句法依賴樹得到,Aij=1 表示節(jié)點(diǎn)i和節(jié)點(diǎn)j之間有連接,自環(huán)設(shè)定為1;Wl是權(quán)重矩陣bl為偏差項(xiàng),Wl和bl都可訓(xùn)練表示與第i個節(jié)點(diǎn)相關(guān)聯(lián)的邊數(shù)。
最后得到L層圖卷積網(wǎng)絡(luò)的隱藏表示為HL=
方面掩蓋層只讓方面的隱藏表示通過,對于非方面的單詞,不能通過。經(jīng)過方面掩蓋層的隱藏表示由式(12)表示。
其中:代表方面詞t的隱藏表示;τ+1 表示方面詞的起始位置;τ+q表示方面詞的結(jié)束位置。
在計算最終的注意力權(quán)重時,本文考慮了包含上下文語義、位置權(quán)重和帶有語法信息的方面特征等多重因素,充分利用了文本信息。使用上下文表示Hm、位置權(quán)重層Hpm和方面特征表示得到最終的注意力權(quán)重向量ra。
情感分類層以最終的注意力權(quán)重ra作為輸入,使用Softmax 函數(shù)獲取情感的概率分布p。
其中:權(quán)重矩陣Wp和偏置項(xiàng)bp為可訓(xùn)練的。
2.1.1 實(shí)驗(yàn)平臺與數(shù)據(jù)集
本文實(shí)驗(yàn)在Pycharm 環(huán)境下進(jìn)行,并基于Pytorch 深度學(xué)習(xí)平臺,具體的實(shí)驗(yàn)環(huán)境信息如表1 所示。實(shí)驗(yàn)選取的3 個公開基準(zhǔn)數(shù)據(jù)集數(shù)據(jù)集的詳細(xì)信息如表2 所示。
表1 實(shí)驗(yàn)環(huán)境Tab.1 Experimental environment
表2 各數(shù)據(jù)集樣本數(shù)量信息Tab.2 Information on the number of samples of each dataset
2.1.2 參數(shù)選擇
詞匯表以外的詞語和權(quán)重矩陣,通過均勻分布U(-0.1,0.1)初始化,偏置初始化為0。由于Word2Vec 只考慮局部信息,GloVe 更容易并行處理文本,并且考慮了全局信息。此外,相較于基于變換器的雙向編碼器(Bidirectional Encoder Representations from Transformers,BERT),GloVe 能夠更好地處理詞匯表以外的單詞,因此本文采用GloVe 得到初始的詞嵌入,維度為300,隱藏狀態(tài)的維度為300。訓(xùn)練過程使用適應(yīng)性矩估計(Adaptive moment estimation,Adam)優(yōu)化器更新參數(shù),GCN 的層數(shù)設(shè)置為2,其他相關(guān)參數(shù)如表3 所示。
表3 實(shí)驗(yàn)參數(shù)設(shè)置Tab.3 Experimental parameter settings
本文采用方面級情感分析中廣泛使用的準(zhǔn)確率(Accuracy,Acc)和宏平均(Macro-F1,F(xiàn)M)值作為模型的評價指標(biāo)。準(zhǔn)確率是正確預(yù)測的樣本占樣本總數(shù)的比例;FM將所有類別F1 的平均值作為整體樣本的F1 值,指標(biāo)的值越大表示分類效果越好。
準(zhǔn)確率和F1 的計算如式(17)~(20)所示。
其中:TN表示真負(fù)樣本;FN表示假負(fù)樣本;FP表示假正樣本;TP表示真正樣本;P表示精確率;R表示召回率。
使用交叉熵函數(shù)以及L2正則化機(jī)制作為損失函數(shù):
其中:C為情感類別的數(shù)目;y i為真實(shí)的情感極性;pi為預(yù)測的情感極性;λ為L2正則化的權(quán)重;θ為要訓(xùn)練的參數(shù)。同時,為了防止模型的過擬合,采用了Dropout 策略。
2.4.1 與其他模型的對比實(shí)驗(yàn)
為了評估m(xù)-LSTM-GCN 模型的性能,在三個數(shù)據(jù)集上與以下模型對比,實(shí)驗(yàn)結(jié)果如表4 所示,最優(yōu)結(jié)果加粗表示,次優(yōu)結(jié)果用下劃線表示。
1)LSTM[6]:用LSTM 的隱藏表示預(yù)測情感。
2)MemNet[12]:多次循環(huán)計算注意力與方面詞融合,最后用Softmax 預(yù)測情感。
3)AOA[14]:考慮方面詞和上下文的相互影響,共同學(xué)習(xí)方面以及句子的表示。
4)IAN[13]:用注意力層交互建模方面詞和上下文的語義表示,最后將二者融合作為最終表示。
5)Tnet[8]:將上下文特征和轉(zhuǎn)換后的特征卷積以獲取最終表示。
6)ASGCN[17]:構(gòu)建多層GCN 獲取方面詞的語法特征,并結(jié)合注意力機(jī)制得到最終表示。
7)雙向圖卷積網(wǎng)絡(luò)(Bidirectional GCN,BiGCN)[20]:分層次建立語法圖和詞匯圖,區(qū)分各種類型的依賴關(guān)系和詞對,通過BiGCN 利用這兩個圖,結(jié)合單詞共現(xiàn)信息分類。
8)基于依賴樹的圖卷積網(wǎng)絡(luò)(GCN based on Dependency tree,DepGCN)[21]:用自注意力的方法得到潛在圖結(jié)構(gòu),再通過圖卷積網(wǎng)絡(luò)得到句法信息。
從表4 可以看出,在三個數(shù)據(jù)集上,m-LSTM-GCN 模型的準(zhǔn)確率和FM在大部分情況下優(yōu)于對比模型,說明同時考慮逐詞匹配方面詞和上下文、融合語法距離權(quán)重并改進(jìn)最終的注意力機(jī)制能提高情感分類性能。與ASGCN 相比,本文模型使用了mLSTM 逐詞地匹配方面詞與上下文,大大降低了方面詞將非目標(biāo)方面情感線索作為判斷該目標(biāo)方面情感極性的概率,同時,使用語法距離可以更好地獲得語法層面的特征,因此本文模型的準(zhǔn)確率分別提高了1.32、2.50 和1.63個百分點(diǎn),F(xiàn)M分別提升了2.52、2.19 和1.64 個百分點(diǎn)。在REST14 上表現(xiàn)次優(yōu)的BiGCN 缺乏上下文與方面詞之間的關(guān)聯(lián),而本文模型從語義上計算方面詞與上下文的一致程度,又采用語法距離賦予和方面詞語法關(guān)聯(lián)更大的上下文更大的權(quán)重,因此結(jié)果更優(yōu)。
表4 不同模型的準(zhǔn)確率和FM 單位:%Tab.4 Accuracy and FM score of different models unit:%
在Twitter 數(shù)據(jù)集上,與最優(yōu)的Tnet 相比,本文模型的準(zhǔn)確率和FM分別降低了0.34 和0.38 個百分點(diǎn),這是由于Twitter 數(shù)據(jù)集上語料松散,相較于另外兩個數(shù)據(jù)集容易出現(xiàn)一詞多義現(xiàn)象,而本文采用的GloVe 預(yù)訓(xùn)練模型僅能獲取其中一個的含義,一定程度上影響了模型性能;并且Twitter 數(shù)據(jù)集含有不符合語法的句子,因此本文模型按照語法結(jié)構(gòu)分析,性能相較于最優(yōu)的Tnet 略有降低。在LAP14 數(shù)據(jù)集上本文模型性能相較于Tnet 的提升程度低于REST14,因?yàn)榍罢邤?shù)據(jù)集小于后者,說明數(shù)據(jù)集的大小也影響分類性能。在REST14 上本文模型性能有了明顯提升,相較于Tnet,準(zhǔn)確率和FM分別提升了1.88 和2.54 個百分點(diǎn),因?yàn)镽EST14 的一個句子中多含有幾個方面詞,mLSTM 減少了將非目標(biāo)方面的情感線索用來判斷目標(biāo)方面情感的概率,從而提升了性能。
2.4.2 各模塊有效性實(shí)驗(yàn)
為了驗(yàn)證本文模型各子模塊的有效性,進(jìn)行消融實(shí)驗(yàn)。
1)mLSTM-GCN/mLSTM:移除mLSTM 子模塊,將經(jīng)過Bi-LSTM 的隱藏表示直接作為上下文的向量表示。
2)mLSTM-GCN-P:用單詞間的相對距離權(quán)重pk代替語法距離權(quán)重lk,驗(yàn)證語法距離優(yōu)于相對距離,其中的相對距離權(quán)重如式(22)所示。
3)mLSTM-GCN/PA:在計算最終的交互信息時,不直接將語法距離權(quán)重作為輸入,僅使用方面特征表示和上下文表示來計算交互信息。
4)mLSTM-GCN:本文模型。
分別在Twitter、REST14 和LAP14 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),結(jié)果如圖4 所示??梢钥闯?,去除了本文的mLSTM 模塊后,在三個數(shù)據(jù)集上的準(zhǔn)確率和FM均最低;將語法距離換成相對位置距離,對Twitter 數(shù)據(jù)集的影響最小,這是由于與其他兩個數(shù)據(jù)集相比,Twitter 中有更多不符合語法的句子;計算交互信息權(quán)重時不將語法距離權(quán)重作為輸入,準(zhǔn)確率和FM值也有一定的下降;本文模型在三個數(shù)據(jù)集上均取得了最好的性能,說明引入mLSTM 逐詞對方面詞和上下文匹配,降低錯誤匹配非目標(biāo)的情感線索的概率以及用語法距離代替相對距離,可以取得更好的效果。
圖4 消融實(shí)驗(yàn)結(jié)果Fig.4 Results of ablation experiment
2.4.3 GCN層數(shù)對性能的影響
為驗(yàn)證GCN 層數(shù)對模型性能的影響,在LAP14 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。取GCN 的層數(shù)從1 到12,結(jié)果如圖5 所示??梢钥闯?,GCN 層數(shù)為2 時,適當(dāng)?shù)腉CN 層數(shù)可以學(xué)習(xí)到更深層次的特征,準(zhǔn)確率和FM值均達(dá)到了最好性能,分別為76.60%和72.69%,因此本文GCN 層數(shù)設(shè)置為2;當(dāng)GCN 層數(shù)為3 或者4 時,性能略有下降,這是因?yàn)殡S著層數(shù)的增加,GCN 中的變換操作變多,導(dǎo)致節(jié)點(diǎn)的特征方差過大,很容易出現(xiàn)梯度爆炸的問題,使得模型性能退化;當(dāng)GCN 層數(shù)大于4 時,由于參數(shù)過多,難以訓(xùn)練,同時容易出現(xiàn)過擬合現(xiàn)象,因此性能呈迅速下降趨勢。
圖5 不同圖卷積層數(shù)的準(zhǔn)確率和FMFig.5 Accuracy and FM with different GCN layers
針對現(xiàn)有研究容易出現(xiàn)的方面詞與不相關(guān)上下文錯誤匹配的問題,本文設(shè)計了融合匹配長短時記憶網(wǎng)絡(luò)和語法距離的方面級情感分析模型mLSTM-GCN,逐一地計算方面詞與上下文的一致性,獲取上下文關(guān)于方面詞的注意力權(quán)重,并將該權(quán)值與上下文隱藏表示融合作為構(gòu)建mLSTM 的輸入,獲取更精確的與方面詞有關(guān)的上下文表示;同時使用語法距離從語法層面上使得方面詞與上下文能夠更準(zhǔn)確地匹配。實(shí)驗(yàn)結(jié)果表明,mLSTM-GCN 模型在性能上有明顯提升;但是在Twitter 數(shù)據(jù)集上處理不符合語法句子的效果仍有待提升。如何更好地分析不符合語法規(guī)則的句子以及考慮方面間的相互影響,將在今后的工作中完善。