趙勤魯 蔡曉東 李波 呂璐
摘 要: 針對當(dāng)前文本分類神經(jīng)網(wǎng)絡(luò)不能充分提取詞語與詞語和句子與句子之間的語義結(jié)構(gòu)特征信息的問題,提出一種基于LSTM?Attention的神經(jīng)網(wǎng)絡(luò)實現(xiàn)文本特征提取的方法。首先,分別使用LSTM網(wǎng)絡(luò)對文本的詞語與詞語和句子與句子的特征信息進行提?。黄浯?,使用分層的注意力機制網(wǎng)絡(luò)層分別對文本中重要的詞語和句子進行選擇;最后,將網(wǎng)絡(luò)逐層提取得到的文本特征向量使用softmax分類器進行文本分類。實驗結(jié)果表明,所提方法可以有效地提取文本的特征,使得準確率得到提高。將該方法應(yīng)用在IMDB,yelp2013和yelp2014數(shù)據(jù)集上進行實驗,分別得到52.4%,66.0%和67.6%的正確率。
關(guān)鍵詞: LSTM?Attention; 注意力機制; 文本分類; 神經(jīng)網(wǎng)絡(luò); 文本特征提?。?softmax
中圖分類號: TN711?34; TP391.41 文獻標識碼: A 文章編號: 1004?373X(2018)08?0167?04
Abstract: In allusion to the problem that the current text classification neural network cannot fully extract semantic structural feature information among words or sentences, a text feature extraction method based on long short?term memory?attention (LSTM?Attention) neural network implementation is proposed. LSTM network is used to extract feature information among words or sentences of text. Network layer of hierarchical attention mechanism is used to select important words and sentences in text. Text classification is performed for the text feature vectors obtained from each network extraction by using softmax classifier. The experimental results show that the proposed method can effectively extract text features to improve the accuracy rate. When applying the method to the datasets of IMDB, yelp2013 and yelp2014 in the experiment, the correctness rates of 52.4%, 66.0% and 67.6% are obtained respectively.
Keywords: LSTM?Attention; attention mechanism; text classification; neural network; text feature extraction; softmax
文本分類任務(wù)是自然語言處理的一項基本任務(wù),其目的是讓文本得到相應(yīng)的類別標簽。文獻[1]采用的詞袋模型向量實現(xiàn)對文本特征的提取。這種方法分類效果的好壞受文本提取的特征影響較大,在訓(xùn)練時容易造成維度災(zāi)難。文獻[2]是構(gòu)建有效的文本特征以及建立文本情感詞典來得到文本的類別特征。這樣的方式耗費大量的人力并且效率低。隨著深度學(xué)習(xí)在自然語言處理領(lǐng)域的發(fā)展,文獻[3]使用卷積神經(jīng)網(wǎng)絡(luò)對文本單詞級別的信息進行分類工作,通過卷積神經(jīng)網(wǎng)絡(luò)不同尺寸的卷積核來得到文本的N元特征信息進行文本特征分類。文獻[4]使用卷積神經(jīng)網(wǎng)絡(luò)在字符級別對文本進行分類工作。目前循環(huán)神經(jīng)網(wǎng)絡(luò)LSTM已經(jīng)在自然語言處理任務(wù)中被廣泛應(yīng)用,文獻[5]使用LSTM遞歸網(wǎng)絡(luò)進行文本情感分類任務(wù)。但是這些網(wǎng)絡(luò)都是將一個句子或者一個文本作為網(wǎng)絡(luò)的輸入,經(jīng)過深度神經(jīng)網(wǎng)絡(luò)來提取文本的特征,進而將這些特征使用分類器分類。但是,這樣的方法只是關(guān)注了整個文本中的信息,沒有能夠考慮到詞語之間以及句子之間的局部信息,為了解決這個問題,文獻[6]提出使用分層網(wǎng)絡(luò)結(jié)構(gòu)對文本的詞語信息和句子信息分別進行提取學(xué)習(xí)。使用分層的CNN/LSTM以及GateNN網(wǎng)絡(luò)分別對詞語和句子之間的語義信息進行提取,實現(xiàn)對文本的分層次信息提取。近幾年基于注意力機制的神經(jīng)網(wǎng)絡(luò)在自然語言處理各項任務(wù)中已經(jīng)取得了很多重要的進展。文獻[7]將注意力機制(Attention)首次引入到自然語言處理任務(wù)中,應(yīng)用在seq2seq機器翻譯任務(wù)上。文獻[8]提出基于注意力機制的池化網(wǎng)絡(luò)應(yīng)用在問答系統(tǒng)中。本文提出一種Long Short?term Memory?Attention(LSTM?Attention)神經(jīng)網(wǎng)絡(luò)的文本特征提取方法,來實現(xiàn)對詞語與詞語和句子與句子之間的語義結(jié)構(gòu)信息進行充分提取。
本文結(jié)合LSTM以及注意力機制提出LSTM?Attention神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)不僅可以對文本分層次對詞語與句子之間的特征分別提取,而且還可以實現(xiàn)對重要的詞語和句子進行提取。將該網(wǎng)絡(luò)應(yīng)用到文本分類任務(wù)中,與不使用注意力機制的分層網(wǎng)絡(luò)相比。最終本文方法可以提取到更有區(qū)分能力的文本特征。
本文LSTM?Attention神經(jīng)網(wǎng)絡(luò)總共包含六部分:文本向量化層、詞語信息特征提取層、詞語Attention層、句子信息特征提取層、句子Attention層、文本分類層。網(wǎng)絡(luò)模型整體框圖如圖1所示。
1.1 長短期記憶網(wǎng)絡(luò)
長短期記憶網(wǎng)絡(luò)(LSTM)是一種時間遞歸神經(jīng)網(wǎng)絡(luò)[9],該神經(jīng)網(wǎng)絡(luò)可以有效保留歷史信息,實現(xiàn)對文本的長期依賴信息進行學(xué)習(xí)。LSTM網(wǎng)絡(luò)由三個門(輸入門、遺忘門和輸出門)和一個cell單元來實現(xiàn)歷史信息的更新和保留。
LSTM數(shù)據(jù)更新過程如下,在時刻t時,輸入門會根據(jù)上一時刻LSTM單元的輸出結(jié)果ht-1和當(dāng)前時刻的輸入xt作為輸入,通過計算來決定是否將當(dāng)前信息更新到LSTM?cell中,可以表述為:
1.2 文本向量化層
本文使用的訓(xùn)練文本d由n個句子組成即d={s1,s2,…,sn},每個句子由m個單詞組成,則樣本中的第i個句子si可以表示成si={wi1,wi2,…,wim}。本文使用的是word2vec中Skip?Gram無監(jiān)督模型對語料進行向量化,得到詞向量[w∈Rd],通過文本向量化層實現(xiàn)文本向量化。
1.3 詞語信息特征提取層
對于一個句子,可以將句子看成是由詞語組成的序列信息。首先通過LSTM網(wǎng)絡(luò)對向量化的句子序列xi1,xi2,…,xit作為LSTM的輸入節(jié)點數(shù)據(jù),在t時刻輸入到網(wǎng)絡(luò)的句子根據(jù)t-1時刻的LSTM細胞狀態(tài)ct-1和隱層狀態(tài)ht-1進行更新得到hi。這里的xi1,xi2,…,xit是指句子中的每個詞語,在不同的時刻LSTM會輸出對應(yīng)節(jié)點的隱層輸出值hi1,hi2,…,hit。輸出隱層信息[hit∈Rn_hidden],n_hidden是LSTM隱層神經(jīng)單元個數(shù)。得到hit作為一個句子的特征向量,輸入到下一網(wǎng)絡(luò)層。通過這樣的方式將句子序列的前后信息進行學(xué)習(xí),得到句子詞語之間的前后信息,對文本句子進行語義編碼,可以描述為:
1.4 詞語Attention層
在文本中,每一個詞語對于文本類別的貢獻度是不一樣的,為了實現(xiàn)對重要詞語的特征進行提取,增加這個層可以進一步地提取文本之間的更深層的信息,在此使用了注意力機制。首先將LSTM隱層的輸出信息hit經(jīng)過非線性變換得到其隱含表示uit,通過隨機初始化注意力機制矩陣uw與uit進行點乘運算并對其使用softmax進行歸一化操作,最終得到詞級別LSTM隱層輸出的權(quán)重系數(shù),最終通過該方法得到詞語注意力機制矩陣,可以描述為:
1.5 句子信息特征提取層
同樣,可以把文本看成是由句子組成的序列信息。為了得到整個文本的語義關(guān)系特征,將上一網(wǎng)絡(luò)層得到的句子向量si輸入到LSTM網(wǎng)絡(luò),在t時刻輸入到網(wǎng)絡(luò)的句子根據(jù)t-1時刻的LSTM細胞狀態(tài)ct-1和隱層狀態(tài)ht-1進行更新得到hi。通過該網(wǎng)絡(luò)層得到句子之間的語義關(guān)聯(lián)信息,實現(xiàn)文本特征信息的提取,可以描述為:
1.6 句子Attention層
在一個文本中,不同句子對文本信息重要程度的貢獻也是不同的。采用和詞級別同樣的方式進行對重要句子給予不同權(quán)重參數(shù)的操作,得到句子的注意力機制矩陣,具體描述為:
式中,us是隨機初始化的句子注意力機制矩陣。
1.7 文本分類層
向量V是經(jīng)過網(wǎng)絡(luò)由詞級別以及句子級別層提取出的文本特征向量。為了把文本的高維特征進行壓縮到低維度,增強數(shù)據(jù)的非線性能力。在softmax分類層之前添加一個非線性層,將該向量映射為長度為c的向量,其中c是文本的類別數(shù)。最后經(jīng)過softmax分類器計算對應(yīng)類別的分布概率,描述為:
2.1 數(shù)據(jù)集和實驗環(huán)境
為了驗證本文提出的模型的有效性,將此模型應(yīng)用于IMDB,yelp2013和yelp2014數(shù)據(jù)集上。實驗數(shù)據(jù)[6]統(tǒng)計如表1所示。本文詞向量是使用word2vec[10]對語料產(chǎn)生200維度的詞向量,所生成的詞向量中包含的單詞均在語料中出現(xiàn)三次以上,否則使用word2vec產(chǎn)生的均值向量進行文本向量化工作。本文實驗平臺的配置包括Intel i5?4460,4×3.2 GHz處理器、8 GB內(nèi)存、GTX750Ti顯卡以及 Ubuntu 14.04操作系統(tǒng),并使用Theano深度學(xué)習(xí)開源框架。
2.2 實驗設(shè)計
本文提出LSTM?Attention和LSTM?LSTM兩種神經(jīng)網(wǎng)絡(luò)模型進行實驗對比,具體模型描述如下:
LSTM?LSTM:LSTM?Attention神經(jīng)網(wǎng)絡(luò)是將文本進行向量化后分別使用LSTM網(wǎng)絡(luò)對詞語以及句子進行序列信息進行提取,并分別在詞語級別和句子級別之后的LSTM網(wǎng)絡(luò)后面加入注意力機制層,最終將得到的文本的特征向量送進softmax分類器進行分類器的訓(xùn)練。
LSTM?LSTM神經(jīng)網(wǎng)絡(luò):將文本進行向量化后分別使用LSTM網(wǎng)絡(luò)對詞語以及句子進行序列信息提取,并分別在詞語級別和句子級別之后的LSTM網(wǎng)絡(luò)后面加入平均池化層,最終將得到的文本特征向量送進softmax分類器進行分類器的訓(xùn)練。其具體網(wǎng)絡(luò)隱層參數(shù)如表2所示。
2.3 實驗分析
本文所提方法以及對比方法實驗結(jié)果如表3所示。文獻[6]中使用CNN對詞語特征進行提取得到詞語的N元特征信息。但是這種方法容易忽略詞語之間的長期依賴信息。為了解決這個問題使用GRNN對句子特征進行提取從而實現(xiàn)文本特征的提取。本文提出的LSTM?LSTM神經(jīng)網(wǎng)絡(luò),不僅可以對詞語之間的長期依賴信息進行提取,而且還可以對句子與句子之間的信息進行特征提取。在IMDB,yelp2013和yelp2014數(shù)據(jù)集上分別取得了50.9%,65.6%和66.5%的正確率。本文提出的LSTM?Attention網(wǎng)絡(luò)不僅可以實現(xiàn)對文本進行分層次特征學(xué)習(xí)提取,通過給予不同的權(quán)重參數(shù)使用注意力機制實現(xiàn)對文本中重要的詞語和句子進行提取。使得網(wǎng)絡(luò)可以實現(xiàn)對文本的信息給予不同的關(guān)注程度。本文所提方法和不使用注意力機制的LSTM?LSTM網(wǎng)絡(luò)相比均有提高,這也說明了注意力機制的有效性。LSTM?Attention在IMDB,yelp2013和yelp2014數(shù)據(jù)集上分別取得了52.4%,66.0%和67.6%的正確率。
本文提出一種基于LSTM?Attention的神經(jīng)網(wǎng)絡(luò)實現(xiàn)文本特征提取的方法。首先,相比較于Conv?GRNN[6],本文方法LSTM?LSTM通過LSTM網(wǎng)絡(luò)分別實現(xiàn)對詞語之間以及句子之間的特征進行學(xué)習(xí)提??;其次,通過LSTM?Attention相比較于沒有注意力機制的LATM?LSTM可以實現(xiàn)對貢獻度不同的詞語和句子進行提取;最后,在IMDB,yelp2013和yelp2014數(shù)據(jù)集上實驗,結(jié)果證明,本文的方法可以提取出更具區(qū)分能力的文本特征,達到52.4%,66.0%和67.6%的正確率。
注:本文通訊作者為蔡曉東。
參考文獻
[1] WAWRE S V, DESHMUKH S N. Sentiment classification using machine learning techniques [J]. International journal of science and research, 2016, 5(4): 819?821.
[2] DING X, LIU B, YU P S. A holistic lexicon?based approach to opinion mining [C]// Proceedings of the 2008 International Conference on Web Search and Data Mining. New York: Association for Computing Machinery, 2008: 231?240.
[3] KIM Y. Convolutional neural networks for sentence classification [J/OL]. [2014?09?03]. https://arxiv.org/pdf/1408.5882v2.pdf.
[4] ZHANG X, ZHAO J, LECUN Y. Character?level convolutional networks for text classification [J/OL]. [2017?07?09]. http://www.doc88.com/p?1582873490700.html.
[5] 梁軍,柴玉梅,原慧斌,等.基于極性轉(zhuǎn)移和LSTM遞歸網(wǎng)絡(luò)的情感分析[J].中文信息學(xué)報,2015,29(5):152?159.
LIANG Jun, CHAI Yumei, YUAN Huibin, et al. Polarity shifting and LSTM based recursive networks for sentiment analysis [J]. Journal of Chinese information processing, 2015, 29(5): 152?159.
[6] TANG D, QIN B, LIU T. Document modeling with gated recurrent neural network for sentiment classification [C]// Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. [S.l.: s.n.], 2015: 1422?1432.
[7] BAHDANAU D, CHO K, BENGIO Y. Neural machine translation by jointly learning to align and translate [J/OL]. [2014?10?11]. http: //nlp.ict.ac.cn/Admin/kindeditor/attached/file/20141011/20141011133445_31922.pdf.
[8] DOS?SANTOS C, TAN M, XIANG B, et al. Attentive pooling networks [J/OL]. [2016?02?11]. http://xueshu.baidu.com/s?wd=paperuri%3A%28f618ebd90de235437fd745ed36080e77%&;29
filter=sc_long_sign&;tn=SE_xueshusource_2kduw22v&;sc_vurl=http%3A%2F%2Farxiv.org%2Fabs%2F1602.03609&;ie=utf?8&;sc_us=17197570488667881682.
[9] HOCHREITER S, SCHMIDHUBER J. Long short?term memory [J]. Neural computation, 1997, 9(8): 1735?1780.
[10] MIKOLOV T, SUTSKEVER I, CHEN K, et al. Distributed representations of words and phrases and their compositionality [J/OL]. [2013?10?16]. https://arxiv.org/pdf/1310.4546v1.pdf.