其他分享
首页 > 其他分享> > EMNLP 2021 基于Prompt的方面级情感分析研究【转载以学习、回忆】

EMNLP 2021 基于Prompt的方面级情感分析研究【转载以学习、回忆】

作者:互联网

来源链接:https://mp.weixin.qq.com/s/xaG9Nqxhb1eqt1q6DSZMZg

来源Fudan DISC实验室

转载以学习、回忆

1. 基于自然语言提示的开放式方面目标情感分类 (Open Aspect Target Sentiment Classification with Natural Language Prompts)

该篇文章利用自然语言提示(Prompt),将方面目标情感分类(Aspect Target Sentiment Classification)任务定义为自然语言推断(NLI)和完形填空任务,从而更好地发挥预训练模型的性能,在零样本(Zero-shot)、少样本(Few-shot)和全样本的场景下都表现出了良好的性能,同时体现出良好的鲁棒性。

论文解读链接:https://blog.csdn.net/misaki_min/article/details/123484540

一、背景与问题提出
衡量文本在某些方面(子主题)上的情绪具有直接的商业价值,比如一家连锁酒店可能希望根据客户对其房间清洁和前台服务的积极评价的比例来做出业务决策。尽管有很多的监督学习方法可以采用,但目前的研究基本集中在餐厅、电脑、推特评论几个公开数据集上,实际应用中往往因为缺乏目标领域的标记数据导致效果不理想。
面对缺少标签的问题,作者从人们书写评论的方式中得到启发。例如,考虑酒店评论中的两个句子:
“Mike和其他员工非常有礼貌,迅速回应了我们的要求。前台服务很好。”
假设模型能够从第一个句子推理出第二个句子,那么就有利于模型对“前台服务”作出正确的分类。据此,论文设计了两种Prompt方案:(a)完形填空Prompt(b)自然语言推理(NLI)Prompt

二、方法

本文的方法如下图所示

 

 

1、完形填空(next/masked word prediction)
第一种方法遵循了Schick和Schütze(2020)首次提出的完形填空问题Prompt设计,采用了几种比较简单的句式:
• I felt the {aspect} was [MASK].
• The {aspect} made me feel [MASK].
• The {aspect} is [MASK].
值得一提的是,为了在[MASK]上产生更准确的预测,作者用域内评论文本对LM进行了预训练,这也是特定领域内任务为了提高效果常用的方法。对于BERT模型,把原来的随机mask改为只mask形容词、名词和专有名词,因为这些词更有可能表示句子的情绪;对于GPT-2模型,使用原本的CLM目标。
预训练之后就可以在少量文本上进行Prompt学习。具体方法是,在原本句子的后对aspect生成上述Prompt句子,并对[MASK]进行预测,用good,ok,bad的概率分别“代表”预测句子为积极、中性和消极的概率,无视[MASK]词的其他候选。在作者的实验中,这三种提示的表现都很相似,尤其是在few-shot情况下,这表明模型的性能对Prompt的措辞并不过分敏感。

2、自然语言推理(NLI entailment predictions)
第二种方法有点类似于将多分类拆成若干二分类的思路:首先生成关于目标aspect的积极和消极假设(例如“The {aspect} is good; The {aspect} is bad.”),分别接在原输入后面,判断原始句子是否能推理出假设句子,通过获得每个假设的蕴涵概率(entailment probabilities)来得到积极情绪和消极情绪的得分,而中性情绪则由两个假设的中立概率(neutral probabilities)平均得到。这种方法也可以实现zero-shot learning。

2. 用文本生成任务解决方面类别情感分析 (Solving Aspect Category Sentiment Analysis as a Text Generation Task)

该篇文章针对方面类别情感分析(Aspect Category Sentiment Analysis)任务,利用预训练语言模型BART将ACSA任务转换为自然语言生成任务,通过遵循预训练时的任务设置来更直接地使用预训练模型的知识,在几个benchmark上都取得了最优的结果,尤其在零样本、小样本场景下优势显著。

任务定义

如图2所示,对于ACD任务,输入为原始文本(The restaurant was too expensive)与正负Prompt提示(The {category} is discussed / is not discussed)相结合,输出则利用BART模型,取两者中得分较高者为最终结果。

对于ACSA任务,输入为原始文本(The restaurant was too expensive)与情感Prompt提示(The sentiment polarity of {category} is positive/negative/neutral)相结合,输出则是三者中得分较高者。

 

 

以ACSA任务为例,该篇文章将BERT/BART Classification和BERT/BART MLM 作为基线模型。对于分类模型,BERT模型的输入形式为"[CLS] input sentence [SEP] given_category [SEP]",最终以[CLS]作为表示,BART模型如图3-(a)所示,输入形式为"<s> input sentence </s> given_category </s>",以解码器的最终输出作为表示。对于掩码语言模型(MLM),BERT MLM模型将输入句子和提示作为模型输入,并针对给定类别预测情感极性的标签词,BART模型如图3-(b)所示,将同样的输入送入编码器和解码器中,将[MASK]位置处最高的预测结果作为输出。

本文中提到的BART generation方法如图3-(c)所示,将原句子作为Encoder端的输入,将提示作为Decoder端的输入,最后为每一个类别可能的情感极性计算分数,选择分数最高的极性作为最终结果。

 

 未完

标签:Prompt,BART,EMNLP,模型,MASK,2021,aspect,句子
来源: https://www.cnblogs.com/nlpers/p/16102762.html