论文笔记 ACL 2019|Exploring Pre-trained Language Models for Event Extraction and Generation

125 篇文章 12 订阅

1 简介

论文题目:Exploring Pre-trained Language Models for Event Extraction and Generation
论文来源:ACL 2019
论文链接:https://aclanthology.org/P19-1522.pdf

1.1 动机

  • 事件中的角色出现频率差异很大,在某些词上可能重叠,甚至共享相同的论元(角色重叠问题),在ACE2005数据集中有10%的事件存在角色重叠问题。
    在这里插入图片描述

  • 在以前的大部分工作中,如果一个论元在一个事件中同时表示多个角色,只要预测正确它们其中的一个,则分类正确。

  • 大部分基于深度学习的事件抽取方法是监督学习范式,需要大量的标注数据去训练。

1.2 创新

  • 提出了一个基于预训练语言模型的框架,包括一个事件抽取模型和一个带标签的事件生成方法
  • 利用现存的样本作为事件生成的原型,包括两部分:论元替换和附属token的重写

3 抽取模型

将事件抽取当作一个两部分的任务:触发词抽取和论元抽取,提出一个基于预训练语言模型的事件抽取模型,如下图:
在这里插入图片描述

3.1 触发词抽取

触发词抽取的目的是预测一个token是否触发一个事件。定义触发词抽取为一个token级别的分类任务,标签为事件的类型。触发器抽取器的输入遵循BERT,为三种编码的总和:WordPiece编码、位置编码和段编码。因为输入为一个句子,因此段编码为全0。在很多情形下,触发词为一个短语,因此将连续的相同预测标签的token视为一个完整的触发词。使用交叉熵作为loss函数。

3.2 论元抽取

给定触发词,论元抽取的目的是抽取相关的论元和它们所扮演的全部角色。比较触发词抽取,论元抽取是更加复杂的,因为三个原因:论元对触发器的依赖性、大多数论元是长的名词短语以及角色重叠问题。
论元抽取器也需要和触发词一样的三种编码,因为需要知道那些token组成触发词,因此段编码中触发词token的值为1.
为了克服论元抽取的后两个问题,在BERT里添加多个二分类器,每一个分类器为一个角色提供服务,以确定扮演它的所有论元的范围(每个范围包括开始和结束)。因为预测与角色分离,一个论元可以扮演多个角色,一个token可以属于不同的论元,角色重叠问题被解决。

3.3 确定论元区间

一个token t被预测为角色为r的论元的开始部分和结束部分的概率公式如下,其中s代表"start",e代表"end", β \beta β为BERT的编码。
在这里插入图片描述
在这里插入图片描述
对于每个角色r,根据 P s r P_s^r Psr P e r P_e^r Per可以得到两个值为0或1的列表 B s r B_s^r Bsr B e r B_e^r Ber。它们分别定义句子中的token是否是角色为r的论元的开头或者结尾(第i个token为开始,则 B s r [ i ] B_s^r[i] Bsr[i]=1)。下图算法按顺序检测每个token,以确定扮演角色r的所有论元的范围。
在这里插入图片描述
该算法包括下面三个状态,当前token为开始则从状态1转换到转换2;当前token为结束则从状态2转换到转换3;当前token为一个新开始则从状态3转换到转换2.如果同时出现两个开始(结束),则选择高概率的。

  1. 开始和结束都没被检测
  2. 仅检测到开始
  3. 检测到开始和结束

3.4 重新加权loss

定义 L s L_s Ls为检测论元开始的全部二分类器的loss函数,是输出概率和真实标签y的交叉熵的平均值,公式如下,其中CE为交叉熵,R为角色集,S为输入序列,|S|为S中的token数。
在这里插入图片描述
类似地,定义 L e L_e Le如下,最后取 L e L_e Le L s L_s Ls的平均值作为论元抽取的loss
在这里插入图片描述
由于角色出现的频率有很大的差异,这意味着在一个事件中角色有不同级别的重要性。这个重要性表示一个角色定义一个具体类型事件的能力。因此,根据角色的重要性重新加权 L s L_s Ls L e L_e Le,使用如下定义来衡量重要性。
定义角色频率为角色r出现在事件类型v的频率,其中 N v r N_v^r Nvr为角色r出现在事件类型v的数量。
在这里插入图片描述
为了衡量一个角色的全局重要性,定义IEF作为包含角色r的事件类型的对数比例翻转分数,公式如下,其中V为事件类型的集合。
在这里插入图片描述
最后,定义RF-IEF为RF和IEF的乘积: R F − I E F ( r , v ) = R F ( r , v ) × I E F ( r ) RF-IEF(r,v)=RF(r,v)×IEF(r) RFIEF(r,v)=RF(r,v)×IEF(r),测量一个在事件类型v中的角色r的重要性为:
在这里插入图片描述
选择三个事件类型,列出每个类型的两个最重要的角色。如下表,它展示尽管一些事件有多个角色,但仅一些是必需的。
在这里插入图片描述
给定输入的事件类型v,根据每个角色的重要性,重新加权 L e L_e Le L e L_e Le,公式如下:
在这里插入图片描述
最后取 L s L_s Ls L e L_e Le的平均值作为论元抽取的loss

4 训练数据生成

提出一个基于预训练语言模型的事件生成方法,结构如下图,通过编辑原型数据,该方法可以生成数量可控的带标签样本作为额外的训练语料库。主要包括三个部分:预处理、事件生成、评分。定义附属token为句子中不是触发词和论元的token,不仅包括单词和数字,而且包括标点符号。
在这里插入图片描述

4.1 预处理

首先收集ACE 2005数据集中的论元和它们的角色,其中重叠的论元不统计,因为这些论元通常是长的短语,包含太多的不期望的信息,使用它们进行论元替换可能带来更多不必要的错误。使用BERT作为目标模型重写附属token,在ACE 2005数据集的标记语言模型任务中微调,使其预测偏于数据分布。每次标记15%的token,目标是无监督地预测正确的token。

4.2 事件生成

事件生成分为下面两步,通过这两个步骤,可以获得一个带标注的新句子。

  1. 将原型数据的论元替换为相同角色的其他论元。
  2. 使用微调的BERT重写附属token
4.2.1 论元替换

角色在替换后是被继承的,所以我们可以对生成的样本使用原始标签。为了不大幅度地改变意思,我们使用相似性作为标准来选择新论元。基于下面两个原因:

  1. 扮演相同角色的两个论元可能在语义上存在显著差异
  2. 论点扮演的角色很大程度上取决于它的上下文。

因此应该选择有相似语义和连贯的上下文的论元。
使用编码的余弦相似度计算两个论元的相似度。由于ELMO可以处理OOV问题,因此使用它编码论元,公式如下,其中a为论元, ε \varepsilon ε为ELMO编码。选择10个最相似的论元作为候选集,对它们的相似度使用softmax分配概率。
在这里插入图片描述
为了偏向真实事件的表示,80%的论元被替换,20%的保持不变。同时触发词保持不变,避免不必要的依赖关系的偏离。

4.2.2 重写附属token

替换论元的结构已经可以被当作生成的数据,但是一样的上下文可能增加过拟合的风险。因此,为了平滑生成数据和扩展它们的多样性,使用微调的BERT重写附属token。
重写是为了替换原型数据中的一些附属token,替换为更符合当前上下文的新token,它为Cloze任务。一些附属token被随机标记,微调的BERT基于上下文,预测适当的token的词典id。使用参数m表示需要重写的附属token比例。
附属token重写是一个逐步的过程,每次标记15%的附属token([MASK]).然后输入到BERT得到新的附属token。尚未重写的附加token将暂时保留在句子中。根据图4(设置m=1.0)可以发现,尽管m为1.0仍保留了一些附属token。

4.3 评分

通过两个因素评测生成样本的质量:困惑度和与原始数据库的距离。前者展示生成数据的合理性,后者反应数据间的不同。
使用重写的附属token的平均概率作为生成的句子的困惑度,公式如下,其中A是S’中已重写的附加token集。
在这里插入图片描述
使用余弦相似度测量句子S’和数据库D的距离,公式如下,其中使用BERT编码句子,取第一个token[CLS]的编码作为句子的编码。
在这里插入图片描述
困惑度和句子的范围为[0,1],高质量的生成样本应该有低的困惑度和距离,因此,定义质量函数如下:
在这里插入图片描述

5 实验

使用的数据集为ACE 2005,不同于以前的工作,使用下面标准评测每个预测的事件提交正确性。

  1. 一个触发词的区间和类型与真实标签匹配,则该触发词预测正确。
  2. 一个论元的区间和它的全部角色与真实标签匹配,则该论元预测正确。

注意:论元的全部预测角色需要与真实标签匹配,而不是只匹配其中的一个角色。
实验结果如下图,其中PLMEE(-)为loss函数为全部类别输出的平均,PLMEE的loss为基于角色重要性进行重新加权。
在这里插入图片描述
主要有三个因素显著地影响抽取模型的表现:

  1. 生成样本的数量(表示为n,定义为生成的数量是数据集数量的倍数)
  2. 重写附属token的比例m
  3. 生成样本的质量

使用额外数据的实验结果如下图,PLMEE(+)表示PLMEE模型训练时使用额外的生成数据,其中m取0.4,n取1.0, λ \lambda λ取0.5。
在这里插入图片描述
通过比较生成样本和人工标注的样本,该生成方法的一个问题是角色可能偏移,因为仅重写几个附属token,语义就发生了很大变化。如下图,因为from被替换为for,drive to被替换为return from,导致生成数据的论元角色错误。
在这里插入图片描述

6 总结

  • 提出了一个基于预训练语言模型的事件抽取模型,为了克服角色重叠问题,该方法根据角色分离论元预测.(设置多个分类器)
  • 提出一个数据生成方法,以现存的事件为原型,通过论元替换和重写附属token,生成可控数量的带标签的样本。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hlee-top

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值