ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction

题目:Prompt for Extraction? PAIE: Prompting Argument Interaction for Event Argument Extraction

论文:https://arxiv.org/pdf/2202.12109v1.pdf

代码:https://github.com/mayubo2333/PAIE

0 摘要

  1. 提出了一个有效且高效的句子级和文档级事件论元抽取模型PAIE
  2. 引入两个span选择器,根据prompt在每个角色的输入文本中选择开始和结束token
  3. 通过多角色prompt捕获论元交互,并通过二分匹配损失进行最有span分配的联合优化

PAIE可以提取具有相同角色的多个论元,而不是传统的启发式阈值调整。

本文提出了一个类似QA的方法,能够一次抽取出所有argument,同时用prompt注入任务信息,模板与原文本有良好的交互。

1 引言

Event Argument Extraction事件参数提取(简称EAE)任务是事件抽取的一个子任务,可以分为句子和文档级别两种。任务的输入是:一句话或一篇文章,得到对应的触发词、事件类型、事件论元、论元角色。

如下图所示,句子或者文档的表示事件类型的触发词用标记标出,划线词表示论元,弧线表示论元类型。

在下图句子级别的事件抽取中,事件类型为交易(Sell),触发词为sell,论元Vivendi的角色为售货员(seller),Universal Studios、parks、company的角色为工艺品(artifact)。

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第1张图片

 EAE可分为两大类:

  1. 定义为语义角色标记问题,首先识别候选对象的span,然后对其角色进行分类(虽然联合模型可以共同优化它们,但对候选模型高度依赖,可能会存在误差传播的影响)
  2. 预训练模型,通过QA解决EAE和文本生成。基于QA的模型可以有效的识别特定问题的论元边界,而预测必须是一个接一个的。基于生成的方法对于生成所有的论元都有效,但是序列预测在长距离和多论元的情况下性能会有所降低。

本文的贡献如下:

  • 提出的PAIE可以高效且有效地解决句子级别和文档级别地事件论元抽取,并且在少样本地设置中表现出了鲁棒性;
  • 在抽取设置下制定和研究了prompt调优,通过联合选取优化片段选择;
  • 在三个benchmark上开展了大量的实验。PAIE表现出来良好的改善效果(在基础模型和大模型中F1的增长为3.5%和2.3%)。消融实验表明提出的模型对少样本设置的效率和泛化性,以及提示调优的有效性。

2 相关工作

Event Argument Extraction:识别候选论元→通过多分类为每个角色类型进行分类。事件论元抽取是事件抽取中的一个子任务。利用深度价值网络(DVN)来捕获事件抽取的跨事件依赖关系。将文档转换为非加权图,使用GAT减缓角色重叠问题。通过构造论元异构图来处理implicit论元和multiple events。DEFNN通过平行预测网络来预测论元。

  • 最近的做法是将事件论元抽取转换为抽取式的问答问题。这种范式通过问题模板将EAE任务转换为充分探索的阅读理解任务,自然地从预训练语言模型中引入语言知识。通过在模板中相互添加约束来考虑角色之间的隐式交互。也可以利用数据增强去提升性能。然而,这些只能逐个预测角色,效率较低的,通常会导致次优性能。
  • 在预训练模的Transformer架构帮助下,将最近的工作转换为文本输出任务。TANL通过统一的文本到文本的方法来处理各种结构化的预测任务,包括EAE,并在一次传递中提取所有论元。也可将EAE视为序列生成问题。为每种事件类型设计特定模板的目标生成模型。
  • 相比之下,本文通过设计一个二分图匹配损失(bipartite matching loss)prompt论元交互来指导plm和优化多重论元检测,不仅提高了对长距离论元依赖关系的理解,而且通过基于prompt的学习享有一个有效的过程。

Prompt-based Learning:与预训练-微调范式不同,基于prompt的方法将下游任务转换为与模型的训练前任务更一致的形式。Schick和Schutze(2021)通过用空白构建相关提示,并找到从特定填充的单词到预测类别的映射,将各种分类问题转换为封闭任务。Li和Liang(2021)专注于生成任务,并通过冻结模型参数和只调整连续的任务特定向量序列来提出轻量级的前缀调优。

  • 与上述针对分类或生成任务设计的prompt调优方法不同,我们提出的方法返回到线性头部设置,以更好地拟合提取任务。它有点类似于并发工作P-tuning v2。

3 模型

PAIE考虑多个论元和他们之间的关联,用prompt预训练语言模型进行联合抽取,提出了以下的模型进行关系抽取。包括以下三部分:prompt create、span selector decoding、span prediction。下面将prompt用于抽取并且依次介绍每一个部分。

最左边的prompt creation是利用事件类型、事件角色来构建模版,构建好的模版会作为decoder的输入。 中间的span selector decoding,主要是利用Bart的模型,结构上没有做创新。encoder的输入是文档或句子,decoder输出是event role的特征表示。 最右边的span prediction,负责预测论元对应的的开始和结束坐标。

3.1 制定抽取的prompt

现有的基于prompt方法主要关注于分类和生成任务。传统的提取目标被转换为生成任务。这带来了一个低效率的问题:即模型必须枚举所有的提取候选项。

例如,Cui et al. (2021) 设计prompt用于NER:[candidate span] is [entity type/not a] entity。模型需要使用候选的实体去填slot(就是[]内),然后查看语言模型的输出用于第二个slot的抽取。基于提示的方法可以被直接的应用于抽取吗?其基本思想和分类/生成相似,将插槽嵌入和标签词汇表与输入token进行比较。在此,给出了一般抽取提示的公式,并将其用于EAE进行案例研究。

  • Prompt Creation。给定上下文X和一系列查询 ,创建包含所有这些查询的联合提示符,其中 是prompt creator。

  •  Prompted Selector Decoding。给定预训练语言模型,上下文X,prompt ,解码query特定span选择器:

是prompt的第k个query,是预训练语言模型的输出。

  • Prompted Span Selection。为了找到最佳跨度,在上下文中为开始和结束token设计了两个选择器:
是第k个query的span, 是span选择器。这种公式优于生成提取,因为其考虑了跨度的相邻约束。

任务内容

将EAE任务表示为数据集D上的基于prompt的span提取问题。给定 instance ,X表示上下文, 表示触发词,e表示事件类型, 表示特定事件的角色的集合,目标是提取一组span A,每个 是X的分割,表示关于 的论元。

3.2 事件论元抽取的prompt的创建

为数据集D中的每个事件类型e创建prompt集合,每个prompt包含所有角色

例如在图2中,给定事件类型e为negotiate,角色集合s {Participant, Topic, Place},prompt定义为:

将prompt中提到的角色称为slot,在这个例子中有四个slot有下划线,这样的设计允许模型捕获不同角色间的隐式交互。

为了避免对具有相同角色的多个论元进行阈值调优,prompt可以为相同的角色使用多个slot,例如上面示例中的角色Participant。角色的slot数是根据训练数据集中每个角色的最大论元数启发式地确定的。我们设计了三种不同的prompt creator ,从一组角色集合到prompt的映射如下: 

手动模板(MA Template)。所有的角色都使用自然语言手动连接。

soft prompt(SF Prompt)。将不同的角色与可学习的、角色特定的伪token联系起来

连接模板(CA Template)。连接属于一个事件类型的所有角色名

在下表中给出了三种prompt类型的一个例子

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第2张图片

一些手动模板

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第3张图片

3.3 特定角色的选择器生成

给定上下文X和prompt ,该模块为prompt的每个slot k生成特定于角色的span选择器,将基于transformer的预训练语言模型BART作为预训练语言模型,有编码器和解码器

首先将 定义为特殊的token,然后插入到触发词前后

并没有直接处理上下文和prompt Pt,而是将进入bart编码器,进入bart解码器

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第4张图片

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第5张图片

表示面向事件的上下文表示,表示面向上下文的prompt表示。对于第k个联合提示中的slot,我们从h_{pt}中平均池化了他的对应的表示并且获取了角色特征\psi _k \epsilon R^h,其中h表示BART中隐藏层的维度。一个角色可能有多个slot和多个role feature以及多个span选择器。

我们在先前的基于QA的方法上采取了简单有效的改动,通过从提示中的每个角色特征\psi_k中推导出特定的跨度选择器

 是所有角色之间共享的可学习参数,表示元素级乘法。是prompt中第k个slot的跨度选择器。由于只有一个meta-head θ和简单的操作,我们的方法可以生成任意数量的特定角色的span选择器去从上下文中抽取相关的论元。从提示h_{pt}中回顾角色特征\psi_{k}的生成过程,很明显在这种范式下同时可以拥有不同角色之间的交互以及上下文和角色的聚合信息。

3.4 用prompt的span选择器进行学习

给定上下文表示和一组span选择器,每个的目标是从中最多提取相应的论元span。对于论元相关的,i和j是上下文中的开始和结束词索引,选择器被期望输出作为预测。若没有论元,(即上下文没有关于这个角色的论元或这个角色的slot数超过了论元数)它将输出表示空论元

首先遵循第3.1节的prompt提取公式来计算被选择为每个角色特征的论元的开始和结束的token分布 

其中logit_k^{(start)}logit_{k}^{(end)}表示上下文中每个slot的的开始和结束位置的概率分布,L表示上下文的文本长度。

计算开始和结束位置的概率:

 损失函数为:

其中D表示数据集中所有的文本,k表示提示中所有的slot。

二分图匹配的方法解决同一个role的argument的匹配问题。

如下图,首先要确保每个role的span 的坐标和ground truth要尽可能接近,也就是提取的词是对的

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第6张图片

 其次就是对于每个相同的role,预测的顺序可能和ground truth不一样,比如上图的Trump 和 Clinton。这里采用匈牙利算法进行匹配,预测的只要在ground truth中就认为是对的。

3.5 推理

在推理阶段,事件参数的候选跨度集定义为C= \{(i,j)|(i,j)\epsilon L^2,0<j-i\leq l\}\cup \{(0,0)\}。它包含所有小于阈值 l 的span,以及表示没有论元的特殊span(0,0)。我们的模型通过枚举和评分所有候选span来提取每个span选择器θk的论元,如下:

 slot k的预测span为:

由于prompt中的每个slot最多可以预测一个span,因此该策略避免了详尽的阈值调优。 

4 实验

数据集

ACL2022 PAIE: Prompting Argument Interaction for Event Argument Extraction_第7张图片

表2比较了我们的方法与所有基线模型,PAIE在所有数据集上都表现最好。

参考

论文分享 Prompt for Extraction? PAIE: Prompting Argument Interaction for Event Argument Extraction - 知乎
Prompt for Extraction? PAIE:Prompting Arguement Interaction for Event Argument Extraction_hithithithithit的博客-CSDN博客

论文阅读:PAIE交互式prompt事件抽取_ChillingDream的博客-CSDN博客

关于prompt:一文轻松入门Prompt(附代码) - 知乎

你可能感兴趣的:(人工智能)