前言:
事件抽取是由触发词和事件元素组成,目前来看,包括了提示学习的方法和传统方法
Execute 事件由“执行”一词触发,该事件包含三个参数角色,包括执行执行的代理(印度尼西亚)、被执行的人员(罪犯)和事件发生的地点
提示学习—22— DEGREE: A Data-Efficient Generation-Based Event Extraction Model
模型
模型构建
看到模型,大概就能知道七七八八了,在模板中,包括了实体类型的描述信息、事件关键词信息,事件模板信息,然后和原始passage一起feed 给encoder,由decoder解码产生输出序列。
具体的提示构建如下:
• 事件类型定义描述了给定事件类型的定义。1 例如,“事件与冲突和一些暴力的物理行为有关”。
• 事件关键字表示一些在语义上与给定事件类型相关的词。例如,战争、攻击和恐怖主义是 Conflict:Attack 事件的三个事件关键字。
• E2E 模板定义了可以分为两部分。第一部分称为 ED 模板,设计为“事件触发器为 ”,其中“”是用作占位符的特殊令牌。第二部分是 EAE 模板,它根据给定的事件类型而有所不同。
问题:那这个模型中时间类型、关键词的获取,还是需要依赖于大量的标注数据吧?比如,数据中需要标注出事件的类型信息这种。
训练
训练其实也很简单,如果句子中同一个角色有多个元素,则采用and连接,如果对应角色的placeholder没有元素,则保持‘some-’,即模板中的词,不做填充。
推理
将预测的字符串映射到原文本中最接近的那一个字符串。(原文:我们应用字符串匹配将预测字符串转换为文本中的跨度偏移量。如果预测字符串多次出现在段落中,我们选择所有匹配触发预测的跨度偏移,并选择最接近给定触发跨度的一个)
模板(手工构建)
文中也提出了其他的几种构建方式:
• 自然句。
• 带有特殊标记的自然句。例如,“ 出生于 。”我们认为这是为了研究角色的标签语义。
• 带有特殊标记的类似 HTML 的句子。为了研究使用自然句子的重要性,我们还考虑了类似 HTML 的句子,例如“ ”。该模型旨在将参数预测放在相应的 HTML 标记之间。
但是结论是:以自然语言风格编写模板可以获得更好的性能
pipeline model
文中,也讨论了pipeline形式下的model。分为两步,第一步是ED,trigger detection,模板是“Event trigger is
”,第二步是事件元素识别,模板是上图中EAE模板。
评估
评估采用的:
(1) Trigger F1-score:如果触发器的偏移与gold trigger span匹配,则正确识别触发器(Tri-I);如果其事件类型也与其类型匹配,则它被正确分类(Tri-C)。
(2) Argument F1-score:如果Argument的span和事件类型与gold ones 一致,则该自变量被正确识别(Arg-I);如果它的角色也匹配,则它被正确分类(Arg-C)
提示学习—21—Document-Level Event Argument Extraction by Conditional Generation
模型
Argument Extraction Model——使用条件生成模型进行参数提取,其中条件是未填充的模板和上下文。
但是需要注意的是,文章认为模板并没有对需要填充的做任何约束,但实际上,存在类型约束,比如,当She communicated with 时,的类型一般是人物,因此,提出添加类型约束。具体来说:为了纠正这个错误,我们以类型语句的形式为其参数填充附加“澄清”:是一个 。然后我们通过填充之后的模板的语言建模概率,重新排列候选输出。当有多个有效类型,我们取有效类型语句的最大概率
Keyword-Based Trigger Extraction Model——序列标注方法
Take class keywords as input, we refer to this model as TAPKEY
对于每一个实体类型,基于给出的关键词,我们首先得到一个类表示(keywords词向量表示的平均化),之后,通过CRF,得到标签,标签包括IO
这一分枝模型,我没有搞太明白
评估
两个子任务:argument extraction 、informative argument extraction
参数提取,我们使用中心词 F1(Head F1)和共同提及 F1(Coref F1)作为度量。
Head F1:标注的是head word
Core F1:标注的是事件的整个argument
传统范式—20— Biomedical Event Extraction as Sequence Labeling
核心方法是:多标签标注和多任务学习
事件编码
总体感觉是为事件这一任务重新设计的新的一套的编码结构,至于这套标注体系好坏,暂不做评论,对这一任务还没有掌握。
给定 [x1, …, xn] 一个包含 n 个标记的序列,我们将事件结构编码为标记级标签 [y1, …, yn],
每个标记 xi 的标签 yi 编码为元组 <d,r,h>,
其中 d ,指代标记及其提及类型(触发器、实体或无) ,
r 是关系,用于指代其角色,
head (h) 表示令牌所指的事件(图 2,底部)。更详细地说,为了区分文本中具有相同类型的事件头,将头 h 编码为相对头提及位置。 2 例如,h = +REG+1 表示头部是相对表面顺序中 d 右侧的第一个 +REGULATION,而 h = +REG-2 表示它是左侧的第二个 +REGULATION。在图 2 中,“生产”标签是 hEXPRESSION、THEME、+REG-1i,表示令牌是 EXPRESSION 触发器,即左侧第一个 +REGULATION 事件的 THEME。
模型
为每一个token分配一个label,label是由<d,r,h>构成。可以看到,label中包括了三部分,因此,作者根据此,将任务分为了单任务和多任务形式。
**单任务:**预测每个输入令牌的单个标签yi = <d,r,h>。标签空间为 L = |D| × |R| × |H|。
**多任务:**具有以下属性的四个多任务学习选项(任务对或每个子部分分别作为一个任务)
损失函数: standard softmax with a cross entropy loss
具体来说,对于多任务(MTL multi task loss),则采用加权方式计算,至于权重设置为1,对于单任务,则只有一个loss组成。
L
=
∑
λ
t
L
t
L=\sum \lambda_{t}L_{t}
L=∑λtLt
解码
选择P(l|e)>τ的作为label,如果没有大于τ的,则选择置信度最高的label作为这个的label。
训练
在实验阶段,有一个实验,是比较模型在abstract和full text上的表现的,实验结果显示,在full text效果较差。然后文中得到了一个结论:这证实了全文比摘要更难处理,因为它们在结构和内容方面存在差异(Cohen et al., 2010)。
另外一个实验时超参数τ的设置。
还有一个实验比较有意思,是错误类型的实验,文章中比较了不同错误类型所占的比例。
在触发词阶段,是没有预测出来的和超出预测的比较多,而在参数预测阶段,是没有预测出来的占的比重比较大。
提示学习—21— TEXT2EVENT: Controllable Sequence-to-Structure Generation for End-to-end Event Extraction
模型
我感觉是提示学习的范式,虽然,模板没有显式的说明。利用的还是generation的思想,T5模型。
具体来说,我们从仅生成“(标签,跨度)”子结构开始学习我们的模型(上图中的c图),包括“(类型,触发词)”和“(角色,参数词)”子结构。例如,我们将在此阶段提取图 2c 中的子结构任务为:(Transport returned)(Artifact The man)(Arrest-Jail capture)
实验
文中自己的baseline,没有包括文中给出的其他文件中的baseline,共有两个:
1)token-level annotation,在句子中用事件标签标记每个token,例如,“The/O dismission /B-End-Position of /O…”;
2) 并行文本记录注释,它只给出 <sentence、event> pairs,但没有昂贵的令牌级 注释,例如,
< The dismission of {Type: End Position, Trigger:dismission, …}>