劉欣逸 寧 博 王 明 楊 超 商 迪 李冠宇
1 (大連海事大學信息科學技術(shù)學院 遼寧 大連 116026)
2 (國網(wǎng)遼寧省電力有限公司信息通信分公司 沈陽 110006)
文本情感分析是自然語言處理領(lǐng)域中的一個分支任務,主要是從大量且復雜的評價信息中抽取出用戶對各種產(chǎn)品的評價觀點,進一步挖掘出這些評價信息深層次的情感傾向和含義.從電商平臺或影評軟件的評價信息提取出的評價觀點不僅有利于用戶快速了解產(chǎn)品信息以及評估產(chǎn)品購買價值,還可以為企業(yè)提供不同產(chǎn)品相應的使用反饋,從而幫助企業(yè)提升產(chǎn)品質(zhì)量、跟進競爭策略和提高企業(yè)競爭力,因此文本情感分析有較高的研究價值.
傳統(tǒng)的文本情感分析主要是針對文檔或者句子進行情感傾向分析,得到整篇文檔或者整個句子的情感傾向,如積極、消極或者中性,這是一個粗粒度的情感分析任務.如果一篇文檔或一個句子中有多個屬性詞對應多個情感傾向時,這種粗粒度的分析無法抽取出用戶所評價的對象,也無法準確地分析出不同的評價對象所對應的情感傾向.隨后,研究者們進一步研究細粒度的情感分析,其中屬性級情感分析[1-7]是分析已知的屬性詞對應的情感傾向,然而這種已知屬性詞的前提并不總是存在的,因此有人提出了屬性詞抽取子任務[8-10],該子任務的目的是從句子中抽取出需要的屬性詞.之后,研究者們[11-17]將屬性詞抽取和情感分類2個子任務進行結(jié)合,抽取出用戶所評價的評價對象(也稱屬性詞)和該屬性詞對應的情感傾向.然而,除了屬性詞和情感傾向,該屬性詞的評價詞也是十分重要的要素,可以得到用戶對該產(chǎn)品某一方面積極或者消極的態(tài)度,這可以給商家和消費者提供更加準確的數(shù)據(jù).Peng 等人[18]認為評價詞表示的是情感產(chǎn)生的原因,應該將評價詞抽取看作一個重要的子任務而不是僅僅作為輔助任務,因此提出了一個新的情感分析任務:屬性級情感三元組抽取[18-23](aspect sentiment triplet extraction,ASTE),該任務是在屬性詞抽取和情感分類聯(lián)合學習的基礎(chǔ)上將評價詞也抽取出來,得到一個三元組(屬性詞,評價詞,情感傾向).
在上述細粒度情感三元組抽取任務中,研究者們沒有考慮在聯(lián)合框架中引入句法信息來共同增強多個子任務,然而句子之間的句法信息對屬性詞提取、評價詞提取和情感分類任務有十分重要的影響.例如,當屬性詞和評價詞是由多個單詞構(gòu)成時,以往的研究很難準確地抽取出全部的單詞,存在跨度問題.本文認為如果利用句子之間的句法信息,并根據(jù)單詞之間的依存關(guān)系,可以有效地提高抽取的準確性.當評價詞與屬性詞相距較遠時,之前的研究沒有考慮二者之間的句法關(guān)系,可能不會將二者當作有關(guān)聯(lián)的信息,無法提取出準確的三元組,但如果利用句法依存關(guān)系,就可以對評價詞和屬性詞匹配有積極影響.因此針對上述問題,提出了一個基于句法增強的情感三元組抽取框架,該框架是聯(lián)合學習框架,采用多頭任務學習層對3個子任務共同學習,還可以充分利用句法信息增強多個子任務.設(shè)計了一個依存句法嵌入圖卷積網(wǎng)絡,充分地對句子中的每一個單詞之間的句法依存關(guān)系進行建模.
如圖1 所示,“beef noodles were great but the service was dreadful !”中存在多個屬性詞“beef noodles”和“service”,也存在多個評價詞和不同的情感傾向,表1 所表示的是圖1 中的依存關(guān)系類型及其含義.其中“noodles”是屬性詞的一部分,根據(jù)依存關(guān)系“compound”可以得到“beef ”與“noodles”有關(guān)聯(lián),組合為一個完整的屬性詞,又通過依存關(guān)系“nsubj”可以推斷出該屬性詞對應的評價詞為“great”,從而分析出其情感傾向為積極.整個句子是通過序列標注的方法抽取出屬性詞和評價詞,同時還需要識別出評價詞和屬性詞之間的搭配關(guān)系以及所對應的情感傾向,最后獲得細粒度的情感三元組分析結(jié)果:“beef noodles-great-positive”和“service-dreadful-negative”.
本文的貢獻主要有3 個方面:
1)由于句子中存在重復或多詞的屬性詞和評價詞,本文提出了一種基于句法增強的細粒度情感三元組抽取模型,該模型利用句法信息來增強屬性詞抽取、評價詞抽取和情感依賴分析這3 個子任務,從而提高了三元組抽取任務的準確性.
2)使用圖卷積網(wǎng)絡(graph convolution network,GCN)與依存句法樹來生成圖節(jié)點的句法信息,更好地保留了句子中的語法特征.
3)在情感三元組任務的4個常用英文數(shù)據(jù)集和1個中文數(shù)據(jù)集上,設(shè)計了本文模型與基準模型的對比實驗,并設(shè)計了子任務對比實驗來進一步驗證模型性能,實驗結(jié)果表明了本文模型的有效性.
近年來在細粒度情感分析的研究中有多個子任務,如屬性級情感分類、屬性詞抽取、評價詞抽取、情感分類聯(lián)合學習和三元組任務等.
基于屬性級的情感分類任務[1-7],是將已知的屬性詞融合到情感分類中.例如,Dong 等人[1]提出了自適應性遞歸神經(jīng)網(wǎng)絡(adaptive recursive neural network,AdaRNN),它根據(jù)每個單詞之間的上下文和依存句法信息,自適應地將單詞的情感傳遞給目標.Yang 等人[2]提出了一種以注意力為基礎(chǔ)的雙向LSTM(long short-term memory)方法來進行基于目標的情感分類任務.Tang 等人[4]針對注意力機制的缺點,提出了一種漸進式的自監(jiān)督注意力學習方法,迭代地進行屬性級情感分類預測,完善注意力機制.此外,Song 等人[6]為解決傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)和注意力帶來的問題,提出了一種注意力編碼器網(wǎng)絡(attentional encoder network,AEN),使用基于注意力的編碼器來建模上下文和目標的關(guān)系,從而進行基于特定目標的情感分類任務.而Sun 等人[7]將屬性詞構(gòu)造為一個輔助句,將屬性級情感分類任務轉(zhuǎn)化為句子對分類任務,利用BERT(bidirectional encoder representation from transformers)模型進行分類.
屬性詞抽取任務是抽取評價中的屬性詞,Yin 等人[8]采用無監(jiān)督的方式學習單詞和依存路徑的分布式表征,并用條件隨機場(conditional random field, CRF)模型進行屬性詞的抽取.Li 等人[9]提出了一種新的屬性詞抽取框架,利用評價詞摘要和屬性詞檢測歷史信息來提高屬性詞抽取的準確性.因為基于序列的方法不能充分利用整個句子的整體含義,并且依賴關(guān)系存在局限性,因此,Ma 等人[10]提出了門控單元網(wǎng)絡和位置感知注意力機制,并將屬性詞抽取任務定義為序列到序列的任務.
之后,研究者們[11-17]將屬性詞抽取和情感分類2個子任務進行結(jié)合,Phan 等人[11]采用流水線的方式先抽取出屬性詞,再利用情感分類器來得到情感傾向.但由于子任務的分離,模型的錯誤率會加大,因此,Ma等人[12]提出聯(lián)合學習屬性詞抽取和情感分類任務,設(shè)計了分層堆棧雙向門控循環(huán)單元(hierarchical multilayer bidirectional gated recurrent units,HMBi-GRU)模型,同時抽取目標并預測其情感極性.該模型在情感分類任務中使用了評價詞作為輔助任務,沒有更多地考慮評價詞和分類任務之間的關(guān)聯(lián)關(guān)系.之后,研究者對評價詞有了更深入的研究,例如He 等人[13]提出的交互式多任務學習網(wǎng)絡(interactive multi-task learning network, IMN)模型可以同時進行多個任務的聯(lián)合學習,該模型中引入了一種消息傳遞機制,可以通過加大評價詞注意力權(quán)重來增強文本表示.
隨后,Peng 等人[18]提出了屬性級情感三元組抽取方法[18-23],該方法采用流水線的方式先抽取出“屬性詞-情感極性”和評價詞,之后通過分類器對屬性詞和評價詞進行配對.但是Peng 等人[18]的流水線方式還需要另外的配對任務,有嚴重的局限性也增加了錯誤率.因此,Xu 等人[19]提出了一個基于位置感知標記的端到端聯(lián)合模型,實現(xiàn)了三元組的共同抽取,很好地解決了流水線方法中存在的問題,但是不能同時解決屬性詞重疊或者評價詞重疊的問題.Wu 等人[20]提出了網(wǎng)格標記方案(grid tagging scheme,GTS),通過一個統(tǒng)一的網(wǎng)格標記任務以端到端的方式處理三元組任務或"屬性詞-評價詞"詞對抽取任務.與此同時,Zhang 等人[21]為解決統(tǒng)一標簽和成對的"屬性詞-情感極性"帶來的問題,提出了一個多任務學習框架實現(xiàn)屬性詞和評價詞的聯(lián)合抽取以及二者之間的情感關(guān)系解析,最終抽取出三元組.
本文屬性級情感三元組抽取任務可以看作是序列標注任務和分類任務的結(jié)合.給定輸入文本序列X=,xi表示該句子中第i個單詞,|X|表示整個句子的長度,目標是輸出一個三元組集合Y=yj表示第j個三元組元素,|Y|表示的是三元組集合的長度.每一個三元組是由3 個元素構(gòu)成,即yj=分別表示屬性詞跨度、評價詞跨度和情感傾向,其中sp和ep表示屬性詞的跨度和評價詞的跨度,即開始位置和結(jié)束位置.因此,本文的主要任務可以表達為將一個句子X=通過模型學習轉(zhuǎn)化為三元組集合:
細粒度情感三元組抽取框架是聯(lián)合抽取框架,其包括文本編碼層、句法特征層、多頭任務學習層和三元組解碼層這4 部分.模型結(jié)構(gòu)圖如圖2 所示,其中n表示輸入句子的長度,m表示輸出三元組的個數(shù),將序列文本輸入到由句子編碼模塊和句法關(guān)聯(lián)模塊組成的文本編碼層,得到句子上下文編碼和依存句法分析樹;再進入帶有依存關(guān)系的圖卷積網(wǎng)絡來充分學習句法信息,得到上下文句法特征;接著,進入多頭任務學習層,同時進行屬性詞抽取、評價詞抽取和情感依賴關(guān)系分析;最后,基于多頭任務學習層獲得的結(jié)果進行解碼,輸出完整的三元組集合.
Fig.2 Our model structure圖2 本文模型結(jié)構(gòu)
學習語義信息和語境信息需要將句子轉(zhuǎn)化為詞向量,這是文本編碼層的關(guān)鍵.文本編碼層是由句子編碼模塊和句法關(guān)聯(lián)模塊組成的.
在句子編碼模塊中,給定一個輸入X=,為了可以充分地學習句子中每個單詞的上下文信息,使用了一個雙向長短期記憶網(wǎng)絡(bi-directional long short-term memory,Bi-LSTM).將輸入的句子轉(zhuǎn)化為向量形式,然后使用Bi-LSTM 網(wǎng)絡進一步充分學習句子中的上下文信息.Bi-LSTM 不同于LSTM,它由2個不同方向的LSTM 組成,因此Bi-LSTM 不僅可以同LSTM 那樣學習到每一個單詞在句子中的長期依賴關(guān)系,而且可以從2個方向獲取上下文信息,保留了更多的重要信息.輸入的句子X=進行編碼后得到向量表示Es={ei|ei∈Rde},使用Bi-LSTM 得到句子的上下文表示Hs=,其中,=demb和dhid分別表示詞向量的維度和LSTM 的隱藏狀態(tài)維度,和分別表示正向和反向的LSTM.
在句法關(guān)聯(lián)模塊中,給定一個輸入X=,為學習到句子中的句法信息,利用依存句法分析將每一個句子轉(zhuǎn)化為依存句法樹,從而得到句子的依存關(guān)系.輸入的句子X利用斯坦福依存句法分析,得到句子的依存句法表示DSP=dSP(X)=.其中,SP 表示斯坦福依存句法分析器,di表示第i個單詞在依存句法樹中相關(guān)聯(lián)的父節(jié)點序號.此外,對于中文酒店數(shù)據(jù)集,本文采用哈爾濱工業(yè)大學的中文自然語言處理工具LTP 進行句法分析,同樣得到句子的依存句法表示DLTP=dLTP(X)=.
該模型在句法特征層引入了圖卷積網(wǎng)絡(GCN)來學習單詞之間的句法信息.在上一層的句法關(guān)聯(lián)模塊中得到了依存句法分析樹,該依存分析樹也可以表示為具有n個節(jié)點的圖,其中的節(jié)點就是每一個句子中的單詞,邊表示的是單詞之間的句法關(guān)聯(lián)路徑.而依存分析樹中的節(jié)點是經(jīng)過上一層的句子編碼模塊中Bi-LSTM 編碼得到的向量表征結(jié)果,上一層的這些輸出是作為句法特征層的輸入.模型中采用GCN 來建模句法特征,GCN 的主要思想是每一個節(jié)點的特征是由相鄰節(jié)點不斷更新得到的,當存在多層的GCN 時,當前層節(jié)點的特征可以由上一層的相鄰節(jié)點和自身節(jié)點特征更新獲得.
將句子的上下文表示和依存分析樹的鄰接矩陣作為句法特征層中GCN 的輸入.任意句子的n×n的鄰接矩陣可以由其依存分析樹轉(zhuǎn)換而來,在依存分析樹中節(jié)點i和節(jié)點j之間存在一條依存路徑,則鄰接矩陣的Aij=1,否則Aij=0.與此同時,每一層的節(jié)點自身應當是有關(guān)聯(lián)和影響的,因此設(shè)計了一個自循環(huán),即Aii=1.GCN 是多層的結(jié)構(gòu),每一層節(jié)點的信息是由上一層的節(jié)點通過其依存句法路徑來傳播和聚集特征信息,并不斷更新節(jié)點的特征.因此,將Bi-LSTM 輸出節(jié)點的上下文向量作為GCN 的輸入來進行句法關(guān)聯(lián)信息的構(gòu)建.GCN 中的第k+1 層的第i個節(jié)點更新為
最后通過GCN 層得到帶有依存句法關(guān)聯(lián)的向量表示:
此外,還需要建立殘差連接,將Bi-LSTM 輸出的向量和GCN 層輸出的特征進行相加和殘差連接,得到多頭任務層的輸入,這樣訓練的時候可以使梯度直接走捷徑反傳給最初始層.句法特征層的最終輸出為
2.5.1 多頭任務學習層
多頭任務學習層包括屬性詞抽取、評價詞抽取和情感依賴分析3 個部分,下面介紹這3 個部分.
1)屬性詞和評價詞抽取
采用序列標注的方法來進行屬性詞和評價詞的抽取任務,將句子中的單詞標記為屬性詞ap 和評價詞op.句法特征層的隱藏狀態(tài)包含了一些多余的信息,可能會導致過擬合的風險.因此,首先使用簡單的線性層和非線性激活函數(shù)從句法特征層輸出的特征中分別抽取出屬性詞特征和評價詞特征,并將句法中的無關(guān)特性去除掉.具體方法可由式(6)(7)所示:
在得到屬性詞和評價詞的特征表示后,使用(B,I,O)序列標注方法對特征進行標注.通過線性層和softmax函數(shù)得到屬性詞和評價詞的分布序列和:
因此,屬性詞和評價詞抽取任務的損失為
2)情感依賴分析
定義了4 種情感依賴類型POS, NEG, NEU, NODEP,其中POS 表示積極,NEG 表示消極,NEU 表示中性,NO-DEP 表示沒有依賴關(guān)系.
與屬性詞抽取和評價詞抽取2 個子任務一樣,先用不同的參數(shù)抽取到屬性詞和評價詞的特征,如式(11)(12)所示,然后用雙仿射評分器來獲取每個詞對的依賴.
句子中存在|X|2個由屬性詞和評價詞組成的詞對,因此期望可以對每一詞對進行分析.為減少學習的冗余度,面對多詞構(gòu)成的屬性詞和評價詞時,先只考慮最后一個詞進行分析.每一個單詞對依賴類型的評分可由式(13)計算得出:
然后,使用softmax函數(shù)來進行歸一化,si,j,k表示單詞對[xi,yj]所有依賴關(guān)系類型的概率.
最后,采用多頭任務學習框架的聯(lián)合訓練方式,訓練目標如式(16)所示,其中,α表示權(quán)衡參數(shù),用于平衡抽取任務和情感依賴分析任務,θ表示可訓練參數(shù),γ表示L2正則化的權(quán)重值.
2.5.2 三元組解碼層
在獲得屬性詞、評價詞和二者的情感依賴關(guān)系后,以評分器得到的情感依賴為基礎(chǔ),進行三元組的解碼.如圖1 所示,句子“beef noodles were great but the service was dreadful !”,屬性詞抽取結(jié)果為(B,I,O,O,O,O,B,O,O,O),評價詞抽取結(jié)果為(O,O,O,B,O,O,O,O,B,O),情感依賴分析結(jié)果為(1, 3, POS),(6, 8, NEG),其中數(shù)字表示屬性詞和評價詞中最后一個單詞的下標.因此,通過情感依賴分析結(jié)果反向遍歷屬性詞標簽和評價詞標簽,解析出完整的三元組,最終的情感三元組為((0, 1), (3, 3), POS)和((6, 6), (8, 8), NEG),其中(0, 1)表示的是屬性詞“beef noodles”的開始位置和結(jié)束位置,(3, 3)表示的是評價詞“great”的開始位置和結(jié)束位置,POS 表示該屬性詞的情感傾向為積極.
在Peng 等人[18]提出的ASTE-DATA-V1 數(shù)據(jù)集和Xu 等人[19]提出的ASTE-DATA-V2 數(shù)據(jù)集上對設(shè)計的模型進行評估,這2 個數(shù)據(jù)集都包括了3個餐廳領(lǐng)域的數(shù)據(jù)集和1個筆記本領(lǐng)域的數(shù)據(jù)集,具體為:lap14,rest14,rest15,rest16.這2個數(shù)據(jù)集的具體情況如表2 和表3 所示,這2 個數(shù)據(jù)集都有3 種情感傾向:積極、消極、中性.ASTE-DATA-V1 數(shù)據(jù)集中缺失了一些沖突情感傾向的三元組,其中包括重復評價詞的三元組,例如,“good food and service”這句話中評價詞“good”對應了2 個屬性詞“food”和“service”,應該得到2 個三元組,但是數(shù)據(jù)集ASTE-DATA-V1沒有標注出這部分.而Xu 等人[19]補充了這部分缺失,進一步對數(shù)據(jù)集進行完善,得到一個新的數(shù)據(jù)集ASTEDATA-V2.這2 個數(shù)據(jù)集的4個領(lǐng)域數(shù)據(jù)集都來自SemEval-2014 task 4[24],SemEval-2015 task 12[25],SemEval-2016 task 5[26].
Table 2 Statistics of Four Datasets from ASTE-DATA-V1表2 ASTE-DATA-V1 中的4 個數(shù)據(jù)集統(tǒng)計
Table 3 Statistics of Four Datasets from ASTE-DATA-V2表3 ASTE-DATA-V2 中的4 個數(shù)據(jù)集統(tǒng)計
此外,為進一步驗證模型的有效性,本文使用譚松波酒店評論語料作為中文情感分析數(shù)據(jù)集,目前還沒有中文的情感三元組數(shù)據(jù)集,因此,采用手工標注的方式對中文數(shù)據(jù)集進行處理.數(shù)據(jù)集具體細節(jié)如表4 所示.
Table 4 Statistics of Chinese Datasets表4 中文數(shù)據(jù)集統(tǒng)計
在本文的實驗中,詞嵌入使用預訓練的GloVe詞向量進行初始化,詞嵌入維度為300,隱藏向量維度為300,設(shè)置聯(lián)合訓練的平衡參數(shù) α=1,正則化參數(shù)γ=10-5,為了緩解過擬合,將dropout設(shè)置為0.5,訓練過程中的學習率設(shè)置為0.003,每次訓練的樣本數(shù)量BatchSize設(shè)置為32,模型訓練的輪數(shù)設(shè)置為10.
為了驗證本文模型的有效性,使用5 個基線模型進行對比實驗.
1)Pipeline[18]采用流水線的方式進行三元組抽取,并分為2個階段:第1個階段是采用GCN 進行屬性詞的情感分類和評價詞抽??;第2個階段是將評價詞與屬性詞進行配對.
2)CMLA+[27]是由 CMLA[27](coupled multi-layer attentions)模型改良得到的,CMLA[27]采用注意力機制學習屬性詞和評價詞之間的相互關(guān)聯(lián)影響,從而抽取出目標屬性詞和評價詞.CMLA+[27]是在第1 階段后加入了一個分類器來抽取出三元組.
3)JET[19](jointly extract the triplets)是把ASTE 任務定義為一個基于統(tǒng)一標簽的序列標注任務,采用位置感知標記方法來實現(xiàn)端到端的聯(lián)合三元組抽取.
4)GTS[20]是把ASTE 任務定義為一個統(tǒng)一的網(wǎng)格標注任務,采用網(wǎng)格標記方法實現(xiàn)端到端的三元組抽取任務,先抽取出每個單詞的情感傾向特征,然后利用這些特征得出每個"屬性詞-評價詞"對的初始預測概率,最后設(shè)計了一個基于網(wǎng)格的解碼策略來得到完整的三元組.
5)OTE-MTL[21](multi-task learning framework for opinion triplet extraction)采用聯(lián)合抽取方式,該框架先使用共享的編碼器來學習3個子任務的聯(lián)合特征,然后提出了一個多頭任務學習框架共同實現(xiàn)屬性詞和評價詞的聯(lián)合抽取以及二者的情感關(guān)聯(lián)解析,最終使用解碼器來獲得完整的三元組.
3.4.1 實驗結(jié)果
在相同的數(shù)據(jù)集和實驗環(huán)境下,本文模型與基線模型所運行的時間對比結(jié)果如表5 所示,本文模型相比基線模型較為復雜,GCN 在訓練過程中需要消耗部分時間,因此耗時較多,但是本文模型有更高的精度,整體性能更好.
Table 5 Total Training Time Results Compared with the Baseline Models表5 與基線模型的訓練總時間的對比結(jié)果
與基線模型的對比實驗結(jié)果如表6 所示,在精確率P、召回率R和F1 分數(shù)方面比較了基線模型和本文模型,實驗結(jié)果都是取的最佳值.
Table 6 Experimental Results of Different Models for Triplet Extraction Tasks表6 三元組抽取任務中不同模型的實驗結(jié)果對比%
在ASTE-DATA-V1 數(shù)據(jù)集上本文模型整體性能優(yōu)于OTE-MTL[21]模型,在精確率(P)、召回率(R)和F1 分數(shù)這3個性能上大多高于OTE-MTL[21]模型,結(jié)果表明本文模型能夠有效地利用依存句法分析樹和GCN 來獲取句子之間的句法特征,提高三元組的抽取效率.對于ASTE-DATA-V1 數(shù)據(jù)集,本文的方法在ASTE-DATA-V1 數(shù)據(jù)集的4個數(shù)據(jù)集上的F1 分數(shù)比OTE-MTL[21]模型分別提升了0.22,0.44,1.74,1.07個百分點.但由于ASTE-DATA-V1 數(shù)據(jù)集中缺失了部分數(shù)據(jù),所以又在ASTE-DATA-V2 數(shù)據(jù)集上和相同的基線模型進行對比實驗.在F1 分數(shù)性能下,本文模型均優(yōu)于基線模型,在性能提升最高的lap14 數(shù)據(jù)集上,F(xiàn)1 值達到48.70%,比表現(xiàn)最好的模型OTEMTL[21]提升了1.95 個百分點,而在ASTE-DATA-V1數(shù)據(jù)集的lap14 數(shù)據(jù)集上本文模型只提高了0.22 個百分點,可以看出本文模型對ASTE-DATA-V2 數(shù)據(jù)集中補充的重復評價詞有積極影響;相比rest14,rest15,rest16 數(shù)據(jù)集,本文模型都有所提升,相比OTEMTL[21]模型,本文模型提升了近2 個百分點.大多數(shù)情況下,本文模型在精確率和召回率都明顯優(yōu)于其他基線模型.由表6 還發(fā)現(xiàn),流水線模型Pipeline 和CMLA+在召回率上取得較好的結(jié)果,但由于精確率較低,因此模型的整體性能較差.對于ASTE-DATAV2 數(shù)據(jù)集,本文模型在4個數(shù)據(jù)集上的性能比OTEMTL 模型分別提升了1.95,1.89,1.89,1.71 個百分點,比在ASTE-DATA-V1 數(shù)據(jù)集上的提升度Dif都高.此外,在大多數(shù)情況下,相比其他基線模型,本文模型在ASTE-DATA-V2 數(shù)據(jù)集上的提升度Dif都明顯高于ASTE-DATA-V1 數(shù)據(jù)集上的提升度Dif,因此本文模型對重復評價詞有一定幫助.
為進一步研究句法依存嵌入圖卷積網(wǎng)絡對整個模型的作用,進行子任務的對比實驗,使用ASTEDATA-V2 數(shù)據(jù)集來分析屬性詞和評價詞抽取任務的性能,對比實驗結(jié)果如表7 所示.與OTE-MTL[21]模型對比可得出,在屬性詞抽取任務(ap)中,本文模型在ASTE-DATA-V2 數(shù)據(jù)集上都優(yōu)于OTE-MTL 模型,性能提升最高的是在lap14 數(shù)據(jù)集上F1 分數(shù)達到76.41%,提升了2.95%.在評價詞抽取任務(op)中,本文模型也都優(yōu)于OTE-MTL 模型,性能提升最高的是在lap14 數(shù)據(jù)集上F1 分數(shù)達到73.69%,提升了1.7%.在召回率性能上,本文模型大多高于OTE-MTL 模型,雖然有些數(shù)據(jù)集的精確率沒有高于OTE-MTL 模型,但是在整體性能F1 分數(shù)上本文模型均取得較好的結(jié)果.結(jié)果表明引入單詞之間的句法依存關(guān)系對屬性詞抽取和評價詞抽取任務均有很大提升,猜測是因為當面對多詞組成的屬性詞和評價詞時,若引入句法信息,本文模型相比別的模型能得到更準確的抽取結(jié)果.
Table 7 Experimental Results of Aspect and Opinion Extraction Tasks表7 屬性詞和評價詞抽取任務的實驗結(jié)果對比%
在譚松波酒店評論中文數(shù)據(jù)集中,本文模型與基線模型的對比實驗結(jié)果如表8 所示.在三元組抽取任務(triplet)中,本文模型相比CMLA[27]模型提升很大,相比OTE-MTL[21]模型提升了1.2 個百分點;在屬性詞抽取任務(ap)中,本文模型相比OTE-MTL[21]模型提升了3.23 個百分點;在評價詞抽取任務(op)中,本文模型相比OTE-MTL[21]模型提升了0.47 個百分點.實驗結(jié)果表明本文模型對中文數(shù)據(jù)集有積極影響,但所有三元組抽取結(jié)果的F1 值最高只有43.29%,效果一般.猜測是因為中文數(shù)據(jù)集有較多口語化表達,中文相比英文有更多非正式的語義和結(jié)構(gòu),因此情感三元組抽取任務在中文數(shù)據(jù)集上還面臨較大挑戰(zhàn).
Table 8 Experimental Results of Different Models on Chinese Datasets for Each Task表8 各任務中不同模型在中文數(shù)據(jù)集上的實驗結(jié)果對比 %
3.4.2 實驗分析
根據(jù)表6 和表7 的實驗結(jié)果可以得出,本文模型在不同的數(shù)據(jù)集上均優(yōu)于其他基線模型.CMLA+和Pipeline 模型采用的是流水線的方式,由表6 可得流水線的方法雖然在召回率上有較好性能,但是它們的精確率較低,因為流水線方式使三元組任務分離為2 個步驟,整個模型在訓練過程中有局限性,同時還加大了誤差,導致最終的結(jié)果較低.JET,GTS,OTE-MTL 模型是采用聯(lián)合訓練的方式,很好地解決了流水線方式帶來的問題,取得較好的結(jié)果.本文模型也采用聯(lián)合訓練的方式,并且還引入了句法信息來提升句子特征,在面對重復評價詞的情況時,本文模型在屬性詞抽取、評價詞抽取和三元組抽取任務均可以取得更好結(jié)果.因此可以得出,本文提出的句法依存嵌入圖卷積網(wǎng)絡對三元組任務有一定提升.猜測在屬性詞和評價詞抽取任務中,當面對多詞構(gòu)成的屬性詞和評價詞時,利用句法信息可以更加準確地獲得它們的跨度情況.在屬性詞和評價詞相匹配的過程中,本文模型利用句法依存信息可以去除無關(guān)的配對結(jié)果,從而提升模型的準確性.
為了說明本文提出的細粒度情感三元組抽取任務的粒度范圍,本文舉例說明了粗粒度情感分析和細粒度情感分析結(jié)果.如表9 所示,粗粒度情感分析是分析整個句子的情感傾向,如第2個和第4個例句所示,當句子中有多種情感傾向時,粗粒度情感分析不能準確地得到每個屬性詞對應的情感傾向,也不能得到該屬性詞對應的評價詞,而本文的細粒度三元組抽取模型可以更加直觀地反饋句子中的屬性詞及其相應的多種情感傾向和評價對象.
Table 9 Case Analysis表9 案例分析
為了進一步研究模型的性能,選取F1 值提升相對較小的rest16 數(shù)據(jù)集中的部分樣本進行案例分析,結(jié)果如表9 所示.
當面對多詞屬性詞這種情況時,CMLA+不能準確地抽取出全部屬性詞,而OTE-MTL 和本文模型可以抽取出準確結(jié)果.
當多個三元組有重復評價詞時,CMLA+和OTEMTL 都不能抽取到全部的三元組,會丟失一部分,而本文模型可以抽取出全部三元組.猜測是因為別的模型沒有句法依存關(guān)系,在學習過程中評價詞enjoying和屬性詞table 之間的句法關(guān)系聯(lián)系不起來.
當存在重復屬性詞時,CMLA+將所有可能的配對情況都抽取出來,OTE-MTL 盡管錯誤配對的情況減少很多,但是依舊有1 個錯誤的三元組;而本文模型能抽取出全部的正確三元組且沒有多余的錯誤配對.猜測CMLA+因為沒有學習屬性詞和評價詞之間的依賴關(guān)系,導致匹配結(jié)果誤差較大;而OTE-MTL模型沒有考慮句法信息,導致將無關(guān)聯(lián)的“屬性詞-評價詞”對抽取出來.而本文模型不僅學習了子任務之間的依賴關(guān)系,還引入了句法特征來輔助三元組的抽取,將句法關(guān)聯(lián)的詞對排除出去.
當面對一句話中存在多個情感傾向且有重復的屬性詞的情況時,CMLA+和OTE-MTL 模型都沒有抽取出全部的三元組,其中部分三元組的情感傾向也有錯誤.猜測CMLA+和OTE-MTL 模型在面對復雜的多情感句子時,很難有效地學習到詞對之間的情感傾向的關(guān)聯(lián).而本文模型取得了一個較好的結(jié)果是因為模型在句法特征層有效地將句子特征融入上下文特征,因此在多頭任務層時可以利用句法特征學習到詞對和情感的依賴關(guān)系.本文模型除了一個三元組沒有抽取到,剩下的三元組都得到了準確的結(jié)果.這個錯誤的三元組猜測是因為該三元組的評價詞是屬性詞的一部分,而本文模型沒有考慮到這種情況.
對于屬性級情感三元組分析,單詞之間的句法信息有助于抽取情感特征和目標詞語.本文提出了基于句法增強的細粒度情感三元組抽取模型.由于多跨度的屬性詞和評價詞抽取任務的準確性低,屬性詞和評價詞配對研究還有很多不足,因此,提出了一種基于依存句法增強的多任務學習框架,通過依存句法信息嵌入圖卷積網(wǎng)絡來充分利用單詞之間的句法信息挖掘語法知識和句法特征.然后將句法特征作用在多頭子任務中,3 個子任務進行聯(lián)合學習解析出完整三元組.在4 個英文數(shù)據(jù)集和1 個中文數(shù)據(jù)集上設(shè)計了對比實驗,從而驗證了本文模型的有效性.實驗結(jié)果表明,該模型在細粒度情感三元組分析上可取得較好的結(jié)果,同時表明依存句法信息有助于屬性詞抽取、評價詞抽取和三元組抽取任務.之后還考慮學習評價詞抽取任務和情感依賴分析任務之間的關(guān)聯(lián)作用,例如利用消息傳遞機制將抽取結(jié)果的特征傳遞到情感依賴分析任務中,實現(xiàn)子任務之間的交互.
作者貢獻聲明:劉欣逸提出算法思路和實驗方案,完成實驗并撰寫和修改論文;寧博提出指導意見并修改完善論文;王明負責數(shù)據(jù)集收集和整理、論文校對工作;楊超提出實驗改進建議;商迪負責論文審查;李冠宇負責理論指導.