EMNLP2020 Findings论文:网格标注——端到端的细粒度观点抽取方案
01
—
背景介绍与研究动机
面向方面的细粒度观点抽取(Aspect-oriented Fine-grainedOpinion Extraction,AFOE)旨在自动地从评论文本中抽取出所有的观点二元组<aspect term, opinion term>,或者额外地抽取观点二元组表达的情感极性构成观点三元组<aspect term, opinion term,sentiment>。在这个任务中,方面项(aspect term)一般指商品的某个方面,用户对其表达了自己的观点;观点项(opinion term)则是文本中用户用来描述方面、表达观点的词或词组。举个例子,图1的餐厅评论中包含两个aspect terms,分别为“hot dogs”和“coffee”,它们对应的opinion terms分别为“topnotch”和“average”,可以看到,用户对“hot dogs”和“coffee”分别表达了正面的情感和中性的情感,因此我们可以抽取出对应的观点二元组和观点三元组,如图1所示。不同于aspect based sentimentclassification(ABSA),AFOE不需要提前给定待分析的aspect,而是直接从纯文本中抽取出所有观点元组,从而为我们提供简洁的评论文本摘要,因此是一个很有应用前景的任务。
图1:面向aspect的细粒度观点抽取示例
因为同时抽取文本中的观点要素并建立它们之间的对应关系并不容易,之前的方案通常将抽取过程拆分成多步,通过流水线的方式来抽取观点元组。例如,[1]在aspect term抽取的基础上提出了给定aspect的观点词抽取任务,从而实现抽取观点二元组的目标。为了抽取观点三元组,[2]则是先抽取<aspect term, sentiment>元组和和未配对的opinionterm,然后在第二步中对元组和opinion term进行配对。虽然这些工作能够完成面向aspect的细粒度观点抽取,但是流水线方式容易形成错误累积,从而影响观点元组抽取的性能。
在这个工作中,我们提出了一种新颖的网格标注框架(Grid Tagging Scheme,GTS),能够一步抽取出文本中的所有观点元组。在这个框架中,观点二元组抽取和观点三元组抽取可以被形式化为一个统一的词对标注任务,然后通过特定的解码策略生成对应的二元组或三元组。为了验证GTS的可行性,我们分别基于三类典型的网络CNN、LSTM和BERT来实现GTS,大量的实验结果表明我们的方案明显优于所有的基线系统并取得了最好的性能。
02
—
网格标注框架
在这个章节中,我们以观点二元组抽取为例,详细阐述如何用GTS来抽取出文本中的观点二元组。在观点二元组抽取基础上,GTS稍做变动就能用来解决观点三元组抽取问题。
对于观点二元组抽取,具体而言,我们用四个标签{A, O, P, N}来表示文本中任意两个词(w_i, w_j)(无序词对)之间的关系。A表示两个词属于同一个aspect term;O表示两个词属于同一个opinion term;P表示两个词分别属于一个aspect term和一个opinion term,且它们所属的aspect term和opinion term能够形成一个观点二元组;N表示两个词之间没有任何关系。仍以图1中的句子为例,它在GTS框架下的标注结果如图2所示:
图2:观点二元组网格标注示例
有了上述的标注体系,我们可以将训练样本转为GTS下的标注形式并训练机器学习模型。然而,在测试阶段,预测结果可能并不是完美匹配。举个例子,上图中的“hot dogs”和“top notch”所对应的四个词对位置可能并没有全被预测为P标签。因此我们需要一个具有容错性的解码算法从不完美的标注结果中解码出我们所需要的观点二元组,详细的解码过程如算法1所示。简单来说,对于GTS的预测结果,我们将主对角位置连续的A标签对应的spans作为aspectterms集合,连续的O标签对应的spans视为opinion terms集合。对于aspect terms集合的中任意一个aspect term和opinion terms集合中的任意一个opinion term,我们判断它们对应的词对之间是否存在标签P,只要存在P,我们就任务它们可以形成一个观点二元组。
算法1:观点二元组解码过程
针对观点三元组抽取,我们需要上述标签集合修改为{A, O, Pos, Neu, Neg, N},A、O、N含义相同吗,Pos、Neu、Neg分别用来表示两个词对所属的aspect term和opinion term表达了正面的、中性的或者负面的情感极性。在解码算法中,对于集合A的中任意一个aspect term和集合O中的任意一个opinion term,如果它们之间的所有词对都被标注为N,则判定它们不能构成观点三元组,否则根据投票原则,将标签最多的情感极性视为观点三元组中的情感标签。
03
—
验证模型
为了验证GTS的有效性和良好的兼容性,我们分别以CNN、LSTM以及BERT作为文本encoder,实现了三种不同的GTS模型。模型的主体结构如图3所示:
图3:基于GTS的细粒度观点抽取模型
简单来说,我们先用CNN、LSTM或者BERT来编码输入的文本句子,获得每个词的表示,然后拼接w_i和w_j对应的表示作为词对(w_i, w_j)之间的表示,这个表示可以作为特征来预测词对(w_i, w_j)的标签。为了增强单词w_i和w_j之间的联系,我们在CNN和LSTM编码器中添加了一层self attention层。BERT编码器不需要额外地添加这层,因为它本身就由多层堆叠的self attention层构成。
此外,我们也注意到aspectterm,opinion term以及它们之间的配对关系并不是独立存在的而是密切耦合的。例如,一个配对关系一定包含一个aspect term和一个opinion term。因此,在AFOE中,任何一个元素的定位对其他元素的抽取都是有帮助的。为此,我们设计了一个迭代的inference策略,将前一轮的预测结果作为额外的信息,从而推断出更准确的观点元组(具体设计细节请参考原文)。
04
—
实验结果与分析
04-1
数据集
在数据集方面,[2]虽然提供了观点三元组数据集,但删除了一个opinionterm对应多个aspect terms的样例,这使得问题变得相对简单。为了研究完整的细粒度观点抽取任务,我们重新对齐了[1]提供的观点二元组和原始的SemEval Challenge数据[3,4,5],所获得的四个数据集统计信息如下:
表1:细粒度观点抽取数据集统计信息
在上表中,#S、#A、#O、#P、#T分别表示数据集中句子、aspect term、opinion term、观点二元组以及观点三元组的数目。我们采用precision、recall和F1-score来评价不同模型的性能。
04-2
观点二元组抽取
表2:观点二元组抽取结果
观点二元组抽取的结果如表2所示。对于观点二元组抽取,我们将之前的研究工作整理成两类pipeline方案。第一类是先联合抽取aspect term和opinion term,然后将抽取的aspect term集合和opinion term集合构成笛卡尔集后进行pair关系判定。另一类是先抽取aspect terms,然后抽取给定aspect term对应的opinion terms,这样也能形成观点二元组。在pipeline方案中,RINANTE使用弱监督扩充了数百万的训练数据。尽管如此,我们端到端的GTS模型仍然显著优于所有pipeline方案,这验证了网格标注框架的优越性。
04-3
观点三元组抽取
表3:观点三元组抽取结果
观点三元组抽取的结果如表3所示。Peng-unified-R+PD是之前观点三元组抽取任务上的最好方案,此外,我们也组合了一些SOTA模型构造了强pipeline方案。可以看到,在观点三元组抽取任务上,基于GTS的神经模型也明显优于所有pipeline方案。得益于从预训练中获得的强大的编码能力,GTS-BERT在观点二元组抽取和观点三元组抽取任务上都取得了最好的性能。
04-4
消融实验
表4:观点二元组抽取消融实验
为了验证模型中self attention层和我们设计的迭代inference策略的有效性,我们在观点二元组抽取任务上进行了消融实验。从表4中我们可以看到,无论是基于CNN编码器还是LSTM编码器,迭代的inference策略带来的提升都大于self attention带来的提升。
04-5
迭代次数对结果的影响
图4:观点二元组抽取任务中迭代次数对结果的影响
最后,我们以观点二元组为例展现了inference策略的迭代次数对抽取性能的影响,结果如图4所示。从数据集14res和14lap的结果看,GTS-CNN、GTS-BiLSTM分别在迭代两次和三次时取得了最好的性能。相比之下,GTS-BERT只用一次迭代就取得了最好的性能,这可能是因为BERT编码器本身已经包含了丰富的上下文信息。
05
—
总结
之前的研究通常用流水线的形式来解决面向aspect的细粒度观点抽取,从而容易受到错误累积的影响。本文中,我们提出一种新颖的网格标注方案(GTS),将细粒度观点抽取转化成统一的词对标注任务,并通过特定的解码方案端到端地抽取文本中的观点二元组和观点三元组。大量的实验结果与分析验证了我们的网格标注方案在细粒度观点抽取任务上的有效性。
06
—
参考文献
[1] Fan, Zhifang, et al. 'Target-oriented opinion words extractionwith target-fused neural sequence labeling.' Proceedings of the 2019Conference of the North American Chapter of the Association for ComputationalLinguistics: Human Language Technologies, Volume 1 (Long and Short Papers).2019.
[2] Peng, Haiyun, et al. 'Knowing What, How and Why: A NearComplete Solution for Aspect-Based Sentiment Analysis.' AAAI. 2020.
[3] Pontiki, Maria, et al. 'Semeval-2014 task 4: Aspect based sentimentanalysis.' Proceedings of the 8th international workshop on semanticevaluation (SemEval 2014). 2014.
[4] Pontiki, Maria, et al. 'Semeval-2015 task 12: Aspect basedsentiment analysis.' Proceedings of the 9th international workshop onsemantic evaluation (SemEval 2015). 2015.
[5] Pontiki, Maria, et al. 'Semeval-2016 task 5: Aspect basedsentiment analysis.' 10th International Workshop on Semantic Evaluation(SemEval 2016). 2016.
作者:吴震
编辑:刘莉,何亮