基于ALBERT-BiLSTM-Att的微博评论情感分析研究 支世尧 吴贞如 陈涛 李盛达 彭栋摘 要: 针对传统语言模型无法直接提取句子的双向语义特征,导致情感分类准确率较低的情况,提出一种结合预训练语言模型ALBERT、BiLSTM以及Attention机制的微博评论情感分析模型ALBERT-BiLSTM-Att在公开数据集weibo_senti_100k上,经过五折交叉验证实验,ALBERT-BiLSTM-Att模型的准确率达到93.30%关键词: 情感分析; 微博评论; ALBERT; BiLSTM; Attention:TP389.1 文獻标识码:A :1006-8228(2022)02-19-04ALBERT-BiLSTM-Att Models for sentiment analysis of Weibo commentsZhi 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; Attention0 引言微博作为全球最大的中文社交全媒体平台,达到了月活跃用户数5.23亿,日活跃用户数2.29亿(截至2020年11月)。
通过微博发布信息具有即时性、开放性、碎片化、裂变传播等特征[1]用户的大量评论(特别是负面评论)往往容易造成舆情事件的爆发因此相关部门应加强对网络舆情的管控过程,特别是对微博评论进行情感分析应是重中之重[2]1 研究现状文本情感分析的方法主要有基于情感词典、机器学习以及深度学习三种方法情感词典方法是将数据集和情感词典中的词进行匹配,通过权重计算,从而得到文本的情感极性,但一个完备的词典很难被构建出来[3]赵妍妍等人[4]构建了一个基于微博数据的大规模情感词典,该方法在微博情感分类的效果上和NRC-Canada相比提高了1.13%;2019年,XuG等人[5]通过构建一个包含基本、场景以及多义三方面情感词的扩展情感词典,有效提升了情感分类的效果机器学习方法则是利用NB、SVM等算法来实现情感分析,但因为基于机器学习方法训练出的模型大多缺少泛化能力,以至于不能够较好的应用在多种场景Pang等人[6]于2002年首次应用机器学习算法对电影评论数据进行情感分析支等人[7]使用NB方法对酒店评论进行情感分类,准确率为81.3%孙建旺等人[8]将中文微博文本中的形容词以及动词作为特征提取出来,并使用基于层次结构和符号的方法对特征进行降维并计算极性值,最后使用SVM进行情感分类。
这两种方法都有明显弊端,基于此,人们提出基于深度学习的方法KimY[9]最早提出将CNN应用于文本情感分析关鹏飞等人[10]提出一种基于注意力机制的并行BiLSTM模型,利用Attention机制和BiLSTM提取词、句的特征信息,有效提升了分类效果胡朝举等人[11]构建了一种基于深层注意力的LSTM模型,通过共享权重的BiLSTM对主题和文本词向量进行训练,并融合主题和文本特征缪亚林等人[12]针对训练速度慢的问题,提出一种结合CNN与GRU的文本情感分析模型(CNN-BiGRU),实验表明,CNN-BiGRU模型简化了特征提取过程,提高了训练速率并且准确率没有降低Yin等人[13]于2020年提出Sentibert方法,该方法基于预训练模型BERT,包含BERT、基于注意网络的语义组合模块、短语和句子的预测因子三个模块,通过实验证明该方法对分类效果提升明显为了优化特征提取,本文利用ALBERT来获取微博评论的动态特征表示,并结合BiLSTM以及注意力机制,提出ALBERT-BiLSTM-Att模型通过对比实验发现,该情感分析模型能较好地提取微博评论文本的深层语义特征2 基于ALBERT-BiLSTM-Att的微博评论情感分析模型2.1 BERT与ALBERTBERT是2018年Google AI Language的DevlinJ等人提出的预训练语言模型[14],刷新了多项NLP任务的记录。
该模型采用双向Transformer编码器,其中Bert-base叠加了十二层Encoder,具体单元结构如图1所示它有两种训练任务:[Masked Language Model]:随机[MASK]每个句子中15%的词其中被打上[[MASK]]标记的词有10%替换为任意词,10%不变,其余80%直接替换为[[MASK]]标签,让模型预测被打上[MASK]标记的单词含义[Next Sentence Prediction]:通过从训练文本中挑选连续以及非连续的语句对,让模型判断语句相关性BERT模型的处理过程为:将输入的文本数据X=(X,X,…,X)進行Token Embeddings、Segment Embeddings以及Position Embeddings设计了Self-Attention,充分考虑句子中每一个词语之间的语义和语法联系,同时考虑到不同head中单词的Attention不同,通过结合多个Self-Attention形成多头(Multi-Head)机制,使模型获得更大容量Add Norm层的Add为残差连接(Residual Connection),Norm]为层归一化(Layer Normalization)。
把模型输入与上层输出相加,再进行层归一化,这样可以做到仅关注差异部分,并使模型更容易训练Add Norm层的输出传递到Feed Forward,再经过Add Norm层后输出ALBERT是Google的Lan等人[15]基于BERT模型改进的一种预训练语言模型,该模型与BERT相比,降低了参数量,并提高了运行速度ALBERT相较于BERT主要有以下几点改进⑴ Factorized embedding parameterization:降低Embedding层的词嵌入维度,并在词嵌入和隐藏层间添加一个中介参数量[P]的计算公式为:P=L×H ⑴P=L×V+V×H ⑵词表大小为L,隐藏层维度为H,词嵌入维度为VBERT模型中V和H相同,在V远小于H的情况下,词嵌入因式分解后的参数量P将大幅度减小⑵ Cross-Layer Parameter Sharing](层参数共享):将[FFN]和[Attention]模块都实现了参数共享,尽可能减少参数量⑶ [Inter-sentence coherence loss](句间连贯):改进了BERT模型原有的[NSP]任务,提出了[SOP(Sentence-order prediction)]的新型训练任务。
⑷ 移除[Dropout]2.2 ALBERT-BiLSTM-Attention模型ALBERT-BiLSTM-Att模型结构如图2所示ALBERT-BiLSTM-Att模型主要由四个部分组成:输入层、ALBERT层、BiLSTM-Att层(包含BiLSTM层和Attention层)、输出层步骤1 对微博评论数据进行预处理,利用输入层将预处理的微博评论数据输入到模型的ALBERT层中,输入的文本数据为X=(X,X,…,X)步骤2 在ALBERT层获取文本的动态特征表示步骤3 将步骤3获得的文本特征输入到BiLSTM层中,x表示i位置上的词向量输入,通过前向传递模块LSTM和后向传递模块LSTM,分别获得h和h,之后连接h和h,获得隐层向量h1,2,...,n,并结合注意力机制得到最终句子表示h,算法如下:步骤4 将特征向量[h]输入到Dense Layer进行降维,全连接层的输出维度为情感标签的类别数最后对输出结果进行Softmax归一化,得到微博评论文本的情感极性3 实验与分析3.1 数据预处理本文选用公开数据集weibo_senti_100k作为实验数据集数据集包含119988条带情感标签的数据,其中正负评论各59994条,0和1分别表示负向评论和正向评论。
使用正则表达式对数据进行过滤处理,根据标识删除“#”、“@”、“//”等与情感表达无关内容,并进行停用词去除等操作,示例见表1数据集90%作为训练集,采用五折交叉验证,剩下10%作为测试集由于模型从未见过测试集数据,所以可以更准确的反应模型的分类效果3.2 实验参数实验参数包含两部分,一是ALBERT模型,二是BiLSTM-Att模型其中ALBERT采用Google发布的预训练模型ALBERT-Base模型参数见表2:3.3 对比模型设置为了评估模型的效果,本文采用以下五个对比模型⑴ ALBERT-base模型:利用ALBERT-base模型训练得到文本特征,将获得的文本特征通过一个全连接层,然后直接输入到[Softmax]分类器中⑵ Att-BiLSTM模型:该模型是由注意力机制和双向长短期记忆网络组成⑶ Word2Vec-BiLSTM:采用Word2Vec训练得到文本特征,并输入到BiLSTM⑷ BERT-BiLSTM:采用BERT模型将微博评论文本训练得到文本特征,并输入到BiLSTM中进行情感分类⑸ ALBERT-BiLSTM:采用ALBERT模型将微博评论文本训练出词向量表示,并输入到BiLSTM中进行情感分类。
3.4 实验结果与分析不同模型在weibo_senti_100k上的情感分类效果如表3所示分析如下⑴ 基于ALBERT-BiLSTM-Att的模型优于Att-BiLSTM模型,在三种评估指标上都有很大提升,验证了预训练语言模型ALBERT的有效性⑵ 基于ALBERT的方法与其余模型比较,都取得比较理想的实验结果⑶ ALBERT-BiLSTM-Att模型与ALBERT-BiLSTM模型相比有微弱提升,但较其他模型,有明显优势说明Attention机制能够挖掘更深层次的语义特征结果表明,基于ALBERT-BiLSTM-Att的情感分类方法在微博评论文本上相比其他模型具有更好的表现4 总结微博作为全球最大的中文社交平台,对其评论进行情感分析,可以掌握网民对公共事件的态度,从而控制网络舆情的发展方向,这对于政府部门进行网络舆情管控有着十分重要的意义本文设计的ALBER。