首页 > 编程语言 >A Challenge Dataset and Effective Models for Aspect-Based Sentiment Analysis

A Challenge Dataset and Effective Models for Aspect-Based Sentiment Analysis

时间:2023-09-06 10:25:52浏览次数:43  
标签:BERT Based Sentiment Effective 胶囊 方面 情感 数据 句子

摘要

基于方面的情感分析(ABSA)由于其广泛的应用,近年来受到了越来越多的关注。在现有的ABSA数据集中,大多数句子只包含一个或多个具有相同情感极性的方面,这使得ABSA任务退化为句子级情感分析。在本文中,我们提出了一个新的大规模多方面多情感(MAMS)数据集,其中每个句子至少包含两个具有不同情感极性的不同方面。该数据集的发布将推动这一领域的研究。此外,我们提出了简单而有效的CapsNet和CapsNet-BERT模型,这些模型结合了最近NLP进展的优点。在新数据集上的实验表明,该模型的性能明显优于最新的基线方法。

1介绍

基于方面的情感分析(ABSA)旨在识别句子中方面的情感极性。目标方面是指描述实体方面的单词或短语。例如,在“装潢一点也不特别,但他们令人惊奇的食物弥补了这一点”这句话中,有两个方面的术语“装潢”和“食物”,它们分别与消极情绪和积极情绪相关。最近,神经网络方法在ABSA的研究中占据主导地位,因为这些方法可以进行端到端的训练并自动学习重要特征。(Wang et al.,2016)建议学习每个方面的嵌入向量,这些方面嵌入用于计算注意权重,以捕获给定方面的重要信息。Tang开发了深度记忆网络来计算具有多个注意层的每个上下文单词的重要度和文本表示。(Ma等人,2017)引入了交互式注意网络(IAN),以交互方式学习上下文和目标中的注意,并分别生成目标词和上下文词的表示。(Xue和Li,2018)提出使用卷积神经网络提取情感特征,并有选择地输出与方面相关的特征,以便使用选通机制进行分类。随后,Transformer(V aswani et al.,2017)和基于BERT的方法(Devlin et al.,2018)在ABSA任务中显示出了很高的潜力。还有一些研究试图模拟人类的阅读认知过程,以进一步提高ABSA的性能。

到目前为止,已经构建了多个ABSA数据集,包括SemEval-2014餐厅评论数据集、笔记本电脑评论数据集(Pontiki et al.,2014)和推特数据集(Dong et al.,2014)。尽管这三个数据集已成为ABSA任务的基准数据集,但这些数据集中的大多数句子只包含一个方面或多个方面,具有相同的情绪极性(见表1)2,这使得基于方面的情绪分析退化为句子级情绪分析。根据我们的经验观察,不考虑方面的句子级情感分类器仍然可以与许多最近的ABSA方法取得竞争结果(见表3中的TextCNN和LSTM)。另一方面,即使是在这些数据集上训练的高级ABSA方法也很难区分包含多个方面和多个情绪的句子中针对不同方面的情绪极性。为了推进和促进基于方面的情感分析领域的研究,本文提出了一种新的多方面多情感(MAMS)数据集。在MAMS数据集中,每个句子至少包含两个具有不同情感极性的方面,与现有的ABSA数据集相比,该数据集更具挑战性。在MAMS数据集上,仅考虑句子的句子层次情感将无法获得良好的性能。我们在MAMS数据集上对最先进的ABSA方法进行了实证评估,糟糕的结果表明,拟议的MAMS数据集比SemEval2014餐厅评论数据集更具挑战性。

我们分析了最近ABSA方法的特性,并提出了新的胶囊网络(表示为CapsNet和CapsNet-BERT)来模拟方面和上下文之间的复杂关系,它结合了最近NLP的优点。实验结果表明,在MAMS和SemEval-14餐厅数据集上,所提出的方法比最新的基线方法取得了显著的更好的结果。

我们的主要贡献总结如下:(1)我们手动注释了一个大规模的多方面多情感数据集,防止了ABSA退化到句子级情感分析。它的发布将推动ABSA的研究。(2) 我们提出了一种新的基于胶囊网络的模型来学习方面和上下文之间的复杂关系。(3) 实验结果表明,该方法比现有的基线方法取得了更好的结果。

2数据集构造

与SemEval-2014餐厅评论数据集(Pontiki et al.,2014)类似,我们对纽约城市研究中心数据集(Ganu et al.,2009)中的句子进行了注释。我们将语料库中的每个文档分成几个句子,并删除包含70多个单词的句子。

数据集批注

我们为基于方面的情感分析的两个子任务创建了两个版本的MAMS数据集:方面术语情感分析(TSA)和方面类别情感分析(ACSA)。对于TSA,我们邀请了三位从事自然语言处理(NLP)的经验丰富的研究人员提取句子中的体项,并标记与体项相关的情感极性。删除仅由一个方面术语或多个方面组成的具有相同情感极性的句子。我们还提供了每个方面术语在句子中的开始和结束位置。

对于ACSA,我们预定义了八个粗糙方面类别:食物、服务、员工、价格、环境、菜单、地点和杂项。SemEval-2014餐厅评论数据集中采用了五个方面的类别。我们又添加了三个方面类别来处理一些令人困惑的情况。三位有经验的NLP研究人员被要求识别给定句子中描述的方面类别,并确定这些方面类别的情感极性。我们只保留至少由两个具有不同情感极性的方面类别组成的句子。

数据集分析

MAMS中的所有句子都包含具有不同情感极性的多个方面。

Restaurant-ATSA、Restaurant ACSA、Laptop和Twitter数据集中的多方面多情感实例分别为26.58%、9.58%、20.05%和0.09%,这使得现有数据集的挑战性较小,因为在没有有效建模上下文和方面之间的关系的情况下,可以对非MAMS实例进行正确分类。为了与SemEval-14餐厅数据集进行公平比较,我们还通过从MAMS训练集中采样训练实例,提供了一个小型版本的MAMS数据集(称为MAMS small),该数据集的训练实例数与SemEval-14餐厅数据集的训练实例数相同。

3方法论

我们使用D表示训练数据中的句子集合。给定句子S={ws1,…,wsn},和一个方面项At={wa1,…,wam}或方面类别Ac,方面级情绪分类旨在预测句子中方面项或者方面类别的情感极性。这里w代表一个特定的单词,n代表句子的长度,m代表方面项的长度,C代表了情感类别的数量。

3.1嵌入层

在嵌入层,我们将句子S转换为单词嵌入E。对于ACSA(方面类别情感分类任务),方面类别嵌入a在训练期间随机初始化和学习,而对于ATSA任务,方面嵌入a计算为方面词嵌入的平均池.我们获取the aspect-aware sentence embedding通过将方面项嵌入和句子中的每个单词拼接起来。

 

3.2编码层

将the aspect-aware sentence embedding Esa通过BiGRU和残差链接转换成语境化表征H = [h1, ..., hn]。

 

 

 

3.3初级胶囊层

在初级胶囊层,获得初级胶囊和方面胶囊通过线性变换和挤压激活。

 

挤压功能定义为:

 

 

 

 

 Aspect Aware Normalization

由于句子长度可变,发送到上层胶囊的初级胶囊数量因句子而异,导致训练过程不稳定。非常长的句子使壁球激活饱和,并导致所有类别的高置信度;相比之下,非常简短的句子会导致所有类别的可信度较低。为了缓解这一问题,我们提出了基于方面的归一化方法,该方法利用方面胶囊来选择重要的主胶囊,并通过以下方式对主胶囊权重u进行归一化:

 

 

 

 

 胶囊引导布线Capsule Guided Routing

原始的动态路由机制(Sabour et al.,2017)由于路由的迭代过程,训练效率低下。而且没有上层信息用于指导路由过程,这使得动态路由就像一个自导向的过程。而且没有上层信息用于指导路由过程,这使得动态路由就像一个自导向的过程。

我们没有在路由过程中计算主胶囊和类别胶囊之间的耦合系数,而是设计了一种胶囊引导的路由机制,该机制利用情感类别的先验知识有效地指导路由过程。具体来说,我们使用一组情绪胶囊来存储关于情绪类别的先验知识。G是一个情感矩阵,它是用情感词的平均嵌入来初始化的,我们可以通过在情感矩阵上应用挤压激活来获得情感胶囊Z=[z1,…,zC],并通过计算主胶囊和情感胶囊之间的相似性来计算路由权重w:

3.4类别胶囊层

基于归一化权重和路由权重,最终类别胶囊V=【v1,…,vC】可计算为,其中,s是一个可学习的缩放参数,用于将连接权重缩放到合适的级别。

 

以下(Sabour等人,2017年),我们使用margin损失作为基于方面的情绪分类的损失函数:

 

 

3.5 CapsNet-BERT

为了利用从大规模语料库中学习到的特征,我们设计了CapsNet-BERT模型,该模型结合了BERT和胶囊网络的优点。我们将CapsNet的嵌入层和编码层替换为预先训练好的BERT。CapsNet-BERT模型以“[CLS]句子[SEP]方面项[SEP]”为输入,用预先训练好的BERT计算句子和方面项的深层表示。然后,我们将句子和体表征输入胶囊层,并预测相应的情感极性。

 4实验

4.1实验装置

实验数据 为了评估我们模型的有效性,我们在两个MAMS数据集和SemEval-14 Restaurant Review(Pontiki et al.,2014)数据集上进行了实验。所有模型共享相同的数据预处理过程,并使用相同的预训练单词嵌入。

基线模型 将CapsNet和各种基线模型进行比较,为了验证胶囊网络与BERT相结合的有效性,我们还比较了CapsNet-BERT和vanilla-BERT模型的性能。Vanilla-BERT模型采用“[CLS]句子[SEP]体[SEP]”作为输入,预测句子对给定体的情感极性。

实施细节 在所有实验中,我们使用GloVe(Pennington et al.,2014)预先训练的300维单词向量来初始化非BERT模型的单词嵌入向量。胶囊大小设置为300。CapsNet和CapsNet BERT的批次大小分别设置为64和32。我们使用Adam optimizer(Kingma和Ba,2015)来训练我们的模型。CapsNet和CapsNet-BERT的学习率分别设置为0.0003和0.00003。我们将所有模型运行5次,并在测试数据集上报告平均结果。我们微调验证集上所有基线的超参数。

4.2实验结果分析

实验结果见表3。从表3中,我们得出以下结论。首先,句子级情感分类器(TextCNN和LSTM)在SemEval14餐厅评论数据集上取得了有竞争力的结果,但在MAMS数据集上表现不佳。这验证了MAMS数据集可以缓解ABSA餐厅数据集中遇到的任务退化问题。其次,最先进和复杂的ABAS方法在餐馆数据集上取得了令人印象深刻的结果,但在MAMS小数据集上表现不佳。这验证了MAMS(小型)比SemEval-14餐厅评论数据集更具挑战性。第三,没有有效建模词序的基于注意的模型(如MemNet和AEN)在MAM上表现最差,因为它们丢失了词序信息,并且无法识别上下文的哪一部分描述了给定的方面。第四,CapsNet在6个数据集中的4个数据集上优于非BERT基线,显示了将胶囊网络应用于基于方面的情绪分析任务的潜力。此外,CapsNet-BERT的性能明显优于包括BERT在内的其他模型,这表明胶囊网络和BERT的结合可以获得比普通BERT更多的改进。

4.3消融实验

为了分析所提出的胶囊引导路由机制的有效性,我们进行了消融研究,在CapsNet和CapsNetBERT中用动态路由代替胶囊引导路由,得到CapsNet DR和CapsNetBERT-DR。从表3(最后两行)可以看出,胶囊引导路由提高了CapsNet和CapsNet-BERT在所有数据集上的性能。

5结论

在本文中,我们提出了MAMS,这是一个基于方面的情感分析的挑战数据集,其中每个句子包含多个具有不同情感极性的方面。提出的MAMS数据集可以防止方面级情感分类退化为句子级情感分类,从而推动基于方面的情感分析的研究。此外,我们提出了一种简单而有效的胶囊网络,其性能明显优于比较的方法。

 

标签:BERT,Based,Sentiment,Effective,胶囊,方面,情感,数据,句子
From: https://www.cnblogs.com/zhang12345/p/16404662.html

相关文章

  • sql-labs--Less-1--Error based-Single quotes
    sql\="SELECT\*FROMusersWHEREid\='id'LIMIT0,1";打开第一关,我们看到如下界面,上面写着PleaseinputtheIDasparameterwithnumericvalue,它的意思是让我们请输入ID作为带有数值的参数。https://images.cnblogs.com/cnblogs_com/blogs/800546/galleries/2341394/o_2......
  • 论文解读(AdSPT)《Adversarial Soft Prompt Tuning for Cross-Domain Sentiment Analysi
    Note:[wechat:Y466551|可加勿骚扰,付费咨询]论文信息论文标题:AdversarialSoftPromptTuningforCross-DomainSentimentAnalysis论文作者:HuiWu、XiaodongShi论文来源:2022ACL论文地址:download 论文代码:download视屏讲解:click1介绍 动机:直接使用固定的预定义模......
  • 【Effective C++】定制new和delete
    文章目录一、了解new-handler的行为1、new和malloc的对比2、set_new_handler的使用3、new-handler设计要求4、提供自己的set_new_handler和operatornew5、请记住二、了解new和delete的合理替换时机1、替换编译器提供的operatornew或operatordelete2、请记住三、编写new和delete......
  • 论文解读(PERL)《PERL: Pivot-based Domain Adaptation for Pre-trained Deep Contextua
    Note:[wechat:Y466551|可加勿骚扰,付费咨询]论文信息论文标题:PERL:Pivot-basedDomainAdaptationforPre-trainedDeepContextualizedEmbeddingModels论文作者:EyalBen-David、CarmelRabinovitz、RoiReichart论文来源:2020TACL论文地址:download 论文代码:download视屏......
  • Django学习小记[6]——Class-based View
    这节我们讲一下Class-basedView,为什么要有这个Class-basedView呢?view不都是一个方法吗?跟类有啥关系?其实答案很明显,用类其实是为了抽象,抽象出通用的,将可变的暴露出来,这样我们就可以用最少的代码实现复杂的功能了。Django中,对那些我们平时经常用的View进行了封装,比如用于渲染一......
  • 高效 Python (Effective Python)
    有效的PythonEffectivePythonPython思维方式第1条知道你使用的Python版本python--version#Python3.8.10Python3通常是python3python3--version#Python3.8.10在运行中,可以通过sys.version来获取python的版本>>>importsys>>>print(sys.version_......
  • 论文解读(CTDA)《Contrastive transformer based domain adaptation for multi-source c
    Note:[wechat:Y466551|可加勿骚扰,付费咨询]论文信息论文标题:Contrastivetransformerbaseddomainadaptationformulti-source cross-domainsentimentclassification论文作者:YanpingFu,YunLiu论文来源:2021aRxiv论文地址:download论文代码:download视屏讲解:click1......
  • a build cache key that uniquely defines the task’s outputs based on its inputs
    BuildCachehttps://docs.gradle.org/current/userguide/build_cache.htmlTheGradle buildcache isacachemechanismthataimstosavetimebyreusingoutputsproducedbyotherbuilds.Thebuildcacheworksbystoring(locallyorremotely)buildoutputsan......
  • 论文解读(CBL)《CNN-Based Broad Learning for Cross-Domain Emotion Classification》
    Note:[wechat:Y466551|付费咨询,非诚勿扰]论文信息论文标题:CNN-BasedBroadLearningforCross-DomainEmotionClassification论文作者:RongZeng,HongzhanLiu,SanchengPeng,LihongCao,AiminYang,ChengqingZong,GuodongZhou论文来源:2023aRxiv论文地址:download ......
  • Paper Reading: A pareto-based ensemble of feature selection algorithms
    目录研究动机文章贡献相关概念集成特征选择帕累托最优非支配排序拥挤距离本文方法实验结果数据集和实验设置与FS方法比较与集成FS方法比较优点和创新点PaperReading是从个人角度进行的一些总结分享,受到个人关注点的侧重和实力所限,可能有理解不到位的地方。具体的细节还需要......