趙勤魯 蔡曉東 李波 呂璐
摘 要: 針對當(dāng)前文本分類神經(jīng)網(wǎng)絡(luò)不能充分提取詞語與詞語和句子與句子之間的語義結(jié)構(gòu)特征信息的問題,提出一種基于LSTM?Attention的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)文本特征提取的方法。首先,分別使用LSTM網(wǎng)絡(luò)對文本的詞語與詞語和句子與句子的特征信息進(jìn)行提?。黄浯?,使用分層的注意力機(jī)制網(wǎng)絡(luò)層分別對文本中重要的詞語和句子進(jìn)行選擇;最后,將網(wǎng)絡(luò)逐層提取得到的文本特征向量使用softmax分類器進(jìn)行文本分類。實(shí)驗(yàn)結(jié)果表明,所提方法可以有效地提取文本的特征,使得準(zhǔn)確率得到提高。將該方法應(yīng)用在IMDB,yelp2013和yelp2014數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),分別得到52.4%,66.0%和67.6%的正確率。
關(guān)鍵詞: LSTM?Attention; 注意力機(jī)制; 文本分類; 神經(jīng)網(wǎng)絡(luò); 文本特征提?。?softmax
中圖分類號: TN711?34; TP391.41 文獻(xiàn)標(biāo)識碼: 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ù)是自然語言處理的一項(xiàng)基本任務(wù),其目的是讓文本得到相應(yīng)的類別標(biāo)簽。文獻(xiàn)[1]采用的詞袋模型向量實(shí)現(xiàn)對文本特征的提取。這種方法分類效果的好壞受文本提取的特征影響較大,在訓(xùn)練時(shí)容易造成維度災(zāi)難。文獻(xiàn)[2]是構(gòu)建有效的文本特征以及建立文本情感詞典來得到文本的類別特征。這樣的方式耗費(fèi)大量的人力并且效率低。隨著深度學(xué)習(xí)在自然語言處理領(lǐng)域的發(fā)展,文獻(xiàn)[3]使用卷積神經(jīng)網(wǎng)絡(luò)對文本單詞級別的信息進(jìn)行分類工作,通過卷積神經(jīng)網(wǎng)絡(luò)不同尺寸的卷積核來得到文本的N元特征信息進(jìn)行文本特征分類。文獻(xiàn)[4]使用卷積神經(jīng)網(wǎng)絡(luò)在字符級別對文本進(jìn)行分類工作。目前循環(huán)神經(jīng)網(wǎng)絡(luò)LSTM已經(jīng)在自然語言處理任務(wù)中被廣泛應(yīng)用,文獻(xiàn)[5]使用LSTM遞歸網(wǎng)絡(luò)進(jìn)行文本情感分類任務(wù)。但是這些網(wǎng)絡(luò)都是將一個(gè)句子或者一個(gè)文本作為網(wǎng)絡(luò)的輸入,經(jīng)過深度神經(jīng)網(wǎng)絡(luò)來提取文本的特征,進(jìn)而將這些特征使用分類器分類。但是,這樣的方法只是關(guān)注了整個(gè)文本中的信息,沒有能夠考慮到詞語之間以及句子之間的局部信息,為了解決這個(gè)問題,文獻(xiàn)[6]提出使用分層網(wǎng)絡(luò)結(jié)構(gòu)對文本的詞語信息和句子信息分別進(jìn)行提取學(xué)習(xí)。使用分層的CNN/LSTM以及GateNN網(wǎng)絡(luò)分別對詞語和句子之間的語義信息進(jìn)行提取,實(shí)現(xiàn)對文本的分層次信息提取。近幾年基于注意力機(jī)制的神經(jīng)網(wǎng)絡(luò)在自然語言處理各項(xiàng)任務(wù)中已經(jīng)取得了很多重要的進(jìn)展。文獻(xiàn)[7]將注意力機(jī)制(Attention)首次引入到自然語言處理任務(wù)中,應(yīng)用在seq2seq機(jī)器翻譯任務(wù)上。文獻(xiàn)[8]提出基于注意力機(jī)制的池化網(wǎng)絡(luò)應(yīng)用在問答系統(tǒng)中。本文提出一種Long Short?term Memory?Attention(LSTM?Attention)神經(jīng)網(wǎng)絡(luò)的文本特征提取方法,來實(shí)現(xiàn)對詞語與詞語和句子與句子之間的語義結(jié)構(gòu)信息進(jìn)行充分提取。
本文結(jié)合LSTM以及注意力機(jī)制提出LSTM?Attention神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)不僅可以對文本分層次對詞語與句子之間的特征分別提取,而且還可以實(shí)現(xiàn)對重要的詞語和句子進(jìn)行提取。將該網(wǎng)絡(luò)應(yīng)用到文本分類任務(wù)中,與不使用注意力機(jī)制的分層網(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)是一種時(shí)間遞歸神經(jīng)網(wǎng)絡(luò)[9],該神經(jīng)網(wǎng)絡(luò)可以有效保留歷史信息,實(shí)現(xiàn)對文本的長期依賴信息進(jìn)行學(xué)習(xí)。LSTM網(wǎng)絡(luò)由三個(gè)門(輸入門、遺忘門和輸出門)和一個(gè)cell單元來實(shí)現(xiàn)歷史信息的更新和保留。
LSTM數(shù)據(jù)更新過程如下,在時(shí)刻t時(shí),輸入門會根據(jù)上一時(shí)刻LSTM單元的輸出結(jié)果ht-1和當(dāng)前時(shí)刻的輸入xt作為輸入,通過計(jì)算來決定是否將當(dāng)前信息更新到LSTM?cell中,可以表述為:
1.2 文本向量化層
本文使用的訓(xùn)練文本d由n個(gè)句子組成即d={s1,s2,…,sn},每個(gè)句子由m個(gè)單詞組成,則樣本中的第i個(gè)句子si可以表示成si={wi1,wi2,…,wim}。本文使用的是word2vec中Skip?Gram無監(jiān)督模型對語料進(jìn)行向量化,得到詞向量[w∈Rd],通過文本向量化層實(shí)現(xiàn)文本向量化。
1.3 詞語信息特征提取層
對于一個(gè)句子,可以將句子看成是由詞語組成的序列信息。首先通過LSTM網(wǎng)絡(luò)對向量化的句子序列xi1,xi2,…,xit作為LSTM的輸入節(jié)點(diǎn)數(shù)據(jù),在t時(shí)刻輸入到網(wǎng)絡(luò)的句子根據(jù)t-1時(shí)刻的LSTM細(xì)胞狀態(tài)ct-1和隱層狀態(tài)ht-1進(jìn)行更新得到hi。這里的xi1,xi2,…,xit是指句子中的每個(gè)詞語,在不同的時(shí)刻LSTM會輸出對應(yīng)節(jié)點(diǎn)的隱層輸出值hi1,hi2,…,hit。輸出隱層信息[hit∈Rn_hidden],n_hidden是LSTM隱層神經(jīng)單元個(gè)數(shù)。得到hit作為一個(gè)句子的特征向量,輸入到下一網(wǎng)絡(luò)層。通過這樣的方式將句子序列的前后信息進(jìn)行學(xué)習(xí),得到句子詞語之間的前后信息,對文本句子進(jìn)行語義編碼,可以描述為:
1.4 詞語Attention層
在文本中,每一個(gè)詞語對于文本類別的貢獻(xiàn)度是不一樣的,為了實(shí)現(xiàn)對重要詞語的特征進(jìn)行提取,增加這個(gè)層可以進(jìn)一步地提取文本之間的更深層的信息,在此使用了注意力機(jī)制。首先將LSTM隱層的輸出信息hit經(jīng)過非線性變換得到其隱含表示uit,通過隨機(jī)初始化注意力機(jī)制矩陣uw與uit進(jìn)行點(diǎn)乘運(yùn)算并對其使用softmax進(jìn)行歸一化操作,最終得到詞級別LSTM隱層輸出的權(quán)重系數(shù),最終通過該方法得到詞語注意力機(jī)制矩陣,可以描述為:
1.5 句子信息特征提取層
同樣,可以把文本看成是由句子組成的序列信息。為了得到整個(gè)文本的語義關(guān)系特征,將上一網(wǎng)絡(luò)層得到的句子向量si輸入到LSTM網(wǎng)絡(luò),在t時(shí)刻輸入到網(wǎng)絡(luò)的句子根據(jù)t-1時(shí)刻的LSTM細(xì)胞狀態(tài)ct-1和隱層狀態(tài)ht-1進(jìn)行更新得到hi。通過該網(wǎng)絡(luò)層得到句子之間的語義關(guān)聯(lián)信息,實(shí)現(xiàn)文本特征信息的提取,可以描述為:
1.6 句子Attention層
在一個(gè)文本中,不同句子對文本信息重要程度的貢獻(xiàn)也是不同的。采用和詞級別同樣的方式進(jìn)行對重要句子給予不同權(quán)重參數(shù)的操作,得到句子的注意力機(jī)制矩陣,具體描述為:
式中,us是隨機(jī)初始化的句子注意力機(jī)制矩陣。
1.7 文本分類層
向量V是經(jīng)過網(wǎng)絡(luò)由詞級別以及句子級別層提取出的文本特征向量。為了把文本的高維特征進(jìn)行壓縮到低維度,增強(qiáng)數(shù)據(jù)的非線性能力。在softmax分類層之前添加一個(gè)非線性層,將該向量映射為長度為c的向量,其中c是文本的類別數(shù)。最后經(jīng)過softmax分類器計(jì)算對應(yīng)類別的分布概率,描述為:
2.1 數(shù)據(jù)集和實(shí)驗(yàn)環(huán)境
為了驗(yàn)證本文提出的模型的有效性,將此模型應(yīng)用于IMDB,yelp2013和yelp2014數(shù)據(jù)集上。實(shí)驗(yàn)數(shù)據(jù)[6]統(tǒng)計(jì)如表1所示。本文詞向量是使用word2vec[10]對語料產(chǎn)生200維度的詞向量,所生成的詞向量中包含的單詞均在語料中出現(xiàn)三次以上,否則使用word2vec產(chǎn)生的均值向量進(jìn)行文本向量化工作。本文實(shí)驗(yàn)平臺的配置包括Intel i5?4460,4×3.2 GHz處理器、8 GB內(nèi)存、GTX750Ti顯卡以及 Ubuntu 14.04操作系統(tǒng),并使用Theano深度學(xué)習(xí)開源框架。
2.2 實(shí)驗(yàn)設(shè)計(jì)
本文提出LSTM?Attention和LSTM?LSTM兩種神經(jīng)網(wǎng)絡(luò)模型進(jìn)行實(shí)驗(yàn)對比,具體模型描述如下:
LSTM?LSTM:LSTM?Attention神經(jīng)網(wǎng)絡(luò)是將文本進(jìn)行向量化后分別使用LSTM網(wǎng)絡(luò)對詞語以及句子進(jìn)行序列信息進(jìn)行提取,并分別在詞語級別和句子級別之后的LSTM網(wǎng)絡(luò)后面加入注意力機(jī)制層,最終將得到的文本的特征向量送進(jìn)softmax分類器進(jìn)行分類器的訓(xùn)練。
LSTM?LSTM神經(jīng)網(wǎng)絡(luò):將文本進(jìn)行向量化后分別使用LSTM網(wǎng)絡(luò)對詞語以及句子進(jìn)行序列信息提取,并分別在詞語級別和句子級別之后的LSTM網(wǎng)絡(luò)后面加入平均池化層,最終將得到的文本特征向量送進(jìn)softmax分類器進(jìn)行分類器的訓(xùn)練。其具體網(wǎng)絡(luò)隱層參數(shù)如表2所示。
2.3 實(shí)驗(yàn)分析
本文所提方法以及對比方法實(shí)驗(yàn)結(jié)果如表3所示。文獻(xiàn)[6]中使用CNN對詞語特征進(jìn)行提取得到詞語的N元特征信息。但是這種方法容易忽略詞語之間的長期依賴信息。為了解決這個(gè)問題使用GRNN對句子特征進(jìn)行提取從而實(shí)現(xiàn)文本特征的提取。本文提出的LSTM?LSTM神經(jīng)網(wǎng)絡(luò),不僅可以對詞語之間的長期依賴信息進(jìn)行提取,而且還可以對句子與句子之間的信息進(jìn)行特征提取。在IMDB,yelp2013和yelp2014數(shù)據(jù)集上分別取得了50.9%,65.6%和66.5%的正確率。本文提出的LSTM?Attention網(wǎng)絡(luò)不僅可以實(shí)現(xiàn)對文本進(jìn)行分層次特征學(xué)習(xí)提取,通過給予不同的權(quán)重參數(shù)使用注意力機(jī)制實(shí)現(xiàn)對文本中重要的詞語和句子進(jìn)行提取。使得網(wǎng)絡(luò)可以實(shí)現(xiàn)對文本的信息給予不同的關(guān)注程度。本文所提方法和不使用注意力機(jī)制的LSTM?LSTM網(wǎng)絡(luò)相比均有提高,這也說明了注意力機(jī)制的有效性。LSTM?Attention在IMDB,yelp2013和yelp2014數(shù)據(jù)集上分別取得了52.4%,66.0%和67.6%的正確率。
本文提出一種基于LSTM?Attention的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)文本特征提取的方法。首先,相比較于Conv?GRNN[6],本文方法LSTM?LSTM通過LSTM網(wǎng)絡(luò)分別實(shí)現(xiàn)對詞語之間以及句子之間的特征進(jìn)行學(xué)習(xí)提??;其次,通過LSTM?Attention相比較于沒有注意力機(jī)制的LATM?LSTM可以實(shí)現(xiàn)對貢獻(xiàn)度不同的詞語和句子進(jìn)行提??;最后,在IMDB,yelp2013和yelp2014數(shù)據(jù)集上實(shí)驗(yàn),結(jié)果證明,本文的方法可以提取出更具區(qū)分能力的文本特征,達(dá)到52.4%,66.0%和67.6%的正確率。
注:本文通訊作者為蔡曉東。
參考文獻(xiàn)
[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é)報(bào),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.