1. 引言
随着网络技术的发展,社交媒体上的用户频繁发表带有情感倾向的评论,这种现象日益普遍。情感分析,也被称作意见挖掘,它在自然语言处理的研究领域中占有重要地位。这项技术广泛应用于多个关键领域,如舆论监测、政策反馈的搜集、商品评价的分析,以及电影推荐等[1]。由此可见,情感分析在现代化信息应用中占据至关重要的地位。
文本情感分析的常见方法主要分为三种类型,起源最早的是依赖情感词典的技术。该技术依赖于人工或机器学习来创建情感词典,但这种方法往往需要依赖专家系统,并且根据不同的分析者可能需要制定不同的规则。这不仅耗费大量的时间和劳力,而且其准确性也存在一定的局限性[2]。紧随其后的是机器学习方法的兴起,涵盖了支持向量机(SVM)、最大熵模型以及朴素贝叶斯等多样化的算法[3]。在提升文本分类的准确性方面,该方法取得了显著成效,尽管其泛化力仍需提升。当前,深度学习已成为情感分析的主流技术,涵盖了卷积神经网络(CNN)和循环神经网络(RNN)等多种模型。针对RNN训练中的梯度问题,长短时记忆网络(LSTM)被开发出来,并进一步发展为双向长短时记忆网络(Bi-LSTM)。Bi-LSTM通过同时分析文本的前后文信息,提高了情感识别的准确性。然而,传统神经网络模型在提取文本深层语义信息方面仍有局限。
在情感分析的传统实践中,Word2Vec技术用于创建文本词汇的独特向量表示。然而,这种方法在处理词汇的多义性及对新兴词汇的理解上存在不足。以“荣耀”一词为例,在“是我的荣耀”与“荣耀手机”两个语境中,其含义迥异,凸显了在文本特征表达时需采用差异化方法的必要性。后面出现的主流模型BERT的预训练文本级别是在句子级,而大多数中文文本的情感倾向存在于词和短语之间,无法做到更细致的文本情感特征提取。
近年来,文本情感分析领域已积累了丰富的研究成果。2013年,Tomas Mikolov提出了Word2vec模型,这是一种生成静态词向量的方法[4]。逐渐地,一些先前使用的简单离散向量表示方法,如One-hot编码和TF-IDF,开始被更为先进的模型所取代;王煜涵等[5]的卷积神经网络(CNN)被应用于推特文本的情感分析任务,与传统机器学习技术相比,其在情感分类方面显示出更高的效率。此后,一系列基于神经网络的文本分类模型被开发出来,丰富了这一领域。出现BERT预训练模型后,段丹丹[6]使用BERT模型对中文短文本进行分类,取得了不错的效果;夏宇同[7]提出使用RoBERTa模型面对疫情评论文本进行情感分析;考虑使用混合神经网络分类模型后,贾中昕[8]对RoBERTa-wwm模型进行了微调,设计并实现了基于深度学习的短文本情感分析系统,与单一神经网络方法相比具有更好的准确性。
近期,注意力机制已在众多学科领域内得到应用。这一机制的优势体现在其能够辨识文章中词汇的相对重要性,并且在分类任务中突出这些关键词汇,从而有效地提炼出文本的核心信息,增强了信息抽取的精准度。胡俊玮[9]提出了一个基于BERT-BGRU-Att模型的评论情感分析方法。兰正寅[10]在探索新闻文本的自动分类过程中,本研究引入了融合注意力机制的RoBERTa模型。相较于单独使用RoBERTa,这种融合模型在提高分类精度上取得了明显的进展。
本项研究开创性地提出了一种结合RoBERTa-wwm-ext [11]与注意力机制的文本分类策略。核心贡献概述如下:初步阶段,借助于对中文文本优化的RoBERTa-wwm-ext模型,提取了网络评论的深层语义特征,这一语义映射为中文文本分类任务提供了更为精准的向量表示。随后,通过Bi-LSTM层对RoBERTa层[12]的输出执行序列编码,以深入挖掘文本中的时序特征。进一步地,Mutil-Head-Attention机制[13]被应用于Bi-LSTM的输出,对各个时间步的语义信息赋予相应的权重,并进行加权求和,以形成综合的特征向量。最终,Softmax分类器基于这些特征向量进行情感倾向的预测,从而完成文本的情感分类。
2. 本文模型
文中提出的RoBERTa-BiLSTM-Mutil-Head-Attention模型主要分为以下几个部分。
1) 词嵌入层:输入经过数据预处理之后的文本信息,并转换成词向量。
2) 语义提取层:结合双向长短期记忆网络(Bi-LSTM)和多头注意力机制,本研究开发了一种文本特征提取方法。这一综合策略能够精准地从文本中识别并提取出重要的信息特征。
3) 情感分类输出层:处理后的特征向量随后被送入全连接层,并通过Softmax激活函数进行情感倾向的分类分析。这种方法能够对文本数据的情感色彩进行有效判别。
模型框架如图1所示:
Figure 1. Frame diagram of the model
图1. 模型框架图
2.1. 词嵌入层
词嵌入作为一项基础技术,负责将自然语言的文本信息转化为深度神经网络可解析的数值型向量。在本研究中,我们对文本的词向量表达形式进行了深入探讨,并最终采用了基于BERT优化版的RoBERTa-wwm-ext模型来预训练词向量。此模型在继承BERT架构的基础上,对参数进行了细致的调整和优化,允许处理更大规模的数据批量以及更长的文本输入。研究还发现,BERT中的下一句预测(Next Sentence Prediction, NSP)任务可能对模型的整体性能造成不利影响,故RoBERTa-wwm-ext模型选择去除此任务。此外,为了克服BERT模型中静态掩码的不足,该模型引入了动态掩码技术,进一步提高了模型的效能。在字符编码方面,该模型采用了Byte Pair Encoding (BPE)技术,这使得它能够更有效地处理自然语言语料中的多样化词汇,相较于BERT,其语料库的覆盖范围更为广泛。
对于短文本的处理
首先生成每个字符的向量表示既Token Embedding、以及指示字符位置的向量,即Position Embedding,这两个向量在行方向上进行拼接,构建出词向量矩阵
,其维度由批次大小(BatchSize,用b表示),其维度由批次大小(BatchSize,用b表示)共同决定,这一矩阵随后被送入RoBERTa-wwm-ext预训练模型,以生成文本的动态词向量
,其中
的维度大小为
,其中的
为词向量的维度(Embedding dim)。
2.2. 语义提取层
在语义提取阶段,采用了RoBERTa-wwm-ext模型的最终层输出来进行文本的深层语义分析,即是2.1中
作为Bi-LSTM的输入,设为
,
表示
时刻的LSTM网络的输入,其计算的公式如(1)所示:
(1)
其中,
为激活函数sigmoid,
为权重矩阵,
为偏置项。
LSTM网络的前一时间步的输出
,不仅要融合当前时间步的输入
,还需结合前一时刻的隐层状态
,具体的输出计算过程,展示在公式(2)中:
(2)
为LSTM前一时刻
到当前时刻
的权重矩阵,
为当前时刻的偏置项,
,道理一致,后项的LSTM的计算与前项的LSTM是一致的。
将前一项的LSTM在最后时刻的隐藏层与后一项LSTM在最后时刻的第一维进行了合并,并输出了相应的计算公式(3):
(3)
其中,
,其表示的含义即是双向的LSTM的输出。
2.3. 情感分类输出层
通过对双向LSTM的输出进行线性层处理后,再通过Softmax函数,得到了最后的分类答案[14],计算的公式如式(4):
(4)
其中,结构
是线性层的权重矩阵,
为模型偏置项。鉴于该模型所面对的主题属于二分类,因此我们选择使用loss作为二元交交失熵的损害函数。公式如式(5):
(5)
其中,
是样本真实的标签,
为模型的预测结果。
最后得出的预测数据是基于上层Attention层的输出,并通过Softmax函数进行计算得出的。
通过选择不同的组合模型,在同一数据集下进行实验,检验不同组合模型的分类准确性,确定出最优的模型。
3. 实验及结果分析
3.1. 数据集
选择百度千言数据集下载的网络评论文本数据集ChnSentiCorp,本研究中所使用的数据集以句子作为分析的基本单元,专门针对中文文本情感分析任务进行了构建。该数据集汇集了来自书籍、笔记本以及酒店服务三个领域的用户反馈,共计10,800条评论文本,每条文本都蕴含着丰富的情感信息。这些文本数据不仅为情感分析提供了一个多维度的视角,而且也为模型训练和性能评估提供了充足的实例,有助于深入挖掘和理解不同领域文本中的情感倾向。通过这些数据,可以有效地评估和优化模型在识别和分类不同文本情感方面的表现。将该数据集的训练集和测试集分别为8000条和2800条。
考虑到所选数据集中的评论文本当中或许会包含一些没有意义的词或者符号,对于这些文本数据进行停用词去除,见表1:
Table 1. Text preprocessing
表1. 文本的预处理
标签 |
原始文本 |
处理后的数据 |
1 (积极) |
“面对鸦绿江大桥,附望远镜,还有飞镖,设施没话讲!下楼就是风景区很不错!” |
面对鸦绿江大桥,附望远镜,还有飞镖,设施没话讲下楼就是风景区很不错 |
3.2. 评价指标
使用实验平台使用Intel (R) Core(TM) i7-8750H CPU @ 2.20 GHz,运行内存16 GB。实验使用的python版本为3.9.2。
为确保实验的公正性和结果的可靠性,本研究采用了与文献[11]相同的实验条件进行对比分析。在实验中,所有超参数的配置均按照下表所列的标准进行设定,以期达到一致的实验环境,详情见表2。这种设置有助于确保不同实验之间的结果具有可比性,同时也便于分析和解释实验结果的差异:
Table 2. Setting of hyperparameters
表2. 超参数的设置
参数名称 |
参数描述 |
参数值 |
BatchSize |
训练批次 |
16 |
HiddenSize |
隐藏层单元数 |
128 |
Optimizer |
优化器 |
Aadm |
Epochs |
训练轮次 |
35 |
Learning_rate |
学习率 |
1e−3 |
Dropout |
丢弃率 |
0.3 |
Weigth_Decay |
权重 |
0.1 |
3.3. 模型性能比较
为证明模型的性能好坏,设置了实验[15],并绘制出了实验过程中各个模型的损失趋势图,通过模型的损失值来反映模型的分类正确率。如图2所示:
Figure 2. Loss trend diagram of each model on the data set
图2. 各模型在数据集上的loss趋势图
可以发现在上图中本文模型RBM达到了最低的模型损失,说明模型分类正确率更好,能体现出本文模型相较于其他模型具有更好的性能。
3.4. 评价标准
在实验的评价中,采取了以下标准:准确率(Accuracy)、精确度(Precision)、召回率(Recall)和F1值,这些准则用来对实验模型以及RoBERTa-ATTLSTM模型进行了详细的评估。混淆矩阵对评定的标准进行了分类性统计。如表3展示的是混淆矩阵的详细内容。
Table 3. Confusion matrix
表3. 混淆矩阵
混淆矩阵 |
|
真实值 |
|
|
Positive |
Negative |
续表
预测值 |
Positive |
TP |
FP |
Negative |
FN |
TN |
表3提供了混淆矩阵的详细数据,其中TP指的是被准确预测为正例的正样本,FP指的是错误地被预测为正例的负样本。同样,FN代表那些实际上为正例却被错误预测为负例的样本,而TN则是被正确判定为负例的样本。这些关键指标的计算方法可以表述如下:
1) 准确率是指所有正确预测的样本除以总样本的结果。
(6)
2) 所谓的精确率,也被称为查准率,是指预测为正并且实际上也是正的样本在所有预测为正的样本中所占的比例。
(7)
3) 召回率,也被称作查全率,用以计算所有预测正误的样本占实际正误样本的比例。
(8)
4) F1数值是一种用于模型准确度与召回率之间的和谐平均水平。
(9)
3.5. 对比实验设置及结果分析
通过与其他几个模型的比对评估[16]出本文提出的模型的分类效果,并证明所提出的模型更具有优越性,每一个模型的具体情况如下:
1) RoBERTa-LSTM (RL):上游选用以动态词向量编码的,预训练文本级别为词和短语的RoBERTa预训练模型,下游选用时序模型LSTM,隐藏层单元数设置为128。
2) RoBERTa-BiLSTM (RB):上游选用以动态词向量编码的,预训练文本级别为词和短语的RoBERTa预训练模型,下游选用双向LSTM,层数设置为两层,隐藏层单元数设置为128。
3) RoBERTa-BiLSTM-ATT (RBA):在第二个模型RoBERTa-BiLSTM的基础上考虑增加注意力机制模块,探究其加入的影响与作用,在神经网络中,隐层输出通过tanh激活函数非线性化后,与权重矩阵相乘得到注意力分数。这些分数经softmax归一化,与原始输出结合,通过全连接层产生分类结果,增强模型的敏感度和分类精度。
4) BERT-BiLSTM-MHA (BBM):上游选用以动态词向量编码的,预训练文本级别为句子的BERT预训练模型,下游选用双向LSTM,层数设置为两层,隐藏层单元数设置为128。在此模型中加入了多头注意力模块,“头”数的选择是3。
5) RoBERTa-BiLSTM-MHA (RBM):即是本文提出的模型RBM。与第三个模型仅在最后一层模块层的选用不同,本文提出的模型最后一层选用多头注意力机制模块,“头”数的选择是3。
本项研究选取了准确率(acc)与F1分数作为评价模型表现的关键指标,以衡量模型在分类任务中的正确度和召回效果。实验所得到的数值结果被详细记录在表4中,为评估和对比各模型的效能提供了详实的数据支持:
Table 4. Emotion analysis results of each model
表4. 各个模型的情感分析结果
模型 |
准确率/% |
精确率/% |
召回率/% |
F1值/% |
RL |
91.26 |
91.30 |
91.18 |
91.58 |
RB |
91.99 |
92.05 |
92.02 |
92.24 |
BBM |
92.26 |
92.12 |
92.07 |
92.00 |
RBA |
92.90 |
92.88 |
92.79 |
92.90 |
RBM |
93.44 |
93.29 |
93.36 |
93.31 |
对于这个实验结果,通过两两模型对比选择,进行结果分析,可以得到一些较为有用的结论,具体结论如下:
1、对比实验模型RL与RB,发现双向长短期记忆网络模型的评估性能略高于长短期记忆网络模型,这主要是因为双向长短期记忆网络模型能够捕获文本上下文特征,从而提升文本情感分类的准确率。
2、对比实验BBM与RBM,可以知道,使用了RoBERTa预训练模型结果作为输入的模型要较优于使用BERT预训练模型结果作为输入的模型,进一步证明了使用RoBERTa相对于传统文本向量表示方法来说能更好地训练出与目标任务相关的词向量,从而能增强模型的准确性与鲁棒性。
3、对比实验模型RB、RBA、RBM,引入注意力机制至模型架构中,已被证实能显著增强模型的分类精确度。该机制通过优化信息处理过程,使得模型能够更加专注于对分类决策有重要影响的特征,从而提高了整体的分类性能,对于提升模型训练效果有一定的作用;其次引入多头注意力机制模块,是一种对于注意力机制的扩展,能够有效提高模型的表达能力和泛化能力,进而能够在分类准确率上相较注意力机制有进一步的提升。
4、对比RBM与其他四个模型可以知道,本文设计的基于多头注意力的RoBERTa-BiLSTM-MHA模型相较于其他模型,在训练集的准确率、精确率、召回率和F1值等各项评价指标都有所提升,说明本文模型使用RoBERTa预训练模型得到语义特征丰富的词向量,再使用多头注意力机制的BiLSTM模型进行特征提取,在网络评论文本情感分析任务上有显著效果。
为直观呈现本研究所提出的模型在ChnSentiCorp数据集上的性能优势及其稳定性,绘制了各模型准确率(acc)随训练周期(Epochs)的演变图。
Figure 3. Acc diagram of each model on the data set
图3. 各模型在数据集上的acc图
该图表清晰地反映了随着训练进程的推进,不同模型准确率的变化趋势,从而凸显了我们模型的高效性和稳健性。
从图3中可以看出,本文提出的模型RBM,即图中紫色图线,在模型准确率表现上是最好的,在训练至13轮次左右时达到最佳分类准确率,较其他模型有所提升。
4. 结论
在本项研究中,开发并验证了一个结合了RoBERTa-wwm-ext预训练模型和双向长短期记忆网络(Bi-LSTM)的混合模型,该模型针对网络文本的情感倾向分析展现出了优异的性能。相较于传统的Word2Vec模型,本文模型在处理复杂语言现象如一词多义时表现出更强的能力,有效克服了Word2Vec在处理这类问题时的不足。同时,与单纯的BERT模型相比,RoBERTa-wwm-ext预训练模型通过更精细的词汇和短语级别特征捕捉,进一步提升了情感分析的准确性,特别是在处理网络评论文本时表现尤为突出。
研究不仅验证了RoBERTa-wwm-ext在中文网络文本情感分析中的有效性,还通过实验结果展示了该模型相比其他方法的优越性。此外,意识到当前中文网络文本情感分析的研究多聚焦于二分类任务,而未来的发展方向将更多地聚焦于多分类、多维度情感分析以及情感成因的深入探讨。这些领域的研究不仅能够更全面地理解文本中的情感表达,还能为实际应用如舆情监测、产品反馈分析等提供更加精细化的支持。
尽管RoBERTa-wwm-ext与Bi-LSTM结合的模型在性能上取得了显著进展,但其庞大的参数规模也导致了训练过程中的计算负担较重。因此,未来的研究需要关注如何优化模型架构和训练策略,以减少计算资源消耗,加速训练过程,并进一步提升模型的预测精度和泛化能力。随着技术的不断进步和研究的深入,这些挑战将逐渐得到解决,为中文文本情感分析领域带来更加高效、准确的解决方案。
基金项目
国家自然科学基金项目(62071248)、国家自然科学基金项目(62201284)。
NOTES
*通讯作者。