• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于多模型的混合架構(gòu)情感分析

      2020-12-14 04:35:10苗小愛(ài)冷雪亮邵婉露
      軟件導(dǎo)刊 2020年9期
      關(guān)鍵詞:自然語(yǔ)言處理情感分析

      苗小愛(ài) 冷雪亮 邵婉露

      摘 ?要: 情感分析是自然語(yǔ)言處理(NLP)中十分重要的環(huán)節(jié),隨著網(wǎng)絡(luò)發(fā)展人們?cè)诰W(wǎng)絡(luò)生活中留下的大量情感評(píng)論信息。已有的研究大量使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)和卷積神經(jīng)網(wǎng)絡(luò)(CNN)做情感分析。近期注意力機(jī)制在NLP領(lǐng)域被廣泛使用,并取得突破性進(jìn)展。為了改善傳統(tǒng)模型,充分利用網(wǎng)絡(luò)評(píng)論數(shù)據(jù),結(jié)合長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(biLSTM),CNN,并使用Transformer機(jī)制構(gòu)建新模型。新模型中,biLSTM編碼雙上上下文信息,然后CNN部分模擬Text-CNN使用三個(gè)不同大小的窗口進(jìn)行卷積獲取句子間的雙向信息,最后使用沒(méi)有前饋操作的Transformer編碼器代替?zhèn)鹘y(tǒng)Max-pooling操作避免信息損失。該模型簡(jiǎn)稱為Multi-Model Stack Neural Network(MMSNN)。與傳統(tǒng)biLSTM基線模型和Text-CNN模型在IMDE數(shù)據(jù)集上進(jìn)行對(duì)比,MMSNN在準(zhǔn)確率和損失上均獲得最好的效果。

      關(guān)鍵詞: 自然語(yǔ)言處理;情感分析;transformer;Text-CNN;BiGRU

      中圖分類(lèi)號(hào): TP183 ???文獻(xiàn)標(biāo)識(shí)碼: A ???DOI:10.3969/j.issn.1003-6970.2020.09.036

      【Abstract】: Sentiment analysis is a very important part of natural language processing (NLP). With the Internet, people send a lot of sentiment comment information in online life. Existing researches make extensive use of recurrent neural networks (RNN) and convolutional neural networks (CNN) for sensory analysis. The attention mechanism has been widely used in the NLP field recently, and has achieved breakthrough development. In order to improve the traditional model, make full use of network comment data, combined with long and short time memory network (biLSTM), CNN, and use the Transformer mechanism to build a new model. In the new model, biLSTM encodes double-up context information, then CNN partially simulates Text-CNN to convolve with three windows of different sizes to obtain bidirectional information between sentences, and finally uses a Transformer encoder without feedforward operation instead of traditional Max-pooling Operation to avoid loss of information. The model is referred to as Multi-model Stack Neural Network (MMSNN) for short. Compared with the traditional biLSTM baseline model and Text-CNN model on the IMDE data set, MMSNN achieves the best results in both accuracy and loss.

      【Key words】: Natural language processing; Sentiment analysis; Transformer; Text-CNN; BiGRU

      0 ?引言

      隨著社交軟件的多樣化,網(wǎng)絡(luò)上的情感數(shù)據(jù)規(guī)模迅速增加,這些文本在各種研究科開(kāi)發(fā)中廣泛使用,因此情感分析任務(wù)在自然語(yǔ)言處理中的一個(gè)重要方向。現(xiàn)有基本模型的問(wèn)題是:(1)使用RNN模型容易出現(xiàn)梯度爆炸或梯度消失問(wèn)題。(2)雖然在序列問(wèn)題上CNN模型(Kim等人[1])能取得很好的效果,但是由于池化操作容易造成信息損失。(3)最近的Transformer機(jī)制[2]在NLP領(lǐng)域大放光彩,但是由于結(jié)構(gòu)過(guò)于復(fù)雜難以訓(xùn)練,給普通研究者帶來(lái)困難。

      因此,為了結(jié)解決上述問(wèn)題,提出MMSNN模型并在IMDE數(shù)據(jù)集上取得優(yōu)異的結(jié)果。MMSNN模型使用CNN模型zhang[3]等人提出的多通道Text-CNN,這種CNN可以使用不同的窗口獲得不同長(zhǎng)度的文本卷積信息,從而提取到更全面的文本信息進(jìn)行計(jì)算,

      然后使用改自Transformer的編碼器代替池化操作。這里刪除編碼器的前饋層只使用Attention機(jī)制。

      模型構(gòu)建及貢獻(xiàn)如下:

      (1)將位置信息和使用Word2Vec獲得文本信息相加獲得嵌入矩陣。

      (2)使用biLSTM獲取雙向上下文信息,計(jì)算詞義和詞間關(guān)聯(lián)。

      (3)使用3個(gè)不同窗口大小的卷積計(jì)算句子間的信息以及句子間的聯(lián)系。

      (4)修改并使用Transformer的編碼器分別捕獲三個(gè)卷積操作后的編碼信息。

      (5)將信息傳輸?shù)饺B接層進(jìn)行線性映射計(jì)算文本情感類(lèi)別。

      為了測(cè)試模型的普適性將模型在一個(gè)在情感分析任務(wù)上十分常用的電影評(píng)論數(shù)據(jù)集IMDB進(jìn)行訓(xùn)練。這是一個(gè)二分類(lèi)電影評(píng)論數(shù)據(jù)集,通過(guò)在這個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果,與之前一些經(jīng)典模型進(jìn)行對(duì)比,發(fā)現(xiàn)MMsNN模型在情感分析方面更有優(yōu)勢(shì),效果更好。

      1 ?相關(guān)工作

      自然語(yǔ)言處理領(lǐng)域近些年來(lái)迎來(lái)很多研究者的研究,并且取得了突破性的進(jìn)展。在使用RNN模型的研究,長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM[4])和門(mén)控循環(huán)單元(GRU),以及在此基礎(chǔ)上改進(jìn)的雙向RNN模型BiLSTM和BiGRU,在各類(lèi)NLP任務(wù)中都有十分廣泛的應(yīng)用。后來(lái)有研究者使用一維CNN來(lái)做文本分類(lèi),但是效果一般,CNN[5]在文本處理時(shí)對(duì)序列文本的處理效果較好。Kim提出采用一個(gè)靜態(tài)通道和一個(gè)動(dòng)態(tài)通道的雙通道CNN,更好的計(jì)算語(yǔ)言內(nèi)容并且在當(dāng)時(shí)獲得很好的效果,緊隨其后,Zhang等人提出的多通道不同窗口的文本分類(lèi)算法,在kim的基礎(chǔ)上進(jìn)行了各種實(shí)驗(yàn)和優(yōu)化實(shí)現(xiàn)了更好的效果。

      Attention模型開(kāi)始被Bahdanau等人[6]用到了機(jī)器翻譯領(lǐng)域進(jìn)行文本自動(dòng)對(duì)齊,這大大提高了長(zhǎng)文本的翻譯準(zhǔn)確率。Vaswani等人提出了基于Mult-Head- Attention的Transformer模型,開(kāi)始在機(jī)器翻譯中取得最好的結(jié)果后來(lái)廣泛應(yīng)用到其他NLP任務(wù)中。最近以Transformer為基礎(chǔ)改進(jìn)的模型出現(xiàn)很多,由Dai等人[7]提出了Transformer-XL模型,后來(lái)Radford等人[8]提出的GPT2和Devlin等人[9]提出的BERT模型取得了十分優(yōu)秀的效果。然后在BERT的基礎(chǔ)上進(jìn)行改進(jìn)又獲得一系列優(yōu)秀的模型,如XLNET[10]等。MMSNN模型使用改進(jìn)Transformer的編碼器模仿替代池化這一工作,并取得很好的效果。最近的工作[11]、[12]和[13]都利用了深度學(xué)習(xí)做文本處理。

      2 ?模型設(shè)計(jì)

      MMSNN的嵌入層是將內(nèi)容嵌入和位置嵌入信息將其做元素加操作。將BiLSTM放到嵌入層之后作為編碼器來(lái)收集雙向上下文詞義信息,然后使用Text- CNN的三個(gè)通道進(jìn)行卷積,將卷積后的結(jié)果放入改進(jìn)自Transformer編碼器的結(jié)構(gòu)捕獲關(guān)鍵信息。將以上結(jié)果連接放入到全連接層,最后全連接層計(jì)算的矩陣信息傳入到線性層使用Sigmoid函數(shù)得出分類(lèi)結(jié)果。

      2.1 ?BiLSTM

      LSTM模型是由t時(shí)刻輸入,單元狀態(tài),候選單元狀態(tài),隱藏狀態(tài),遺忘門(mén),記憶門(mén),輸出門(mén)組成。單向LSTM的計(jì)算過(guò)程為,通過(guò)對(duì)單元狀態(tài)中信息遺忘然后記憶新的信息傳遞對(duì)后續(xù)時(shí)刻計(jì)算有用的信息,丟棄無(wú)用信息。通過(guò)上個(gè)時(shí)刻的隱藏狀態(tài)和當(dāng)前輸入計(jì)算出來(lái)的遺忘門(mén),記憶門(mén),輸出門(mén)來(lái)控制當(dāng)前時(shí)間步的隱藏層狀態(tài),以此獲得長(zhǎng)期依賴。其計(jì)算過(guò)程如下:

      2.2 ?修改的Transformer編碼器結(jié)構(gòu)

      Transformer結(jié)構(gòu)在各項(xiàng)NLP任務(wù)上均得到應(yīng)用,僅使用Transformer編碼器或者Transformer解碼器的網(wǎng)絡(luò)模型都取得最好的成績(jī)。因此參考膠囊網(wǎng)絡(luò)的初衷將修改后的Transformer編碼器作為替換Max-pooling的結(jié)構(gòu)從而加強(qiáng)網(wǎng)絡(luò)效果。MMsNN中只使用了Transformer的編碼器。Transformer的編碼結(jié)構(gòu)是由6個(gè)相同的隱藏層構(gòu)成,每一層包含兩個(gè)子層,第一個(gè)子層是多頭注意力層(Multi-Head Attention)第二個(gè)子層是一個(gè)簡(jiǎn)單的全連接層。其中每個(gè)子層都進(jìn)行了殘差連接和歸一化操作。我們的改進(jìn)是減少編碼器層數(shù),去掉掩蔽和前饋層,不再作為預(yù)訓(xùn)練使用,而是用來(lái)計(jì)算雙向句子信息。

      Transformer使用了Scaled Dot-product Attention操作,它的輸入由維度為d的Query(Q)和Key(K)以及Value(V)組成,計(jì)算Key與Query的點(diǎn)積,并應(yīng)用softmax函數(shù)獲得值的權(quán)重。其公式表示如下:

      2.3 ?Text-CNN

      Zhang等人提出的多通道CNN改自Kim提出的雙通道CNN算法中,證明采取微調(diào)策略(Non-Static)的效果比固定詞向量(static)的效果要好。MMSNN模型使用的的是經(jīng)過(guò)微調(diào)策略的3通道CNN算法。經(jīng)過(guò)3個(gè)不同大小窗口進(jìn)行卷積收集的信息更加全面.

      最終使用的Text-CNN是將Max-pooling替換為T(mén)ransformer的編碼器結(jié)構(gòu),另一個(gè)處理是將不同窗口的卷積結(jié)果處理為能夠表現(xiàn)卷積結(jié)果最優(yōu)的相同尺寸的結(jié)果,然后傳入修改自Transformer的編碼器。

      2.4 ?嵌入層

      同現(xiàn)在大多數(shù)工作一樣,在內(nèi)容嵌入之外還加入了位置嵌入,因?yàn)橐环N語(yǔ)言中的情感表達(dá)往往跟句子在不同位置所使用的情感詞匯有關(guān)。MMSNN模型使用的嵌入方法是在Transformer中提出的位置嵌入的算法,嵌入位置分奇偶,偶數(shù)位置嵌入是采用正弦計(jì)算,奇數(shù)位置嵌入采用的是預(yù)先計(jì)算。其具體算法如下:

      pos表示位置,i是第幾個(gè)位置。位置編碼的每個(gè)維度對(duì)應(yīng)于正弦曲線。我們選擇此函數(shù)是因?yàn)槲覀兗僭O(shè)它會(huì)允許模型輕松學(xué)習(xí)相對(duì)位置,因?yàn)閷?duì)于任何固定的偏移量k,都可以表示為的線性函數(shù)。

      2.5 ?最終模型

      MMSNN模型綜合上述三個(gè)模塊,將上述三個(gè)模型作為我們所設(shè)計(jì)模型的子層。首先是位置嵌入和內(nèi)容嵌入的加和作為嵌入層,然后使用Text-CNN的三個(gè)不同窗口的卷積計(jì)算句子間聯(lián)系,接著使用修改后Transformer編碼器捕獲重要信息。最后將獲得信息輸入到線性層做文本分類(lèi)并使用交叉熵函數(shù)做損失函數(shù)然后使用Adma進(jìn)行優(yōu)化。我們的模型如下:

      (1)數(shù)據(jù)集位置嵌入加上內(nèi)容嵌入的和作為嵌入層向量,這里使用按元素加的方法。

      (2)使用BiLSTM來(lái)編碼文本詞義信息,同時(shí)biLSTM結(jié)構(gòu)來(lái)獲取雙向文本的相關(guān)性。

      (3)使用多通道不同窗口大小的CNN獲得BiLSTM編碼的上下文信息,經(jīng)過(guò)計(jì)算得到更為全面的情感序列信息。

      (4)使用修改自Transformer的編碼器替換卷積層之后的池化操作,將卷積結(jié)果進(jìn)行解碼,在訓(xùn)練中捕獲文本的重點(diǎn)信息。

      (5)將捕獲的信息傳遞到一個(gè)線性層使用Sigmod函數(shù)計(jì)算出得分和結(jié)果預(yù)測(cè)進(jìn)行分類(lèi)。然后經(jīng)損失計(jì)算和優(yōu)化操作計(jì)算網(wǎng)絡(luò)權(quán)重。

      3 ?實(shí)驗(yàn)結(jié)果

      3.1 ?數(shù)據(jù)集

      IMDB數(shù)據(jù)集:原始數(shù)據(jù)集包括訓(xùn)練集,測(cè)試集,和沒(méi)有標(biāo)簽的數(shù)據(jù)。訓(xùn)練集25000條,正負(fù)各12500條。測(cè)試集25000條,正負(fù)各12500條。本文將測(cè)試集進(jìn)一步劃分為驗(yàn)證集和測(cè)試集。

      3.2 ?對(duì)比試驗(yàn)

      對(duì)比試驗(yàn)有兩個(gè),一個(gè)是基本的基于BILSTM和全連接層的的文本處理方法,第二個(gè)是Text-CNN,一個(gè)三個(gè)不同窗口的卷積神經(jīng)網(wǎng)絡(luò)。對(duì)比實(shí)驗(yàn)的描述如下:

      BiLSTM:作為基準(zhǔn)實(shí)驗(yàn),只是用了biLSTM和全連接層做文本分類(lèi),用來(lái)測(cè)試biLSTM做RNN結(jié)構(gòu)的對(duì)比的分類(lèi)效果。

      Text-CNN:使用三通道的一維卷積神經(jīng)網(wǎng)絡(luò)上,利用3個(gè)不同大小的的卷積窗口進(jìn)行卷積操作,然后將三部分結(jié)果進(jìn)行最大池化進(jìn)行連接做文本分類(lèi)。

      3.3 ?實(shí)驗(yàn)設(shè)置

      MMSNN使用了兩層結(jié)構(gòu),第一層是一個(gè)BiLSTM層每個(gè)單向是100個(gè)神經(jīng)元,連接成一個(gè)200維的雙向上下文信息。第二層有兩個(gè)子層,第一個(gè)子層是CNN,有三個(gè)通道,每個(gè)通道有各自的窗口,大小分別是2、3、4,過(guò)濾器大小為200。第二個(gè)子層是修改后的Transformer編碼器,和基本的Transformer編碼器結(jié)構(gòu)一樣有8個(gè)head,然后Transformer中進(jìn)行了Dropout為0.1的正則化運(yùn)算,最后是一個(gè)規(guī)范化層。我們實(shí)驗(yàn)的批次大小為128,嵌入層的維度大小為200,進(jìn)行12輪訓(xùn)練。經(jīng)過(guò)上述操作可以得出表示這個(gè)文本情感的重要信息,先將這個(gè)結(jié)果使用大小為0.5的dropout正則化,然后將這信息放入到一個(gè)線性層,使用了L2正則化,加上上述兩層交叉熵?fù)p失來(lái)計(jì)算我們的模型損失。

      3.4 ?實(shí)驗(yàn)結(jié)果分析

      將MMSNN的模型和對(duì)比模型進(jìn)行對(duì)比,可以看到如下所示的結(jié)果(如圖2所示),相比基線模型BiLSTM+Full_connection和Text-CNN而言MMSNN模型有明顯的優(yōu)勢(shì),所以從結(jié)果來(lái)看MMSNN使用的帶有修改的Transformer編碼器的模型效果能夠取得更好的效果。MMSNN的評(píng)價(jià)標(biāo)準(zhǔn)是分類(lèi)的準(zhǔn)確路和分類(lèi)損失,實(shí)驗(yàn)結(jié)果圖2所示。

      分析上述實(shí)驗(yàn)結(jié)果圖,BiLSTM和MMSNN模型的實(shí)驗(yàn)的訓(xùn)練準(zhǔn)確率的增長(zhǎng)幅度極為相似,訓(xùn)練損失的下降也極為相似。但是總的效果來(lái)說(shuō)都是優(yōu)于Text-CNN的。在進(jìn)行測(cè)試的時(shí)候,可以看出來(lái)MMSNN模型的實(shí)驗(yàn)也和BiLSTM極為相似但是波動(dòng)相對(duì)較為穩(wěn)定,MMSNN模型的實(shí)驗(yàn)效果在第三輪達(dá)到最好評(píng)估效果約為86%,BiLSTM是85.5%而Text-CNN相對(duì)較差在第九輪獲得為83.3%,同時(shí)驗(yàn)證損失MMSNN模型最低也是在第三輪獲得為0.34,BiLSTM是0.35(第三輪),Text-CNN的損失是0.38(第九輪)。所以總的效果來(lái)說(shuō)是MMSNN模型的實(shí)驗(yàn)取得更好的準(zhǔn)確率和更小的損失。

      4 ?結(jié)論與展望

      通過(guò)這三個(gè)實(shí)驗(yàn)的對(duì)比可以發(fā)現(xiàn)循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)在情感分析任務(wù)上相對(duì)卷積神經(jīng)網(wǎng)絡(luò)有明顯的優(yōu)勢(shì),這是由于CNN結(jié)構(gòu)中的池化操作存在信息損失的缺陷。但是在結(jié)合BiLSTM、Text-CNN和改自Transformer編碼器的結(jié)構(gòu)能夠取得最好的結(jié)果,由此也能證明Attention的優(yōu)勢(shì)。在單臺(tái)計(jì)算機(jī)的運(yùn)算條件下,MMSNN模型可以計(jì)算出來(lái)相當(dāng)不錯(cuò)的效果。以后的研究方向會(huì)傾向于以下幾點(diǎn):1. 希望能夠解決池化層導(dǎo)致信息損失帶來(lái)的損害,將最近使用的膠囊模型和路由算法來(lái)代替卷積和池化操作,而不單是使用Transformer部分結(jié)構(gòu)來(lái)代替2. 對(duì)模型進(jìn)行優(yōu)化,希望可以在單臺(tái)計(jì)算機(jī)有限的時(shí)間內(nèi)進(jìn)行更大規(guī)模的模型運(yùn)算。3. 根據(jù)最新研究趨勢(shì)設(shè)計(jì)一個(gè)能夠?qū)⑿薷牡?/p>

      參考文獻(xiàn)

      [1]Kim Y, Convolutional neural networks for sentence classification[J]. arXiv preprint arXiv:1408.5882, 2014.

      [2]Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]. Advances in neural information processing systems, pp. 5998-6008, 2017

      [3]Zhang Y, Wallace B. A sensitivity analysis of (and practitioners' guide to) convolutional neural networks for sentence classification[J]. arXiv preprint arXiv:1510.03820, 2015.

      [4]張玉環(huán), 錢(qián)江. 基于兩種 LSTM 結(jié)構(gòu)的文本情感分析[J]. 軟件, 2018, 39(1): 116-120.

      [5]張曉明, 尹鴻峰. 基于卷積神經(jīng)網(wǎng)絡(luò)和語(yǔ)義信息的場(chǎng)景分類(lèi)[J]. 軟件, 2018, 39(01): 29-34

      [6]Bahdanau D, Cho K, Bengio Y. Neural machine translation by jointly learning to align and translate[J]. arXiv preprint

      arXiv:1409.0473, 2014.

      [7]Dai Z, Yang Z, Yang Y, et al. Transformer-xl: Attentive language models beyond a fixed-length context[J]. arXiv preprint arXiv:1901.02860, 2019.

      [8]Radford A, Wu J, Child R, et al. Language models are unsupervised multitask learners[J]. OpenAI Blog, 2019, 1(8): 9.

      [9]Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding[J]. arXiv preprint arXiv:1810.04805, 2018.

      [10]Yang Z, Dai Z, Yang Y, et al. Xlnet: Generalized autoregressive pretraining for language understanding[C]//Advances in neural information processing systems. 2019: 5754-5764.

      [11]張玲玉, 尹鴻峰. 基于 OAN 的知識(shí)圖譜查詢研究[J]. 軟件, 2018, 39(01): 54-59.

      [12]吳亞熙, 岑峰. 基于卷積神經(jīng)網(wǎng)絡(luò)的多層級(jí)目標(biāo)檢測(cè)方法[J]. 軟件, 2018, 39(4): 164-169.

      [13]李平舟, 趙朗程. 基于BP神經(jīng)網(wǎng)絡(luò)的國(guó)家穩(wěn)定性研究[J]. 軟件, 2018, 39(6): 142-146.

      猜你喜歡
      自然語(yǔ)言處理情感分析
      基于組合分類(lèi)算法的源代碼注釋質(zhì)量評(píng)估方法
      基于SVM的產(chǎn)品評(píng)論情感分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于詞典與機(jī)器學(xué)習(xí)的中文微博情感分析
      在線評(píng)論情感屬性的動(dòng)態(tài)變化
      面向機(jī)器人導(dǎo)航的漢語(yǔ)路徑自然語(yǔ)言組塊分析方法研究
      文本觀點(diǎn)挖掘和情感分析的研究
      漢哈機(jī)器翻譯中的文字轉(zhuǎn)換技術(shù)研究
      HowNet在自然語(yǔ)言處理領(lǐng)域的研究現(xiàn)狀與分析
      科技視界(2016年5期)2016-02-22 11:41:39
      洛川县| 乐至县| 丹巴县| 墨竹工卡县| 鄂尔多斯市| 淅川县| 灵川县| 达尔| 简阳市| 郴州市| 阳山县| 承德市| 安图县| 柳林县| 托克托县| 开原市| 竹北市| 肥乡县| 包头市| 翁牛特旗| 田阳县| 新竹市| 九寨沟县| 云浮市| 舒城县| 陈巴尔虎旗| 抚宁县| 龙陵县| 高安市| 凌源市| 通山县| 兴城市| 荔波县| 凤台县| 南充市| 景宁| 荥阳市| 沙河市| 阿拉善左旗| 牡丹江市| 永清县|