国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進BERT-BiGRU 模型的文本情感分類研究

2023-03-15 07:32潘雅麗
電子技術(shù)應(yīng)用 2023年2期
關(guān)鍵詞:向量分類文本

李 蕓,潘雅麗,肖 冬

(1.杭州電子科技大學(xué) 電子信息學(xué)院,浙江 杭州 310018;2.浙江省裝備電子研究重點實驗室,浙江 杭州 310018)

0 引言

文本情感分類[1]是自然語言處理(Natural Language Processing,NLP)的一個重要任務(wù)。隨著互聯(lián)網(wǎng)的飛速發(fā)展,人們不僅能夠從網(wǎng)上獲取信息,還能通過各種平臺隨心所欲地發(fā)表包含自己主觀情緒的觀點和看法,例如網(wǎng)絡(luò)購物、微博評論等。對含有豐富情感信息的文本數(shù)據(jù)進行分析具有非常重要的現(xiàn)實意義,它被廣泛應(yīng)用于產(chǎn)品推薦、搜索排名等領(lǐng)域。但由于一些平臺字符長度有限,而且用戶表達較隨意,存在用詞不規(guī)范和詞語拼寫錯誤等問題,傳統(tǒng)的情感分類方法在許多方面表現(xiàn)效果差強人意,實現(xiàn)高效準確的自動文本情感分類方法是本文的主要研究內(nèi)容。

1 相關(guān)研究

基于深度學(xué)習(xí)的文本情感分類方法能夠聯(lián)系上下文信息并捕捉到文本的順序結(jié)構(gòu),在文本信息處理、分類任務(wù)中獲得了較好的效果。Kim 等人[2]最先提出了使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)進行文本分類,CNN 的卷積層和池化層可以提取文本中的高層次特征,減少訓(xùn)練參數(shù)。Johnson 等人[3]在CNN 的基礎(chǔ)上提出了深層金字塔卷積神經(jīng)網(wǎng)絡(luò)(Deep Pyramid Convolutional Neural Networks,DPCNN),DPCNN 引入殘差結(jié)構(gòu),增加多尺度信息,通過不斷加深網(wǎng)絡(luò)有效獲取文本的長期關(guān)聯(lián),卻沒有增加太多計算成本。

雖然卷積神經(jīng)網(wǎng)絡(luò)在情感分類任務(wù)的研究中取得了不錯的效果,但是它不能很好地處理序列信息,而循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks,RNN)能解決這個問題。Socher 等人[4]將RNN 應(yīng)用于文本情感分類,RNN 充分考慮了句中的結(jié)構(gòu)信息,但在處理長序列數(shù)據(jù)時表現(xiàn)不佳。Schmidhuber[5]基于RNN 提出了長短時記憶(Long Short-Term Memory,LSTM)網(wǎng)絡(luò),它能夠有效解決RNN 的梯度消失和梯度爆炸的問題。Graves 等人[6]首次將雙向LSTM 網(wǎng)絡(luò)用于文本分類,與單向LSTM 模型相比,雙向LSTM 可以更好地捕獲文本的雙向語義。Cho 等人[7]提出了門控循環(huán)單元(Gated Recurrent Unit,GRU),GRU 相較于LSTM 模型結(jié)構(gòu)更加簡單,參數(shù)更少,并且能長期保存隱藏層序列信息。Bahdanau等人[8]第一次將注意力機制應(yīng)用到文本分類任務(wù)中,它對輸入文本分配不同的關(guān)注,目的是協(xié)助分類模型捕捉重要信息。

在詞向量表示方面,傳統(tǒng)的文本情感分類方法大多數(shù)用詞袋(bag-of-words)模型[9]來表示,然后通過標注情感詞典的方法進行分類或者通過機器學(xué)習(xí)的方法分類,這些方法往往忽略了文本的順序結(jié)構(gòu)特征和上下文信息,很難學(xué)習(xí)到準確的語義特征。近年來詞嵌入[10]模型逐漸被大家廣泛應(yīng)用,谷歌公司提出了詞向量模型Word2Vec[11](Word to Vector),它將稀疏的詞向量映射為稠密的詞向量,按照表現(xiàn)形式的不同,將Word2Vec 模型分為了連續(xù)詞袋模型CBOW(Continuous Bag-Of-Words Model)和 Skip-Gram(Continuous Skip-gram Model)模型。Pennington 等人[12]提出了Glove(Global Vectors)模型來解決Word2Vec 不能捕捉文本全局信息的問題,但是Glove 模型沒有考慮單詞含義在不同語境下的含義不同。Devlin 等人提出了BERT[13](Bidirectional Encoder Representations from Transformer)模型,它使用多層雙向Transformer 編碼器,可以充分挖掘并提取上下文的情感信息,BERT 模型提出時刷新了NLP 任務(wù)之前的11 項最優(yōu)性能記錄。

因此,本文擬采用BERT 預(yù)訓(xùn)練模型,結(jié)合雙向GRU 神經(jīng)網(wǎng)絡(luò),對網(wǎng)絡(luò)文本數(shù)據(jù)進行情感分類。

2 模型結(jié)構(gòu)

2.1 BERT 模型

BERT 是2018 年谷歌AI 研究院提出的一種NLP 預(yù)訓(xùn)練模型,它由多層雙向Transformer 編碼器構(gòu)成,其模型結(jié)構(gòu)如圖1 所示。BERT 模型進行訓(xùn)練有兩個步驟:預(yù)訓(xùn)練和微調(diào)。首先隨機初始化模型參數(shù),然后進行網(wǎng)絡(luò)訓(xùn)練,不斷調(diào)整模型的參數(shù)以達到最好的訓(xùn)練效果。將訓(xùn)練結(jié)果最好的模型參數(shù)記錄下來,用自己的數(shù)據(jù)對參數(shù)進行微調(diào)以適應(yīng)數(shù)據(jù)。首先對模型進行預(yù)訓(xùn)練產(chǎn)生模型參數(shù),之后用這些參數(shù)對下游任務(wù)進行處理。在每個輸入文本前插入一個[CLS]符號作最終的文本語義表示,文本中插入的[SEP]表示特殊分隔符。

圖1 BERT 模型圖

為了增強對文本語義的表達能力,BERT 模型提出了兩個預(yù)訓(xùn)練任務(wù),一個是遮蔽語言建模(Masked Language Model,MLM),對句中的部分詞匯(token)進行隨機遮蔽,然后預(yù)測被遮蔽的token;另一個是下一句預(yù)測(Next Sentence Prediction,NSP),讓模型理解句子與句子之間的關(guān)系,從而更好地完成文本情感分類任務(wù)。

2.2 BiGRU 模型結(jié)構(gòu)

GRU 是一種由LSTM 改進的深度網(wǎng)絡(luò)模型,它將LSTM 的遺忘門與輸出門合并,減少了參數(shù),提高了效率。GRU 模型結(jié)構(gòu)如圖2 所示,參數(shù)說明如表1 所示。GRU 模型只有兩個控制門:更新門(update gate)和重置門(reset gate),更新門用于判斷前一時刻的隱藏層的狀態(tài)信息是否對當(dāng)前層造成影響,重置門可以刪除前一時刻中的無效信息,兩個門能夠長期保存隱藏層的狀態(tài)信息,具有更好的捕捉長距離依賴關(guān)系能力。

表1 參數(shù)說明表

圖2 GRU 結(jié)構(gòu)圖

GRU 只能處理單向時間序列,而文本中上下文信息關(guān)聯(lián)較大,因此本文采用雙向GRU(BiGRU)網(wǎng)絡(luò),即疊加兩個GRU 網(wǎng)絡(luò)來保留一個詞的前后文聯(lián)系。

2.3 BERT-BiGRU 模型

本文提出一種以BERT 作為詞向量模型,用雙向GRU 網(wǎng)絡(luò)進行高效的特征提取的BERT-BiGRU 文本情感分類模型,結(jié)構(gòu)如圖3 所示。

圖3 BBG 文本情感分類算法結(jié)構(gòu)圖

將經(jīng)過BERT 模型得到的文本詞向量數(shù)據(jù)XW輸入到GRU 網(wǎng)絡(luò)中,通過rt和zt共同控制從隱藏狀態(tài)ht-1到ht的計算。各門單元計算如下:

其中,W和U為權(quán)重矩陣,σ為sigmoid 激活函數(shù)。

根據(jù)式(3)、式(4),由重置門、更新門和隱含狀態(tài)可以計算當(dāng)前GRU 輸出。通過設(shè)置rt的值來對上一時刻隱藏狀態(tài)信息進行取舍,當(dāng)rt接近于0 時,舍棄上一時刻候選隱藏狀態(tài),當(dāng)rt接近于1 時保留,因此重置門有助于獲取文本序列中的短期關(guān)聯(lián)信息。當(dāng)zt=1 時,ht=ht-1,即更新門有助于獲取長期關(guān)聯(lián)信息。

在循環(huán)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練中,狀態(tài)的傳遞是單向的,即從前往后傳輸,但文本語義特征不僅取決于之前的狀態(tài),還與之后的狀態(tài)有關(guān),因此需要采用雙向GRU 網(wǎng)絡(luò)來解決此問題,它由上下兩個GRU 疊加在一起組成,輸出由兩個GRU 的狀態(tài)共同決定,即:

其中,表示第i個文本的BiGRU 信息,分別表示第i個文本的前向GRU 信息和后向GRU 信息。Bi-GRU 網(wǎng)絡(luò)不僅可以增加網(wǎng)絡(luò)的深度,提高模型的訓(xùn)練效率和性能,更有助于擴展前向和后向文本情感信息,從整體上進行文本的綜合特征提取。

將通過BiGRU 網(wǎng)絡(luò)獲得的文本特征向量輸入到全連接層獲得更加精確的情感特征,同時引入dropout 機制來防止模型出現(xiàn)過擬合現(xiàn)象以進一步增加模型分類的有效性,最后將提取到的文本特征整合后輸入到輸出層的Softmax 函數(shù)中獲得情感分類結(jié)果。

2.4 BERT-BiGRU 模型改進

文本情感分類中加入注意力機制(Attention model)是為了讓文本中重點詞語對分類結(jié)果產(chǎn)生更大的影響。通過計算概率分布,選擇對當(dāng)前目標任務(wù)更關(guān)鍵的信息,對深度學(xué)習(xí)模型進行優(yōu)化。下面將注意力機制與BERT-BiGRU 網(wǎng)絡(luò)相結(jié)合,用注意力機制代替上一小節(jié)BERT-BiGRU 模型中的全連接層,通過加權(quán)得到最終的文本信息。注意力機制的輸入為上一層BiGRU 網(wǎng)絡(luò)的輸出向量,權(quán)重系數(shù)計算如下:

其中,是模型訓(xùn)練得到參數(shù)向量的轉(zhuǎn)置,將各單詞按不同權(quán)重加權(quán),最后將提取到的文本特征整合后輸入到輸出層的Softmax 函數(shù)中獲得情感分類結(jié)果,如式(8)所示。

其中,θ代表參數(shù)向量,k表示類別數(shù)。

改進的BERT-BiGRU 模型引入注意力機制,通過在關(guān)鍵信息上分配足夠關(guān)注來突出局部重要信息,從而提高隱藏層特征提取質(zhì)量,增加情感分類的準確性。

改進算法流程如圖4 所示。

圖4 改進算法流程

(1)對輸入的待分類文本進行數(shù)據(jù)清洗,將換行符等特殊字符清洗掉、過濾掉非ASCII 字符等。

(2)將處理后的文本數(shù)據(jù)輸入到BERT 預(yù)訓(xùn)練語言模型中,生成文本的詞向量,將詞向量拼接成詞向量矩陣作為文本的向量表示。

(3)將詞向量表示輸入到BiGRU 網(wǎng)絡(luò)中進行特征提取后得到特征向量。

(4)通過注意力機制對文本特征向量分配不同的權(quán)值。

(5)將最終得到的文本特征向量輸入到Softmax 函數(shù)中得到文本的最終情感分類結(jié)果。

3 實驗與分析

3.1 實驗配置

本文實驗環(huán)境配置如表2 所示。

表2 實驗環(huán)境配置

本文選用Acllmdb_v1 和酒店評論兩個公開數(shù)據(jù)集進行驗證。其中,Acllmdb_v1 是英文數(shù)據(jù)集,共有42 455 條數(shù)據(jù);酒店評論是中文數(shù)據(jù)集,共有10 000 條數(shù)據(jù)。將數(shù)據(jù)集輸入到模型進行訓(xùn)練之前,首先對文本數(shù)據(jù)進行清洗,將換行符等特殊字符清洗掉、過濾掉非ASCII 字符,之后按照8:2 的比例隨機將數(shù)據(jù)集劃分為訓(xùn)練集和測試集,具體劃分情況如表3 所示。實驗?zāi)P蛥?shù)設(shè)計如表4 所示。

表3 數(shù)據(jù)集劃分情況

表4 模型參數(shù)設(shè)置

本文采用以下評價指標:準確率Acc(accuracy)、精確率P(precision)、召回率R(recall)和F1測 度 (F1-Socre)。定義如下:

其中,TP 表示模型預(yù)測正確的正樣本數(shù)量,TN 表示模型預(yù)測正確的負樣本數(shù)量,F(xiàn)P 表示模型預(yù)測錯誤的負樣本數(shù)量,F(xiàn)N 表示模型預(yù)測錯誤的正樣本數(shù)量,F(xiàn)1是精確率和召回率的加權(quán)平均。

3.2 實驗結(jié)果與分析

首先驗證BERT 詞向量模型的效果,在Acllmdb_v1數(shù)據(jù)集上對BERT、Word2Vec 和Glove 3 種模型進行對比。將情感文本輸入到這幾個詞向量模型中得到含有文本特征的詞向量,然后通過最大池化層和輸出層得到最終的情感分類結(jié)果。實驗評價指標選取準確率和F1值,實驗結(jié)果如表5 所示。

表5 不同詞向量模型實驗結(jié)果對比 (%)

從準確率來看,BERT 明顯優(yōu)于Word2Vec 和Glove,達到了90.32%,比Glove 提高了2.3%,比Word2Vec 提高了5.08%;F1值方面,BERT 也遠優(yōu)于其他兩種詞向量模型,因此本文采用BERT 詞向量模型。

接下來驗證本文設(shè)計模型的有效性,將之與文獻[14]中幾種常用模型分別在Acllmdb_v1 和酒店評論數(shù)據(jù)集上進行對比,實驗結(jié)果如表6 所示。各模型依次為:

表6 實驗結(jié)果(%)

(1)BERT 模型,直接利用BERT 模型生成含有文本語義特征的句向量進行情感分類任務(wù);

(2)BERT-CNN 模型,通過BERT 模型獲得詞向量,采用CNN 網(wǎng)絡(luò)進行訓(xùn)練;

(3)BERT-RNN 模型,通過BERT 模型獲得詞向量,采用RNN 網(wǎng)絡(luò)進行訓(xùn)練;

(4)BERT-BiGRU 模型,在BERT 模型的基礎(chǔ)上采用BiGRU 網(wǎng)絡(luò)進行訓(xùn)練;

(5)BERT-BiGRU-attention 模 型,改進的 BERTBiGRU 模型,引入注意力機制。

準確率方面,在Acllmdb_v1 數(shù)據(jù)集上,BERTBiGRU 達到了93.52%,相較于BERT-CNN 和BERT-RNN皆有提升,BERT-BiGRU-attention 模型準確率進一步提高了1.35%;在酒店評論數(shù)據(jù)集上,BERT-BiGRU 準確率依然達到了92.42%,相較于單純使用BERT 模型提高了2.31%,BERT-BiGRU-attention 進一步提高到93.02%。

F1值能夠比較全面地反映精確率和召回率,在兩個數(shù)據(jù)集上,本文設(shè)計的BERT-BiGRU 和BERT-BiGRUattention 模型F1值性能較基本BERT 模型都有一定程度的提高。在較小的酒店評論數(shù)據(jù)集上,性能提升不如Acllmdb_v1 數(shù)據(jù)集,是因為小數(shù)據(jù)情況下,最大池化提取特征具有單一性問題,導(dǎo)致BERT-CNN 分類效果不盡人意。BERT-RNN 分類效果優(yōu)于BERT-CNN,因為RNN能夠解決文本序列問題。BERT-BiGRU 效果最好,它能保留文本中詞與詞之間的上下文關(guān)聯(lián)信息,提升訓(xùn)練效果。注意力池化層根據(jù)文本詞匯的重要程度分配不同的權(quán)值,對最終情感極性產(chǎn)生不同程度的影響,能夠緩解最大池化信息丟失和提取特征單一的缺陷,進一步提高模型的分類效果。

4 結(jié)論

本文基于BERT 預(yù)訓(xùn)練語言模型,結(jié)合BiGRU 神經(jīng)網(wǎng)絡(luò)和注意力機制,設(shè)計了一種網(wǎng)絡(luò)文本情感分類模型BERT-BiGRU-attention。該模型使用BERT 生成詞向量輸入BiGRU 網(wǎng)絡(luò),通過注意力機制對BiGRU 網(wǎng)絡(luò)提取到的文本特征向量進行加權(quán),最終得到文本情感分類結(jié)果。BiGRU 網(wǎng)絡(luò)能夠更好地捕獲文本及其上下文的總體特征,達到高效訓(xùn)練的結(jié)果;注意力機制可以提高文本中更能表達情感的單詞的權(quán)值,進一步提高分類的準確率。實驗結(jié)果表明,和其他模型相比,BERT-BiGRUattention 在中英文數(shù)據(jù)集上都獲得了很好的分類效果,明顯提升了情感分類性能。

猜你喜歡
向量分類文本
向量的分解
分類算一算
聚焦“向量與三角”創(chuàng)新題
在808DA上文本顯示的改善
分類討論求坐標
基于doc2vec和TF-IDF的相似文本識別
數(shù)據(jù)分析中的分類討論
教你一招:數(shù)的分類
向量垂直在解析幾何中的應(yīng)用
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學(xué)隱喻