题目:Unrestricted Attention May Not Be All You Need—Masked Attention Mechanism Focuses Better on Relevant Parts in Aspect-Based Sentiment Analysis
Abstract
1. 写作背景:以往的ABSA深度学习方法通常依赖于大规模的预训练语言模型和注意力机制,该方法应用了完整的计算注意力权重,并且对注意力分配没有任何限制。
2. 在这篇文章中,我们提出了一种为ABSA定制的遮蔽的注意力机制,它有两种不同的方法来生成掩码。【下部分详细介绍】
一、Introduction
1. ABSA两个子任务——ATSA(Aspect Term Sentiment Analysis)和ACSA(Aspect Category Sentiment Analysis)例子:
2. 写作目的:本文发现在一些ABSA数据集上,简单地增加Bert的方面注意(apsect attention)会影响它的性能。对数据的分析表明,对于一个单一的方面来说,整个句子的丰富上下文是令人困惑的,特别是当一个句子包含多个方面的时候。
3. 本文提出的两种注意力屏蔽机制(attention mask mechanism):
作用:通过忽略被认为不相关的输入部分,去除大量的输入噪声,使下游模型更加集中,降低计算成本,从而将方面注意力限制在句子中与其最相关的部分
① Attention Mask Weight (AM-Weight):设置一个注意力阈值(由所有权重的最大值决定),并且只保留注意力得分大于阈值的词
② Attention Mask Word (AM-Word):只保留前n个权重最高的词
两者都删除了较低的分数部分,这些分数部分被认为与焦点的方面不太相关
4. 研究线路:
① 开始于预训练语言模型,计算每个方面或种类(category)的标准注意力分数;
② 接下来,通过一种掩码机制过滤候选项,计算候选项embedding表示的加权和,输出经过全连接层和softmax输出情感分类标签。
5. contributions:
① 本文提出了两种用于方面级情感分析任务的注意力屏蔽机制;
② 在三个公共数据集上实现了最先进的性能,并在RoBERTa基线上引入了注意力掩码;
③ 通过敏感性分析(sensitivity analysis)和成功/失败案例的检验,为两种注意力屏蔽机制提供了推荐策略;该模型也为Transformer网络中自注意力机制的不足提供了一种潜在的弥补
二、Method
本节描述方面级情感分析任务以及如何在基于Bert的模型上应用注意力屏蔽机制
2.1 PROBLEM FORMULATION
ABSA任务包括方面术语情感分类(ATSC)和方面类别情感分类(ACSC)。在ACSC任务中,预定义的类别和情感极性分别分:
文本中的一个句子/段落表示为:
一个句子可以包含M个目标
其中每个来自句子S的目标可以表示为:
ATSC任务的目标是预测M个目标的情感
相似的,如果一个句子包含N个方面类别,ACSA任务就是预测他们每个的情感极性
2.2 ATTENTION MASK NETWORK FOR ABSA
本节介绍我们提出的用于方面级情感分析的注意力屏蔽网络,其框架如图所示
该网络由上下文嵌入(contextualized embedding)层、 注意力层、两个注意掩码层和一个全连接层组成
【注】两个黄色的mask为两个不同的注意力屏蔽机制,在计算出注意力权重(attention weight)后,选择其中一条路径继续走
2.2.1 INPUT AND CONTEXTUALIZED EMBEDDING LAYER
模型的输入包括一个句子和一个方面词
当使用Bert嵌入一个方面词和它的上下文信息时,输入为“[CLS],INPUT,[SEP]”;
当使用RoBERTa时,输入为“<s>,INPUT,</s>”
2.2.2 ATTENTION LAYER
注意力层的输入为上下文embedding层的输出。
在本层,我们计算方面向量和句子向量之间的注意力权重,然后应用两种掩码机制中的一种,掩码注意分数(AM-Weight)或掩码注意词(AM-Word),生成最终的注意权重向量。
用来度量两个输入元素(方面向量和句子向量)的相关性或相似性
然后利用softmax函数计算每个权重系数
对于每个输出元素,zi通过对输入元素的加权和线性变换计算得到(注意力层的输出)
其中为注意力参数矩阵,分别为每一层和注意头调整。
2.2.3 ATTENTION MASK WEIGHT
【第一种注意力屏蔽机制】
为了只保留句子中对方面词有重要注意力分数(高度相关)的部分,我们引入一个参数作为掩码的阈值比率(γ),它乘以句子中注意权重的最大值(maxw),结果用作阈值。当注意力值低于该阈值时,它被遮蔽的为零,其他值保持不变,如公式(12)所示
其中αij为原始的注意力分数
2.2.4 ATTENTION MASK WORD
【第二种注意力屏蔽机制】
句子中有n个注意力权重,按降序排列:
其中rj下标表示每个注意力权重的排名,注意力得分前βn个词被保留,其余词将权重设置为0
注意权重为零的单词将从句子中删除,其余非零的单词将按原顺序保存。然后它们被送入情感分类层。
2.2.5 ASPECT SENTIMENT CLASSIFICATION
如果使用注意力屏蔽权重机制(①) → 使用屏蔽的注意力分数和原始项向量的加权和作为注意力层输出,并将其反馈到最终的方面情感分类;
如果使用注意力掩码词机制(②),我们只保留剩余的βn词,使用BERT或RoBERTa进行上下文嵌入,并用它们的表现形式进行方面情感分类。
2.2.6 LOSS
【Train】
使用交叉熵损失函数作为损失函数
实验部分可以略过,因为本文没给出代码,扩展一下视野即可
三、实验
对比实验:
案例学习: