【论文笔记】用于事件抽取与生成的预训练语言模型

2019-11-28  本文已影响0人  公输昊少

本文通过构建按照角色进行分类的事件抽取模型来解决事件抽取中的角色重叠问题,模型中考虑了角色的重要性。此外,提出了一种对自动生成的样本数据进行评分,进而生成标注数据的方法。
论文原文的地址:https://www.aclweb.org/anthology/P19-1522.pdf

1.介绍

事件抽取的目标是识别事件触发词和事件论元。下图给出了包含一个“Meet”类型事件的句子,该事件的事件触发词为“meeting”,两个论元分别为“President Bush”以及“several Arab leaders”。


事件抽取举例.png

事件抽取中主要有两个需要解决:

2.模型

本文提出的模型结构如下图所示:


模型结构图.png

2.1 触发词抽取器

触发词抽取器的目标是预测一个单词能否出发一个事件。因而本文将触发词的抽取作为一个单词级的分类任务,只是利用BERT构建一个做分类器来作为触发词抽取器。模型的输入只有一句话,而且[CLS][SEP]分别被加到了句子的开头和结尾。
在很多例子中,事件的触发词是短语,因而,本文将具有相同预测标签的连续的多个单词看作一个触发词。本文利用交叉熵作为损失函数来进行模型的微调。

2.2 论元抽取器

论元抽取器的目标是根据事件触发词,抽取相关的论元以及论元所扮演的全部的角色。相对于触发词的抽取来说,论元的抽取更加复杂,主要有三个原因

为了解决后两个问题,本文添加了多组基于BERT的二分类器。每个分类器都用来判断一个角色的范围,也就是有哪些论元属于这一角色。

2.3 论元跨度的判定

本文用二分类器来判断一个词是否是一个论元的开头或者结尾,其中所判定的单词采用BERT embedding来表示。

2.4 损失函数重新赋权

本文首先计算识别论元开头的二分类器的交叉熵损失函数Ls的初始值和用于识别论元结尾的二分类器的交叉熵损失函数Le的初始值,然后将它们的平均值作为论元抽取器的损失的初始值。
考虑到不同类型的论元角色出现的频率不同,因而计算出角色频率RF和逆事件的发生频率IEF,并根据这两个值计算出某一角色在一个事件中的重要性。并将这个重要性运用到Ls和Le的计算中。

3.训练数据的生成

数据生成的流程图如下图所示。


数据生成的流程图.png

4.实验

本文采用ACE2005数据集作为实验数据,实验结果如下图所示:


实验结果.png

版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://ywsun.site/articles/11.html

上一篇 下一篇

猜你喜欢

热点阅读