周純潔 黎 巎 楊曉宇
1(北京聯(lián)合大學(xué)北京市信息服務(wù)工程重點實驗室 北京 100101) 2(北京工商大學(xué)國際經(jīng)管學(xué)院 北京 100048) 3(中國科學(xué)院地理科學(xué)與資源研究所資源與環(huán)境信息系統(tǒng)國家重點實驗室 北京 100101)
近年來,隨著互聯(lián)網(wǎng)和社交網(wǎng)絡(luò)的快速發(fā)展,越來越多的用戶開始在網(wǎng)頁上自由表達(dá)自己的觀點。用戶評論的大數(shù)據(jù)是在互聯(lián)網(wǎng)上產(chǎn)生的,這些評論傳達(dá)了互聯(lián)網(wǎng)用戶對產(chǎn)品、熱點事件等的看法。隨著評論的爆炸性增長,很難手動分析它們。在大數(shù)據(jù)時代,通過人工智能技術(shù)挖掘評論文本的情感傾向有助于及時了解網(wǎng)絡(luò)輿情。情感分類的研究對于獲取評論的情感趨勢非常有意義。
Liu[1]將情感分類大致分為三類:篇章級、評論級和屬性級情感分類。篇章級和評論級情感分類旨在將整個篇章或者評論作為一個整體,識別出整個篇章或評論的情感傾向。屬性級情感分類旨在分析出篇章或評論中具體實體及其屬性的情感傾向。例如,“I bought a mobile phone, its camera is wonderful but the battery life is short”中有三個屬性“camera”“battery life”和“mobile phone”。其中:評論者對屬性“camera”表達(dá)了積極的情感;對屬性“battery life”表達(dá)了消極的情感;對實體“mobile phone”表達(dá)了混合的情感[2]。
屬性級情感分類任務(wù)一般被分為兩個步驟進(jìn)行處理,其一為提取評論中的屬性,其二為對提取到的屬性進(jìn)行情感分類。由于這兩個步驟均存在諸多難點,因此研究者們將這兩個步驟分開進(jìn)行研究,本文主要研究的是步驟二。
屬性級情感分類區(qū)別于篇章級和評論級情感分類的一個難點在于需要將評論中的屬性與修飾屬性的情感正確對應(yīng)起來,因此該任務(wù)的重點在于挖掘?qū)傩耘c上下文的關(guān)系,實現(xiàn)精準(zhǔn)定位與屬性情感相關(guān)的文本片段,根據(jù)情感文本片段判斷屬性的情感[3]。
本文研究使用神經(jīng)網(wǎng)絡(luò)處理屬性級情感分類任務(wù)下的屬性與上下文特征提取及關(guān)聯(lián)問題,并構(gòu)建了BERT-LSTM-IAOA模型,以期提高屬性級情感分類的準(zhǔn)確率和F1值。
屬性級情感分類的處理方法包括基于規(guī)則的方法[4]、基于統(tǒng)計的方法[5]、基于傳統(tǒng)機器學(xué)習(xí)的方法[6-7]和基于神經(jīng)網(wǎng)絡(luò)的方法等?;谏窠?jīng)網(wǎng)絡(luò)的方法具有領(lǐng)域適應(yīng)性較強,無需密集特征工程的優(yōu)點,近年來得到了快速發(fā)展并成為了主流方法。
RNN系列神經(jīng)網(wǎng)絡(luò)能保存文本中單詞的序列關(guān)系,因此成為了文本處理領(lǐng)域的熱門神經(jīng)網(wǎng)絡(luò)模型。使用LSTM網(wǎng)絡(luò)提取整條評論的特征表示作為評論中屬性的情感特征表示不足以區(qū)分多屬性評論中不同屬性的情感。Tang等[8]最先將LSTM網(wǎng)絡(luò)應(yīng)用于屬性級情感分類任務(wù),提出以屬性為中心將整個評論分為“上文+屬性”和“屬性+下文”兩部分,在這兩部分的每個單詞向量后拼接屬性平均詞向量作為輸入,用LSTM網(wǎng)絡(luò)分別提取這兩部分的特征,最后拼接兩個LSTM網(wǎng)絡(luò)的輸出作為這個屬性的情感特征表示。隨后,Zhang等[9]基于GRU網(wǎng)絡(luò)設(shè)計了一種門控機制刻畫屬性與上下文的關(guān)系,該機制根據(jù)屬性所在位置的隱藏狀態(tài)信息控制左右上下文信息的輸入。上述模型利用多屬性評論中每個屬性有不同上下文的特點控制模型的輸入,在一定程度上提升了分類準(zhǔn)確率。
將注意力機制添加到基于神經(jīng)網(wǎng)絡(luò)的模型能提高大多數(shù)模型的性能,該方法已成功應(yīng)用于許多自然語言處理任務(wù)[10]。Wang等[11]將注意力機制添加到基礎(chǔ)LSTM模型中,該方法通過將平均屬性詞向量拼接到評論中每個單詞的詞向量上,使屬性能夠參與計算注意力權(quán)重。Wang等[12]在Tang等[8]以及Wang等[11]的基礎(chǔ)上,引入評論中各個單詞對屬性的依賴關(guān)系信息,進(jìn)一步提高了分類效果。以上模型的提出,表明了注意力機制與神經(jīng)網(wǎng)絡(luò)模型結(jié)合應(yīng)用于屬性級情感分類任務(wù)的有效性。
Ma等[13]運用注意力機制交互學(xué)習(xí)上下文和屬性的特征,對屬性和上下文進(jìn)行了獨立的特征表示。Huang等[14]提出的LSTM-AOA模型對屬性和上下文進(jìn)行聯(lián)合注意力建模,通過注意力疊加的方式獲得上下文的特征表示,該方法在未利用獨立屬性特征表示的情況下就取得了優(yōu)于以上模型的效果。
Wang等[15]發(fā)現(xiàn)當(dāng)上下文中單詞的情感對給定屬性敏感時,僅通過注意力建模無法解決情感分類性能下降的問題。如“屏幕分辨率很高”和“價格很高”,其中“高”在修飾屏幕分辨率時表達(dá)了積極的情感,在修飾價格時表達(dá)了消極的情感,因為不像“優(yōu)秀”“劣質(zhì)”這類詞語本身就帶有明確的情感,“高”本身不帶有明確情感,需要與具體屬性結(jié)合才能分析出其情感。因此,對屬性進(jìn)行單獨建模,并運用屬性特征輔助分類值得關(guān)注。
在基于神經(jīng)網(wǎng)絡(luò)的屬性級情感分類任務(wù)中,詞向量的表示是該任務(wù)的基礎(chǔ),以上基于神經(jīng)網(wǎng)絡(luò)的屬性級情感分類模型使用的詞向量均為靜態(tài)詞向量。靜態(tài)詞向量表示將單詞映射為一個固定維度的向量,無法解決文本中一詞多義的問題。如“saw”能表示“看見”和“鋸子”這兩個完全不同的意思,用同一個向量表示這兩個意思顯然是不合理的。Devlin等[16]提出的BERT預(yù)訓(xùn)練語言模型,能根據(jù)單詞的上下文對同一單詞生成不同的詞向量表示。
本文針對屬性級情感分類任務(wù)的以上問題,提出一種基于交互式疊加注意力網(wǎng)絡(luò)進(jìn)行實體屬性情感分類。主要貢獻(xiàn)如下:首先,用動態(tài)詞向量表示模型BERT代替靜態(tài)詞向量表示模型Glove,彌補靜態(tài)詞向量表示存在的一詞多義缺陷;其次,對屬性與上下文都進(jìn)行特別對待,通過交互學(xué)習(xí)生成其各自獨立的特征表示,并在交互學(xué)習(xí)的過程中使用疊加注意力(AOA)代替普通注意力以挖掘?qū)傩耘c上下文之間深層次的語義關(guān)系。在三個基準(zhǔn)數(shù)據(jù)集上的實驗結(jié)果表明,本文提出的模型在屬性級情感分類任務(wù)上的效果更好。
圖1為本文提出的BERT-LSTM-IAOA模型的整體結(jié)構(gòu),整個模型分為四層。第一層為BERT詞向量層,屬性和上下文通過詞向量層得到屬性詞向量序列和上下文詞向量序列。第二層為LSTM層,屬性和上下文詞向量序列通過前向LSTM進(jìn)行進(jìn)一步語義編碼。第三層為AOA層,在該層計算得到屬性和上下文各自的“最終”注意力權(quán)重。第四層為輸出層,將上下文“最終”注意力權(quán)重與上下文的隱藏語義狀態(tài)做加權(quán)和得到上下文的最終特征表示,將屬性“最終”注意力權(quán)重與屬性的隱藏語義狀態(tài)做加權(quán)和得到屬性的最終特征表示,拼接上下文和屬性的最終特征表示并將其輸入到一個線性層中,最后使用Softmax計算屬性所屬的情感類別。
圖1 BERT-LSTM-IAOA模型
對于一條評論{w1,w2,…,wi,…,wr,…,wp},評論中有一個或者多個屬性。評論中的一個屬性{wi,wi+1,…,wi+q-1}是評論的一個子序列,屬性級情感分類任務(wù)即分析論者對評論中某一特定屬性表達(dá)了怎樣的(積極的、中性的或消極的)情感。
將評論中待判斷情感的一個屬性用特殊符號“$T$”代替,經(jīng)過該處理后得到這個屬性的上下文s={w1,w2,…,wa,…,wp}。
通過BERT詞向量層將屬性和上下文詞序列中每個單詞映射為詞向量。在詞嵌入映射操作后,得到兩組單詞向量[vi,vi+1,…,vi+m-1]∈Rm×W和[v1,v2,…,vn]∈Rn×W,分別用于表示屬性和上下文,其中W是詞嵌入維度。
通過BERT詞向量層獲得單詞的向量表示后,使用前向LSTM網(wǎng)絡(luò)學(xué)習(xí)屬性和上下文中單詞的隱藏語義。使用LSTM的優(yōu)勢在于它可以避免梯度消失或爆炸的問題,并且善于學(xué)習(xí)長期依賴[17]。
將上下文詞向量序列[v1,v2,…,vn]輸入到前向LSTM中會生成一系列隱藏狀態(tài)向量hs∈Rn×vh,其中vh是隱藏狀態(tài)的維數(shù)。
(1)
將屬性詞向量序列[vi,vi+1,…,vi+m-1]輸入到前向LSTM中會生成一系列隱藏狀態(tài)向量ha∈Rm×vh,其中vh是隱藏狀態(tài)的維數(shù)。
(2)
通過AOA層獲得屬性和上下文中每個單詞的“最終”注意力權(quán)重。AOA網(wǎng)絡(luò)的疊加注意力機制能挖掘?qū)傩院蜕舷挛闹g深層次的語義關(guān)系。
(3)
普通的獲取上下文“最終”注意力權(quán)重的方式是假定屬性中的每個單詞對上下文注意力權(quán)重的影響是相同的,即通過式(4)得到上下文的“最終”注意力權(quán)重γ∈Rn,其中γi為上下文中第i個單詞的“最終”注意力權(quán)重。
(4)
然而,我們很容易知道單詞“picture”在屬性“picture quality”中扮演著比“quality”更重要的角色,因此,在計算上下文“最終”注意力權(quán)重時,需要獲得屬性中每個單詞對上下文不同的影響力權(quán)值,此即AOA網(wǎng)絡(luò)的疊加注意力思想。
(5)
(6)
AOA網(wǎng)絡(luò)中上下文的“最終”注意力權(quán)重γ∈Rn由式(7)計算出來。
(7)
屬性級情感分類研究已經(jīng)認(rèn)識到了屬性信息的重要性,并提出了各種方法用于通過生成屬性特定的表示來精確地建模上下文,但是這些方法往往缺乏對屬性的單獨建模,尤其是通過上下文建模屬性的特征表示。
(8)
AOA網(wǎng)絡(luò)中屬性的“最終”注意力權(quán)重δ∈Rm由式(9)計算出來。
(9)
將AOA模塊的屬性“最終”注意力權(quán)重與屬性隱藏語義狀態(tài)做點積,上下文“最終”注意力權(quán)重與上下文隱藏語義狀態(tài)做點積,拼接兩個點積的結(jié)果得到r,將r作為最終的分類特征。
(10)
把r輸入到一個線性層中,實現(xiàn)將r投射到目標(biāo)類別的空間C={positive,negative,neutral}中。
x=Wl·r+bl
(11)
式中:Wl和bl分別是權(quán)重矩陣和偏差。在線性層之后,使用Softmax層來計算屬性的情感極性為c∈C的概率如下:
(12)
屬性的情感極性最終取決于預(yù)測出的概率最高的標(biāo)簽。用L2正則化訓(xùn)練本文的模型來最小化交叉熵?fù)p失。
(13)
式中:I(·)為指示函數(shù);λ是L2正則化參數(shù);θ是LSTM網(wǎng)絡(luò)和線性層中的一組權(quán)重矩陣。模型中使用dropout隨機丟棄LSTM單元的部分輸入。
本文使用帶有Adam[18]更新規(guī)則的小批量隨機梯度下降來最小化模型中關(guān)于權(quán)重矩陣和偏差項的損失函數(shù)。
本文采用的數(shù)據(jù)有Twitter數(shù)據(jù)集[19]和SemEval2014 Task4的競賽數(shù)據(jù)集[20](包含Restaurant和Laptop兩個數(shù)據(jù)集)。數(shù)據(jù)集中評論對屬性表達(dá)的情感包含積極、中性和消極三類。表1給出了本文實驗所用數(shù)據(jù)的具體情況。
表1 實驗數(shù)據(jù)統(tǒng)計
實驗環(huán)境如表2所示。
表2 實驗環(huán)境
本文使用谷歌官方提供的“BERT-Base,Uncased”預(yù)訓(xùn)練模型。句子中使用的BERT詞向量維度為768,前向LSTM的層數(shù)為1層,epoch為10,batchsize為10,L2正則化項的權(quán)重為0.01,dropout為0.1,Adam優(yōu)化算法的學(xué)習(xí)率為2×10-5。
將本文提出的BERT-LSTM-IAOA模型和基線模型在3個不同領(lǐng)域的數(shù)據(jù)集上進(jìn)行實驗結(jié)果比較,結(jié)果如表3所示。
表3 與基線模型在情感三分類任務(wù)中的分類準(zhǔn)確率對比
(1) TD-LSTM(Target-Dependent LSTM)。通過前向和反向LSTM網(wǎng)絡(luò)分別編碼屬性的上文和下文,融合兩個LSTM隱藏層的輸出用于預(yù)測屬性的情感極性。
(2) ATAE-LSTM(Attention-based LSTM with Aspect Embedding)。在標(biāo)準(zhǔn)LSTM中引入基于屬性向量的注意力機制,并將屬性向量連接到上下文單詞向量上,讓模型在LSTM編碼過程中學(xué)習(xí)更多與屬性相關(guān)的語義特征信息。
(3) IAN(Interactive Attention Networks)。在標(biāo)準(zhǔn)LSTM基礎(chǔ)上運用注意力機制交互學(xué)習(xí)上下文和屬性的特征,再融合上下文和屬性的特征用于分類。
(4) RAM(Recurrent Attention Memory)。首先用一個堆疊的雙向LSTM生成外部記憶矩陣,然后根據(jù)句子中單詞和屬性之間的距離信息為每個單詞產(chǎn)生的記憶片段分配一個不同的位置權(quán)重,最后用GRU網(wǎng)絡(luò)實現(xiàn)多層注意力機制并將不同注意力層級之間的結(jié)果進(jìn)行非線性組合,以此形成屬性的情感特征表示。
(5) AOA-LSTM(Attention-Over-Attention LSTM)。在標(biāo)準(zhǔn)LSTM基礎(chǔ)上,通過計算基于上下文的屬性注意力(text-to-target)和基于屬性的上下文注意力(target-to-text)得到上下文的深層次特征表示,用于進(jìn)行屬性情感分類。
(6) LSTM-MATT-AC。將LSTM與內(nèi)容注意力、位置注意力和類別注意力結(jié)合起來,有利于從多個方面學(xué)習(xí)句子中特定屬性的情感特征。
(7) BERT-LSTM-IAOA。即本文模型。
神經(jīng)網(wǎng)絡(luò)模型的實驗結(jié)果會因為不同的隨機初始化值而波動是訓(xùn)練神經(jīng)網(wǎng)絡(luò)時眾所周知的問題[22],因此本文運行10次模型算法,報告最優(yōu)準(zhǔn)確率(平均準(zhǔn)確率±標(biāo)準(zhǔn)差),本文模型在三個數(shù)據(jù)集上的最優(yōu)準(zhǔn)確率分別達(dá)到84.6%、79.3%和74.6%,較基線模型中分類效果最好的模型在準(zhǔn)確率上分別提升了0.040、0.042和0.035,驗證了本文模型在不同領(lǐng)域數(shù)據(jù)集上進(jìn)行屬性級情感分類的有效性。
(1) BERT對三分類結(jié)果的影響。詞向量的表示是屬性級情感分類任務(wù)的基礎(chǔ),BERT預(yù)訓(xùn)練語言模型能解決靜態(tài)詞向量表示中存在的一詞多義問題。通過在詞向量層分別使用Glove映射的靜態(tài)詞向量表示和BERT映射的動態(tài)詞向量表示,對比分析BERT詞向量表示方法對屬性分類效果的影響,實驗結(jié)果如圖2和圖3所示。
圖2 不同詞向量表示方法對模型準(zhǔn)確率的影響
圖3 不同詞向量表示方法對模型F1值的影響
圖2和圖3分別對比了使用BERT詞向量表示的BERT-BiLSTM-AOA模型和使用Glove詞向量表示的Glove-BiLSTM-AOA模型的兩個評價指標(biāo)(準(zhǔn)確率和F1值)。兩個模型在Restaurant、Laptop和Twitter三個數(shù)據(jù)集上分別進(jìn)行10次實驗,對10次實驗的結(jié)果取平均值??梢钥吹皆谀P椭惺褂肂ERT預(yù)訓(xùn)練語言模型較使用Glove在三個數(shù)據(jù)集上的分類準(zhǔn)確率分別提高了0.039、0.016、0.022,F(xiàn)1值分別提高了0.007、0.002、0.031。實驗結(jié)果表明在本文屬性級情感分類模型的詞向量層使用BERT預(yù)訓(xùn)練語言模型比靜態(tài)詞向量表示模型能得到更好的分類效果。
(2) 屬性單獨建模對三分類結(jié)果的影響。屬性信息是屬性級情感分類任務(wù)中與屬性上下文同樣重要的信息,先前的研究大多忽略了對屬性的單獨建模。通過在模型中加入與不加入屬性的單獨建模表示,分析屬性的單獨建模對分類效果的影響,實驗結(jié)果如圖4和圖5所示。
圖4 屬性單獨建模對模型準(zhǔn)確率的影響
圖5 屬性單獨建模對模型F1值的影響
圖4和圖5分別對比了對屬性進(jìn)行單獨建模的BERT-LSTM-IAOA模型和未對屬性進(jìn)行單獨建模的BERT-LSTM-AOA模型的兩個評價指標(biāo)(準(zhǔn)確率和F1值)。兩個模型在Restaurant、Laptop和Twitter三個數(shù)據(jù)集上分別進(jìn)行10次實驗,對10次實驗的結(jié)果取平均值??梢钥吹紹ERT-LSTM-IAOA模型在三個數(shù)據(jù)集上分類準(zhǔn)確率較BERT-LSTM-AOA模型分別提高了0.021、0.013、0.021,平均F1值分別提高了0.034、0.021和0.022。實驗結(jié)果表明,對屬性進(jìn)行單獨建模提高了屬性級情感分類效果。
本文首先使用BERT預(yù)訓(xùn)練語言模型生成單詞的詞向量表示,彌補靜態(tài)詞向量表示存在的一詞多義缺陷。其次,對屬性和上下文都進(jìn)行特別對待,通過交互學(xué)習(xí)生成其各自獨立的特征表示,在交互學(xué)習(xí)的過程中使用疊加注意力AOA代替普通注意力以挖掘?qū)傩耘c上下文之間深層次的語義關(guān)系。最后,拼接屬性和上下文的特征表示進(jìn)行分類。本文的一系列實驗結(jié)果表明這種改進(jìn)方法能有效提高屬性級情感分類的效果。