陳林穎,劉建華*,孫水華,鄭智雄,林鴻輝,林 杰
(1.福建工程學院 計算機科學與數(shù)學學院,福州 350118;2.福建省大數(shù)據挖掘與應用技術重點實驗室(福建工程學院),福州 350118)
面向方面的細粒度意見提?。ˋspect-oriented Finegrained Opinion Extraction,AFOE)[1]是細粒度情感分析[2-3]的一項重要任務,提取給定句子的意見對(方面詞,意見詞)或意見三元組(方面詞,意見詞,情感極性)。其中,方面詞和意見詞是兩個重要因素:方面詞也被稱為意見目標,通常指句子中討論的實體單詞或短語;意見詞是一個表達主觀態(tài)度的詞或短語。例如,“這家酒店的環(huán)境很好,但服務太差”,“環(huán)境”和“服務”是兩個方面詞,“很好”和“太差”是兩個意見詞。
意見二元組(意見對)提?。∣pinion Pair Extraction,OPE)是以(方面詞,意見詞)的形式從一個句子中提取所有的意見對。這個任務需要提取三個意見因素,即方面詞、意見詞以及它們之間的配對關系。在上個例子中包含的兩個意見對分別是(環(huán)境,很好)和(服務,太差),前者表示方面詞,后者表示相應的意見詞。與OPE 相比,意見三元組提?。∣pinion Triplet Extraction,OTE)增加了預測意見對的情感極性,兩個意見三元組分別為(環(huán)境,很好,積極),(服務,太差,消極)。OPE 或OTE 任務的主要挑戰(zhàn)在于一個句子中經常會出現(xiàn)一個方面詞對應多個意見詞,或一個意見詞對應多個方面詞。
在傳統(tǒng)的意見對提取任務中,大多研究工作致力于在一個聯(lián)合框架中同時提取方面詞和意見詞,Wang 等[4]將遞歸神經網絡和條件隨機場集成到一個統(tǒng)一的框架中,用于顯式方面詞和意見詞的聯(lián)合提??;Yu 等[5]提出一種全局推理方法,通過顯式的方式對方面詞和意見詞之間的幾個句法約束建模揭示它們之間的關系;Dai 等[6]提出了一種基于依賴解析結果的算法,從現(xiàn)有訓練樣本中自動挖掘提取規(guī)則,解決了訓練數(shù)據缺乏的問題。然而,這些方法抽取出的方面詞和意見詞相互獨立,忽略了方面詞和意見詞之間的配對關系。為了解決這一問題,Wu 等[1]提出了網格標記方案(Grid Tagging Scheme,GTS),該方案預測了所有可能的詞對之間的情感關系,并通過特定的解碼策略生成三元組;Li 等[7]提出了基于位置感知的 BERT(Bidirectional Encode Representation from Transformers)框架(Position aware BERTbased Framework,PBF)[8],以管道方式相繼提取方面詞、對應的意見詞并預測該意見對的情感極性;Mukherjee 等[9]基于指針網絡,在每個時間步生成完整的意見三元組。夏鴻斌等[10]提出了GTS 的詞對關系標注方案(Word-Pair Relation Tagging Scheme,WPRTS),通過改進GTS 的詞對關系標注構建詞對關系網絡,能提高三元組提取性能。但是,以上方法都未考慮意見對局部上下文重要性。如圖1 所示,句中有兩對意見三元 組,分別為(hot dogs,top notch,positive)和(coffee,average,neutral)。觀察圖1 可知,遠距離的意見詞average 可能影響到方面詞hot dogs 的情感極性;反之,意見詞top notch 可能影響到方面詞coffee 的情感極性。由此可知,方面詞與接近其自身的意見詞更相關,但遠距離的意見詞可能會產生負面影響,降低對情感極性預測的準確率。
圖1 意見對對情感極性預測的影響Fig.1 Influence of opinion pair on sentiment polarity prediction
2019 年,Zeng 等[11]認為方面詞的情感極性與其局部上下文特征相關,越接近方面詞的語義與方面詞的情感極性關系越密切,而遠距離的上下文可能造成負面影響,因此,他們提出了基于局部焦點(Local Context Focus,LCF)機制的兩種方法,即上下文特征動態(tài)掩碼(Context-feature Dynamic Mask,CDM)方法和上下文特征動態(tài)加權(Context-feature Dynamic Weighting,CDW)方法。Yang 等[12]采用兩個獨立的BERT 分別對句子和方面詞建模,再通過特征交互學習(Feature Interactive Learning,F(xiàn)IL)層預測方面詞的情感極性。但是這些都不適用于意見二元組或意見三元組任務。
針對以上問題,本文提出了自適應跨度特征的網格標記方案(Adaptive Span Feature-Grid Tagging Scheme,ASF-GTS)模型,采用BERT 提取句子上下文編碼及特征,通過自適應跨度特征(Adaptive Span Feature,ASF)方法對意見對的跨度特征采樣,再利用GTS 將意見對提取轉化為統(tǒng)一的網格標記任務,并通過特定的解碼策略生成對應的二元組或三元組。
本文的主要工作如下:
1)為加強意見對局部上下文的聯(lián)系,消除遠距離的負面影響,提出ASF 方法對意見對的局部上下文采樣,并將該方法與GTS 模型結合提高OPE 或OTE 任務的F1 指標;
2)引入自適應跨度距離(Adaptive Span Distance,ASD)評估意見對跨度上下文的依賴關系,使ASD 內的語義特征得到保留,有效提高方面情感表達的性能;
3)在AFOE 數(shù)據集上對OPE 和OTE 進行大量實驗,實驗結果表明ASF-GTS 模型具有更好的情感特征保留能力,能更精確地提取意見對及其情感極性,在兩個任務中都取得了更好的F1 值,驗證了本文模型具有很好的泛化性。
ASF-GTS 模型由ASF 方法與GTS 模型結合而成。大部分現(xiàn)有的研究工作在處理OPE 和OTE 任務時都采用了管道方式,但管道方式容易受到錯誤傳播,降低實際應用的人機互動的速度,因此,本文采用GTS 模型通過統(tǒng)一標簽方式解決管道問題,而ASF 方法則通過改進LCF 使之擴展到OPE 或OTE 任務中。
GTS 由三部分組成,分別是標簽標記、推理策略和解碼算法。它通過標記所有詞對之間的關系,成功地將句子的所有意見因素提取納入一個統(tǒng)一的網格標記任務,然后通過特定的解碼算法生成意見對或意見三元組。
1.1.1 標簽標記
對于OPE 任務,GTS 使用標簽集{A,O,P,N}標記句子中所有詞對(wi,wj)。標簽A 表示詞對都為相同方面詞;標簽O表示詞對都為相同意見詞;標簽P 表示詞對中的一個單詞為方面詞,另一個單詞為意見詞且可以形成意見對;其他詞對標簽用N 表示。這里的詞對是無序的,(wi,wj)和(wj,wi)的關系相同,因此,使用上三角網格標記。
對于OTE 任務,將之前的標簽P 改為代表詞對情緒的標簽{POS,NEG,NEU},三個標簽分別對應詞對(wi,wj)的情感極性為積極、消極及中立。此時OTE 任務的標簽集為{A,O,POS,NEG,NEU,N}。
1.1.2 推理策略
為利用每個詞對之間的潛在關系促進AFOE,Wu 等[1]設計了推理策略。推理策略主要依賴于兩點:第一,方面詞與意見詞不相容,例如,詞對(wi,wj)中有一個單詞為方面詞,則這個詞對標記就不可能是表示相同意見詞的O 標簽,反之亦然;第二,先前的詞對標簽預測可以推斷當前回合(wi,wj)的標簽。因此,GTS 推理策略可以通過迭代預測和推理得出詞對標簽。
初始回合,從下一層得到(wi,wj)的特征表示,將它拼接為rij,并通過線性變換得到初始標簽預測的概率分布,同時將rij作為初始特征表示上述推理過程如式(1)~(8):
1.1.3 解碼算法
在GTS 中獲得句子預測標記結果后,大量的標簽標記造成召回率降低。因此,GTS 設計了簡單有效的方法解碼意見對或意見三元組。首先,根據預測標記,在主對角線上找出所有的方面詞和意見詞,然后將連續(xù)的A 標簽視為一個方面詞,連續(xù)的O 標簽視為一個意見詞。提取到的方面詞A 和意見詞O 至少能形成一個意見詞對(a,o),其中,a表示方面詞,o表示意見詞,并將這個詞對標記為P。
對于OTE 任務,判斷提取到的詞對(a,o)的情感極性c是否屬于三類情緒標簽{POS,NEG,NEU}。若不屬于,則認為a和o不能形成三元組;若屬于,則得到意見三元組(a,o,c)。
LCF 機制通過語義相對距離(Semantic-Relative Distance,SRD)確定上下文,并學習上下文和方面之間的交互關系,增強方面詞及其上下文權重。
1.2.1 語義相對距離
Zeng 等[11]在LCF 機制中提出了SRD 用于確定了上下文詞是否屬于特定詞的局部上下文,以幫助模型獲取局部上下文特征。具體操作如式(9):
其中:SRDi表示第i個單詞與特定詞的相對距離;i是上下文詞的標記位置;pb是特定詞匯的中心位置,b為范圍閾值,若SRDi<b,則認為第i個單詞屬于特定詞匯的局部上下文;m為方面詞長度,n是句子的長度。
1.2.2 上下文特征動態(tài)掩碼方法
CDM 方法通過遮掩矩陣M掩蓋不屬于特定詞的局部上下文特征。具體地,將所有的SRD 超出閾值b的特征置為0,不參與特征學習,閾值范圍之內的特征保持不變,從而保留方面詞的局部上下文特征,遮掩局部上下文之外的權重。計算過程如式(10)~(12)所示:
其中:O為零向量;E為單位向量;EBERT是通過BERT 獲得的初始上下文特征。
針對OPE 和OTE 任務,本文提出ASF-GTS 模型。該模型將ASF 方法和GTS 模型相結合:GTS 模型可以消除錯誤傳播的影響,比管道方式更精確地提取意見對及其情感極性;ASF 方法則能夠加強與意見對有關的局部上下文聯(lián)系,消除遠距離的負面影響,提高ASF-GTS 模型的準確率。如圖2 所示,ASF-GTS 模型主要由嵌入層、特征提取層以及GTS 層三部分組成:嵌入層使用預訓練模型BERT 為編碼器,獲取上下文信息,有助于模型更好地學習特征;然后通過ASF 方法學習意見對的上下文特征;最后由GTS 層對獲得的特征表示標記意見對,再利用推理策略促進意見對或意見三元組提取,并通過特定的解碼策略解碼出意見對或意見三元組。
圖2 ASF-GTS模型結構Fig.2 Structure of ASF-GTS model
傳統(tǒng)生成詞向量方法word2vec[13]和GloVe[14]無法體現(xiàn)在不同語境下的不同語義。BERT 模型針對這一點優(yōu)化,采用詞嵌入、位置嵌入和段嵌入作為詞向量表示,并通過多層的雙向Transformer[15]對句子建模獲取句子上下文表示,將句子s={w1,w2,…,wn}映射為向量EBERT={e1,e2,…,en},wi表示輸入句子的第i個單詞,EBERT∈Rn×d,其中n表示輸入句子長度,d表示詞嵌入維度。
本文提出的ASF 方法是基于LCF 機制中CDM 方法的改進,將CDM 擴展到意見三元組提取任務中。CDM 方法借由SRD 確定方面詞的局部上下文詞,掩蓋非局部上下文詞,目的是保留與方面詞有關的情感信息。意見詞是最能體現(xiàn)方面詞情感信息的詞語,但是SRD 方法可能導致意見詞被掩蓋,因此,本文提出ASD 方法代替SRD 方法,自適應地保留方面詞與意見詞跨度間的特征,以保留情感信息量最多的詞語,消除跨度外的詞特征,使語義較少的特征不參與學習。
2.3.1 自適應跨度距離
如圖3 所示,其中Aspect 箭頭指向方面詞,Opinion 箭頭指向意見詞,Mask 大括號內的位置特征將被屏蔽,其余位置特征將得到保留。一個句子中的意見對情況分為三種:圖3(a)表示一個方面詞對應一個意見詞;圖3(b)表示一個方面詞對應多個意見詞;圖3(c)表示一個意見詞對應多個方面詞。針對這三種情況,提出了ASD 自適應調整方面詞和意見詞之間的跨度。在第一種情況中,“hot dogs”為方面詞,“top notch”為對應的意見詞,此時ASD 應為方面詞的第一個詞“hot”的位置到意見詞的最后一個詞“notch”的位置;反之,若方面詞比意見詞位置靠后,則ASD 應為意見詞的第一個詞位置到方面詞最后一個詞位置。在第二種情況中,方面詞為“food”,對應的兩個意見詞“authentic Italian”和“delicious”,此時ASD 為方面詞第一個位置“food”到所有意見詞的最后一個單詞“delicious”的位置,反之亦然;在第三種情況中,方面詞為“service”和“food”,對應的意見詞為“excellent”,此時ASD 為所有方面詞的第一個單詞“service”位置到意見詞的最后一個單詞“excellent”位置,反之亦然。ASD 方法適用于這三種情況。ASD 的公式如下:
圖3 自適應跨度焦點圖的三種情況Fig.3 Three cases of adaptive span focus map
其中:ASDt表示句子的第t個意見對的跨度距離;startt和endt分別表示第t個意見對跨度的起始位置和終止位置。
ASD 的算法流程如下:
算法1 ASD 算法。
2.3.2 自適應跨度特征提取
ASF 層保留由ASD 計算得到的跨度特征,跨度之外的特征將被屏蔽。具體地,本文通過計算得到遮掩矩陣A來屏蔽跨度外的詞特征,將跨度外的特征置為0,不參與學習,將跨度內的特征置為1 以保留原特征。ASF 計算過程如式(14)~(16):
其中:pi表示第i個單詞位置;n表示句子長度;M由n個mi向量組成,mi是第i個單詞的遮掩向量。通過ASD 判斷pi是否在跨度內:若第i個位置在跨度內,則mi取全為1 的向量E∈Rd;若不在跨度內,mi取全為0 的向量O∈Rd。最后將遮掩矩陣M與嵌入層學習到的語義特征EBERT點乘,以保留跨度內的特征。
本文采用交叉熵損失函數(shù)訓練所有詞對的真實值標記與預測值標記,如式(17):
其中:yij是單詞對(wi,wj)的真實值標記表示單詞對(wi,wj)的預測值標記,L表示推理回合;C代表標簽集,在OPE 任務中C∈{A,O,P,N},在OTE 任務中C∈{A,O,POS,NEG,NEU,N};I(·)指示函數(shù)用于驗證yij是否屬于C。
原始的SemEval Challenge 數(shù)據集[16]由4 個基準數(shù)據集組成,分別是14Res、14Lap、15Res 和16Res,但這些數(shù)據集只標注了方面詞和對應的情感極性,缺乏對應的意見詞注釋。面向目標的意見詞抽?。═arget-oriented Opinion Words Extraction,TOWE)數(shù)據集[17]是基于14Res、14Lap、15Res 和16Res 數(shù)據集標注對應的意見詞,但缺乏方面詞和對應的情感極性的注釋。因此,Wu 等[1]將原始的SemEval Challenge數(shù)據集和TOWE 數(shù)據集相結合組成AFOE 數(shù)據集。
本文在AFOE 數(shù)據集上驗證模型的準確性。表1 顯示了AFOE 數(shù)據集的統(tǒng)計數(shù)據,其中:Sen 表示句子總量,Asp 表示方面詞總量,Opi 表示意見詞總量,Pai 表示意見對總量,Tri表示意見三元組總量??梢杂^察到一個句子可能包含多個方面詞或意見詞。此外,一個方面詞可能對應多個意見詞,反之亦然。
表1 AFOE數(shù)據集Tab.1 AFOE datasets
為評估本文模型的性能,使用召回率R(Recall)、精確度P(Precision)、F1 值F1(F1-score)作為評估指標。只有當預測和基本真值完全匹配時,提取的意見對或意見三元組才被視為正確的。三種指標的計算方法如下:
其中:TP表示預測樣本和真實值都為正的數(shù)量;FN表示預測樣本為負真實值為正的數(shù)量;FP表示預測樣本為正真實值為負的數(shù)量。
模型采用BERT 生成詞向量,詞向量維度為768,模型設置學習率5 × 10-5,每個batch 中含有8 個樣本數(shù)據,每個樣本的最大長度為100,訓練次數(shù)epochs 為100。采用Adam 優(yōu)化器優(yōu)化網絡,并使用Dropout 函數(shù)防止過擬合,參數(shù)設置為0.1。主要采用pytorch 深度學習框架實現(xiàn)模型的訓練和預測。
3.3.1 OPE實驗結果與分析
本文模型與以管道方式提取意見對的模型:BiLSTMATT+IOG(Bi-directional Long Short-Time Memory-ATTention and IO-LSTM and Global context)[17]、DE-CNN+IOG(Dual Embeddings-Convolutional Neural Network and IOG)[19]、RINANTE+IOG(Rule Incorporated Neural Aspect and opinion Term Extraction and IOG)[6]以及未加入ASF 方法的GTSBERT[1]模型作對比。其 中,BiLSTM-ATT+IOG 模型是 把BiLSTM[18]和Attention 機制與IOG[17]結合的模型,BiLSTMATT 用于方面詞提取,IOG 用于面向方面的意見詞提??;DECNN+IOG 采用2 個嵌入層和4 個CNN 層的堆棧對句子編碼,然后對方面詞進行提取,再通過IOG 提取意見詞;RINANTE+IOG 模型通過句子中單詞的依賴關系挖掘方面和意見詞;GTS-BERT 采用BERT 生成詞向量并將意見二元組抽取形式化為一個統(tǒng)一的詞對標注任務,然后通過特定的解碼策略生成對應的二元組。
實驗結果如表2 所示,可以看出GTS 模型的性能明顯優(yōu)于以管道方式提取意見對的對比模型,說明管道方法中的錯誤傳播限制了OPE 的性能。與GTS-BERT 相比,ASF-GTS 模型性能得到了進一步的提升,ASF-GTS 在14Res、14Lap、15Res、16Res 數(shù)據集上的F1分別提高了7.30%、5.10%、4.41%、2.42%,驗證了ASF-GTS 模型的有效性。
表2 OPE任務提取結果 單位:%Tab.2 Extraction results of OPE tasks unit:%
3.3.2 OTE實驗結果與分析
將本文模型與Peng-unified-R+IOG 模型和IMN+IOG(Interactive Multi-task learning Network and IOG)模型作對比。其中,Peng-unified-R+IOG 是將Peng-unified-R[20]與IOG 相結合的模型。Peng-unified-R 是一個具有兩階段框架的模型:第一階段利用通用模型框架預測方面詞、相關方面詞的情感極性以及意見詞;第二階段利用第一階段抽取到的信息對方面詞和意見詞配對。IMN+IOG 模型通過交互式多任務學習網絡(Interactive Multi-task learning Network,IMN)[21]與IOG結合作為強基線。IMN 是交互式多任務學習網絡,它將不同任務的有用信息發(fā)送回共享的潛在表示,然后將這些信息與共享的潛在表示相結合,并提供給所有任務進一步處理,從而提高基于方面的情感分析(Aspect Based Sentiment Analysis,ABSA)任務的整體性能。GTS-BERT 采用BERT 生成詞向量,并將意見三元組抽取形式化為一個統(tǒng)一的詞對標注任務,然后通過特定的解碼策略生成對應的三元組。
由表3 可 知,IMN+IOG 在數(shù)據集14Res 和15Res 上 明顯優(yōu)于Peng-unified-R+IOG,因為IMN 使用多域文檔級情感分類數(shù)據作為輔助任務。相比之下,無須額外文檔級情感數(shù)據的GTS-BERT 模型在F1上比IMN+IOG 表現(xiàn)更優(yōu),說明了GTS統(tǒng)一標記的優(yōu)越性。而本文模型ASF-GTS 與GTS-BERT 相比,在14Res、14Lap、15Res、16Res 數(shù)據集上的F1分別提高了4.17%、4.27%、6.61%、2.62%。OTE 任務的整體實驗結果再次驗證了本文模型的有效性。
表3 OTE任務提取結果 單位:%Tab.3 OTE task extraction results unit:%
為了研究ASF 方法對OPE 任務的適應性,本文在OPE 任務上進行局部上下文特征對比實驗。在GTS-BERT 上加入LCF 機制的CDM 方法形成的新模型GTS-BERT+CDM 與本文的模型對比,其中,CDM 方法的閾值a設置為5。實驗結果如表4 所示,可以看出GTS-BERT+CDM 的整體性能比GTSBERT 略有下降,而融入了ASF 方法的ASF-GTS 模型比GTSBERT 模型F1表現(xiàn)更優(yōu),說明本文ASF 方法比CDM 方法更適應于OPE 任務,也同樣適應于OTE 任務。
表4 OPE任務適應性結果 單位:%Tab.4 OPE task adaptability results unit:%
從14Res 數(shù)據集中選取3 個樣本進行案例分析,如表5所示:樣本1 僅包含一對意見對,樣本2 包含3 對不重疊的意見對,樣本3 包含2 對方面詞重疊的意見對。
表5 三個樣本的預測結果Tab.5 Prediction results of three examples
觀察表5 可知ASF-GTS 模型預測表現(xiàn)最好。對于樣本1,ASF-GTS 能夠準確地預測出樣本的意見三元組,然而GTSBERT+CDM 無法預測意見對,故無法輸出意見三元組。對于樣本2,GTS-BERT+CDM 受到固定閾值的影響無法識別超出閾值外的意見詞,故無法輸出(desserts-good-positive)的意見三元組,而GTS-BERT 和ASF-GTS 不受距離約束,因此可以準確地預測(desserts-good-positive)三元組。此外,表中模型都面臨方面詞和意見詞匹配錯亂的問題,在多個意見詞的干擾下,不能很好地捕捉與方面詞相對應的意見詞。對于樣本3,GTS-BERT+CDM 僅預測了一對錯誤的三元組;GTSBERT 雖然正確地預測出了所有的意見對,但是這些意見對的情感極性預測錯誤;而ASF-GTS 預測出所有正確的三元組,表明ASF-GTS 模型在一個方面詞對應多個意見詞的情況下,有更好的預測能力。該實驗結果表明,融入ASF 方法的GTS 模型具有跨度語義焦點機制,可以通過ASD 保留情感信息量最多的詞,更好地預測意見三元組。
本文針對OPE 和OTE 任務提出了ASF-GTS 模型,該模型通過ASF 方法使模型充分學習ASD 內的特征,最大化地保留了情感信息特征,消除跨度外的詞特征,使語義較少的特征不參與學習,并通過標記所有詞對間的關系,成功地將句子的所有意見因素提取納入一個統(tǒng)一的網格標記任務,然后通過特定的解碼算法解碼意見對或意見三元組。對比實驗結果表明,本文模型比原來的GTS-BERT 模型效果更好,并且在適應性實驗中驗證了ASF 方法在OPE 或OTE 任務中的適應性與有效性。不過本文并未考慮反諷情況,未來將針對這一方面進行研究。