支世堯 吳貞如 陳濤 李盛達(dá) 彭?xiàng)?/p>
摘? 要: 針對傳統(tǒng)語言模型無法直接提取句子的雙向語義特征,導(dǎo)致情感分類準(zhǔn)確率較低的情況,提出一種結(jié)合預(yù)訓(xùn)練語言模型ALBERT、BiLSTM以及Attention機(jī)制的微博評論情感分析模型ALBERT-BiLSTM-Att。在公開數(shù)據(jù)集weibo_senti_100k上,經(jīng)過五折交叉驗(yàn)證實(shí)驗(yàn),ALBERT-BiLSTM-Att模型的準(zhǔn)確率達(dá)到93.30%。
關(guān)鍵詞: 情感分析; 微博評論; ALBERT; BiLSTM; Attention
中圖分類號:TP389.1? ? ? ? ? 文獻(xiàn)標(biāo)識碼:A? ? ?文章編號:1006-8228(2022)02-19-04
ALBERT-BiLSTM-Att Models for sentiment analysis of Weibo comments
Zhi Shiyao, Wu Zhenru, Chen Tao, Li Shengda, Peng Dong
(School of Information Engineering,Nanjing Audit University, Nanjing, Jiangsu 211815, China)
Abstract: Aiming at the situation that traditional language models cannot directly extract the two-way semantic features of sentences, resulting in low accuracy of emotion classification, a Microblog comment sentiment analysis model ALBERT-BiLSTM-Att that combines pre-training models ALBERT, BiLSTM and Attention mechanism is proposed. A 5-fold cross-validation experiment on the public data-set weibo_senti_100k shows that the accuracy of the ALBERT-BiLSTM-Att model reached 93.30%.
Key words: sentiment analysis; Weibo comment; ALBERT; BiLSTM; Attention
0 引言
微博作為全球最大的中文社交全媒體平臺,達(dá)到了月活躍用戶數(shù)5.23億,日活躍用戶數(shù)2.29億(截至2020年11月)。通過微博發(fā)布信息具有即時(shí)性、開放性、碎片化、裂變傳播等特征[1]。用戶的大量評論(特別是負(fù)面評論)往往容易造成輿情事件的爆發(fā)。因此相關(guān)部門應(yīng)加強(qiáng)對網(wǎng)絡(luò)輿情的管控過程,特別是對微博評論進(jìn)行情感分析應(yīng)是重中之重[2]。
1 研究現(xiàn)狀
文本情感分析的方法主要有基于情感詞典、機(jī)器學(xué)習(xí)以及深度學(xué)習(xí)三種方法。
情感詞典方法是將數(shù)據(jù)集和情感詞典中的詞進(jìn)行匹配,通過權(quán)重計(jì)算,從而得到文本的情感極性,但一個(gè)完備的詞典很難被構(gòu)建出來[3]。趙妍妍等人[4]構(gòu)建了一個(gè)基于微博數(shù)據(jù)的大規(guī)模情感詞典,該方法在微博情感分類的效果上和NRC-Canada相比提高了1.13%;2019年,XuG等人[5]通過構(gòu)建一個(gè)包含基本、場景以及多義三方面情感詞的擴(kuò)展情感詞典,有效提升了情感分類的效果。
機(jī)器學(xué)習(xí)方法則是利用NB、SVM等算法來實(shí)現(xiàn)情感分析,但因?yàn)榛跈C(jī)器學(xué)習(xí)方法訓(xùn)練出的模型大多缺少泛化能力,以至于不能夠較好的應(yīng)用在多種場景。Pang等人[6]于2002年首次應(yīng)用機(jī)器學(xué)習(xí)算法對電影評論數(shù)據(jù)進(jìn)行情感分析。支等人[7]使用NB方法對酒店評論進(jìn)行情感分類,準(zhǔn)確率為81.3%。孫建旺等人[8]將中文微博文本中的形容詞以及動詞作為特征提取出來,并使用基于層次結(jié)構(gòu)和符號的方法對特征進(jìn)行降維并計(jì)算極性值,最后使用SVM進(jìn)行情感分類。
這兩種方法都有明顯弊端,基于此,人們提出基于深度學(xué)習(xí)的方法。KimY[9]最早提出將CNN應(yīng)用于文本情感分析。關(guān)鵬飛等人[10]提出一種基于注意力機(jī)制的并行BiLSTM模型,利用Attention機(jī)制和BiLSTM提取詞、句的特征信息,有效提升了分類效果。胡朝舉等人[11]構(gòu)建了一種基于深層注意力的LSTM模型,通過共享權(quán)重的BiLSTM對主題和文本詞向量進(jìn)行訓(xùn)練,并融合主題和文本特征??妬喠值热薣12]針對訓(xùn)練速度慢的問題,提出一種結(jié)合CNN與GRU的文本情感分析模型(CNN-BiGRU),實(shí)驗(yàn)表明,CNN-BiGRU模型簡化了特征提取過程,提高了訓(xùn)練速率并且準(zhǔn)確率沒有降低。Yin等人[13]于2020年提出Sentibert方法,該方法基于預(yù)訓(xùn)練模型BERT,包含BERT、基于注意網(wǎng)絡(luò)的語義組合模塊、短語和句子的預(yù)測因子三個(gè)模塊,通過實(shí)驗(yàn)證明該方法對分類效果提升明顯。
為了優(yōu)化特征提取,本文利用ALBERT來獲取微博評論的動態(tài)特征表示,并結(jié)合BiLSTM以及注意力機(jī)制,提出ALBERT-BiLSTM-Att模型。通過對比實(shí)驗(yàn)發(fā)現(xiàn),該情感分析模型能較好地提取微博評論文本的深層語義特征。
2 基于ALBERT-BiLSTM-Att的微博評論情感分析模型
2.1 BERT與ALBERT
BERT是2018年Google AI Language的DevlinJ等人提出的預(yù)訓(xùn)練語言模型[14],刷新了多項(xiàng)NLP任務(wù)的記錄。該模型采用雙向Transformer編碼器,其中Bert-base疊加了十二層Encoder,具體單元結(jié)構(gòu)如圖1所示。它有兩種訓(xùn)練任務(wù):
[Masked Language Model]:隨機(jī)[MASK]每個(gè)句子中15%的詞。其中被打上[[MASK]]標(biāo)記的詞有10%替換為任意詞,10%不變,其余80%直接替換為[[MASK]]標(biāo)簽,讓模型預(yù)測被打上[MASK]標(biāo)記的單詞含義。
[Next Sentence Prediction]:通過從訓(xùn)練文本中挑選連續(xù)以及非連續(xù)的語句對,讓模型判斷語句相關(guān)性。
BERT模型的處理過程為:將輸入的文本數(shù)據(jù)X=(X,X,…,X)進(jìn)行Token Embeddings、Segment Embeddings以及Position Embeddings。設(shè)計(jì)了Self-Attention,充分考慮句子中每一個(gè)詞語之間的語義和語法聯(lián)系,同時(shí)考慮到不同head中單詞的Attention不同,通過結(jié)合多個(gè)Self-Attention形成多頭(Multi-Head)機(jī)制,使模型獲得更大容量。
Add? Norm層的Add為殘差連接(Residual Connection),Norm]為層歸一化(Layer Normalization)。把模型輸入與上層輸出相加,再進(jìn)行層歸一化,這樣可以做到僅關(guān)注差異部分,并使模型更容易訓(xùn)練。Add? Norm層的輸出傳遞到Feed Forward,再經(jīng)過Add? Norm層后輸出。
ALBERT是Google的Lan等人[15]基于BERT模型改進(jìn)的一種預(yù)訓(xùn)練語言模型,該模型與BERT相比,降低了參數(shù)量,并提高了運(yùn)行速度。
ALBERT相較于BERT主要有以下幾點(diǎn)改進(jìn)。
⑴ Factorized embedding parameterization:降低Embedding層的詞嵌入維度,并在詞嵌入和隱藏層間添加一個(gè)中介。參數(shù)量[P]的計(jì)算公式為:
P=L×H?⑴
P=L×V+V×H? ⑵
詞表大小為L,隱藏層維度為H,詞嵌入維度為V。BERT模型中V和H相同,在V遠(yuǎn)小于H的情況下,詞嵌入因式分解后的參數(shù)量P將大幅度減小。
⑵ Cross-Layer Parameter Sharing](層參數(shù)共享):將[FFN]和[Attention]模塊都實(shí)現(xiàn)了參數(shù)共享,盡可能減少參數(shù)量。
⑶ [Inter-sentence coherence loss](句間連貫):改進(jìn)了BERT模型原有的[NSP]任務(wù),提出了[SOP(Sentence-order prediction)]的新型訓(xùn)練任務(wù)。
⑷ 移除[Dropout]。
2.2 ALBERT-BiLSTM-Attention模型
ALBERT-BiLSTM-Att模型結(jié)構(gòu)如圖2所示。ALBERT-BiLSTM-Att模型主要由四個(gè)部分組成:輸入層、ALBERT層、BiLSTM-Att層(包含BiLSTM層和Attention層)、輸出層。
步驟1 對微博評論數(shù)據(jù)進(jìn)行預(yù)處理,利用輸入層將預(yù)處理的微博評論數(shù)據(jù)輸入到模型的ALBERT層中,輸入的文本數(shù)據(jù)為X=(X,X,…,X)。
步驟2 在ALBERT層獲取文本的動態(tài)特征表示。
步驟3 將步驟3獲得的文本特征輸入到BiLSTM層中,x表示i位置上的詞向量輸入,通過前向傳遞模塊LSTM和后向傳遞模塊LSTM,分別獲得h和h,之后連接h和h,獲得隱層向量h1,2,...,n,并結(jié)合注意力機(jī)制得到最終句子表示h,算法如下:
步驟4 將特征向量[h]輸入到Dense Layer進(jìn)行降維,全連接層的輸出維度為情感標(biāo)簽的類別數(shù)。最后對輸出結(jié)果進(jìn)行Softmax歸一化,得到微博評論文本的情感極性。
3 實(shí)驗(yàn)與分析
3.1 數(shù)據(jù)預(yù)處理
本文選用公開數(shù)據(jù)集weibo_senti_100k作為實(shí)驗(yàn)數(shù)據(jù)集。數(shù)據(jù)集包含119988條帶情感標(biāo)簽的數(shù)據(jù),其中正負(fù)評論各59994條,0和1分別表示負(fù)向評論和正向評論。使用正則表達(dá)式對數(shù)據(jù)進(jìn)行過濾處理,根據(jù)標(biāo)識刪除“#”、“@”、“//”等與情感表達(dá)無關(guān)內(nèi)容,并進(jìn)行停用詞去除等操作,示例見表1。
數(shù)據(jù)集90%作為訓(xùn)練集,采用五折交叉驗(yàn)證,剩下10%作為測試集。由于模型從未見過測試集數(shù)據(jù),所以可以更準(zhǔn)確的反應(yīng)模型的分類效果。
3.2 實(shí)驗(yàn)參數(shù)
實(shí)驗(yàn)參數(shù)包含兩部分,一是ALBERT模型,二是BiLSTM-Att模型。其中ALBERT采用Google發(fā)布的預(yù)訓(xùn)練模型ALBERT-Base。模型參數(shù)見表2:
3.3 對比模型設(shè)置
為了評估模型的效果,本文采用以下五個(gè)對比模型。
⑴ ALBERT-base模型:利用ALBERT-base模型訓(xùn)練得到文本特征,將獲得的文本特征通過一個(gè)全連接層,然后直接輸入到[Softmax]分類器中。
⑵ Att-BiLSTM模型:該模型是由注意力機(jī)制和雙向長短期記憶網(wǎng)絡(luò)組成。
⑶ Word2Vec-BiLSTM:采用Word2Vec訓(xùn)練得到文本特征,并輸入到BiLSTM。
⑷ BERT-BiLSTM:采用BERT模型將微博評論文本訓(xùn)練得到文本特征,并輸入到BiLSTM中進(jìn)行情感分類。
⑸ ALBERT-BiLSTM:采用ALBERT模型將微博評論文本訓(xùn)練出詞向量表示,并輸入到BiLSTM中進(jìn)行情感分類。
3.4 實(shí)驗(yàn)結(jié)果與分析
不同模型在weibo_senti_100k上的情感分類效果如表3所示。分析如下。
⑴ 基于ALBERT-BiLSTM-Att的模型優(yōu)于Att-BiLSTM模型,在三種評估指標(biāo)上都有很大提升,驗(yàn)證了預(yù)訓(xùn)練語言模型ALBERT的有效性。
⑵ 基于ALBERT的方法與其余模型比較,都取得比較理想的實(shí)驗(yàn)結(jié)果。
⑶ ALBERT-BiLSTM-Att模型與ALBERT-BiLSTM模型相比有微弱提升,但較其他模型,有明顯優(yōu)勢。說明Attention機(jī)制能夠挖掘更深層次的語義特征。
結(jié)果表明,基于ALBERT-BiLSTM-Att的情感分類方法在微博評論文本上相比其他模型具有更好的表現(xiàn)。
4 總結(jié)
微博作為全球最大的中文社交平臺,對其評論進(jìn)行情感分析,可以掌握網(wǎng)民對公共事件的態(tài)度,從而控制網(wǎng)絡(luò)輿情的發(fā)展方向,這對于政府部門進(jìn)行網(wǎng)絡(luò)輿情管控有著十分重要的意義。本文設(shè)計(jì)的ALBERT-BiLSTM-Att情感分析模型可以提取句子的深層語義特征,提升了情感分類的準(zhǔn)確率。實(shí)驗(yàn)結(jié)果表明,該模型在weibo_senti_100k上的分類效果優(yōu)于其他模型。但由于ALBERT模型訓(xùn)練時(shí)間較長且難以復(fù)現(xiàn)以及BiLSTM模型的計(jì)算量較大等限制,導(dǎo)致模型訓(xùn)練和推理時(shí)間較長,下一步將對此進(jìn)行改進(jìn),以進(jìn)一步提升模型的速度和效果。
參考文獻(xiàn)(References):
[1] 張文婷.微博對傳統(tǒng)新聞傳播模式的影響[J].數(shù)字傳媒研究,2018,35(7):32-33
[2] 諶志群,鞠婷.基于BERT和雙向LSTM的微博評論傾向性分析研究[J].情報(bào)理論與實(shí)踐,2020,43(8):173-177
[3] 徐民霖.結(jié)合情感詞典和神經(jīng)網(wǎng)絡(luò)的文本情感分析研究[D].江西理工大學(xué),2020
[4] 趙妍妍,秦兵,石秋慧,等.大規(guī)模情感詞典的構(gòu)建及其在情感分類中的應(yīng)用[J].中文信息學(xué)報(bào),2017,31(2):187-193
[5] Xu G, Yu Z, Yao H, et al. Chinese text sentiment analysisbased on extended sentiment dictionary[J]. IEEE Access,2019,7:43749-43762
[6] Pang B, Lee L, Vaithyanathan S. Thumbs up? Sentimentclassification using machine learning techniques[J].arXiv preprint cs/0205070,2002
[7] 支世堯,彭?xiàng)?,朱?基于機(jī)器學(xué)習(xí)的在線評論傾向性分析[J].科學(xué)技術(shù)創(chuàng)新,2021(15):99-100
[8] 孫建旺,呂學(xué)強(qiáng),張雷瀚.基于詞典與機(jī)器學(xué)習(xí)的中文微博情感分析研究[J].計(jì)算機(jī)應(yīng)用與軟件,2014(7):177-181
[9] Kim Y. Convolutional Neural Networks for SentenceClassification[J]. Eprint Arxiv,2014
[10] 關(guān)鵬飛,李寶安,呂學(xué)強(qiáng),等.注意力增強(qiáng)的雙向LSTM情感分析[J].中文信息學(xué)報(bào),2019,33(2):105-111
[11] 胡朝舉,梁寧.基于深層注意力的LSTM的特定主題情感分析[J].計(jì)算機(jī)應(yīng)用研究,2019,36(4):121-125
[12] 繆亞林,姬怡純,張順,等.CNN-BiGRU模型在中文短文本情感分析的應(yīng)用[J].情報(bào)科學(xué),2021,39(4):85-91
[13] Yin D, Meng T, Chang K W. Sentibert: A transferabletransformer-based architecture for compositional sentiment semantics[J].arXiv preprint arXiv:2005.04114,2020
[14] Devlin J, Chang M W, Lee K, et al. Bert: Pre-training ofdeep bidirectional transformers for language understanding[J]. arXiv:1810.04805,2018
[15] Lan Z, Chen M, Goodman S, et al. Albert: A lite bert forself-supervised learning of language representations[J]. arXiv preprint arXiv:1909.11942,2019