馮浩甲,李 旸,王素格,2,符玉杰,慕永利
(1.山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,山西 太原 030006;2.山西大學(xué) 計(jì)算機(jī)智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原 030006;3.山西財(cái)經(jīng)大學(xué) 金融學(xué)院, 山西 太原 030006)
隨著社交網(wǎng)絡(luò)的飛速發(fā)展,越來(lái)越多的人們?cè)谖⒉?、Facebook、淘寶等平臺(tái)發(fā)布帶有主觀情緒傾向的文本信息,如何對(duì)這些帶有主觀情緒傾向的網(wǎng)絡(luò)文本進(jìn)行處理,需要情感分析技術(shù)的支持。與大多數(shù)研究者僅關(guān)注于情緒識(shí)別和分類(lèi)問(wèn)題的研究不同,Lee等[1]首次提出了情緒原因抽取(ECE)任務(wù),其目的是抽取情緒相對(duì)應(yīng)的原因,并將其定義為字級(jí)別的序列標(biāo)注問(wèn)題。之后,Gui等[2]發(fā)布了中英文開(kāi)放語(yǔ)料庫(kù),并且將ECE任務(wù)定義為子句級(jí)別。目前,該語(yǔ)料庫(kù)已受到研究者的廣泛關(guān)注,并成為ECE任務(wù)的基準(zhǔn)數(shù)據(jù)集。然而,對(duì)于ECE任務(wù),需要首先標(biāo)注子句的情緒,從而限制了ECE任務(wù)的實(shí)際應(yīng)用,另一方面,再對(duì)情緒進(jìn)行標(biāo)注時(shí),并沒(méi)有考慮情緒與原因之間的相互聯(lián)系。因此,Xia等[3]提出了情緒原因?qū)Τ槿?ECPE)任務(wù),其目標(biāo)是抽取文檔中潛在的情緒子句及其對(duì)應(yīng)的原因子句。例如,表1給出一個(gè)情緒原因?qū)Τ槿〉氖纠?/p>
表1 情緒原因?qū)Τ槿∈纠?/p>
表1中包括了文檔的四個(gè)子句,其中,子句c3為情緒子句,包含情感詞“感動(dòng)”,與之對(duì)應(yīng)的原因子句為c2,情緒原因?qū)Τ槿∪蝿?wù)是直接獲得
為了抽取情緒原因?qū)?,Xia等[4]提出的ECPE-2D模型以矩陣形式表示候選情緒原因?qū)?,并在此矩陣上進(jìn)行交互和預(yù)測(cè)。Fan等[5]將該抽取任務(wù)看作基于動(dòng)作轉(zhuǎn)移的有向圖構(gòu)建過(guò)程,根據(jù)模型生成的帶有標(biāo)簽的邊,同時(shí)抽取情緒子句和原因子句。Chen等[6]提出的IE-CNN模型將情緒標(biāo)簽和因果標(biāo)簽組合,把情緒原因?qū)σ暈樾蛄袠?biāo)注問(wèn)題。現(xiàn)有的這些模型雖然使用深度學(xué)習(xí)方法從不同的角度抽取情緒原因?qū)?,但是情緒子句和原因子句是相互聯(lián)系的[3],情感詞在情緒子句編碼時(shí)可以豐富其情感信息,進(jìn)而促進(jìn)情緒子句和原因子句的抽取性能。因此,本文在情緒原因?qū)Τ槿〗r(shí)引入情感詞典,提出了一個(gè)使用情感詞典、圖網(wǎng)絡(luò)和多頭注意力(Sen-BiGAT-Inter)的情緒原因?qū)Τ槿》椒?。該方法利用BERT[7]建立了一個(gè)融合情感詞匯信息的子句詞向量表示方法,再利用兩個(gè)圖注意力網(wǎng)絡(luò)分別學(xué)習(xí)情緒子句間的關(guān)系以及原因子句間的關(guān)系,在此基礎(chǔ)上,利用多頭注意力機(jī)制建模候選句對(duì)間的關(guān)系,進(jìn)而得到具有因果關(guān)系的情緒原因?qū)?。?shí)驗(yàn)結(jié)果顯示,Sen-BiGAT-Inter模型達(dá)到當(dāng)前最好的性能。本文主要貢獻(xiàn)概括如下:
(1) 將情感詞匯信息引入到子句的表示中,使句子在編碼時(shí)包含豐富的情感信息和上下文語(yǔ)義信息。
(2) 建立兩個(gè)圖注意力網(wǎng)絡(luò),用于學(xué)習(xí)情緒子句和原因子句表示,以獲取候選情緒原因?qū)Φ谋硎?。?yīng)用多頭注意力機(jī)制,使情緒子句與原因子句對(duì)間進(jìn)行有效交互,從而學(xué)習(xí)候選情緒原因?qū)Φ娜中畔ⅰ?/p>
(3) 提出的Sen-BiGAT-Inter模型,在中文情緒原因?qū)?shù)據(jù)集上進(jìn)行實(shí)驗(yàn),取得了情緒原因?qū)Τ槿∧壳白詈玫男阅堋?/p>
目前,情感原因抽取方法主要包括基于規(guī)則、統(tǒng)計(jì)機(jī)器學(xué)習(xí)以及深度學(xué)習(xí)。Lee等[1]構(gòu)建了情感原因抽取的人工規(guī)則集,并標(biāo)注了情感原因抽取語(yǔ)料庫(kù),在此工作上,針對(duì)新聞文本,使用一種語(yǔ)言學(xué)規(guī)則驅(qū)動(dòng)的方法[8],抽取情緒表達(dá)及其對(duì)應(yīng)的原因。Gui等[9]將規(guī)則集的匹配結(jié)果作為部分特征,加上其他語(yǔ)言學(xué)特征,使用多核SVM 對(duì)情感原因子句進(jìn)行分類(lèi),取得了不錯(cuò)效果。此類(lèi)方法存在的問(wèn)題是需要人工構(gòu)造大量的規(guī)則集,然而,規(guī)則的建立、特征的提取和篩選需要經(jīng)驗(yàn)指導(dǎo),且制定的規(guī)則并不能完全覆蓋所有的語(yǔ)言現(xiàn)象,同時(shí)該方法還缺乏對(duì)上下文語(yǔ)義信息的建模。Gui等[10]將深度學(xué)習(xí)方法引入情感原因抽取問(wèn)題,提出了一種新的基于卷積操作的深度記憶網(wǎng)絡(luò),通過(guò)使用深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)詞語(yǔ)向量化表示。Chen等[11]提出了一種基于神經(jīng)網(wǎng)絡(luò)的情感分類(lèi)和情感原因抽取聯(lián)合方法,試圖捕獲兩個(gè)子任務(wù)的相互影響。Fan等[12]提出了一種基于層次神經(jīng)網(wǎng)絡(luò)模型和基于知識(shí)正則化的方法提取情感原因,其目的是在融合語(yǔ)境信息的基礎(chǔ)上,利用情感詞匯和常識(shí)來(lái)約束參數(shù)。Li等[13]提出了一種基于上下文感知的多視角注意力模型,此模型將基于上下文的句子表示和基于情感詞的句子表示進(jìn)行整合,獲得最終子句的分類(lèi)。對(duì)于原因子句與非原因子句數(shù)量不平衡問(wèn)題,慕等[14]提出了一種集成的卷積神經(jīng)模型,利用多個(gè)卷積神經(jīng)網(wǎng)絡(luò)集成降低了數(shù)據(jù)不平衡對(duì)情緒原因識(shí)別的影響。Xia等[15]提出了一種聯(lián)合情感原因提取框架 RTHN,該框架由RNN編碼每個(gè)子句,再采用Transformer編碼學(xué)習(xí)文檔中多個(gè)子句之間的相關(guān)性,并將相對(duì)位置和全局預(yù)測(cè)信息編碼到模型中,以捕獲子句之間的因果關(guān)系,提升情緒原因識(shí)別的性能。Li等[16]采用雙向長(zhǎng)短時(shí)記憶對(duì)子句進(jìn)行編碼,使其包含單詞的上下文信息,在此基礎(chǔ)上,設(shè)計(jì)一個(gè)注意力機(jī)制,捕捉情緒子句與每個(gè)候選子句之間的相互關(guān)系,從而分別生成上述兩個(gè)子句的表示。
對(duì)于情緒原因?qū)Τ槿∪蝿?wù),Xia等[3]利用管道方式ECPE-2Steps,提取文檔中潛在的情緒子句和對(duì)應(yīng)的原因子句。為了克服管道模型的缺點(diǎn),Xia等[4]又提出了ECPE-2D模型,將表示、交互以及預(yù)測(cè)融合在一個(gè)統(tǒng)一的模型中,從而對(duì)情緒原因?qū)M(jìn)行抽取。Fan等[5]將情緒原因?qū)Τ槿】醋骰谵D(zhuǎn)移的有向圖構(gòu)建過(guò)程,以此來(lái)解決ECPE-2Steps模型管道錯(cuò)誤傳播問(wèn)題。Wei等[17]針對(duì)ECPE-2Steps模型的不足,提出了RANKCP方法,將圖注意網(wǎng)絡(luò)引入情緒原因?qū)Τ槿∪蝿?wù)中,取得了不錯(cuò)的性能。Yuan等[18]將情感原因?qū)Τ槿∫暈橐粋€(gè)序列標(biāo)記問(wèn)題,提出了一種新的標(biāo)記方案,同時(shí)提取情緒子句和相應(yīng)的原因子句。由于端到端的模型是從左到右處理輸入文本的,因此,提高了處理速度。Tang等[19]利用多層次注意力機(jī)制解決情緒原因?qū)Τ槿?。Chen等[6]將因果關(guān)系的情緒標(biāo)簽引入模型中,構(gòu)造一個(gè)統(tǒng)一的標(biāo)簽集,并提出IE-CNN方法,將情緒原因?qū)σ暈樾蛄袠?biāo)注問(wèn)題。Ding等[20]通過(guò)滑動(dòng)窗口的多標(biāo)簽學(xué)習(xí)來(lái)解決情緒原因?qū)Τ槿 5@些方法均沒(méi)有將情感作為重要信息引入情緒原因?qū)Τ槿〉谋硎局小?/p>
情緒原因?qū)Τ槿∪蝿?wù)旨在從文檔D中抽取一系列具有因果關(guān)系的情緒原因?qū)?。為了更好地運(yùn)用情感詞匯信息,需要先對(duì)輸入句子進(jìn)行預(yù)處理,即對(duì)輸入句子進(jìn)行分詞,并將得到的詞匯在情感詞典中檢索,若某個(gè)詞匯在情感詞典中,便將該詞加到相應(yīng)子句的末尾,否則該子句不做任何處理??紤]到圖注意力模型中句子表示是由其鄰居聚集信息產(chǎn)生的,如果文檔中的一個(gè)情緒子句包含多個(gè)原因子句,那么該情緒子句一旦由其鄰居節(jié)點(diǎn)表示,情緒子句的情緒原因信息將丟失,因此,本文采用兩個(gè)圖注意力層對(duì)情緒子句和原因子句分別進(jìn)行表示。為了進(jìn)一步獲得較好的子句表示,本文將情緒子句和抽取原因子句的抽取任務(wù)作為輔任務(wù),并將情緒子句的交叉熵?fù)p失、原因子句的交叉熵?fù)p失與最終情緒原因?qū)徊骒負(fù)p失相加,作為模型的最終損失。
本文模型的總體框架包含四個(gè)部分: 編碼層;圖注意力層;交互層;預(yù)測(cè)層。以表1中呈現(xiàn)的四個(gè)子句為例,總體模型框架如圖1所示。
圖1 總體模型框架
圖2 編碼層模型架構(gòu)
2.2.1 圖注意力
(1)
其中,[,;,]是拼接操作。
通過(guò)堆疊T層圖注意力層建模句間關(guān)系,得到最后一層圖注意力的輸出子句表示,記為hT=(h1,h2,…,hn)T∈Rn×d。
2.2.2 情緒子句表示
(4)
2.2.3 原因子句表示
(5)
為了準(zhǔn)確定位情緒原因子句的位置,本文對(duì)數(shù)據(jù)進(jìn)行情緒原因?qū)ο鄬?duì)位置統(tǒng)計(jì),統(tǒng)計(jì)結(jié)果如表2所示。
表2 情緒原因?qū)ο鄬?duì)位置統(tǒng)計(jì)表
從表2可知,原因子句一般分布在情緒子句的周?chē)?,因此,相?duì)位置是非常重要的信息。
為了高效和準(zhǔn)確地抽取情緒原因?qū)Γ疚膬H考慮候選情緒原因?qū)?。選擇滿(mǎn)足式(6)條件的情緒原因?qū)楹蜻x項(xiàng),對(duì)于候選情緒原因句對(duì),其表示直接由子句ci及其限定范圍內(nèi)相鄰的子句cj相對(duì)應(yīng)的隱層向量拼接得到。
(6)
將所有候選情緒原因?qū)Ρ硎窘M成大矩陣H,如式(7)所示。
H=[H1,H2,…,Hn]∈Rt×2d
(7)
其中,t是所有滿(mǎn)足式(6)的候選情緒原因?qū)?shù)目。
為了充分獲取子句對(duì)的全局信息,該文在H上使用多頭注意力機(jī)制,如式(8)所示。
(8)
(9)
其中,Nh表示注意力頭的數(shù)量,dk為多頭注意力隱層向量維度。
(10)
其中,Wp和bp是學(xué)習(xí)的參數(shù)。
采用Sigmoid函數(shù)對(duì)最終的情緒原因?qū)M(jìn)行預(yù)測(cè),如式(11)所示。
(11)
情緒原因?qū)p失函數(shù)定義如式(12)所示。
(12)
類(lèi)似地,輔任務(wù)情緒子句和原因子句的損失函數(shù)分別定義為L(zhǎng)emo和Lcau。
整個(gè)模型的最終損失由情緒原因?qū)?、情緒子句和原因子句三個(gè)損失之和確定,如式(13)所示。
L=Lpair+Lemo+Lcau
(13)
本文采用Xia等[3]發(fā)布的中文情緒原因發(fā)現(xiàn)數(shù)據(jù)集,此數(shù)據(jù)集是基于Gui等[2]發(fā)布的中文情緒原因語(yǔ)料庫(kù)構(gòu)建的,共收集1 945個(gè)文檔,每篇文檔平均含有子句數(shù)目為14.77句,所有文檔中最多含有73個(gè)子句。具體統(tǒng)計(jì)信息如表3所示。
表3 中文情感原因發(fā)現(xiàn)數(shù)據(jù)集總體統(tǒng)計(jì)
本文采用精確率P、召回率R和F1值作為評(píng)價(jià)指標(biāo)。
本文采用三個(gè)情感詞典(大連理工大學(xué)情感詞匯本體、臺(tái)灣NTUSD和清華大學(xué)李軍中文褒貶義詞典)的交集作為本文的情感詞典。利用BERT-Base-Chinese初始化字向量,隱向量維度為768;采用早停機(jī)制,設(shè)置學(xué)習(xí)率在訓(xùn)練步數(shù)的前10%為線性增加,隨后線性遞減;相對(duì)位置向量的維度設(shè)置為50;圖注意力層數(shù)設(shè)置為2;注意力多頭設(shè)置為4,隱層向量維度設(shè)置為192;訓(xùn)練數(shù)據(jù)的批次大小(batch size)為2;訓(xùn)練時(shí),采用AdamW優(yōu)化器。選用文獻(xiàn)[3]的訓(xùn)練集和測(cè)試集,并重復(fù)實(shí)驗(yàn)10次,取P、R和F1三個(gè)評(píng)價(jià)指標(biāo)的平均值作為最終的實(shí)驗(yàn)結(jié)果。
為了驗(yàn)證本文提出的方法的有效性,將其與8個(gè)基準(zhǔn)方法進(jìn)行比較,具體如下:
ECPE-2Steps[3]: 該方法是由 Xia等[3]在2019年提出的。首先獲得情緒子句集和原因子句集,再采用笛卡爾積得到可能的情緒原因?qū)?,最后利用過(guò)濾器得到最終的情緒原因?qū)Α?/p>
ECPE-2D[4]: 該框架包括Inter-EC(BERT)、Inter-EC(BERT)+WC和Inter-EC(BERT)+CR。其中,Inter-EC(BERT)使用BERT模型進(jìn)行編碼。Inter-EC(BERT)+WC和Inter-EC(BERT)+CR是在Inter-EC(BERT)的基礎(chǔ)上,分別在交互層加入窗口受限和十字路口。
Transition-based[5]: 該方法將情緒原因?qū)Τ槿】醋骰谵D(zhuǎn)移的有向圖構(gòu)建過(guò)程。
RANKCP(BERT)[17]: 該方法將圖注意網(wǎng)絡(luò)引入情緒原因?qū)Τ槿∪蝿?wù)中。
LAE-Joint-MANN-BERT[19]: 該方法采用BERT為編碼器以及多層次注意力機(jī)制。
IE-CNN[6]: 該方法以序列標(biāo)注方式抽取情緒原因?qū)Α?/p>
ECPE-MLL(BERT)[20]: 該方法引入多標(biāo)簽聯(lián)合學(xué)習(xí)。
各種模型在中文情緒原因?qū)Τ槿≈魅蝿?wù)和兩個(gè)輔任務(wù)的性能如表4所示。
表4 情緒原因?qū)Τ槿》椒傮w性能比較
從表4中的結(jié)果可以看出:
(1) 本文提出的Sen-BiGAT-Inter模型在情緒原因?qū)Τ槿?、情緒子句抽取和原因子句抽取任務(wù)的F1值,均達(dá)到了目前最優(yōu),證明了本文提出方法的有效性。
對(duì)于情緒子句抽取任務(wù),與ECPE-MLL (BERT)相比較,Sen-BiGAT-Inter模型的R值低1.59%,這是由于情感詞典規(guī)模具有局限性,不能檢索到子句中所有的情感詞,但是Sen-BiGAT-Inter模型的P值高出4.94%,說(shuō)明利用情感詞典豐富了情緒信息,提高了精確率。另外,ECPE-MLL(BERT)在情緒子句抽取任務(wù)的P值與R值相差較大,說(shuō)明該方法抽取的情緒子句較多,提高了召回率。而Sen-BiGAT-Inter模型在情緒子句抽取任務(wù)中的P值和R值比較相近,證明了情感詞典的有效性。
(2) 由于本文的Sen-BiGAT-Inter模型是對(duì)RANKCP模型的改進(jìn),以下將其與RANKCP的結(jié)果進(jìn)行比較分析。
在情緒原因?qū)Τ槿∪蝿?wù)上,本文提出的Sen-BiGAT-Inter模型與RANKCP模型相比,在F1值、P值和R值上分別提升了2.87%、4.18%和1.48%,說(shuō)明情感詞、兩個(gè)圖注意力網(wǎng)絡(luò)和基于相對(duì)位置信息多頭注意力的引入,使得各個(gè)部分相得益彰,對(duì)情緒原因的抽取具有促進(jìn)作用,也證明了Sen-BiGAT-Inter模型的有效性。
在情緒子句抽取任務(wù)上,本文提出的Sen-BiGAT-Inter模型與RANKCP模型相比,在P值指標(biāo)上略微有些下降,但在R值指標(biāo)上有所提高,說(shuō)明加入情感詞匯使得模型提升了對(duì)情緒子句的抽取,對(duì)情緒原因?qū)Τ槿∮写龠M(jìn)作用。
在原因子句抽取任務(wù)上,本文提出的Sen-BiGAT-Inter模型與RANKCP模型相比,在F1值、P值和R值指標(biāo)上分別提升了2.68%、3.99%和1.34%,達(dá)到當(dāng)前最優(yōu)結(jié)果。這說(shuō)明情緒子句和原因子句是相互影響的,受原因子句召回率提高的影響,原因子句抽取性能也隨之得到提升。
為了評(píng)估本文提出的模型中各部分的有效性,對(duì)模型進(jìn)行了消融實(shí)驗(yàn)。
Sen-Inter: 在Sen-BiGAT-Inter模型的基礎(chǔ)上,不再選擇兩個(gè)圖注意力的網(wǎng)絡(luò)分別進(jìn)行情感子句表示和原因子句表示,而是簡(jiǎn)單使用單個(gè)圖注意力網(wǎng)絡(luò)。
Sen-BiGAT: 在Sen-BiGAT-Inter模型的基礎(chǔ)上去除基于先驗(yàn)知識(shí)的交互層。
BiGAT-Inter: 在Sen-BiGAT-Inter模型的基礎(chǔ)上去除情感詞典。
Sen-BiGAT-Pos: 在Sen-BiGAT-Inter模型的基礎(chǔ)上去除相對(duì)位置信息。
四種方法與Sen-BiGAT-Inter模型比較結(jié)果如表5所示。
表5 情緒原因?qū)Τ槿》椒ㄏ趯?shí)驗(yàn)對(duì)比
從表5可以得出,去除任一模塊,情緒原因?qū)Τ槿∪蝿?wù)的三個(gè)評(píng)價(jià)指標(biāo)都有所下降,尤其在Sen-BiGAT中,與Sen-BiGAT-Inter模型相比,F(xiàn)1值指標(biāo)直接下降2.72%,證明了在候選原因?qū)Τ槿∪蝿?wù)上使用交互層的有效性與可行性。即使Sen-BiGAT在F1值指標(biāo)有所下降,但是與RANKCP模型相比,Sen-BiGAT在F1值上有所提高,證明了加入雙表示層和情感詞匯會(huì)減弱僅使用單一圖注意力網(wǎng)絡(luò)帶來(lái)的負(fù)面影響,證明加入雙表示層和情感詞匯會(huì)對(duì)情緒原因?qū)Φ某槿‘a(chǎn)生積極影響。
為了獲得較好的情緒原因?qū)Τ槿⌒阅埽骨榫w子句表示和原因子句表示達(dá)到理想的結(jié)果,我們?cè)谧罱K的損失函數(shù)中加入了情緒子句和原因子句相對(duì)應(yīng)的交叉熵?fù)p失。為了驗(yàn)證兩個(gè)監(jiān)督任務(wù)的有效性,該文又設(shè)計(jì)了除去這兩個(gè)輔任務(wù)的損失,使用Sen-BiGAT-Inter-AS來(lái)表示,實(shí)驗(yàn)結(jié)果如表6所示。
表6 監(jiān)督損失函數(shù)的影響
從表6可以看出,移除監(jiān)督損失函數(shù)后,情緒原因?qū)Τ槿∪蝿?wù)的性能急劇下降,從而證明了監(jiān)督損失函數(shù)是不可缺少的。
不同層數(shù)的圖注意力堆疊會(huì)影響情緒原因?qū)Τ槿〉男阅?,因此,該文?duì)不同圖注意力層數(shù)進(jìn)行對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表7所示。
表7 不同層數(shù)圖注意力實(shí)驗(yàn)對(duì)比
從表7可以看出,當(dāng)圖注意力層數(shù)為2時(shí),Sen-BiGAT-Inter模型的情緒原因?qū)Τ槿⌒阅苓_(dá)到了最好,說(shuō)明隨著堆疊層數(shù)的增加,模型參數(shù)也相應(yīng)地增加,進(jìn)而也影響模型的性能。
將圖注意力層替換為雙向LSTM,相應(yīng)的表示采用Sen-LSTM-Inter;由相對(duì)距離信息構(gòu)造的局部圖替代全連接構(gòu)建的完全圖,相應(yīng)的表示采用Sen-LocBiGAT-Inter。將這兩種表示與Sen-BiGAT-Inter進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如表8所示。
表8 圖注意力與LSTM實(shí)驗(yàn)對(duì)比
從表8可以得出,使用Sen-LocBiGAT-Inter和Sen-BiGAT-Inter建模子句的抽取性能都超過(guò)使用LSTM建模子句,其原因是圖注意力網(wǎng)絡(luò)具有較強(qiáng)的編碼能力,并且可以為不同的節(jié)點(diǎn)動(dòng)態(tài)地分配不同的權(quán)重。與Sen-BiGAT-Inter模型的F1指標(biāo)相比,Sen-LocBiGAT-Inter下降了0.89%,證明了Sen-LocBiGAT-Inter構(gòu)造局部圖,雖能提升運(yùn)行速度,但是未能利用全局信息,導(dǎo)致抽取原因?qū)Τ槿⌒阅芟陆怠?/p>
本文選用Snownlp、Thulac以及Jieba三種分詞工具進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表9所示。
表9 不同分詞工具實(shí)驗(yàn)對(duì)比
從表9可以得出,不同分詞工具影響情緒原因?qū)Τ槿〉男阅?,但都?yōu)于去除情感詞典的BiGAT-Inter模型的性能。
3.10.1 Sen-BiGAT-Inter與RANKCP方法比較
通過(guò)Sen-BiGAT-Inter與RANKCP方法在第3.5節(jié)對(duì)比實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),Sen-BiGAT-Inter可以準(zhǔn)確抽取RANKCP未能抽取的樣例,樣例如表10所示。
表10 情緒原因?qū)Τ槿∈纠?/p>
如表10所示,子句c6由于包含了情感詞“幸?!保蕿榍榫w子句,c5為與情緒子句c6相對(duì)應(yīng)的原因子句。RANKCP將最終的情緒原因?qū)﹀e(cuò)誤地預(yù)測(cè)為
圖3 情緒子句c6特殊字符CLS可視化
從圖3可以得出,模型除了注意到區(qū)分子句劃分的特殊字符,使得模型更加關(guān)注“幸?!?,并將“幸?!彼诘淖泳鋍6預(yù)測(cè)為情緒子句,從而促進(jìn)預(yù)測(cè)情緒原因?qū)?c6,c5>。
3.10.2 錯(cuò)誤樣例分析
通過(guò)對(duì)Sen-BiGAT-Inter模型獲得情緒原因?qū)Τ槿?shù)據(jù)分析,發(fā)現(xiàn)如表11所示的錯(cuò)誤案例。
表11 情緒原因?qū)Τ槿∈纠?/p>
由表11所示,子句c3和子句c5既是情緒子句又是原因子句,說(shuō)明模型在進(jìn)行情緒原因?qū)Τ槿r(shí),未考慮情緒子句與原因子句之間是否保持語(yǔ)義一致性,即未能顯式地保證情緒原因子句之間真正具有因果關(guān)系,導(dǎo)致情緒原因?qū)Τ槿″e(cuò)誤,其結(jié)果為
本文提出了一種Sen-BiGAT-Inter的情緒原因?qū)Τ槿》椒?,該方法利用情感詞與該子句進(jìn)行合并,再使用預(yù)訓(xùn)練模型BERT獲取句子的表示,提升了情緒子句的抽取性能。通過(guò)建立兩個(gè)圖注意力網(wǎng)絡(luò)分別學(xué)習(xí)情緒子句和原因子句表示,繼而提升了候選情緒原因?qū)Φ某槿⌒阅?。通過(guò)應(yīng)用多頭注意力機(jī)制學(xué)習(xí)候選情緒原因句對(duì)的全局信息,同時(shí)結(jié)合相對(duì)位置信息得到候選情緒原因句對(duì)的表示,最終提升情緒原因?qū)Τ槿〉男阅?。通過(guò)進(jìn)一步對(duì)錯(cuò)誤數(shù)據(jù)進(jìn)行分析發(fā)現(xiàn),當(dāng)一篇文檔中真實(shí)標(biāo)簽有多個(gè)不同情緒子句的情緒原因?qū)r(shí),本文僅單純地提取出情緒原因?qū)Γ](méi)有考慮到情緒子句與原因子句之間的語(yǔ)義一致性,后續(xù)的工作中,我們將針對(duì)這一問(wèn)題開(kāi)展研究。