APP下载

基于迁移学习和过滤机制的方面级情感分析

2023-10-12张顺香苏明星李晓庆

计算机工程与设计 2023年9期
关键词:文档注意力机制

张顺香,苏明星,李晓庆

(安徽理工大学 计算机科学与工程学院,安徽 淮南 232001)

0 引 言

方面级情感分析旨在识别出句子中实体方面的情感极性,是文本情感分析的核心子任务之一[1],例如在评论“手机的质量真不错,但价格太高了”中,“质量”和“价格”分别表示出积极和消极的情感。

目前,方面级情感分析的研究方法主要是基于深度学习的方法。例如:Yukun等[2]提出通过在LSTM网络提取层中引入情感常识来进行方面级情感极性的预测。Sun等[3]提出一种基于依存树的卷积模型(CDT),将上下文信息和依赖信息从意见词传播到方面词,为监督提供区分性的属性。同年,Ma等[4]针对评论对象的立场语境和多方面间的干扰现象,提出一个两阶段模式的方面级情感模型,与以往的基于注意力的方法相比,获得了最优的表现。

自从2017年,Google[5]将注意力机制带入大众视野中,注意力机制在各个领域中被广泛应用。在方面级情感分析任务中,Letart等[6]在自注意力机制基础之上进一步探索单词之间的建模能力,提出SAnet模型,证明了自注意机制能提高方面级情感分析模型的性能。与Letarte不同,Zhang等[7]采用多头注意力机制来完成上下文和特定方面的充分交互。与Zhang等的工作相似,Xu等[8]提出使用一个全局和局部的注意力模块来捕获方面和上下文之间不同粒度的交互信息,从而进一步提高模型的准确率。

然而,数据标注的复杂性,使现有数据集规模都较小,导致注意力机制无法充分训练,出现捕获非目标情感信息现象。因此,有学者提出利用迁移学习的方法来解决数据不足的问题,迁移学习定义请参见文献[9]。He等[10]提出PRET+MULT的框架,首次将文档级知识引入到方面级任务中。接着,受胶囊网络的启发,Chen等[11]提出一种转移胶囊网络,预学习文档级的前置知识,利用前置知识指导方面级情感分析任务。之后,Zhao等[12]提出通过预学习文档级知识,来提高方面级任务中注意力机制感知情感的能力。

虽然,已有模型在迁移学习上取得成功,但未深入考虑引入文档级情感知识的同时会带来与给定方面无关的情感。因此,本文提出一种基于迁移学习和过滤机制的方面级情感分析模型TLFM。在迁移学习的基础之上,为了降低文档级情感知识带来的噪音影响,设计一个注意力过滤模块,该模块聚焦于过滤文档级知识中与给定方面无关的情感知识;最后,将迁移学习得到的方面级模块和过滤模块进行联合训练。并且考虑到词性(尤其是形容词)对情感分析结果的影响,模型TLFM将文本特征和词性特征进行融合。

1 模型介绍

模型TLFM具体结构如图1所示,主要包含了3个部分:预训练的文档级情感分析模块、方面级情感分析模块和过滤模块。本节依次介绍这3个部分的实现细节,最后再详细讲解TLFM所采取的训练策略。

图1 基于迁移学习和过滤机制的方面级情感分析模型

1.1 预训练的文档级情感分析模块

模型TLFM预学习文档级任务的情感知识,再利用学习到的情感知识辅助方面级任务,从而解决方面级数据集规模较小的弊端。

m=tdWt

(1)

式中:Wt表示变量转换矩阵,通过网络训练自学习得到。且为了能加强形容词的作用程度,采用自注意力机制,对词性向量重新分配权重。具体操作公式如式(2)、式(3)所示

(2)

(3)

其中,mi∈Rdt是第i个单词的词性向量,δi是第i个单词的词性注意力权重,wa和ba分别是矩阵参数和偏置参数。

(4)

采用多头注意力机制对文本特征进行情感信息感知。多头注意力机制是自注意力机制的扩展,相比自注意力机制,多头注意力机制最主要的区别在于有多组的Q、K和V矩阵,可以从多个角度挖掘文本的潜在情感信息,最后将多组注意力信息进行拼接合。其详细公式如式(5)、式(6)所示

Multi-head=concat(head1,head2,…,headl)Wheads

(5)

(6)

(7)

(8)

式中:bd是偏置参数。根据式(5)将多个注意力头的输出结果进行连接转换操作得到带有情感信息的rd, 最后输入由全连接层和softmax层组成的情感分类器中,推断出文本的情感倾向。

1.2 方面级情感分析模块

为了将学习到的文档级情感知识引入到方面级任务中,如图1所示,方面级情感分析模块的网络结构与预训练的文档级情感分析模块是十分相似的。主要的不同点在与方面级情感分析任务所研究的对象是给定的方面,因此需要对该方面进行建模。具体建模如下:

同时使用和文档级情感分析相同的方法(详见式(1)~式(3)),得到评论文本对应的词性信息Poss, 并将词性信息和文本向量表征进行拼接合并,输入到BiLSTM中获得文本特征表示,计算公式如式(9)所示

(9)

区别于文档级任务中,注意力机制需要捕捉所有的情感信息,在方面级任务中,只需捕捉给定方面的情感信息。在方面级情感分析模块中,使用方面向量et作为注意力机制的查询向量,情感感知的具体公式如式(10)~式(12)所示

(10)

(11)

rs=Linear(concat(r1,s,r2,s,…,rk,s))

(12)

其中,bs为偏置参数,βj,i为方面级情感分析模块中第j个注意力头中的第i个注意力分数,rj,s代表方面级任务中第j个注意力头的输出。根据式(12)将多个注意力头的输出结果进行连接转换操作得到带有情感信息的rs。

本文模型中方面级情感分析模块的词嵌入层和评论特征抽取层的参数初始化是预训练好的文档级情感分析的参数。通过参数共享的方式将从文档级任务中学习到情感传递给方面级任务模型,弥补方面级任务中,因缺乏数据,导致网络训练不足的问题。

1.3 过滤模块

直观感受,文档级模型中的注意力机制感知的情感包含非给定方面的情感,在利用文档级模型的注意力机制辅助方面级模型的注意力机制时,需要结合给定方面进行过滤操作,保证消除与给定方面无关的情感。

将方面级任务的评论文本输入预训练好的文档级模型和参数初始化的方面级模型中,在各自的注意力机制层中捕捉两种任务所需的情感信息。文档级模块捕捉的情感信息包含与给定方面无关的情感,因此需要以给定方面为主体,对文档级注意力机制的输出进行过滤操作,具体结构如图2所示。两个任务模块的多头注意力机制之间增加一个基于过滤机制的注意力辅助网络。该网络以给定方面词为主体,首先计算文档级捕捉的情感信息与方面词之间的相关性,然后再将结果通过KL散度辅助方面级注意力机制,弥补了由于方面级训练预料不足,导致方面级模块捕捉情感能力不足的问题。

图2 基于过滤机制的注意力辅助网络

其原理公式如式(13)~式(15)所示

f=σ(wf·etT+uf·rj,d+bf)

(13)

λj,d=et⊙f

(14)

(15)

其中,wf,uf,bf为网络待学习参数,et,rj,d,rj,s分别由式(2)、式(3),式(7)和式(11)得到。λj,d表示过滤了文档级中与给定方面无关情感的注意力输出。

1.4 训练策略

不同于传统的训练方式,本文的训练主要分为两个方面:一个是预训练的文档级情感分析模块,另一个是方面级情感分析模块与基于过滤机制的注意力辅助网络的联合训练。

预训练的文档级情感分析模块采用传统的最小化交叉熵损失函数来进行模型的优化,具体公式如式(16)所示

(16)

第一部分训练结束后,整个预训练的部分参数被固定,将训练好的文档级词嵌入层和文本特征提取层的参数作为方面级情感分析模块中对应网络模块的初始参数。

对于方面级情感分析模块和基于过滤的注意力辅助网络,本文采用联合训练最优化两个模块的参数。为了避免过拟合,对损失函数添加正则,具体表示如式(17)所示

=M+A+ρreg

(17)

其中方面级情感分析模块采用和文档级模型相同的交叉熵损失函数来进行优化,而基于过滤的注意力辅助网络的损失函数由KL散度得出,式(15)变形得到式(18)

(18)

2 实 验

2.1 实验数据与评价指标

2.1.1 实验数据

对于预训练的文档级情感模块,采用Yelp和Amazon评论数据集,该数据集中的所有标注数据都用来训练文档级情感模,作为方面级情感分析任务的辅助数据。

对于方面级情感分析模块和过滤模块,采用来自SemEval14、SemEval15和SemEval16的3个基准数据集(Rest14、Rest15、Rest16)来进行实验,表1给出了实验数据集的详细内容。

表1 实验数据集

2.1.2 评价指标

在该实验中,采用文本情感分析任务传统的评价指标:准确率(Accuracy,Acc)和F1值。

2.2 实验环境和实验参数

2.2.1 实验环境

在百度的AI Studio线上实验室进行本文的实验,其具体环境配置见表2。

表2 实验环境

2.2.2 实验参数

本文模型中的大部分参数都选用目前主流设置,其中用于词嵌入的BERT模型由12层Transformer组成,中间的隐藏层维度数为768,12个注意力头,合计共有110 M参数。文本特征提取所用的BiLSTM网络向前和向后隐藏状态的维度都设置成128,式(17)中的正则参数ρ设置成0.000 01,模型训练过程batchsize设置成128,dropout设置成0.5,学习率采用普遍使用的,优化器选择Adam对模型训练损失最小化。每轮实验的批(epochs)次设置成60,如果在10批实验中得到的准确率和F1值都没有提升那么将提前结束本轮实验并计算当前的准确率和F1值。

2.3 实验结果及分析

本文实验主要为了验证模型的性能和有效性,为此设计两组实验:对比实验和消融实验。

对比实验中,本文模型和以下基准模型进行对比实验:ATAE-LSTM[15]、AF-LSTM(CONV)[16]、IAN[17]、RAM[18]、GCAE[19]、PRET+MULT[10]、TransCap[11]、ATN[12]。

消融实验中,为了验证利用文档级知识辅助方面级任务能提高预测的准确率,将TLFM中预训练的文档级模块和过滤模块移除,仅保留方面级情感分析模块,该实验记作TLFM-TN-FM。同时,为了探索过滤模块对整个模型的贡献,先将预训练好的文档级情感模块的参数共享给方面级情感模块,再将整个过滤模块去除,最后仅训练方面级情感分析模块,做结果预测,该实验记作TLFM-FM。

按照上述需求展开实验,得到表3的实验结果:A1~A8为对比实验,其中A1~A5为仅做方面级情感分析不涉及文档级情感知识,A6~A7为学习文档级情感知识,辅助方面级任务的模型(其中以A6为例,PRET+MULT{Amazon+Yelp}表示模型先学习数据集Amazon和Yelp的情感知识,再进行方面级任务)。A9~A14为本文模型的消融实验,A15为本文模型。

表3 实验结果

通过表3实验结果,可以得到以下结论:

(1)与基准模型相对比,本文模型的性能有所提升。在数据集Rest14和Rest16上,本文模型的准确率都取得了最高,相比于次优值分别提升了1.15%、1.06%。数据集Rest15上,本文模型的准确率虽未取得最优结果,但表现与最优模型相当,仅相差0.07%。而F1值上,本文模型都取得了当前最高值,相比之前的最高值分别提高了0.56%、0.76%、0.43%。

(2)对照组实验中,GCAE模型的表现最差,猜测原因为:GCAE模型中使用的CNN网络对于长依赖的建模能力较差,无法充分捕获上下文中与给定方面有关的情感。ATAE-LSTM、IAN和RAM模型利用注意力机制对方面词和上下文进行不同的建模,但由于方面级语料的不足,导致注意机制未充分训练,模型的提升有限。

(3)文档级知识辅助方面级任务提高了任务的准确率。PRET+MULT、TransCap、ATN和TLFM模型在准确率上的表现大部分都超过了仅做方面级任务的模型,提升的主要原因可能在于引入文档级知识使得网络得到充分训练,提高了注意力机制捕获情感的能力。

(4)过滤模块有效过滤了与给定方面无关的情感信息,提升了模型的整体性能。具有过滤模块的TLFM 模型相比与TLFM-FM模型,在3个方面级数据集上准确率都有提升。而对于F1值来说,学习的文档级知识越多,F1值越高,内在原因可能是学习的知识越多,模型越能感知分散的情感,召回率相应得到提升,从而使得F1值上升。

2.4 参数分析

2.4.1 文档级数据规模分析

进一步探索在方面级任务中引入文档级知识的影响,模型TLFM在不同规模的文档级数据集上进行预学习,然后再进行方面级情感分析任务的训练和测试。该实验文档级数据集采用Yelp,人为控制预学习文档的规模,方面级数据集采用Rest14。实验结果如图3所示。

图3 文档规模的影响

图3可以看出文档级数据规模小30%时,分析的准确度和F1有波动,但波动较小,可能是由于引入的文档级知识过少,对方面级任务的帮助不明显。当文档级规模大于30%时,方面级任务的准确率随着文档级知识的规模逐渐增加,但当文档级知识的规模大于70%时,增加变得极为缓慢,而F1值,甚至出现下降的波动,这里猜测可能是因为引入的文档级知识过多,导致情感分布过于分散,干扰注意力机制感知情感。

2.4.2 注意力机制中注意力头个数的影响

模型TLFM中采用多头注意力机制感知文本情感,为了探索注意力头个数对实验结果的影响,人为控制注意力头的个数,依次进行实验(这里主要是探索注意力头个数,为了简化实验,引入的文档级知识只选取数据集中的50%,且以准确率作为评价指标)。得到具体的实验结果如图4所示。

图4 注意力头个数对预测结果的影响

从图4可以清晰看到,注意力头个数增加到10的过程中,在3个数据集上模型的准确率一直处于提升状态。当注意力头的个数超过10之后,模型的准确率开始出现较大的波动,猜测可能是因为评论文本一般为简单句式,如果注意力头过多,导致网络复杂性上升,对简单句式复杂理解,造成准确率不稳定,基于此实验结果,本文模型将多头注意力机制中的注意力头设置为10。

3 结束语

方面级情感分析领域中,大部分模型都是通过从文档级语料中预学习情感知识,来弥补方面级数据集规模不足的问题,本文在此基础之上,进一步考虑文档级情感知识中包含与给定方面无关的情感,为此提出一种基于迁移学习和过滤机制的方面级情感分析模型TLFM。在公开的方面级情感分析数据集上进行实验,实验结果表明TLFM在多项指标上的性能都优于其它模型。

本文预测的都是显式情感信息,并没有考虑到评论文本中的隐式情感,因此接下来将进一步考虑句子中的隐式情感。

猜你喜欢

文档注意力机制
浅谈Matlab与Word文档的应用接口
让注意力“飞”回来
有人一声不吭向你扔了个文档
自制力是一种很好的筛选机制
“扬眼”APP:让注意力“变现”
基于RI码计算的Word复制文档鉴别
A Beautiful Way Of Looking At Things
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
破除旧机制要分步推进
注重机制的相互配合