Backgrounds
- 目前常见的argument extraction依赖于NER,一般都是先进行NER,NER之后的结果再进行argument extraction,这样会导致出现error propagation。因为一旦NER出错,argument extraction就会出错;
- 忽略了不同论元角色之间的语义相似性。例如,在ACE2005数据集中,CONFLICT->ATTACK事件和JUSTICE->EXECUTE事件中的论元角色
PERSON
均指human being (who) is affected by an action.(某人被袭击了)。论文指出,如果不考虑论元角色之间的相似性会给模型的识别效果造成影响,尤其是对少样本(few shot)数据而言。 - 当前使用QA的方式进行NLP任务非常流行。
Contributions
首次提出使用Question Answering/MRC的方式来解决事件抽取问题;
使用QA的机制,能够克服在Background中提到的几个问题:
(1)一种End to End的方式,不需要进行NER;
(2)能够实现迁移学习,对于不同的事件之间相同的role,能够共享信息;
对于抽取某些event arguments能够实现zero-shot;
Terminology/Related Works
Model
Framework Overview
如上图所示即为模型运作的流程图。很明显的看出有两大工作需要完成:
- Question Generation;
- Question Answering,即
BERT_QA_Trigger
和BERT_QA_Arg
;
Question Generation Strategies
分为trigger question generation和argument question generation两个部分。
对于trigger question generation,使用下面四种固定形式的question:
- what is the trigger?
- trigger
- action
- verb
对于argument question generation,有下面4种可选的question:
- Template 1:Role Name
- Template 2:Type + Role
- Template 3:Incorporating Annotation Guidelines
- 在Template 1/2/3后面加上“in
”
这4类问题模板层层递进,以question的形式给模型引入更多、更精确的先验(语义)信息,让模型更清楚自己需要找什么。而这也是QA/MRC模型的优势。
Question Answering Models
对于$BERT_{Tr}$之后的结果,我们书写成$\bf E$,对于$BERT_{Arg}$之后的结果,我们书写成$\bf A1$。
BERT_QA_Trigger
经过BERT之后进行一层线性层。
$$
P_{tr} = softmax(\bf{EW}_{tr} \in \mathbb{R}^{T} \times N)
$$
BERT_QA_Arg
$$
P_{s}(i) = softmax(a_{i}W_{s})
$$
$$
P_{e}(i)=softmax(a_iW_e)
$$
Loss Function
minimize the negative log-likelihood loss