APP下载

BERT-DPCNN模型在网络舆情情感分析中的应用

2022-10-13孙丹丹郑瑞坤

网络安全技术与应用 2022年8期
关键词:卷积准确率舆情

◆孙丹丹 郑瑞坤

(湖北工业大学 湖北 432200)

近年来,网络舆情的影响力不断扩大,特别是一些重大突发事件发生后,网络舆情快速发酵,能够形成强大的社会力量。因而,网络舆情的有效引导与否,既事关现场应急处置的成功,也关系到社会稳定与和谐[1]。

对于网络舆情的情感分析,早期研究多是通过情感词典匹配的方法或是基于传统机器学习算法[2]。情感词典法有较强的通用性,实现简单,但情感词典有较高的要求,需要专家花费较大工作量构建具有针对性的高质量词典。Tan[3]等通过情感词典方法,构建新闻文章的情感分析器,对新闻的标题和内容赋予不同权重来分析蕴含的情感,进而探究其对分析结果的影响效应。而传统机器学习算法需要人工构造十分复杂的特征,利用朴素贝叶斯、支持向量机等分类器实现有监督学习,再分析文本中蕴含的情感[4]。Pang等[5]运用了三种常见的机器学习算法来分析文本的情感倾向,对比研究结果发现支持向量机(SVM)的准确率以及查全率均高于另外两种算法。

目前,深度学习应用更加广泛,文本情感分析研究领域逐渐采用深度学习分析方法。深度学习通过模拟人脑神经系统来构造网络模型对文本进行学习,从原始数据中自动提取特征,无需手工设计特征,面对海量数据的处理,在建模、迁移、优化等方面比机器学习的优势更为明显。Kim[6]最早提出将CNN用于文本情感分析,在预训练的词向量上使用不同大小卷积核的CNN提取特征,对句子级的分类较机器学习有显著优势。Mikolov等[7]在文本情感分析中使用RNN。相比CNN,RNN更擅于捕获长距离依赖。RNN每个节点都能利用到之前节点的信息,因此更适用于序列信息建模。然而随着输入不断增多,RNN对早期输入的感知能力下降,产生梯度弥散和爆炸。针对上述问题进一步研究,提出了RNN的变体长短期记忆网络(LSTM)[8]和循环门控单元(GRU)[9]等。田竹[10]将CNN与双向GRU结合,在篇章级的文本中分析情感倾向,提高了模型的鲁棒性。传统深度学习模型赋予全部特征同等权重训练,不能区分不同特征对分类的贡献度,Attention机制通过聚焦重要特征从而很好地解决了这一问题。Luong等[11]提出全局和局部两种Attention机制,在英语到德语的翻译上取得了很好的效果。Yang等[12]提出层次化Attention用于情感分析任务,进一步证明了Attention机制的有效性。以上CNN与RNN以及Attention机制相结合的混合模型虽然取得了很好的效果,但大多使用Word2Vector或GloVe[13]等静态词向量方法,一词多义不能较好处理。

从上述文献可以看出,目前对于网络舆情情感分析模型一般使用静态词向量方法,如Word2Vector、GloVe等,但存在的一词多义问题无法较好地处理;此外,使用单一词语层Attention机制对文本层次结构的重要性未能充分考虑,不能充分利用句间关系。针对这些问题,本文以“新冠疫情”为例,运用BERT-DPCNN深度神经网络模型开展网络舆情情感分析,为如何更好实现网络舆情监督提供一定参考建议。

1 BERT-DPCNN模型介绍

1.1 BERT模型

BERT是Google的Devlin[14]提出的预训练语言模型,把Transformer编码器当作基础模块来重叠,将文本中各个词的原始词向量作为输入,将蕴含了文本语义后的全部词向量作为输出。利用注意力机制以及注意力加权操作后,序列中的任何一个字,都包含了这个字前后的信息,即这句话中所有成分的信息,当前这个字可以用其他所有字表达出来。

为了训练BERT模型,做了Masked LM和Next Sentence Prediction两项任务。通过联合训练这两项任务,得到的词向量表示更加完整,进而对输入文本语义信息的刻画也更加准确。在BERT模型的具体应用中,我们无需变动BERT的核心架构,只需增加一个新的层即可。

BERT模型相对来说更加有效,一方面在于上述两项预训练任务,另一方面在于多层双向Transformer[15],其主要是通过自注意力编码增长序列和多头注意力发现各个层级之间的相互关系。

1.2 DPCNN模型

DPCNN模型[16]利用加深网络来提高准确率,并且计算成本增长幅度不大。DPCNN能够将离散的文本结构连续化,使其结构转换为下采样层和卷积层的交替,从而使各层神经网络的计算量和数据量降低。DPCNN为了丰富词嵌入的语义表示,使用双层等长卷积,在每次卷积以后,都会进行最大池化,把序列长度对半压缩,则模型可以感知翻倍的文本长度。随着网络的加深,模型能够挖掘出文本中全局的语义信息和长距离的关联。因此对比浅层卷积神经网络,DPCNN准确率更高。

1.3 BERT-DPCNN网络模型

DPCNN在实际应用中,模型词向量多是region embedding,但其实际上是n-gram,无法充分分析出语义信息。此外模型将词全部压缩至低维语义空间,导致含义相近的词也许会有同一词向量。但是在模型调参时,能够解决这一问题。相较于DPCNN自身的词向量,BERT生成的词向量效率更高,并且使用Transformer,可以挖掘出基于上下文且具有研究价值的信息以及更长距离的依赖,因此本文将BERT和DPCNN结合起来。

BERT-DPCNN模型先通过BERT将输入语料里所有词转换为词向量,接着连接各个词向量,生成向量矩阵阵X,如式(1)所示:

⊕是词向量连接计算,xi是第i个词的词向量。xi:i+j是xi,xi+1,…,xi+j共有j+1个词向量。卷积过程采用的是等长卷积来生成特征,卷积核W的大小为h,对于词向量产生的特征C可用如下公式表示:

其中,b为偏差,f代表的是非线性变换函数。在进行卷积操作后得到的特征为C=[C1C2…CN-M+J],最后再进行最大池化。

2 模型应用

2.1 数据获取

“新冠”疫情在全球多数国家爆发,人们的健康受到威胁,全球经济也遭受巨大损失。疫情暴发之后,出于疫情防控需要很多人居家隔离,于是激发更多的人选择在微博、微信等网络平台表达自己的情感和观点。由“新冠”疫情引发的网络舆情作为非常态社会形态下舆情危机的典型事件,影响范围广且持续时间久,将其作为本文舆情分析对象意义重大。

模型应用数据来自微博,其作为世界最大的中文社交网络平台,是网络舆情的重要传播平台。本文将“新冠疫情”、“抗疫”等当作关键词,通过Python爬取这一突发事件下的舆情文本信息。对爬取到的舆情文本进行预处理后得到的数据有90335条,包含微博的发帖时间、发布内容、转发点赞数等。

2.2 模型评价指标

对于模型结果的评价,通常采用下面四个指标。

对于二分类问题,ROC曲线也是重要的模型评价方法,ROC曲线下的面积AUC代表了预测的正例在负例前面的概率,是用来分析不同算法模型好坏的重要指标。

此外,不仅要评估某个类别的分类情况,还要对全部类别的情况进行评估。基本思想是对各类别做平均,通常会用到以下方法:宏平均(Macro-Average)和微平均(Micro-Average)。

2.3 模型设置

本文BERT-DPCNN模型应用采用Windows 10系统,深度学习模型是在Pytorch1.1框架下搭建的,编程语言为Python3.8,计算机显存为10G,GPU型号为RTX3080。

BERT-DPCNN模型的输入采用BERT预训练模型生成的768维的embedding向量,卷积层由250个尺寸为3的卷积核组成,batch_size是128,epochs是20,Focal loss是2,初始学习率是0.00005,为防止过拟合,dropout参数设置为0.1。

2.4 结果分析

为检验本文应用的BERT-DPCNN模型算法的效果,主要将不同的词向量与多种神经网络模型进行对比,词向量包括fastText词向量与BERT词向量,神经网络模型有RNN、CNN、RCNN、DPCNN、BERT-CNN、BERT-RNN、BERT-RCNN和BERT-DPCNN,具体实验结果如表1所示:

表1 深度学习模型的分类性能

通过比较实验结果可以发现,

(1)未采用BERT词向量的四个模型中,CNN模型对本文文本分类的指标结果均超过其他模型,准确率达到84.96%。这说明了文本分类更加看重关键词,相对来说RNN看重上下文语义则效率更低一些,准确率只有80.80%。DPCNN模型在本文文本应用中表现较好,其准确率略低于CNN达到84.49%。

(2)采用BERT词向量的深度学习模型,在准确率、召回率等评价指标上均表现突出,有显著提升。具体来看,BERT-RNN相较于RNN准确率提高了6.12%,BERT-CNN相较于CNN提高了3.93%,BERT-RCNN相较于RCNN提高了7.27%,BERT_DPCNN相较于DPCNN提高了6.31%。可见,采用BERT词向量能够有效地提高模型分类的准确性。

(3)对比全部模型应用结果发现,将BERT词向量与DPCNN模型结合的BERT-DPCNN文本分类模型具有明显的优势,其准确率高达90.80%,Recall、F1等指标结果也优于其他模型。这主要是因为BERT-DPCNN文本分类模型选择BERT生成词向量,可以挖掘到更底层的特征信息,存储更加完整全面的文本情感信息,在文本分类上也可以提供更多的依据。此外,DPCNN模型增加了用于文本分类的网络深度,以提取文本中远程关系的特征,同时引入了残差结构,增加了多尺度信息。因此将BERT-DPCNN模型应用到网络舆情情感分析中具有十分重要的意义。

为了更直观地体现BERT-DPCNN模型的优势,本文对各个模型的分类性能进行了可视化,将BERT-DPCNN与前面分类准确率表现良好的BERT-RNN、BERT-CNN和BERT-RCNN进行比较,得到混淆矩阵如图1所示:

图1 各模型实验结果的混淆矩阵

BERT-DPCNN模型在该类别的预测中,Class1评论数有2115条,Class2评论数为8669条,Class3评论数为2743条。在Class1评论中,被正确分类的有1895条,被误分类的有220条,准确率为89.60%;在Class2评论中,被正确分类的有7971条,被误分类的有698条,准确率为91.95%;在Class3评论中,被正确分类的有2417条,被误分类的有326条,准确率为88.12%。同理可得,在BERT-RNN模型中,评论文本的分类准确率分别为85.82%、88.22%、83.67%;在BERTCNN模型中,评论文本的分类准确率分别为87.47%、90.28%、85.64%;在BERT-RCNN模型中,评论文本的分类准确率分别为86.34%、89.00%、84.18%。

具体来看,对比评论数最多的Class2分类结果,BERT-DPCNN准确率高达91.95%,比BERT-RNN高出3.73%,比BERT-CNN高出1.67%;对比评论数最少的Class1分类结果,BERT-DPCNN准确率高达89.60%,比BERT-RNN高出3.78%,比BERT-CNN高出2.13%。可见,不论各类别的评论数多少,本文采用的BERT-DPCNN模型对三个类别的分类准确率均高于其他模型,能够较为准确地进行情感分类。

为了更准确分析这四个模型的实际应用情况,采用ROC曲线对各模型的应用情况进行分析,如图2所示。

图2 各模型实验的ROC曲线

从图中可以看到各模型的Micro_Average和Macro_Average的ROC曲线情况。对比曲线下方面积即Micro_AUC和Macro_AUC发现,四个模型的AUC均在0.90以上,表明都具有较高的准确性。其中BERT-DPCNN模型的AUC达到0.93,高于其他模型,表明该模型在本文数据集上具有较高的分类精度。具体结果见表2。

表2 各模型的AUC

综合本文模型在准确率、AUC等评价指标上的表现分析可知,因BERT词向量对更底层特征信息的挖掘和DPCNN模型对远程关系特征的提取,使得BERT-DPCNN模型具有较高的分类性能和分类精度。

3 结论

随着网络舆情越发复杂以及舆情危机管控的迫切要求,对于应用大数据技术分析网络舆情的需求越来越高。现有的网络舆情情感分析模型普遍使用分词技术结合静态词向量模型生成文本的向量表示,不能很好地解决一词多义问题,且未能充分考虑文本层次结构的重要性。本文以“新冠”疫情相关的微博文本作为研究样本,应用BERTDPCNN深度神经网络模型进行网络舆情情感分析,并对比了常用的神经网络模型。模型应用结果表明,BERT-DPCNN模型能够更加准确地对舆情信息进行情感分类,进而更加有效的判断“新冠”疫情暴发后广大民众的情绪走向,对有关部门把握舆论的正确导向和实施网络舆情监管具有较大的实用价值。

当然,网络舆情的数据集中还存在其他信息,并且模型仅在这一个实例中表现有效性。因此在未来的研究工作中,将会利用数据集中更多的信息以及大量的实例验证来进一步提升模型的网络舆情情感分类性能,从而为政府舆情管控部门提供较好的决策参考。

猜你喜欢

卷积准确率舆情
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
基于深度卷积网络与空洞卷积融合的人群计数
消费舆情
月度最热舆情事件榜11月
月度最热舆情事件榜9月