孫璇, 馬暉男, 周勝利, 徐婧, 王成
(上海杉達(dá)學(xué)院 信息科學(xué)與技術(shù)學(xué)院, 上海 201209)
情感分析是自然語言處理領(lǐng)域經(jīng)典的研究任務(wù)之一,主要分析一個句子或段落的情感傾向[1]。近年來,隨著信息技術(shù)和互聯(lián)網(wǎng)的快速發(fā)展,人們不僅享受著數(shù)字化帶來的便利,也在不斷地產(chǎn)生新的信息。微博、Twitter、豆瓣等社交媒體平臺成為人們發(fā)表對產(chǎn)品、人物和事件等個人觀點的主要平臺。這些文本蘊(yùn)含了發(fā)布者對目標(biāo)對象的情感信息。通過對這些情感信息進(jìn)行挖掘,可以幫助客戶更好地理解用戶行為,預(yù)測出事件的發(fā)展方向或趨勢。
在社交媒體中,這些評論文本呈爆炸式增長,一方面對耗時耗力的人工分析構(gòu)成了巨大的挑戰(zhàn),另一方面促進(jìn)了智能文本分析技術(shù)的發(fā)展。這對情感分析任務(wù)來說尤為重要,因為在社交媒體中用戶評論的情感傾向呈現(xiàn)出了復(fù)雜的多維度形態(tài),已經(jīng)不再是“好,不錯”“我不喜歡”“還可以”這樣簡單的評論,而是對目標(biāo)對象的某些屬性或方面表達(dá)積極、消極或中立的情感傾向。由此,用戶對目標(biāo)對象的真實評價不再是整條評論上粗粒度的情感傾向分析,而是每條語句上細(xì)粒度的情感傾向分析。一般情況下,用戶習(xí)慣對目標(biāo)對象的多個屬性進(jìn)行評價,有積極、消極或中立等情感傾向,呈現(xiàn)多維度的特點。
先前已有學(xué)者對情感分析任務(wù)進(jìn)行了許多研究[2]。但是,相對于一般的文本分析來說,這種屬性級別的情感分析任務(wù)具有一定的難度。因此,本文以分析與建模用戶多維度情感傾向為主要研究內(nèi)容,提出了一種基于自注意力機(jī)制的雙向 LSTM 網(wǎng)絡(luò)的情感分析模型,該模型采用雙向長短程記憶網(wǎng)絡(luò)來對文本序列進(jìn)行表征學(xué)習(xí),同時融入了自注意力機(jī)制,更加有效地通過建模文本內(nèi)部特征的相關(guān)性來分析用戶情感傾向。
情感分析是自然語言處理中的一項基本任務(wù),引起了許多研究者的關(guān)注。傳統(tǒng)的文本分類方法,如邏輯斯蒂回歸、支持向量機(jī)、決策樹等,雖然能夠用來構(gòu)建情感分類模型,但是常常依賴繁瑣的特征工程及構(gòu)建特定領(lǐng)域的情感字典[3]。許多研究表明:依賴特征工程的算法達(dá)到了性能瓶頸,能夠為大規(guī)模數(shù)據(jù)分析帶來的性能增益微乎其微[4]。2006年以來,深度學(xué)習(xí)在許多任務(wù)上取得了巨大的成就,如目標(biāo)檢測、機(jī)器翻譯、智能問答、文本挖掘等[5]。因此,基于深度學(xué)習(xí)技術(shù)的情感分析方法顯示出巨大的前景。神經(jīng)網(wǎng)絡(luò)模型的強(qiáng)大之處在于無需任何特征工程就能從數(shù)據(jù)中學(xué)習(xí)到文本表征的能力。代表性的文本表征學(xué)習(xí)方法有遞歸神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、長短程記憶網(wǎng)絡(luò)以及樹結(jié)構(gòu)的長短程記憶網(wǎng)絡(luò)。文獻(xiàn)[6]利用遷移學(xué)習(xí)將傳統(tǒng)機(jī)器學(xué)習(xí)模型和深度學(xué)習(xí)模型相融合,把CNN提取的文本特征用SVM進(jìn)行分類,在情感分析任務(wù)上取得了不錯的效果。文獻(xiàn)[1]認(rèn)為40%的情感分類錯誤是由于沒有考慮到上下文當(dāng)中的情感目標(biāo)詞導(dǎo)致,近期的研究工作特別傾向于在對上下文建模時增強(qiáng)情感目標(biāo)詞的作用。文獻(xiàn)[7]提出了一種自適應(yīng)遞歸神經(jīng)網(wǎng)絡(luò),根據(jù)推文數(shù)據(jù)上的句法關(guān)系將情感從上下文單詞傳遞到特定目標(biāo)屬性詞。文獻(xiàn)[8]將整個上下文分成三個組成部分,即目標(biāo)屬性詞,左上下文與右上下文,然后使用情感詞典和神經(jīng)網(wǎng)絡(luò)來生成目標(biāo)相關(guān)的特征。文獻(xiàn)[9]將上下文拆分成兩個部分:一個部分由目標(biāo)屬性詞與其左上下文組成,另一部分由目標(biāo)屬性詞與其右上下文組成,然后使用兩個長短期記憶網(wǎng)絡(luò)模型分別對這兩個部分進(jìn)行建模,最后使用這兩個部分的特定目標(biāo)屬性詞的組合表征進(jìn)行情感分類。文獻(xiàn)[10]采用雙向LSTM網(wǎng)絡(luò)分別對微博文本及符號進(jìn)行編碼,通過將注意力模型和常用網(wǎng)絡(luò)用語的微博情感符號庫相結(jié)合,有效增強(qiáng)了對微博文本情感語義的捕獲能力,提高了微博情感分類的性能。
本文針對社交媒體中用戶多維度情感傾向問題進(jìn)行建模,提出了一種基于自注意力機(jī)制的情感分析的深度學(xué)習(xí)模型SA-LSTM,該模型的總體框架結(jié)構(gòu)如圖1所示。該模型主要由兩個核心組件組成:雙向長短程記憶網(wǎng)絡(luò)與自注意力機(jī)制。這兩個核心組件讓模型具有更強(qiáng)的信息歸納能力,從而能夠更好地關(guān)注序列文本中的重要信息。該模型主要針對目標(biāo)對象的不同屬性及其所依賴的上下文分別進(jìn)行建模,大致分為五層,由下往上分別是:(1)詞表示層:將目標(biāo)對象的屬性詞(或詞組)及其所依賴的上下文的文本映射為向量,其中,每個詞以N維的實值向量表示;(2)雙向長短程記憶網(wǎng)絡(luò)層:將目標(biāo)對象的屬性及其所依賴的上下文的向量表示輸入到雙向LSMT網(wǎng)絡(luò)當(dāng)中,經(jīng)過深層的LSTM計算,輸出更高級別的抽象的語義表示,稱之為隱藏層狀態(tài);(3)自注意力機(jī)制:將雙向LSTM網(wǎng)絡(luò)的輸出拼接作為該層輸入,經(jīng)過一次非線性變換后乘以權(quán)重參數(shù)向量ws2,得出的結(jié)果輸入到softmax層計算LSTM每個時間步的隱藏層狀態(tài)的權(quán)重;(4)語義表示層:將雙向 LSTM 網(wǎng)絡(luò)層每個時間步的隱藏層狀態(tài)乘以計算好的自注意力權(quán)重得到最終的語義表示;(5)分類器:將最終的語義表示拼接起來,形成一個兩者的最終表示形式,輸入到softmax分類器中,輸出用戶對目標(biāo)對象的屬性的情感傾向類別。每部分的詳細(xì)設(shè)計如圖2所示。
圖1 SA-LSTM 模型的總體框架結(jié)構(gòu)圖
圖2 詳細(xì)的結(jié)構(gòu)設(shè)計圖
在許多自然語言處理任務(wù)中,長短程記憶網(wǎng)絡(luò)常被用來作為文本序列學(xué)習(xí)的基本模型,因為它能夠有效地緩解梯度消失和梯度爆炸問題,讓模型學(xué)習(xí)更長的文本序列表示變得可能。長短程記憶網(wǎng)絡(luò)的內(nèi)部結(jié)構(gòu)圖如圖3所示。
圖3 LSTM 單元網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)圖
LSTM單元網(wǎng)絡(luò)主要由三個門控與一個記憶單元組成來控制信息流:輸入門it、忘記門ft、輸出門ot。在模型訓(xùn)練的過程中,這些門能夠自適應(yīng)地記住輸入信息、忘記歷史信息以及生成輸出表示。LSTM單元網(wǎng)絡(luò)表示如式(1)—式(6)。
it=σ(Wi·[ht-1;xt]+bi)
(1)
ft=σ(Wf·[ht-1;xt]+bf)
(2)
ot=σ(Wo·[ht-1;xt]+bo)
(3)
gt=tanh(Wr·[ht-1;xt]+br)
(4)
ct=it⊙gt+ft⊙ct-1
(5)
ht=ot⊙tanh(ct)
(6)
式中,⊙表示數(shù)組元素依次相乘;σ表示sigmoid函數(shù);Wi、bi、Wf、bf、Wo、bo分別表示LSTM單元的輸入門、忘記門、輸出門的參數(shù)。[ht-1;xt]操作表示將前一時間步的隱藏狀態(tài)ht-1與當(dāng)前時間步的輸入xt進(jìn)行拼接合并操作。
本文采用預(yù)訓(xùn)練的word2vec詞嵌入文件,每個單詞用300維的向量表示,最大詞序列長度為n。此時,序列S中的每個詞都是彼此獨(dú)立的。為了能夠獲得單個句子中鄰接詞之間的某種依賴,使用雙向LSTM單元網(wǎng)絡(luò)來處理文本序列。每一步的隱藏層結(jié)果如式(7)、式(8)。
(7)
(8)
H=(h1,h2,…,hn)
(9)
注意力機(jī)制模仿了生物觀察行為的內(nèi)部過程, 即一種將內(nèi)部經(jīng)驗和外部感覺對齊從而增加部分區(qū)域的觀察精細(xì)度的機(jī)制。注意力機(jī)制可以快速提取稀疏數(shù)據(jù)的重要特征,因而被廣泛用于自然語言處理任務(wù),特別是機(jī)器翻譯。而自注意力機(jī)制是注意力機(jī)制的改進(jìn),其減少了對外部信息的依賴,更擅長捕捉數(shù)據(jù)或特征的內(nèi)部相關(guān)性。
目的是把一個變長的文本序列編碼成一個固定大小的嵌入。通過計算n個LSTM隱藏層向量的一個線性組合來實現(xiàn)。這種線性組合就是通過自注意力機(jī)制計算得來。自注意力機(jī)制的基本結(jié)構(gòu)如圖4所示。
圖4 自注意力機(jī)制的結(jié)構(gòu)圖
自注意力機(jī)制取正向與反向LSTM所有時間步的隱藏狀態(tài)拼接后的向量組成的矩陣H為其輸入,輸出權(quán)重向量如式(10)。
A=softmax(ws2tanh(Ws1HT))
(10)
其中,Ws1為維度為da×2u的權(quán)重矩陣;Ws1為維度為r×da的權(quán)重矩陣;da為一個任意設(shè)置的參數(shù)。Ws2也可以是r=1時維度為1×da的向量,這里設(shè)置為r=1。因為H的維度為n×2u,那么自注意力權(quán)重向量A的大小則為n。softmax函數(shù)確保了所有計算得來的權(quán)重之和等于1。最后,根據(jù)這些權(quán)重把所有的LSTM隱藏層向量加起來就得到了輸入序列的向量表示m。此時,m用作softmax分類器的輸入得出最后的情感分類(積極、中立、消極)。
為了驗證本文提出的模型在屬性級的情感分析任務(wù)上的有效性,采用SemEval2014情感分析評測數(shù)據(jù)集。該數(shù)據(jù)集包含了“餐廳”“筆記本”兩大類的用戶真實評論數(shù)據(jù)。每條評論被標(biāo)注成“積極”“中立”“消極”等三種情感,同時每條評論中也標(biāo)注了其中出現(xiàn)的評價對象的一些屬性及其情感傾向。數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)如表1所示。
表1 SemEval 2014情感分析評測數(shù)據(jù)集概覽
為了驗證提出方法的有效性,本文采用以下模型作為對比實驗:
(1) CNN:使用經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)提取文本特征,經(jīng)過最大池化后的使用softmax進(jìn)行情感分類。
(2) CNN+SVM:使用CNN提取文本特征后,將得到的句子表示使用SVM 進(jìn)行分類。
(3) LSTM:使用標(biāo)準(zhǔn)LSTM網(wǎng)絡(luò)學(xué)習(xí)句子語義表征,不需要返回所有時間步驟的隱藏層輸出,只保留最后一個時間步驟的隱藏層輸出,將其作為softmax分類器的輸入。
(4) TD-LSTM:一種基于LSTM改進(jìn)的模型,用兩個LSTM網(wǎng)絡(luò)對目標(biāo)詞所在位置的前后上下文分別進(jìn)行建模。
(5) AE-LSTM:一種注意力機(jī)制模型,將目標(biāo)詞的詞嵌入直接與句子中的詞嵌入直接拼接在一起,作為標(biāo)準(zhǔn)LSTM網(wǎng)絡(luò)的輸入;接著,在對所有的 LSTM網(wǎng)絡(luò)的隱藏層輸出使用注意力機(jī)制進(jìn)行加權(quán);最后,將加權(quán)后的句子表征作為softmax分類器的輸入進(jìn)行情感分類。
(6) ATAE-LSTM:將目標(biāo)詞的詞嵌入與LSTM隱藏層的輸出進(jìn)行拼接,組合在一起進(jìn)行注意力,最后輸入到softmax分類器進(jìn)行情感分類。
本實驗采用Python語言編寫,采用Keras框架實現(xiàn)。需要調(diào)節(jié)的參數(shù)如表2所示。
表2 模型訓(xùn)練參數(shù)說明及取值
本文主要采用準(zhǔn)確率、召回率、精確率、F1值作為評估指標(biāo)。在所有模型上進(jìn)行實驗的結(jié)果如表3顯示。
從表3可以看到,本文提出的方法取得了最好的實驗結(jié)果,相較于ATAE-LSTM模型在準(zhǔn)確率、精確率、召回率、F1值上分別提升了2.2%、2.4%、2.8%、2.6%,證明了本文提出模型的有效性。可以從表3中得出結(jié)論:(1)相較于依賴外部信息的注意力機(jī)制,自注意力機(jī)制更加關(guān)注文本內(nèi)部特征的相關(guān)性,這種特點顯著地增強(qiáng)了自注意力機(jī)制表征學(xué)習(xí)的能力,豐富了表征的語義;(2)除了采用注意力機(jī)制之外,ATAE-LSTM模型取得顯著性能的關(guān)鍵在于在詞嵌入層和LSTM輸出結(jié)果上都用預(yù)訓(xùn)練好的目標(biāo)屬性的向量表示進(jìn)行增強(qiáng)。然而,在本文提出的模型中,并未使用類似的表征拼接方法來增強(qiáng)語義。側(cè)面反映了本文提出的模型具有相對更好的性能表現(xiàn)。
表3 實驗結(jié)果
本文提出了一種基于自注意力機(jī)制的雙向 LSTM網(wǎng)絡(luò)的情感分析模型,通過新穎的自注意力機(jī)制來對社交媒體中用戶評論的多維度情感傾向進(jìn)行分析與建模。自注意力機(jī)制能夠捕獲評論文本序列的內(nèi)部特征相關(guān)性,有效地增強(qiáng)了模型對于評論文本情感信息的捕獲能力,進(jìn)而提升了情感分析的性能表現(xiàn)。在SemEval2014的數(shù)據(jù)集上,本文提出的模型均表現(xiàn)出了最好的性能。但是,本文采用的詞向量是靜態(tài)不變的,而不是依據(jù)上下文動態(tài)可變的。因此,本文下一步的研究工作是采用語境化的詞向量表征模型,以改善模型性能。