基金项目:中国地震局重大政策理论与实践问题研究课题(CEAZY2024JZ01);中国地震局地震应急与信息青年重点任务(CEAEDEM202310)联合资助。
作者简介:徐晓桐(1995-),女,工程师,研究方向为深度学习情感分类、地震舆情分析。
通信作者:陈吉锋(1980-),男,高级工程师,研究方向为自然语言处理、地震信息化、地震舆情分析。E-mail:xuxiaotong@zjdz.gov.cn
Zhejiang Earthquake Agency , Hangzhou 310063, China
Deep learning;Earthquake public opinion;Multi-head self-attention mechanism;Sentiment classifi⁃cation
DOI: 10.13512/j.hndz.2024.04.03
随着互联网的发展和普及,新媒体平台如微博、抖音、小红书等已经成为人们日常生活中分享和获取信息的重要场所。它们不仅仅是娱乐和社交工具,更在关键时刻扮演着信息传递和舆论引导的重要角色。特别是在近几年频发的地震灾害事件中,新媒体平台以其快速、便捷的特点,迅速成为普通公众发布和获取灾情信息的首选渠道[1-8]。人们可以通过手机或其他智能终端设备,随时随地发布包括受灾情况、救援进展等实时震后信息,使得地震相关部门能够迅速而准确地了解当前的灾情和公众舆论环境,从而作出更加科学和有效的应对决策。
然而,新媒体平台用户画像各异且多数偏向于娱乐性,导致信息发布者的背景和立场各异,并且信息中可能存在表情符号等不准确、不完整甚至有误导性的内容。这些因素都为后续的数据处理和舆情分析增加了难度。
因此,如何在灾后72小时内有效利用新媒体平台所产生的质量各异、不完整、不规范的数据进行舆情分析,成为当前亟待解决的问题。这不仅需要我们有先进的数据处理和分析技术,更需要我们对新媒体平台的特性和用户行为有深入的了解,进而从海量的信息中筛选出有价值的内容,为科学防震减灾提供有力的支持和帮助。
周义棋等人在研究自然灾害应急救援需求评估时,利用微博网络舆情数据建立各受灾点应急救助需求紧迫度分级评估指标体系[1],对每一灾害发生位置需要救援的急切程度进行分级评估,提升了应急救援精准度,提高了时间效率。 Yohei Seki在研究新媒体平台舆情分析时,提出新媒体平台舆论对改善地方政府行政服务有着至关重要的作用[2],抓取推特(Twitter)相关联信息构建衡量公众舆情分析的模型。金城等人采用LDA(Latent Dirichlet Allocation,隐含狄利克雷分布)主题模型、网络社团模型和情感分析等技术挖掘了台风灾害时期微博文本的主题演变和情感趋势等信息[3],为台风灾害追踪、灾时救援和灾情评估提供及时有效的信息。Rafiul BISWAS等人研究了阿拉伯国家新冠肺炎爆发后公众接种疫苗的情绪变化[4],衡量人们对接种疫苗的态度,为政府部门引导抗击疫情起到了积极作用。简益波等人以2017年浙江临安4.2级地震为例,强调了地震相关工作部门首先要加强舆情监测[5],深度探讨了地震发生后出现舆情的应对方式。刘耀辉等人基于新浪微博数据[6],搜集了云南大理漾濞县6.4级地震发生后一天时间内的数据,对数据进行了建模分析,为震后舆情应对提供帮助。李亚芳等人针对新疆伽师6.4级地震进行分析[7],搜集了新浪微博在地震发生后两天内的公开数据,通过对数据的进行降噪处理,得出地震发生后舆情热度趋势、用户情感占比、高热频词汇图等等,分博文和评论多种情况进行展示。 Kumar等人提出一种基于DPTN(the Double Path Transformer Network双路径变压器网络)架构对亚马逊平台数据进行舆情分析[8],对评估公众观点具有深刻意义。Vishwa等人利用机器学习获取推特上关于医疗供应链的信息[9],在COVID-19 (Corona Virus Disease 2019,新型冠状病毒肺炎)流行期间对是否缺乏检测试剂盒、氧气瓶和医院床位等进行分析探讨,为医疗部门快速做出响应提供依据。 Rout等人利用YouTube API(Application Programming Interface应用程序接口)收集印度自然灾害相关视频的标题、评论来构建数据集并进行舆情分析[10],对自然灾害知识科普方向提供指导。
在对数据样本进行检测时,常常用到监督学习和无监督学习对样本进行训练。唐焕玲等人构建有监督主题模型SLDA-TC(Supervised LDA-Text Categorization)[11],在进行自然语言处理时能够提高分类精度和时间性能。Shruti等人使用遗传算法对k均值聚类进行优化[12],对k均值聚类和遗传k均值聚类的结果进行了评价和比较,改变了无监督聚类的问题现状。但是传统的传统机器学习实现语言分类只是在利用词汇本身的意思来得到特征,虽然可以增强语言处置的速度,却很难避免因为不分析上下文语境,上下文不连贯,从而导致误解全文的真正含义,分析样本的准确性有待提高。
因此,在传统机器学习方式的基础上,Xing Huang等人提出基于全局搜索BP神经网络的地震网络舆情风险评估模型[13],在对所有指标进行信度和效度检验后,通过主成分分析(Principal Components Analysis PCA)和累积贡献率对主要指标进行筛选,最后提出了10个地震台网公众风险评价指标,有效地评估地震网络舆情风险,提高地震应急响应能力。Tasha Erina Taufek等人利用MyDCCC (Malaysian Diachronic Climate Change Corpus马来西亚长期气候变化语料库)对人们的情绪认知进行分类,使用机器学习模型进行情绪分析[14],以探索公众情绪变化。袁健等人提出了一种多维特征融合的混合神经网络文本情感分析模型MFF-HNN[15],结合了多个特征并利用注意力机制进行融合,对语言情感处理有很大的提升。Xu等人采用Transformer以捕捉序列上下文信息[16],运用了多头注意力机制实现跨模态特征融合并捕获互补的语义信息,有效抓取不同模态数据的特征信息,提升离散情感识别能力。李佳静等人提出一种融合相对位置信息的交互注意力的方面级情感分析模型[17],利用双向长短期记忆网络学习融合位置信息的上下文和方面词的语义特征,进行情感分类,并在SemEval 2014 Task4基准数据集以及Twitter数据集上进行了多次实验验证。Soheil等人提出一种名为KianNet的新颖模型[18],引入多头自注意力机制有效地检测记录事件中的暴力事件,提高暴力行为检测的准确性,维护公共安全并减轻潜在危害。Koohong提出基于Transformer的睡眠阶段分类方法[19],通过有效结合时段级和序列级多头自注意力以及多个输出以辅助训练过程,与现有的基于Transformer的方法相比,该模型效果更优。Weihao在预测三维海洋温度场时提出了自注意力预测循环神经网络(SA-PredRNN)的深度学习模型[20],结合了注意力机制和预测循环神经网络,以捕捉全局位置关联性和时空特征。
鉴于已有结果,本文提出基于多头自注意力机制的CNN地震舆情分析模型,对传统CNN模型进行优化,进而有效提高情感分类的准确率。
本文以“地震”“山东地震”“云南地震”“四川地震”“台湾地震”等为关键字,利用网络爬虫技术,基于微博API接口系统性地获取地震舆情相关数据。采集的内容包括:微博博文内容、评论内容、用户IP地理位置信息以及每条博文或评论的具体生成时间戳。我们系统性的采集了2023年8~9月的数据,并将数据存储为Excel xlsx格式,地震舆情数据集样例如表1所示。接着利用正则表达式和哈工大停用词表对震后舆情信息进行过滤,去除诸如标点符号、网络链接等无用字符以及筛选排除一些不会影响主题表达的停用词。此外,为确保数据集的有效性和准确性,我们借助中文分词工具jieba对句子进行分词,得到预处理的新媒体地震舆情资源库,共计有效数据92 088条。
本文利用无监督学习算法Word2vec的Skip-gram模型捕捉预处理过的数据集词汇间的语义和句法关系,生成高质量的词嵌入向量,为后续情感分析做好基础工作。
表1 地震舆情数据集样例Table 1 Example of earthquake public opinion dataset
多头自注意力机制是指利用多个并行计算的注意力“头部”对输入的特征序列进行独立且互补的处理。具体来说,对于每一个单个的注意力头,都会独立地执行查询(Q, Query)、键(K, Key)和值(V,Value)向量的计算。完成所有单个头部的计算后,将各个头部输出的结果按照预设的方式(通常是拼接或级联)整合成一个单一的向量表示,这个综合后的向量能够融合不同注意力头捕捉到的不同类型的上下文信息,进一步丰富模型理解输入数据的能力。因此,可以说多头自注意力的核心是先通过多个并行的子空间注意力计算提取不同维度的语义关联,再将这些子空间的输出结果合并,形成最终的上下文感知表征[16]。
针对每一个单独的“头”来单独计算,并且使用softmax函数进行归一化处置,接着和对应的特征矩阵相乘,最后得到每个位置的加权值向量。单头注意力计算具体公式表示如下:
式(1)中, h表示头部编号, dk是键向量的维度(通常对角线上的分母开根号是为了稳定梯度和防止数值问题)。
多头并行计算及拼接具体公式为:
MultiHead (Q,K, V)=Concatenate( Attention1,(2) Attention2, ..., Attentionh)
卷积神经网络(Convolutional Neural Network, CNN)作为一种特殊的前向神经网络,近年来被学者广泛应用于自然语言处理领域,CNN的结构主要由输入层、卷积层与池化层、全连接层组成。如图1所示卷积层提取特征首先是以词向量矩阵形式表示文本,再通过不同大小的卷积核对矩阵进行扫描,在扫描过程中,卷积核所组成的滤波器的参数值固定不变,过滤后映射出新的特征图,该特征图上的所有元素都来自于参数一致的滤波器。
图1 CNN网络结构Fig.1 The framework of CNN
本文提出基于多头自注意力机制的CNN地震舆情分析模型(Multi Head Self Attention CNN-Earthquake Public Sentiment Analysis, MHSAC-EPSA),有效的将多头自注意力机制与CNN相结合。在对地震舆情数据进行处理时,将词向量作为输入,利用分层处理的方式将特征向量分割成多个并行的“注意力头”。其中,针对每个独立的“注意力头”执行更深层次的自注意力计算,从而达到对地震舆情数据中的每个词向量都进行差异化关注并及时分配不同权重的效果。最后再将每个“注意力头”的计算结果进行整合拼接,实现对长序列数据更高效、更细致全面的理解与挖掘,有效提升了地震舆情信息分析的精度与深度。模型框架如图2所示。
图2 本文构建模型框架Fig.2 The framework of proposed model
我们在输入层将文本数据转化为词向量矩阵,采用word2vec模型学习得到特征向量,输入到多头自注意力机制中,通过多头自注意力机制学习非连续词之间的语义相关特征,将上下文特征与词向量拼接得到句子的表示向量,输入到CNN卷积神经网络模型,使用卷积核对输入的特征矩阵进行卷积,得到全部特征向量。并且,利用超参数搜索选出最优模型参数,用以构建模型。模型实现震情文本分类的关键技术及算法描述如下:算法最优防御策略选取算法
输入 无标签文本T1,带标签文本T2
输出 文本分类标签
Begin
(1)word2vec模型对数据集训练,得到词向量词典W
(2)初始化Multi-head Self-Attention模型的参数
(3)for each sentence C∈T2
(4)从W中找出c中所有词语的词向量组成舆情文本矩阵C(S,L,U,1) =[ ],其中S指样本数量,L指每个样本的单词序列长度,U为词向量的维度,1为单通道。
(5)通过Multi-head Self-Attention对输入的嵌入矩阵C(S,L,U,1)进行拆分合并,并利用缩放点积以及softmax回归计算得到注意力权重矩阵O h ( B , H , Q() 其中B为样本的数量,H为序列的长度,Q为特征的维度,h为头部编号),并输出到下一层。
(6)通过CNN模型将矩阵O通过一系列的卷积操作和池化操作,提取出了文本数据的局部特征。每个卷积核可以看作是一个特征检测器,它会对多头注意力矩阵进行卷积操作,得到一个新的特征图P。
(7)P通过全连接层进行分类,得到文本矩阵c的类别标签。
end for
(8)使用RandomizedSearchCV进行超参数搜索,选出最佳模型参数进行训练和评估。
End
本文使用的实验数据集为带有标签的地震舆情微博博文、评论,共计约9万条。其中标签“1”表示积极情绪,标签“-1”表示消极情绪,标签“0”表示中立情绪。实验数据内容示例如表2所示。
将实验数据集按照8∶2划分训练集和测试集,训练集和测试集又分为积极、消极和中立三类,实验数据的分布情况如表3所示。
本文采用的评估指标为情感分析多元分类实验中常用的精确率(Precision),召回率(Recall),准确率(Accuracy),F1-measure、宏平均(Macro-average)和加权平均(Weighted-average)来进行评估[17]。 TP是指模型正确的将积极样本分类为积极的数量, TN是指模型正确的将消极样本分类为消极的数量, TU是指模型正确的将中立样本分类为中立的数量, FP是指模型错误的将样本分类为积极的数量,FN是指模型错误的将样本分类为消极的数量,FU是指模型错误的将样本分类为中立的数量,FD1是指模型将积极样本错分类为消极或者中立的数量, FD2是指模型将消极样本错分类为积极或者中立的数量,FD3是指模型将中立样本错分类为积极或者消极的数量,total是指测试集样本总量。
表2 数据内容示例Table 2 Data cntent
表3 数据集分布情况Table 3 Dataset distribution
所以,模型的准确率A可表示为:
积极样本的精确率P1:
消极样本的精确率P2:
中立样本的精确率P3:
积极样本的召回率R1:
消极样本的召回率R2:
中立样本的召回率R3:
积极样本的F11-measure:
消极样本的F12-measure:
中立样本的F13-measure:
宏精确率Pmacro:
宏召回率Rmacro:
宏F1macro-measure:
加权平均精确率Pweighted:
加权平均召回率Rweighted:
加权平均F1weighted-measure:
其中,当综合评价指标F1值较高时说明实验方法比较理想。并且在多元分类中,如果某个类别的样本数量非常多,宏F1计算时会忽略样本量的差异,但加权平均F1会赋予这个大类别更大的影响,因此加权平均结果可能会更多地受到大类别性能的影响。
实验环境是保障舆情分析顺利开展的必要条件,本文实验软件硬件环境如表4所示。
在深度学习中,合理地选择和调整参数是构建高性能模型的关键步骤,它不仅影响模型能否准确地解决问题,还决定着模型训练效率、稳定性和实际应用价值。因此本文利用超参数搜索法对最优参数进行搜索。并且为了验证本文所构建模型的有效性,将其与CNN、LSTM模型进行对比实验,具体参数设置如表5所示。
表4 实验软硬件环境Table 4 Experimental software and hardware environment
表5 参数设置Table 5 Parameter settings
针对数据集得出情感分类的结果,使用准确率、宏精确率、宏召回率、宏F1以及加权平均精确率、加权平均召回率、加权平均F1共7项指标进行度量,得出CNN、LSTM与本文构建模型的对比评价结果,如表6所示。由此可以看出,本文所构建模型的综合指标略高于其他模型,宏F1达到92.1%,加权平均F1达到92.9%,在地震舆情分析中具备更好的综合性能。
表6 对比模型评价结果Table 6 Comparison of model evaluation results
为了更直观的观测本文所构建模型的优势,我们将CNN、LSTM以及本文构建模型的加权平均F1的演化趋势用图形进行展示。由如图3可知,伴随着迭代次数的增加,三种模型的加权平均F1均呈现稳步上升趋势,迭代次数为45时表现出模型最优,随后趋于平稳。并且,本文所构建模型的加权平均F1在三个模型中更具优势,表明引入多头自注意力机制可以有效提高模型的性能表现。
图3 加权平均F1演化趋势Fig.3 Evolution trend of weighted average F1
由如图4可知,伴随着迭代次数的增加,三种模型的宏平均F1均呈现稳步上升趋势,当迭代次数为45时表现出模型最优,随后趋于平稳。并且,本文所构建模型的宏平均F1在三个模型中更具优势,表明即使积极、消极和中立类别中某类样本数量非常少,模型也能呈现出较好的性能。
图4 宏平均F1演化趋势Fig.4 Evolution trend of marco average F1
为了更加直观的展示本文构建模型的地震舆情分析效果,本文利用DataEase制作一个舆情可视化分析平台,针对2024年3月7日18时6分青海玉树州杂多县5.5级地震进行实例分析。地震舆情分析驾驶舱展示如图5所示,包含舆情走势、舆情统计、热门微博、高频词云图以及博文原创记录数等。
图5 地震舆情分析驾驶舱Fig.5 Earthquake public opinion analysis control dashboard
我们以“杂多县地震”“玉树地震”“青海地震”为关键词,搜集了2024年3月2日至2024年3月13日的微博博文及评论数据,共计约5千条。根据舆情统计(如图6)显示,微博网友的情感大多数保持积极和中立态度,并且根据高频词云图(如图7)可以得知网友主要讨论的主要热点是“地震”、“青海”“杂多县”“平安”等,整体舆论形式较为乐观。从图8舆情走势中可以看出,由于3月5日青海玉树州杂多县发生5.3级地震,所以微博讨论热度达到一个小高峰,在3月7日5.5级地震后讨论热度达到最高点,随后热度逐渐降低,至3月13日讨论热度降为5条信息。
图6 舆情统计Fig.6 Public opinion statistics
图7 词云图Fig.7 Word cloud
图8 舆情走势Fig.8 Trend of public opinion
如今,新媒体平台正朝着快速、实时、多元化的方向迅猛发展,每当突发诸如自然灾害、交通事故、暴乱动乱等社会事件时,网络舆情便如潮水般涌现。民众通过新媒体平台积极发表观点、展示情绪与态度,进而演化为公众瞩目的热点议题,构筑起网络舆情的庞大版图。本文运用网络爬虫技术,搜集震后微博用户公开发表的博文与评论构建数据集并进行预处理,为后续分析和建模奠定基础。通过引入多头自注意力机制优化传统CNN模型,构建基于多头自注意力机制的CNN地震舆情分析模型,并行地学习不同类型的依赖关系,增强模型理解和捕捉复杂上下文的能力,在地震发生后及时获取舆论走向。利用模型对2024年3月7日青海玉树州杂多县5.5级地震进行实例分析,对灾后舆情做了可视化展示。通过实验对比,本文构建的模型加权平均F1达到92.9%、宏平均F1达到92.1%,能够为地震相关部门在震后快速了解灾情情况和公众舆论环境提供辅助支撑。