宋婷,陳戰(zhàn)偉,楊海峰
1. 太原科技大學計算機科學與技術學院,山西 太原 030024;2. 中國移動通信集團山西有限公司,山西 太原 030001
社交網(wǎng)絡的使用日益頻繁,如何從網(wǎng)絡中挖掘并抽取用戶的情感信息是自然語言處理的研究熱點之一?;诜矫娴那楦蟹治隹舍槍Σ煌矫嫱诰蛴脩羯顚哟蔚那楦?,首先區(qū)分文本中同一實體的不同屬性[1],這是方面情感分析的第一個子任務——方面詞的提取,提取的內(nèi)容可以是一個單詞,也可以是一個短語;接著針對各個方面詞分析情感極性。例如句子“Good food but dreadful service at that restaurant”,通過分析可知,該語句評論的實體是餐廳,分別對兩個方面(即food和service)進行了相應的情感表達,二者的情感極性分別是積極和消極。在初期研究中,文本的分類問題使用的是傳統(tǒng)的機器學習方法,首先在訓練集上分析、提取數(shù)據(jù)信息,構建分類模型,從而預測未被標注的數(shù)據(jù)。傳統(tǒng)機器學習構建手工特征的方法是人工規(guī)則和特征工程,這是一個較為煩瑣的過程[2]。近年來,深度學習被廣泛應用在自然語言處理領域,并取得了較好的成績,深度學習結合注意力機制在基于方面的情感分析中取得了比傳統(tǒng)網(wǎng)絡模型更好的效果。深度學習還被應用在機器翻譯[3]、句子對建模[4]等方面。深度學習最大的特點是能自動學習批量數(shù)據(jù),繼而挖掘數(shù)據(jù)中的潛在特征,利用注意力機制加深對目標內(nèi)容的關注,在訓練過程中依次調(diào)整參數(shù)[5-6]。
目前結合深度學習的方面情感分析模型還存在許多問題,如基于卷積神經(jīng)網(wǎng)絡的模型使用濾波器僅獲取文本句子內(nèi)部對象的依賴關系;單層的基于循環(huán)神經(jīng)網(wǎng)絡的模型結合注意力機制可獲取文本的長距離關系,卻忽略了句子間的依賴關系。
基于以上問題,本文提出基于方面情感分析的深度分層注意力網(wǎng)絡模型(hierarchical attention network model for aspect-based sentiment analysis,HANMAS),該模型結合區(qū)域卷積神經(jīng)網(wǎng)絡和改進的分層長短期記憶網(wǎng)絡(LSTM),圍繞方面目標,既通過卷積神經(jīng)網(wǎng)絡(convolutional neural network,CNN)單詞層和單詞層LSTM保留了句子的局部特征信息和依賴關系,又通過句子層LSTM獲得了句子間的情感依賴關系。本文提出的模型在傳統(tǒng)LSTM中嵌入特定方面目標,設計一條動態(tài)控制鏈,通過控制單元獲取對應的遠距離情感信息,從而獲得深層次的方面情感信息。筆者在SemEval 2014的兩個數(shù)據(jù)集和Twitter數(shù)據(jù)集上進行實驗,實驗結果表明,相比于基于方面情感的傳統(tǒng)神經(jīng)網(wǎng)絡模型和基于注意力機制的網(wǎng)絡模型,本文模型的情感分類準確率相對較高。
基于方面的情感分類屬于細粒度分類任務,傳統(tǒng)的情感分類方法有支持向量機、樸素貝葉斯、最大熵等,深度神經(jīng)網(wǎng)絡是當下比較常用的方法。
卷積神經(jīng)網(wǎng)絡和循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)是常用的針對情感分析任務的深度網(wǎng)絡模型[7]。卷積神經(jīng)網(wǎng)絡通過卷積操作提取文本的局部特征,無時序性;循環(huán)神經(jīng)網(wǎng)絡根據(jù)上一時序狀態(tài)和當前輸入確定當前網(wǎng)絡狀態(tài),由此獲得網(wǎng)絡時序性。參考文獻[8]在傳統(tǒng)卷積神經(jīng)網(wǎng)絡的基礎上,依靠門控制部件輸出不同特定方面對應的信息,使模型性能得到了有效提升。參考文獻[9]采用LSTM獲取句子的情感信息,LSTM是RNN的變體,其網(wǎng)絡嵌入了上一時刻的狀態(tài)值,使模型較好地解決了長距離依賴問題。參考文獻[10]在傳統(tǒng)的卷積神經(jīng)網(wǎng)絡基礎上結合了注意力機制,分別獲取詞向量、詞性、位置信息的注意力計算,是一個多注意力機制的卷積網(wǎng)絡,此方法在未獲取外部知識的狀態(tài)下得到了方面情感極性。Wang Y Q等人[11]提出基于方面嵌入的長短期記憶網(wǎng)絡(LSTM with aspect embedding,AE-LSTM)和基于注意力機制的方面級長短期記憶網(wǎng)絡(attention-based LSTM with aspect embedding),這兩種網(wǎng)絡都是基于傳統(tǒng)長短期記憶網(wǎng)絡建模的,它們基于方面目標信息獲取上下文特征,結合句子隱藏狀態(tài)計算注意力向量,由此得到情感分類結果,后者比前者更加突出了方面目標信息的嵌入。參考文獻[12]基于特定方面目標信息,結合長短期記憶網(wǎng)絡和卷積神經(jīng)網(wǎng)絡,分別獲取文本長距離依賴,且通過注意力機制獲得句子表示,取得了較好的分類結果。參考文獻[13]提出了嵌入常識知識的長短期記憶網(wǎng)絡(attentive LSTM with commonsense knowledge,Senti-LSTM)模型的特定方面情感分析,其中利用情感常識分析文本內(nèi)容,獲得了較優(yōu)的模型性能。Tang D U等人[14]提出了目標依賴情緒分類長短期記憶網(wǎng)絡(TD-LSTM)模型和目標連接長短期記憶網(wǎng)絡(targetconnection LSTM,TC-LSTM)模型的方面情感分析,兩種模型都結合特定方面目標嵌入了上下文語義。參考文獻[15]結合注意力機制提出自注意力網(wǎng)絡(transformer),設計了多頭注意力機制來獲取深層次注意力信息。Ruder S等人[16]提出了分層的雙向LSTM模型來獲取句子級別的相互關系。
以上工作大多圍繞深度神經(jīng)網(wǎng)絡和注意力機制進行研究。
本節(jié)主要介紹基于方面情感分析的深度分層注意力網(wǎng)絡模型的相關細節(jié)。該模型通過區(qū)域卷積神經(jīng)網(wǎng)絡和改進的分層長短期記憶網(wǎng)絡獲取情感分類。圖1為基于方面情感分析的深度分層注意力網(wǎng)絡模型,由以下4個部分組成。
● 區(qū)域卷積層。根據(jù)不同方面目標將句子劃分為不同區(qū)域,對于每個獨立特定方面,卷積神經(jīng)網(wǎng)絡將抽取局部情感信息。
● 改進的單詞層LSTM。在傳統(tǒng)LSTM中嵌入了句子特定方面信息,設計一條動態(tài)控制鏈,通過控制單元獲取相應方面目標遠距離情感信息,得到改進的嵌入方面信息的長短期記憶網(wǎng)絡(LSTM with aspects,A-LSTM)。
● 句子層LSTM?;诟倪M的LSTM,區(qū)域卷積層的輸出和改進的單詞層LSTM的輸出合并進入句子層LSTM,獲取基于特定方面目標的整個文本句子間的依賴關系。
● 情感輸出層。獲取分類結果。
區(qū)域卷積層將句子劃分為包含多個方面的目標子句,通過注意力機制重點關注各個方面目標及其上下文語義。本文根據(jù)句子中不同方面詞將句子分割成若干個獨立部分,由此分別獲取不同方面的情感極性 。假 設 句 子包含兩個方面詞A1、A2,根據(jù)方面詞A1和A2將句子分割成兩個獨立的目標子 句 :每個子句的長度是z 。若句子包含0個或1個方面目標,則只得到一個目標區(qū)域,即一個目標子句。每個獨立的目標子句進入卷積神經(jīng)網(wǎng)絡,通過第i個卷積核進行卷積操作,得到ci,如式(1)所示:
其中,卷積核長度為l,參數(shù)w ∈Rd1×l和b分別為卷積核的權重矩陣和偏置項。由此得到目標子句的特征圖c ∈ Rz?l+1,如式(2)所示:
通過分層的LSTM得到了單詞層(句子內(nèi)部)、句子層(句子之間)特征信息,本節(jié)介紹改進的A-LSTM,以便獲取單詞層的特征信息,同時,在改進的A-LSTM基礎上構建單詞層LSTM。
3.3.1 A-LSTM
將方面目標嵌入傳統(tǒng)的LSTM,在此基礎上設計動態(tài)控制鏈,通過動態(tài)控制單元獲取上下文記憶,利用注意力機制更有效地圍繞方面詞獲取情感信息。A-LSTM如圖2所示。
與傳統(tǒng)LSTM相比,A-LSTM嵌入了方面信息,并設計了動態(tài)控制鏈,當輸入內(nèi)容與相符時,門控單元基于方面目標挖掘更深入的隱藏層記憶狀態(tài),動態(tài)控制單元提供基于方面目標的上下文語義長距離依賴信息。隱藏層記憶狀態(tài)利用遺忘過期信息過濾無用信息,將網(wǎng)絡的最終隱藏層記憶狀態(tài)值降到單元距離值內(nèi)。
3.3.2 單詞層LSTM
單詞層LSTM在A-LSTM基礎上獲取目標子句中與方面信息高度相關的特征表示,得到句子內(nèi)部單詞間的特征關系。每一個LSTM單元的輸入包含上一時刻網(wǎng)絡隱藏層記憶狀態(tài)、當前時刻的新輸入值,同時還嵌入了方面信息。
其中,Wc、bc分別為權重參數(shù)和偏置參數(shù),hc為與輸入c相對應的隱藏層記憶狀態(tài),計算得到注意力值ac,從而得到整個網(wǎng)絡的注意力值u。
通過改進的單詞層LSTM計算得到的僅是詞語間的特征信息,但針對文本的上下文句子(尤其一些語義表達不清的句子),某一詞語前后句子語義對其情感判斷尤為重要,因此本文通過句子層LSTM獲取文本句子間的依賴關系。
將區(qū)域卷積網(wǎng)絡的局部特征信息輸出和改進的單詞層LSTM的句子內(nèi)部詞語間特征關系輸出合并,作為句子層LSTM的輸入。其中區(qū)域卷積網(wǎng)絡是一個序列化的矩陣,按句子在文本中的順序排序。句子層LSTM的輸入如式(11)所示:
將句子層LSTM的輸出值作為情感輸出層的全連接網(wǎng)絡的輸入,計算情感分類結果,得到情感分類輸出:
其中,W為全連接層權重參數(shù),b為全連接層偏置項,s’為句子層LSTM的輸出。本文使用反向傳播算法訓練網(wǎng)絡模型,通過最小化交叉熵優(yōu)化模型,計算損失函數(shù)loss:
其中,D為訓練集大小,C為數(shù)據(jù)類別數(shù),y為文本的預測類別(即情感分類輸出),為實際的類別,λ||θ||2為L2正則項。
本文提出基于方面情感分析的深度分層注意力網(wǎng)絡模型,通過對比SemEval 2014的Laptop、Restaurant數(shù)據(jù)集以及Li D等人發(fā)布的Twitter數(shù)據(jù)集[17],分析模型性能。數(shù)據(jù)集中分別含有4種極性的情感:積極、消極、中立、沖突,沖突類別在數(shù)據(jù)集中所占比例較低,因此實驗中僅保留積極、消極、中立類別。數(shù)據(jù)集信息見表1。
模型性能以分類準確率為評價標準,使用Glove詞向量方法初始化句子單詞向量及方面向量,維度為300。采用均勻分布U(?0.1,0.1)對未登錄詞進行初始化,偏置初始化為0,訓練采用Adam優(yōu)化器更新模型參數(shù)。區(qū)域卷積神經(jīng)網(wǎng)絡目標區(qū)域的長度設置為30,窗口大小分別設置為整數(shù)2至5,每種大小的窗口的個數(shù)設為100,隨機失活率(dropout)設置為0.5。
將本文模型分別與以下模型進行對比,以驗證本文模型的性能。
● 卷積神經(jīng)網(wǎng)絡(CNN):基于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡構建模型,模型將獨立句子作為輸入,未嵌入方面目標信息,獲取文本句子內(nèi)單詞間依賴關系[18]。
● 長短期記憶網(wǎng)絡(LSTM):基于傳統(tǒng)的長短期記憶網(wǎng)絡構建模型,模型將獨立句子作為輸入,未嵌入方面目標信息,獲取文本句子內(nèi)單詞間依賴關系[19]。
● 基于注意力機制的卷積神經(jīng)網(wǎng)絡(convolutional neural network based on attention mechanism,ATT-CNN):基于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡構建模型,模型針對特定方面加入注意力機制獲取句子內(nèi)情感關注信息,將獨立句子作為輸入[4]。
● 基于注意力機制的方面級長短期記憶網(wǎng)絡(attention-based LSTM with aspect embedding,ATAE-LSTM):基于傳統(tǒng)的長短期記憶網(wǎng)絡構建模型,模型針對特定方面加入注意力機制獲取句子內(nèi)情感關注信息[11]。
表1 數(shù)據(jù)集信息
● 帶有長短期記憶網(wǎng)絡的詞嵌入(composing word embeddings with LSTM,LSTM-R)算法:基于傳統(tǒng)的長短期記憶網(wǎng)絡構建模型,模型將整體文本作為輸入,針對特定方面未關注其注意力機制[20]。
● 交互式注意力網(wǎng)絡(interactive attention network,IAN):用于多層次語義分類,利用注意力機制針對特定方面獲取情感信息[21]。
● 基于詞-方面關聯(lián)融合的長短期記憶網(wǎng)絡(LSTM based on word-aspect association fusion,AF-LSTM):利用一個連接層,通過注意力機制結合方面信息獲取情感分類[22]。
● 支持向量機(support vector machines,SVM):將支持向量機作為分類器來抽取特征[2]。
本文模型(HANMAS)同上述模型的對比結果見表2。
表2中數(shù)據(jù)是不同模型在3個數(shù)據(jù)集上的實驗結果,數(shù)據(jù)集中包含積極、中立、消極3種類別,分析可得三分類實驗的分類準確率普遍低于以往文獻[8-16]中的僅包含積極、消極的二分類結果。幾種對比模型中基于循環(huán)神經(jīng)網(wǎng)絡的模型(LSTM、ATAE-LSTM)優(yōu)于基于卷積神經(jīng)網(wǎng)絡的模型(CNN、ATT-CNN);在LSTM上嵌入注意力機制的模型(ATT-CNN、ATAE-LSTM、IAN)的分類效果好于單一的傳統(tǒng)模型;嵌入方面信息分別獲取情感分類的模型(ATT-CNN、ATAE-LSTM、LSTM-R)的分類準確率有顯著提高;將整體文本作為輸入的模型(LSTM-R)獲取了句子間的依賴關系,分類準確率明顯優(yōu)于將獨立句子作為輸入的模型(LSTM)。
表2 不同模型的方面級情感分類準確率
本文提出的模型性能優(yōu)于幾種對比模型。本文提出的模型針對特定方面通過注意力機制獲取情感信息,通過改進的分層LSTM深層次地獲取句子內(nèi)部局部特征和句子時序關系以及句子之間的依賴關系,對比同樣結合方面信息的網(wǎng)絡模型,在數(shù)據(jù)集Restaurant上取得接近SVM的分類性能,在數(shù)據(jù)集Laptop和Twitter上得到了較好的分類效果。本文提出的模型層次復雜,算法復雜度較一般模型有所提高,模型通過增加模型層次和算法復雜度得到了更高的準確率。
本節(jié)針對改進的A-LSTM進行對比實驗,在數(shù)據(jù)集Restaurant上分別選取2個、4個、6個方面目標嵌入網(wǎng)絡模型,驗證模型的二分類結果,結果如圖3所示。隨著方面目標數(shù)量的增多,模型分類準確率能夠保持平穩(wěn),說明當面對多方面目標文本時,模型有較好的擴展性能,尤其當分類數(shù)量增多時,模型分類準確率優(yōu)于對比模型。
A-LSTM在實驗中經(jīng)過若干次迭代,通過計算平均損失值判斷網(wǎng)絡性能,結果如圖4所示。隨著迭代次數(shù)的增加,兩種模型的平均損失逐漸降低,但改進后的A-LSTM模型性能較好,在多次迭代下模型收斂的速度較快。
本文基于方面情感分析,提出結合區(qū)域卷積神經(jīng)網(wǎng)絡和改進的分層LSTM的深度分層注意力網(wǎng)絡模型,模型通過卷積神經(jīng)網(wǎng)絡保留文本局部特征信息和不同句子時序關系,利用分層注意力LSTM獲取句子內(nèi)部和句子間的情感特征,其中通過添加特定方面信息并設計一個內(nèi)部動態(tài)控制鏈,對傳統(tǒng)LSTM進行了改進。經(jīng)過實驗對比,驗證了本文模型的有效性,與基于方面情感的傳統(tǒng)深度網(wǎng)絡模型和基于注意力機制的網(wǎng)絡模型相比,文本情感分類準確率得到了有效提升。對于包含跨領域詞匯和網(wǎng)絡用語句子的方面情感分析,本文模型情感分類效果有待提高,此問題將是下一步的研究內(nèi)容。