梁 軍,柴玉梅,原慧斌,高明磊,昝紅英
(1. 鄭州大學 信息工程學院,河南 鄭州 450001;2. 中國核科技信息與經濟研究院,北京 100048)
?
基于極性轉移和LSTM遞歸網絡的情感分析
梁 軍1,柴玉梅1,原慧斌2,高明磊1,昝紅英1
(1. 鄭州大學 信息工程學院,河南 鄭州 450001;2. 中國核科技信息與經濟研究院,北京 100048)
長短時記憶(long short term memory,LSTM)是一種有效的鏈式循環神經網絡(recurrent neural network,R2NN*為了與遞歸神經網絡(Recursive Neural Network)進行區別,本文稱之為R2NN。),被廣泛用于語言模型、機器翻譯、語音識別等領域。但由于該網絡結構是一種鏈式結構,不能有效表征語言的結構層次信息,該文將LSTM擴展到基于樹結構的遞歸神經網絡(Recursive Neural Network,RNN)上,用于捕獲文本更深層次的語義語法信息,并根據句子前后詞語間的關聯性引入情感極性轉移模型。實驗證明本文提出的模型優于LSTM、遞歸神經網絡等。
LSTM,遞歸神經網絡,情感分析
近年來隨著學者對深度學習的不斷探索,其在圖像、語音識別領域都取得了重大進展。與此同時NLP領域眾多學者也在進行各種深入研究,尤其在利用神經網絡進行語言模型建立、文本特征學習和短文本情感分析方向上都有突破。
在利用神經網絡進行文本特征學習時首先要面對的問題就是對文本數據建模,通常有三種模型: 詞袋模型(bag-of-words model)、序列化模型(sequence model)和結構化模型(structure model)。這三種模型各有優劣,對于詞袋模型,文本被看作是無序的詞匯集合,忽略語法甚至是單詞的順序,該模型被廣泛應用于傳統貝葉斯模型、LSA、LDA等文本分類模型中,被證明是簡單有效的,但同時該模型的缺點也是十分明顯的,它忽略了文本本身的語法語義信息所以很難捕獲到文本中深層的語義信息。而序列化模型則將文本看作是有序的詞語序列,這種模型考慮了文本的有序性以及詞語間的關聯性可以學習到一些詞袋模型無法學習到的語義信息,如
Bengio等人提出的神經網絡語言模型[1]就考慮了詞語間的順序性,但為了降低模型的復雜度僅僅考慮窗口內的詞語。Mikolov等人[2]在2010年提出利用循環神經網絡來構建語言模型, 這使得網絡模型可以充分地利用上下文信息從而更好地進行語言建模。不過這些模型依然是將文本看作有序列的詞語組合,僅考慮了文本的有序性信息而忽略了文本在語義上的結構性。結構化模型則試圖將文本看作有結構的詞語組合,使得在學習文本特征時能夠充分保存文本的結構特征,例如,Socher等人[3]利用Recursive Autoencoder方法試圖以一種樹形結構來描述文本,希望能夠學習到文本的句法信息,該方法在解決短文本情感分析的問題上取得了不錯的效果。
在解決序列化問題時,R2NN被證明是一種有效的方法,可以充分地利用上下文信息,但該方法存在著梯度爆炸和消失的問題[4],Hochreiter和Schmidhube等人[5]提出的LSTM型R2NN有效地解決了這一問題。然而LSTM-R2NN也是一種鏈式網絡并不能利用文本的結構化信息,因此本文將LSTM這一網絡結構拓展到基于樹形結構的RNN網絡上,構成LSTM-RNN模型,并結合情感分析中的情感極性轉移現象(Polarity Shifting)提出 PLSTM-RNN模型,從而更好地利用文本上下文信息、結構化信息和情感語義信息來解決文本情感分析這一問題。
本文具體章節安排如下: 第二節介紹了與本文相關的一些工作進展;第三節介紹了融合LSTM和情感極性轉移模型之后的網絡模型;第四節介紹將融合之后的模型應用于情感分析;第五節為實驗及分析;最后對本文做出總結,并指出后續的工作方向。
2.1 遞歸神經網絡
Socher等人在2011年將遞歸神經網絡成功應用在句法解析上[6],之后人們對它進行了許多研究。隨后Socher在RNN的基礎上添加一個感知層,從而提高模型的表達能力[7];Irsoy和Cardie[8]將RNN擴展為3-layer RNN從而成為一個深層網絡結構。除了對模型的結構進行優化,RNN也被應用在NLP的其他領域,Li P和Liu Y[9]等人將RNN應用到機器翻譯領域;Le和Zuidema[10]將其應用在依存句法分析上,都取得了不錯的效果。這些方法通過遞歸神經網絡為語言建模,可以有效地捕獲到文本的語義信息,從而提高了利用機器學習方法解決這些傳統任務時的性能。
2.2 情感分析
情感分析是一個新興的研究課題,具有很大的研究價值和應用價值[11]。鑒于此,該研究課題受到國內外越來越多的研究機構的重視。Pang和Lee等人在2008年就利用詞袋模型對文本進行情感分析,隨后許多人嘗試設計更好的工程特征或者使用基于句法結構的極性轉移規則來提升情感分析的準確率。這些模型都是基于詞袋模型,無法獲取到文本中的深層語義信息,因此效果并不理想。2013年Socher等人利用遞歸神經網絡模型對影評數據進行情感分析取得了比傳統方法更好的效果。梁軍等人[12]通過在Recursive Autoencoder模型中融入情感極性轉移模型,在中文微博情感分析上取得不錯效果。這兩種模型都是樹形結構網絡,但沒有充分利用句子的歷史信息。
神經網絡模型可以學習到不同長度、句法結構的短語的特征表示。這些特征表示可以作為分類器的特征輸入為短語、句子進行分類。在利用神經網絡模型進行句子特征表示學習時,需要先將句子中的詞語映射為d維的實數向量。這些詞語對應的d維實數向量可以使用高斯分布U(_r,r)進行初始化,也可以使用一些無監督方法進行預訓練,例如,google推出的將詞語轉化為詞向量的工具word2vec,Socher等人提出的Recursive Autoencoder方法。所有詞語對應的詞向量將會存儲在一個詞向量矩陣L∈Rd×|V|中,其中|V|是詞表的大小。詞向量矩陣L同樣會作為神經網絡模型的參數被訓練,當模型訓練完成后詞向量矩陣L就會存儲每個詞對應的特征表示。在有了詞語對應的詞向量之后,需要一定的方式來計算詞語組合形成的詞組、句子所對應的特征表示,有了詞組、句子對應的特征表示之后,將這些特征作為softmax分類器的輸入就可以得到它們的分類結果。
本節將介紹兩個學習詞語、句子特征表示的網絡結構模型RNN和R2NN模型,并結合兩個模型的特點提出一個新的LSTM-RNN模型。該模型可以有效利用句子的語法結構信息和語義的歷史信息進行詞語、短語和句子的特征表示學習。通過該模型學習到的特征已經可以有效地用于文本情感分析,但語言中會廣泛出現情感極性轉移的現象,本文進一步結合該現象對模型進行改進,提出 PLSTM-RNN模型。
3.1 RNN
遞歸神經網絡最早由Goller[14]提出,它根據句子語法的樹形結構由底向上遞歸地合并兩個相鄰的節點,如圖1所示。

圖1 RNN的網絡結構
遞歸神經網絡可以根據一個給定的有向無環圖從下往上遞歸地應用相同的權重組合去構建網絡結構。通過遍歷該有向無環圖拓撲結構中的節點,可以不斷遞歸地由子節點的向量表示學習到父節點的
向量表示。一般來說有向無環圖的結構是沒有限定的,但為了結構的統一性和簡潔性通常將該有向無環圖轉換為二叉樹的形式。
假定文本為xi-1xixi+1,其句法解析樹對應的二叉樹結構為(pi+1(pi(xi-1xi)xi+1)),xi-1,xi,xi+1∈d表示詞語,pi∈Rd表示短語xi-1xi,pi+1∈Rd表示xi-1xixi+1;W1,W2∈Rd×d為系數矩陣,則可以表述為:
(1)
其中g為激活函數tanh。如圖1所示遞歸神經網絡通過不斷合并兩個短語的特征表示來學習更大跨度的短語的特征表示,在特征學習的過程中它根據語法結構關系先后合并句子中的詞語,既保留了句子的詞序特征,又結合了句子的語法層次結構特征。
3.2 LSTM型R2NN
循環神經網絡與遞歸神經網絡的區別在于組成這些網絡的神經元相互關聯的結構不同: 遞歸神經網絡中節點的結合是按照有向無環圖進行的,而循環神經網絡中節點是按照出現的時序關系結合。事實上,可以把循環神經網絡看作是一個具有特定結構的遞歸神經網絡。如圖2所示。

圖2 循環神經網絡
在第t次網絡傳播時假定輸入為xt∈RM,t-1次傳播時隱含層為ht-1∈Rn(m,n分別表示向量維度),則t次傳播時隱含層計算方式如式(1)所示。
(1)
其中Wx∈Rn×m是第t次輸入的詞向量xt對應的系數矩陣,U∈Rn×m是t-1次傳播輸出ht-1對應的系統矩陣,δ是非線性激活函數(sigmoid函數或者tanh函數)。這樣隱含層在每次計算時都會把上次輸出作為本次輸入從而達到保存歷史信息的目的。但是在使用BP、BPTT算法優化網絡時會遭遇梯度爆炸或者梯度衰減的問題[4],而LSTM使用一個記憶單元(memory cell)來替代R2NN中的隱含層從而可以避免梯度在反向傳播中遇到的爆炸和衰減問題。LSTM的網絡結構如圖3所示。

圖3 LSTM網絡結構
LSTM型R2NN由input gate i、output gate o和forget gate f和memory cell c組成,其中input gate、output gate和forget gate是控制memory cell的讀、寫和丟失操作的控制器。利用形式化語言,LSTM可以表述為:
it=δ(Wixt+Uiht-1+Vict-1+bi)
ft=δ(Wfxt+Ufht-1+Vfct-1+bf)
ct=ft⊙ct-1+it⊙tanh(Wcxt+Ucht-1+bc)
ot=δ(Woxt+Uoht-1+Voct+bo)
ht=ot⊙tanh(ct)
(2)
其中δ是激活函數sigmoid;⊙是點乘運算;W*,U*,V*,b*分別表示系數矩陣和偏置向量,it,ft,ot分別表示t時刻input gate、forget gate和output gate的計算方法,ct表示t時刻memory cell的計算
方法,ht為t時刻LSTM單元的輸出。由圖3可以看出三個控制門input gate,output gate和forget gate的輸出分別連接到一個乘法單元上,從而分別控制網絡的輸入、輸出以及cell單元的狀態。
3.3 基于LSTM的RNN
本小節介紹如何將LSTM擴展到RNN模型上,使得既可以獲得文本的結構信息,又可以利用LSTM對歷史信息進行存儲。這樣在計算父節點的向量表示時不僅僅可以用到兩個子節點的結構信息,還可以利用歷史信息進行計算。
與LSTM單元類似,LSTM-RNN的記憶單元也同樣由input gate,forget gate,output gate和memory cell組成,但由于LSTM-RNN是基于樹結構,所以在t時刻LSTM-RNN的輸入不止一個(對于二叉樹來說,每次輸入有兩個),所以LSTM-RNN對于每個LSTM單元都有兩個input gate和forget gate,如圖4所示,一個基于二叉樹結構的LSTM-RNN單元是由兩個input gate,一個output gate,一個memory cell和兩個forget cell組成。

圖4 LSTM-RNN網絡結構

(3)

由于每個孩子節點都對應一個input gate,通過訓練可以使得對父節點貢獻大的子節點對應的input gate更接近1,對父節點貢獻小的子節點對應的input gate則更接近0;同樣的forget gate控制在計算父節點時利用每個子節點的歷史信息。
3.4 融合極性轉移的LSTM-RNN
在各個語言中,極性轉移對于文本情感分析都是一個極大的挑戰。句子中的一些否定詞、程度副詞等的使用都可能會使得句子的極性發生偏轉。張小倩[13]等人對極性轉移現象進行研究分析,將其分為三類,本文根據其研究進行如下分類(表1)。

表1 極性轉移實例

(4)
本節介紹如何將擴展的PLSTM-RNN模型應用于情感分析,具體網絡結構圖如圖5所示。

圖5 PLSTM-RNN
其中lx是節點x通過PLSTM-RNN模型訓練得到特征向量表示后作為softmax回歸的輸入得到的情感極性標簽,同時lx作為PLSTM的輸入決定偏置向量的選取。假定y是節點x對應的真正的情感。那么節點x的情感極性為Ak的概率計算方法如式(5)所示。
(5)
假定訓練樣本為T,那么在訓練時定義損失函數為:
(6)
其中s為樣本集T中的句子,n為每個句子中的節點,l{·}是示性函數,其取值規則為:l{Ture}=1。在訓練模型的時候可以使用梯度下降[14]的方法來最小化損失函數J(θ),當然也可以采用LBFGS或AdaGrad[14-15]等方法來優化參數。模型的算法描述如下所示:

PLSTM-RNN輸入:語料及其對應標簽構成的訓練語料T輸出:θ1)初始化詞向量及θ;2)while不收斂do?J=0forall∈Tdo whilepisn’tRootdo p=PLSTM_RNN(xl,xr) endwhile 計算?Ji=?J(s,t)/?θ 更新?J=?J+?Ji endfor 更新Θ=1N?J+λθ endwhile
5.1 數據集
為了驗證模型的有效性,本文選用斯坦福大學在影評數據上開發的Stanford Sentiment Treebank[7],該數據集的標簽分為五類(very negative, negative, neutral, positive, very positive),共有11 855個句子, 平均每個句子包含19個詞語,共有215 154個短語,按照原有的數據集分割方案: 訓練集8 544句,開發集1 101句,測試集2 210句。另外,將其中沒有極性的句子去掉,將其作為二分類的驗證數據集,沒有極性的句子約占整個數據集的20%左右,去掉之后的開發集6 920句,開發集872句,測試集1 821句。
5.2 向量維度的選擇
在進行實驗時,詞向量使用Jeffrey Pennington et al[16]使用Common Crawl數據訓練得到的300維向量*http://nlp.stanford.edu/projects/glove/初始化,中間節點則使用不同維度的向量進行表征。因為隨著內部節點維度的增加整個模型的復雜度成倍增長,因此需要為內部節點的向量表征選擇一個合適的維度,圖6是在開發集上對內部節點使用不同的向量維度表征得到的PLSTM-RNN模型的評估。

圖6 內部節點向量維度的影響
由上圖可以看出,內部節點向量維度在100維時即可達到較理想的效果。
5.3 模型對比實驗
本節將該文提出的模型PLSTM-RNN和之前在該數據集上試驗過的模型進行對比(使用準確率作為評估標準),主要有Naive Bayes with bag of bigram features ( BiNB),Recursive neural tensor network (RNTN)[7],Convolutional neural network (CNN)[17],Dynamic convolutional neural network (DCNN)[18]和 Deep RNN(DRNN)[8]模型。
通過表2可以看出,在對文本進行二分類或者五分類時PLSTM-RNN模型都能夠達到很好的效果,證明該模型是有效的。從直觀上來看,利用LSTM可以有效保存文本的歷史信息,這對文本進行情感分析是非常有幫助的;同時結合RNN網絡的特點可以充分利用句子本身的結構信息,使得模型學習到的特征表示更完備;在此基礎上進一步加入節點的聯合情感信息,最終結合了文本的語義信息、結構信息和情感信息,從而使模型可以達到最好的效果。

表2 模型對比結果
本文將基于鏈式結構的LSTM型網絡擴展到RNN網絡,使得模型可以在更好地獲取文本歷史信息的同時,挖掘到文本的結構信息,豐富特征學習,同時針對情感極性轉移這一問題提出情感極性轉移模型,并將其融入到LSTM-RNN中,進一步優化了模型的表征能力。
基于文本結構的神經網絡模型在文本處理上有較強的優勢,但對于如何快速有效學習到文本的結構特征,仍然是一個亟待解決的問題,下一步工作也將在這方面進行探索,從而更好地對文本進行結構化表征。
[1] Bengio Y, Ducharme R, Vincent P, et al. A neural probabilistic language model[J]. The Journal of Machine Learning Research, 2003, 3: 1137-1155.
[2] Mikolov T, Karafiát M, Burget L, et al. Recurrent neural network based language model[C]//Proceedings of the 11th Annual Conference of the International Speech Communication Association, Makuhari, Chiba, Japan, September 26-30, 2010. 2010: 1045-1048.
[3] Socher R, Pennington J, Huang E H, et al. Semi-supervised recursive autoencoders for predicting sentiment distributions[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing. Association for Computational Linguistics, 2011: 151-161.
[4] Hochreiter S, Bengio Y, Frasconi P, et al. Gradient flow in recurrent nets: the difficulty of learning long-term dependencies[M]. Wiley-IEEE Press, 2001: 237-243.
[5] Hochreiter S, Schmidhuber J. Long short-term memory[J]. Neural computation, 1997, 9(8): 1735-1780.
[6] Socher R, Lin C C, Manning C, et al. Parsing natural scenes and natural language with recursive neural networks[C]//Proceedings of the 28th international conference on machine learning (ICML-11). 2011: 129-136.
[7] Socher R, Perelygin A, Wu J Y, et al. Recursive deep models for semantic compositionality over a sentiment treebank[C]//Proceedings of the conference on empirical methods in natural language processing (EMNLP). 2013: 1631-1642.
[8] Irsoy O, Cardie C. Deep Recursive Neural Networks for Compositionality in Language[C]//Proceedings of the Advances in Neural Information Processing Systems. 2014: 2096-2104.
[9] Li P, Liu Y, Sun M. Recursive Autoencoders for ITG-Based Translation[C]//Proceedings of the EMNLP. 2013: 567-577.
[10] Le P, Zuidema W. Inside-Outside Semantics: A Framework for Neural Models of Semantic Composition[C]//Proceedings of the Deep Learning and Representation Learning Workshop: NIPS 2014.
[11] 趙妍妍, 秦兵, 劉挺. 文本情感分析[J]. 軟件學報, 2010, 21(8):1834-1848. DOI:10.3724/SP.J.1001.2010.03832.
[12] 梁軍, 柴玉梅, 原慧斌, et al. 基于深度學習的微博情感分析[J]. 中文信息學報, 2014, 28(5):155-161.
[14] Goller C, Kuchler A. Learning task-dependent distributed representations by backpropagation through structure[C]//Proceedings of the IEEE International Conference on. IEEE, 1996, 1: 347-352.
[15] Duchi J, Hazan E, Singer Y. Adaptive subgradient methods for online learning and stochastic optimization[J]. The Journal of Machine Learning Research, 2011, 12: 2121-2159.
[16] Pennington J, Socher R, Manning C D. Glove: Global vectors for word representation[C]//Proceedings of the Empiricial Methods in Natural Language Processing (EMNLP 2014), 2014, 12.
[17] Kim Y. Convolutional neural networks for sentence classification[J]. arXiv preprint arXiv:1408.5882, 2014.
[18] Blunsom P, Grefenstette E, Kalchbrenner N. A convolutional neural network for modelling sentences[C]//Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, 2014.
Polarity Shifting and LSTM Based Recursive Networks for Sentiment Analysis
LIANG Jun1, CHAI Yumei1, YUAN Huibin2, GAO Minglei1, ZAN Hongying1
(1. School of Information Engineering, Zhengzhou University, Zhengzhou, Henan 450001, China;2. China Institute of Nuclear Information & Economics, Beijing 100048, China)
The chain-structured long shortterm memory (LSTM) has been shown to be effective in a wide range of tasks such as language modeling, machine translation and speech recognition. Because it cannot storage the structure of hierarchical information language, we extend it to a tree-structure based recursive neural network to capture more syntactic and semantic information, as well as the sentiment polarity shifting. Compared to LSTM, RNN etc, the proposed model achieves a state-of-the-art performance.
LSTM; recursive neural network; sentiment analysis

梁軍(1990—),通信作者,碩士研究生,主要研究領域為機器學習、自然語言處理。E-mail:zhengdaxg@163.com柴玉梅(1964—),教授,主要研究領域為機器學習、數據挖掘和自然語言處理。E-mail:ieymchai@zzu.edu.cn原慧斌(1966—),學士,研究員級高工,主要研究領域為中文全文檢索技術,自然語言處理。E-mail:1074821578@qq.com
1003-0077(2015)05-0152-08
2015-07-08 定稿日期: 2015-09-09
國家社會科學基金(14BYY096);國家自然科學基金(61402419,61272221);國家高技術研究發展863計劃(2012AA011101);計算語言學教育部重點實驗室(北京大學)開放課題(201401);國家重點基礎研究發展計劃 973 課題(2014CB340504);河南省高等學校重點科研項目(15A520098)
TP391
A
張小倩. 情感極性轉移現象研究及應用[D]. 蘇州大學, 2012.
10.7666/d.y2120830.