JRNN: Joint Event Extraction via Recurrent Neural Networks

[^2016.2]JRNN是非常具有影响力的一篇文章,它首次把神经网络模型应用到了Joint EE上(后面的许多paper都将该模型作为baseline)。

之前已经提到,[Li et. al. 2013]的最大问题是对于unseen word/feature的泛化能力较差,其原因在于只使用了手动制作的离散特征集;

而 2015.1 中的DMCNN尽管自动提取了能表达更多语义的特征,解决了泛化能力,但是pipeline架构又无法很好减轻误差传播的问题,其原因是没有像[Li et. al. 2013]一样沿用离散特征集。

2016.2 提出了将这些优势融合的BRNN with discrete features模型。该模型用两个RNN分别正/反向学习一个句子的表示,这样完成了 automatically generate features 的工作;另一方面,使用了一个记忆向量(for triggers)与两个记忆矩阵(for arguments)来分别存储triggers/arguments以及两者之间的依赖关系。模型结构如下:

在这里插入图片描述
具体来说,首先把每个词编码为由以下三类vector连接而成的向量:

  1. 查预训练的词向量表,获得当前单词的词向量
  2. 当前单词的Entity Type Vector,通过查找entity type embedding table获得(当然,完成这一步的前提是要在之前给每个句子中的单词分配一个entity type,论文里说是沿用了之前论文中的工作);
  3. Dependency Vector。一个0-1值向量,其长度与词在dependency tree中可能的关系数相同。这个向量中的第 i i i个元素的值表示了当前单词与第 i i i个单词是否在dependency tree中存在依赖关系。Embedding步骤完成后,把这些词向量按顺序喂给双向的RNN,考虑到梯度消失的问题,RNN中使用了GRU units

Encoding步骤完成后,开始使用获得的Embedding结果与Sentence Embedding进行Joint Prediction。具体地,第 i i i个预测步会执行以下操作:

  1. 预测第 i i i个单词 w i w_i wi是否是trigger以及它的trigger type,输出预测的结果 t i , t i ∈ T t_i, t_i\in T ti,tiT。其中 T T T是一个预先给定的trigger type集合,并加入了一个特殊type=others,即如果当前单词 w i w_i wi不被认为是一个trigger,则把这个特殊的type赋给 w i w_i wi
  2. 对于当前句子中所有的命名实体 e 1 , . . . , e j e_1,...,e_j e1,...,ej,预测该实体对于单词 w i w_i wi的Argument Role: a i j a_{ij} aij。如果该实体不是单词 w i w_i wi的argument,则同样使用一个特殊的Role Type: a i j = a_{ij}= aij=others。
  3. 更新当前步的三个记忆矩阵。在模型评估阶段,论文还比较了使用不同的Word Embedding方法下模型效果。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值