论文笔记&总结 | JRNN 事件抽取联合模型
原文:Joint Event Extraction via Recurrent Neural Networks (https://www.aclweb.org/anthology/N16-1034/)
读此文之前,应有一些事件抽取的概念基础。
摘要:事件抽取是信息抽取领域一个具有挑战性的任务。本文提出了一个基于循环神经网络的事件抽取联合模型,既避免了管道模型中的误差传播问题,同时也考虑到了事件触发词和事件元素之间的关系。
引言:
事件抽取:标识文本中的触发器以及其指定类型和触发器对应的事件元素。触发器通常是引起一个事件的动词或动名词,而事件元素是参与这个事件的相关实体。
对于相同的事件可能有不同的表达,对于同一个表达可能在不同的语义环境中表达不同的事件。
比如:
attack a stronghold / fight a stronghold 这两个同为攻击事件
I like the apple. 在不同的语义环境中,苹果的语义也不同,可以是水果也可以是手机
对于事件抽取的方法主要有两种:
(1)管道模型:首先识别事件触发器,之后再进行事件元素的识别。
(2)联合模型:同时预测句子的事件触发器和事件元素。
联合模型缓解了管道模型存在的误差传播问题,并考虑了事件触发器和事件元素之间的依赖关系。
事件抽取任务描述
ACE(Automatic Content Extraction)定义事件为:发生的事务或导致某个状态改变的事务。
Event mention: 事件发生的短语或句子,包含一个触发词和任意数量的事件元素
Event trigger: 能清楚表示事件发生的词
Event argument: 事件的参与者或者在事件中具有一个角色属性的实体信息。
(比如:人物、时间、地点、目标)
ACE事件类型包含8个大类和33个子类,每个子类都有固定的角色集需要事件元素来填充。
比如:死亡事件的角色包括地点、受害者、和时间。
所有事件的元素角色共有36种。
模型
上图为文章的模型图,先讲一下具体用到的定义:
定义:
句子的表示:W =w1w2 . . . Wn,其中Wi表示句子中的第i个单词
Entity mention的表示:E = e1, e2, . . . , ek .
(每个Entity mention包含两个部分:实体头部的偏移量和实体的类型。
分别用i1, i2, . . . , ik表示每个Entity mention ( e1, e2, . . . , ek )的最后一个单词的索引。)
对于每个单词Wi 判断它是否是一个触发词: 是→进一步判断它的事件元素
否→直接判断wi+1是否是触发词
整个模型分为两个阶段:编码阶段和预测阶段
对于编码阶段用到的词向量表示由三个部分组成:1.词向量编码
2.wi的实体类型编码
3.依存树的二维向量表示,向量维度取决于句子中所包含的依存关系。
之后用到了双向的GRU网络进一步提取了向量特征。
预测阶段:
为了同时抽取事件触发词和其对应的事件元素,创建了二进制记忆向量,分别是:
:trigger
这三个向量初始化为0,并在W的预测过程中更新。
输入:h1, h2, . . . , hn和初始化的记忆向量,联合预测阶段循环n次,对于每一次的
循环都进行以下几步:
(1)对于Wi的触发词预测
Step1:首先计算Wi的特征向量表示,由三部分组成:
- : wi的隐藏层向量
- : wi的局部上下文向量(将单词的向量连接到wi的上下文窗口d中生成)。
= [D[wi-d], . . . , D[wi], . . . , D[wi+d]].
- :上一步的记忆向量。
Step2:之后将得到的向量输入到一个一层的前馈神经网络中,并连接一个softmax分类器,最后得到触发器的类型ti。
(2)对于Wi的事件元素预测
首先判断触发器预测阶段的类别是否是other?是→将所有的候选事件元素的角色信息(????????????, ????=1 to k)置为other。
否→循环所有entity mention:e1, e2, . . . , ek。循环步骤为:
step 1.计算候选事件元素ej和wi的特征表示向量:
- : wi和ej的RNN隐藏层向量
- : wi和ej的局部上下文向量(将单词的向量连接到wi和w????????的上下文窗口d中生成)。
- :tokens i and 局部参数特征。
- 和:ej上一步的记忆向量。
step 2.之后同触发器预测的步骤,得到事件元素角色????????1,????????2,…,???????????? .
(3)计算记忆向量
Trigger Memory:
nT是触发器类型的数量。
在i时刻词向量表示之前已经识别到的事件类型。
Argument Memory:
nA是元素角色的个数。
表达了entity mention在i之前所扮演的元素类型
Argument/Trigger Memory:
表达了在i之前事件角色在哪些类型中已经出现过
输出:Wi对应的触发器类型ti,预测后的事件元素角色????????1,????????2,…,????????????以及当前步的三个记忆向量。
实验结果如下: