一种基于混合节点图的涉案微博对象级情感分类方法

文档序号:25734032发布日期:2021-07-06 18:42阅读:99来源:国知局
一种基于混合节点图的涉案微博对象级情感分类方法

本发明涉及一种基于混合节点图的涉案微博对象级情感分类方法,属于情感分类技术领域。



背景技术:

案件相关的负面突发事件通常会引发网友在互联网微博热议,产生涉案网络舆情。网友通常会围绕某个案件的几类评价对象发表观点,形成对不同对象积极或消极的情感态度。及时把握这些情感态度是后续进行涉案舆情态势分析的基础。这种对象类别的情感分析(aspect-categorysentimentanalysis,acsa)任务属于属性级情感分析(aspect-basedsentimentanalysis,absa),目的是判别句子中某个指定评价对象类别(aspectcategory,ac)的情感极性,对涉案舆情分析较有意义。

acsa需要识别句子中对应于某个评价对象的范围,因此较之句子级情感分类任务更为复杂。传统的基于统计的方法关注的是设计一组人工特征,并基于这些特征训练情感分类器,但这类基于特征设计的方法较为费时费力。近年来,基于神经网络的模型能自动生成有用的评价对象表征和上下文表征,相比原先基于特征工程的方法能获得更优的性能。特别是采用了注意力机制的神经网络模型,有效地辨别句子中哪些词对于一个给定评价对象更为重要,从而更准确地检测情感极性。此外,有研究者利用图卷积神经网络(gcn)学习句子内部的句法依赖关系或情感依赖关系,本质上也是聚合句子内部对于某个评价对象较重要的词的情感特征。自bert预训练模型提出后,也有模型有效利用了bert的语义编码能力,取得了良好的情感分类性能。在song等人提出的模型中,句子和对象类别分别采用bert模型进行编码。然后设计了一个轻量多头注意力模型,从编码向量中提取有用信息,并进行情感分类。zeng等人提出句子和对象类别以不同的方式拼接,并通过bert模型编码到全局语境和局部语境中。为了进行情感预测,需要在局部上下文中引入方面词的信息。

根据上述研究,模型有必要从评论中捕捉方面的意见表达。当标记数据较少时,使用bert模型可以帮助语义表示和提高性能。现有的模型主要集中在监督学习范式上,没有考虑句子之间的关联性。对于该任务,有很多未标记的微博评论可以使用。故提出了一种基于图神经网络的弱监督acsa,它利用所有的评论来构造一个全图网络。通过图网的信息传输,在少数标注评论的引导下,标注评论可以学习方面的情感特征,完成情感预测任务。



技术实现要素:

本发明提供了一种基于混合节点图的涉案微博对象级情感分类方法,以用于提高分类结果的准确性。

本发明的技术方案是:一种基于混合节点图的涉案微博对象级情感分类方法,所述方法将评论及其评价对象类别视为一个混合节点,根据混合节点之间的语义相似性和情感关联性分别构建语义图和情感图;然后,将语义图和情感图堆叠为一个图张量,并对图张量的每一层执行图内卷积和图间卷积两种卷积操作;最后,在标签的监督下,基于混合节点的特征完成情感分类。

作为本发明的进一步方案,所述方法具体包括如下步骤:

step1、收集文本;

step2、文本处理;

step3、混合节点特征的初始化;

step4、构建情感图与语义图;

step5、构建图张量和特征学习;

step6、将混合节点的特征向量送入softmax分类器,得到该混合节点属于不同情感类别的概率。

作为本发明的进一步方案,所述文本处理包括分词、去除停用词、词频统计、文档频率统计。

作为本发明的进一步方案,所述step3中,混合节点特征的初始化如下:

用主题模型对整个数据集进行建模,得到不同评价对象类别的代表性词项及每个评论对应的评价对象类别概率分布;

其中,对于有标签评论,根据其标签类别确定其对应的代表性词项;

对于无标签评论,根据其概率分布的最大值确定其类别标签,进一步确定其对应的代表性词项;

通过上述方法得到每个评论的类别及其代表性词项;然后使用google发布的中文预训练bert模型对混合节点进行bert向量编码,获得混合节点的语义表征。

作为本发明的进一步方案,所述step4中包括:

如果两个评论既针对同一类评价对象展开讨论,又含有同样的情感词,则认为二者具有情感关联,即可构建基于情感图;

如果两个混合节点的bert向量具有相似度,则它们应该是相邻节点,并且应该交换它们的信息,即可构建语义图。

作为本发明的进一步方案,所述step4中,情感图的邻接矩阵中两个混合节点vi与vj之间边的权重计算如下所示:

其中#{·}表示满足条件的词的总数,wk是情感词典中的第k个词,xi和xj表示数据集中的第i和第j个评论。

如果两个混合节点的语义具有相似度,则构建语义图,通过以下公式得到两个混合节点之间的边权重和语义图的邻接矩阵中的边权重;

其中,hi是混合节点vi的初始特征,hj是混合节点vj的初始特征,,||·||表示向量的大小,α是度量相似性的阈值。

作为本发明的进一步方案,所述step5中,利用情感图和语义图构造图张量,一个图张量表示为其中gi=(vi,ei,ai)是第i个单独的图;t=2;在不同的图中,节点相同而节点间的边不同,即vi=vj,ai≠aj,i,j=1,2,…,t,且i≠j;将不同的邻接矩阵堆叠为一个张量;将称为一个图邻接张量,其中ai(i=1,2,…,t)是图张量中第i个图的邻接矩阵;同样,将不同的特征矩阵堆叠为一个特征张量其中是图张量中第i个图的特征矩阵;所构建的图张量中,图节点在特征学习时,除了同一张图中不同节点进行信息传递,不同图的同一节点间的信息也进行异构信息的传递,故对于图张量的每一层,执行同一张图的图内卷积、不同图的图间卷积。

本发明的有益效果是:

本发明的主题模型将一个方面类别扩展到主题术语,并使用bert模型将注释及其主题术语编码为“混合节点”。通过所有“混合节点”组成一个全图网络,并将acsa转化为一个图节点分类任务;提出了两种图来计算混合节点之间的关系,即情感图和语义图,并将这两个图叠加成一个图张量。图张量的每一层执行图内卷积和图间卷积,使混合节点通过不同的图获得合理的特征,并在少量标记节点的监督下完成情感分类。本发明所使用的模型在两个不同的微博数据集上进行了验证,与几种acsa模型相比,本发明方法所采用的模型在情感分类性能方面具有明显的优势。特别是在标记数据非常少的情况下,仍然可以保证相对准确的分类结果。

附图说明

图1为本发明中bert向量结构图;

图2为本发明中ourmodel的示意图;

图3为本发明使用不同规模训练集的f1值宏平均示意图;其中(a)是在数据集1上的表现,(b)是数据集2的表现;

图4为本发明中采用不同主题模型和评价对象词项数目的实验结果示意图。

具体实施方式

实施例1:如图1-4所示,一种基于混合节点图的涉案微博对象级情感分类方法,所述方法将评论及其评价对象类别视为一个混合节点,根据混合节点之间的语义相似性和情感关联性分别构建语义图和情感图;然后,将语义图和情感图堆叠为一个图张量,并对图张量的每一层执行图内卷积和图间卷积两种卷积操作,从而使混合节点可以学习和融合不同图的异构信息;最后,在标签的监督下,基于混合节点的特征能够较好地完成情感分类。

作为本发明的进一步方案,所述方法具体包括如下步骤:

step1、收集文本;文本可以为某事件的微博内容以及评论作为训练语料和测试语料。从新浪微博平台收集了两个微博评论数据集,用于模型培训和评估,三位受过训练的研究人员将评论标记为设计的方面类别及其情感极性,最后选择具有一致标签的评论。语料采用两个微博案件的评论,案件1为某维权案,案件2为某公交车案。数据集基本信息见表1。案件1的数据集包含32409个注释,其中897个注释被标记。包括法律代理、商人和消费者三种对象类别。案件2的数据集包含19644个注释,其中755个注释被标记。有三种对象类别,包括政府机构、公共汽车司机和媒体。

表1实验数据集

step2、文本处理;所述文本处理包括分词、去除停用词、词频统计、文档频率统计等。

step3、混合节点特征的初始化:用主题模型对整个数据集进行建模,得到不同评价对象类别的代表性词项及每个评论对应的评价对象类别概率分布;

其中,对于有标签评论,根据其标签类别确定其对应的代表性词项;

对于无标签评论,根据其概率分布的最大值确定其类别标签,进一步确定其对应的代表性词项;

通过上述方法得到每个评论的类别及其代表性词项;然后使用google发布的中文预训练bert模型(bert-base,chinese)对混合节点进行bert向量编码,获得混合节点的语义表征。图1显示了获取bert向量的结构图;

将评论和评价对象构建成单个序列送入bert,输入方式为“[cls]x[sep]a1a2…am”,其中,x表示评论,ai,i=1,2,…,m表示评价对象词项,m为词项总数。[cls]表示一个特殊的标识符,[sep]表示一个分隔标记符,用于分隔评论和评价对象。利用模型transformer结构的multi-headattention,评论中每一个词与评价对象的交互联系,以及评论中词与词的依赖关系均同时建立。[cls]隐藏状态的最后一层可以用来表示混合节点vi的语义特征向量

step4、构建情感图与语义图;包括:

(1)如果两个评论既针对同一类评价对象展开讨论,又含有同样的情感词,则认为二者具有情感关联,即可构建基于情感图;该情感图的邻接矩阵中两个混合节点vi与vj之间边的权重计算如下所示:

其中#{·}表示满足条件的词的总数,wk是情感词典中的第k个词,xi和xj表示数据集中的第i和第j个评论。

(2)如果两个混合节点的bert向量具有相似度,则它们应该是相邻节点,并且应该交换它们的信息,即可构建语义图。

进一步地,如果两个混合节点的语义具有相似度,则构建语义图,通过以下公式得到两个混合节点之间的边权重和语义图的邻接矩阵中的边权重;

其中,hi是混合节点vi的初始特征,hj是混合节点vj的初始特征,,||·||表示向量的大小,α是度量相似性的阈值。

step5、构建图张量和特征学习:利用情感图和语义图构造图张量,再对于图张量的每一层,执行同一张图的图内卷积、不同图的图间卷积。

作为本发明的进一步方案,所述step5中,利用情感图和语义图构造图张量,一个图张量表示为其中gi=(vi,ei,ai)是第i个单独的图;本发明构建了两种图,因此t=2;在不同的图中,节点相同而节点间的边不同,即vi=vj,ai≠aj,i,j=1,2,…,t,且i≠j;将不同的邻接矩阵堆叠为一个张量;将称为一个图邻接张量,其中ai(i=1,2,…,t)是图张量中第i个图的邻接矩阵;同样,将不同的特征矩阵堆叠为一个特征张量其中是图张量中第i个图的特征矩阵;所构建的图张量中,图节点在特征学习时,除了同一张图中不同节点进行信息传递,不同图的同一节点间的信息也进行异构信息的传递,故对于图张量的每一层,执行同一张图的图内卷积、不同图的图间卷积。如图2所示;

对于图张量卷积的第1层,图内卷积定义为:

其中,是第i个图的邻接矩阵,是可训练权重矩阵,是图张量第l层中第i个图的特征矩阵,通过图内卷积得到更新的特征矩阵图内卷积是从图中每个节点的邻域中聚合信息,本发明所构建的每一种图都执行一次图内卷积,即情感图和语义图分别进行图内卷积,从而得到当前l层的图张量。

图张量中同一节点在不同图之间的信息也需要进行传递,从而使来自不同图的异构信息可以逐渐融合成一致的信息。因此,对于图张量卷积的第l层,完成图内卷积之后,再进行图间卷积。不同于图内卷积,图间卷积使用的是一种特殊的图,该图称为虚拟图,虚拟图中的节点称为虚拟节点,虚拟节点实际上是同一个混合节点。本文采用了两种图,故一个虚拟图中有两个虚拟节点,分别带有情感图卷积得到的特征和语义图卷积得到的特征。在图张量中,这样的虚拟图有n个。虚拟图的图卷积操作定义为:

其中是第j个混合节点在第l层进行图内卷积后得到的特征,是其图间卷积的输出,也是图张量中l+1层的输入特征,是图间信息传递的可训练权重矩阵。在虚拟图中,由于虚拟节点来源于同一个混合节点,因此他们相互之间都存在联系。这样,虚拟图的邻接矩阵设置为一个单位矩阵。

图间卷积本质上是让网络自动学习混合节点所携带的不同图的信息量。通过图间卷积,某个混合节点可能含有的情感图信息较多,语义图信息相对较少;而另一个混合节点则有可能含有较多的语义图信息和较少的情感图信息。

第l层的图间卷积完成后,图张量可继续重复图内卷积和图间卷积的过程,学习第l+1层的特征。最后一层得到的图张量经过最大池化max-pooling或均值池化average-pooling,压缩为一个图。在本文中,最大池化相当于挑选两个虚拟节点中的较大特征作为最终混合节点的分类特征,均值池化则使用两个虚拟节点特征的平均值作为最终混合节点的分类特征。

step6、将混合节点的特征向量送入softmax分类器,得到该混合节点属于不同情感类别的概率z:

使用交叉熵损失作为损失函数:

其中,dl是具有情感标签的评论集,y是其标签向量,c是情感分类数目。

step7、在两个数据集上评估了不同模型的情绪分类性能。评价指标为正负极差的精度(p)、召回率(r)和f1值,以及宏观平均值和加权平均值。结果见表2,表3。

表2为基于不同模型的数据集1的情感分类结果

表3为基于不同模型的数据集2的情感分类结果

根据表2和表3中的宏平均值和加权平均f1值,可以得到:(1)lstm的性能最差,因为该模型只考虑句子层次情感表示而不是方面层次情感表示;(2)aoa、ian、atae-lstm和memnet这四个模型考虑了方面的表示,并设计了不同的注意来计算方面的重要上下文词,从而得到了较好的结果。其中memnet的表现最好。(3)bertspc、lfcbert和aenbert使用bert训练前语言模型来表示句子和方面,同时交互和融合句子和方面的不同信息,取得了良好的效果。bert-spc将一个句子及其方面拼接到bert模型中,它不如数据集1和数据集2中的lfc-bert和aen-bert。这可能是由于aen-bert加入了注意编码网络,而lfc-bert加入了本地上下文的注意机制。(4)ourmodel的加权平均f1值比数据集1和数据集2中的最佳基线模型aen-bert提升了2%。

通过观察表3和表4中正负极性的分类结果,可以做出如下分析:除了ourmodel外,其他模型的正极性的分类性能远低于负极性的分类性能,特别是在数据集1中。主要原因是数据集1中的正极性样本数量小于负极性样本数量,特征学习不足,导致正极性预测不良。ourmodel的正分类性能要好得多,这表明ourmodel可以更好地学习小样本的特征。这也反映了图卷积网络在弱监督下的优势。此外,比较不同模型在两个不同数据集上的实验结果,数据集2的分类性能低于数据集1。除了数据集2的数据大小较小外,主要原因是数据集2的注释比数据集1的注释长,并且这些注释中有更多的混合实体。

step8、实验还测试了不同模型在不同百分比的训练数据上的性能。随机选择数据集1中23%到100%的训练集用于训练模型,并使用表1中的分割测试数据集对此进行测试。分类结果的宏观平均和加权平均f1值图3所示。

可以看出,当只有23%的训练数据时,ourmodel的宏观平均f1值可以达到0.8653,加权平均f1值可以达到0.9174。使用了大约100个标记样本。当训练数据的比例小于50%时,ourmodel的优势非常明显,随着训练数据的增加,ourmodel的f1值在一定程度上增加。结果表明,当训练数据百分比为23%时,基于bert的模型的性能明显低于ourmodel。但当训练数据的百分比为25%时,宏观平均f1值可以达到0.7~0.8,这表明三种基于bert的模型在训练数据不足的情况下也具有一定的优势。在基于序列编码器的三种模型中,memnet占据第一位;atae-lstm位居第二;lstm的性能最差。当这些模型的训练比例小于50%时,它们的f1值特别低,这表明这三种模型需要一定规模的训练样本来保证分类性能。

step9、消融分析。在数据集上对ourmodel进行了消融分析,并在表4中显示了结果。sentiment-gcnmodel使用情感图,初始化混合节点的特征,并使用3.1节中描述的gcn进行特征学习。semantic-gcnmodel使用语义图,特征初始化和学习与sentiment-gcnmodel一致。mix-gcnmodel将情感图和语义图添加为一个图,特征初始化和学习与sentiment-gcnmodel一致。两个gcn-max-poolingmodel采用sentiment-gcn和semantic-gcn的模式进行特征学习,选择最后一层节点特征的最大值进行分类。两个gcn-average-poolingmodel使用与两个gcn-max-poolingmodel一致的特征学习,同时使用最后一层节点特征的平均值进行分类。ourmodel-average-poolingmodel使用了本文提出的图张量方法进行特征学习,最后一层节点特征的平均值进行最终分类。ourmodel-max-poolingmodel使用了本文提出的图张量方法进行特征学习,并选择最后一层中节点特征的最大值进行最终分类。

表4为基于消融模型的数据集1的情绪分类结果

可以看出,sentiment-gcn和semantic-gcn都只采用一种邻接矩阵进行图卷积,即只利用了节点之间的一种关系进行特征聚合,所得到的分类结果在几种模型中是较差的。其中sentiment-gcn稍好于semantic-gcn。mix-gcn、twogcn-average-pooling和twogcn-max-pooling由于同时考虑了节点间的不同关系,所得到的分类结果有一定的改进。其中mix-gcn是将两种图进行合并后再进行节点特征学习,而twogcn-average-pooling和twogcn-max-pooling是先用不同的图进行特征学习后再进行特征选择。从实验结果来看,后两者的方式效果更优。

ourmodel则采用的是图张量的特征学习模式,除了能同时利用不同的节点关系之外,还通过虚拟图的方式让节点自适应地决定不同图对于节点特征的贡献,从而获得了最佳的性能。此外,对比ourmodel-average-pooling和ourmodel-max-pooling的实验结果,在最后一层使用最大池化时分类性能最优,相比semantic-gcn在加权平均f1值上提升了1.6%。总结上述分析,利用节点之间的不同关系构建不同的图进行特征学习是有效的,而使用图张量的学习方式将不同的图进行结合是最佳的一种方式。

step10、不同主题模型的影响。在初始化模型中的混合节点时,需使用主题模型来提取主题术语。该实验比较了包括abae和lda在内的不同主题模型的影响,以及不同数量的术语对分类结果的影响。两个主题模型提取的数据集1的前10个术语如下表5所示:

表5“某维权事件”微博评论中的部分方面类别和主题术语

使用abae和lda对未标记的样本进行分类,并使用表5中的前5、10、15、20个主题项作为方面类别的代表词,得到混合节点的初始表示,从而建立模型。情绪分类结果的加权宏观平均f1值如图4所示。

从图4可以看出,abae的f1值比lda高1.5%左右,说明主题建模的结果对ourmodel有一定的影响。当ourmodel使用lda时,它仍然优于表2中的其他基线模型,这表明即使本文使用的主题模型有一定的建模偏差,ourmodel仍然可以得到很好的结果。此外,主题术语的数量对最终的分类结果影响不大。特别是在使用abae模型时,四个主题项的结果基本相同。

在ourmodel中,主题模型的功能是给一个方面类别标签和相应的主题项给一个未标记的注释,用注释发送给bert模型来表示混合节点。这种混合节点的表示有两种功能,一种是作为混合节点的初始特征,另一种是计算两个节点之间的关系并构造语义图。对于第一个函数,不使用未标记的节点来计算损失函数。因此,即使主题模型有建模错误,也不会影响模型。对于第二个函数,如果一些混合节点的类别标签和主题项不正确,导致它们的初始表示不准确。然后语义图上的一些边信息就会丢失,导致混合节点之间的信息传输不足。但这种影响在整个图表上并不显著。此外,ourmodel还设计了情感图,从另一个角度提供了语义图的不足。

上面结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1