文章目录
1 简介
论文题目:Jointly Multiple Events Extraction via Attention-based Graph Information Aggregation
论文来源:EMNLP 2018
论文链接:https://arxiv.org/pdf/1809.09078.pdf
代码链接:https://github.com/lx865712528/EMNLP2018-JMEE
1.1 动机
- 多个事件同时存在相同的句子中,抽取它们比抽取一个单独的事件更加困难,因为不同的事件可能互相有联系。在ACE2005数据集中,此类数据占26.2%(1042/3978)
- 以前的序列模型对于捕捉长的依赖关系是不高效的。
1.2 创新
- 提出了一个事件抽取框架JMEE,基于句法结构,以加强信息的流动和改善多个事件在同一个句子中的情况。使用GCN学习句法上下文表示,然后使用 self-attention mechanism联合抽取触发词和论元。
- 使用 self-attention mechanism聚集多个相互联系的事件之间的信息,并根据实验证明在事件抽取中是有用。
2 背景知识
- 使用依存分析等语法资源表示的shortcut arcs可以建立不同事件之间的联系,同时和序列相比,shortcut arcs可以减少两个事件触发词之间的转移过程。如下图,killed和barrage正常需要6步转移,但是在依存分析的shortcut arcs中仅仅需要三步。
- 论文提出的模型使用联合抽取,以避免误差传播。
- 同时,该论文在句子级别中抽取事件。原因有三个:1. 对于ace数据集中的33个事件类型,在文档级别的共现分布与句子级别类似(如下图)。2. 在句子级别中,有很多现成的工具,可以提供语言资源,如依存分析、语义角色标注、AMR parsing graphs等。3. 相比在不同句子中的事件,在相同句子中的事件有更加明确的关系。
3 方法
如下图,整个框架包括4个部分,分别是word representation、Syntactic Graph Convolution Network、Self-Attention Trigger Classification、Argument Classification。
3.1 word representation
每个token由下面4种向量拼接。
- 词编码向量,由Glove提供。
- 词性编码,随机生成。
- 位置编码,随机生成。
- 实体类型编码,句子中的实体使用BIO标注,若一个token具有多个实体类型,则其值取各个实体类型的和。
3.2 Syntactic Graph Convolution Network
该模块的输入为句子的句法解析树。在句法解析树上添加反向边和自环,第k层结点v的句法图卷积公式如下所示,其中K(u,v)为(u,v)边的类型,N(v)是v结点的邻居结点。
句法解析树由Stanford Parser工具产生,大约产生50种不同的关系,增加一层GCN的参数,和当前的数据规模不匹配,为了减少参数,使用下面公式来定义关系,共有三种类型。
不同类型的边在下游任务中具有不同的信息,同时生成的句法解析树也是有噪声的,因此增加一个门控机制,控制不同边的权重。
增加门控机制后,句法GCN的计算公式为
同时,由于k层的GCN聚集信息为K步,有时两个触发词之间的距离小于K,为了防止信息过度传播,加入highway units。公式如下
同时由于GCN的层数会限制捕捉附近信息的能力,而使用序列结构可以帮助附近信息的流通,而不增加GCN的层数。因此使用LSTM和GCN相结合,先将词向量经过LSTM处理后,在送入第一层GCN。公式如下:
3.3 Self-Attention Trigger Classification
对于聚合得到的信息,传统的事件抽取通常使用max-pooling或者它的变体。但是,在本模型中,max-pooling趋于产生相识的结果。同时,预测一个token的触发词标签,通常也要考虑其他的触发词候选者。为了联合相同句子的不同事件,使用self-attention机制聚合信息。
位置为i的self-attention分数由下面公式计算,norm为正则化操作
最后,将向量Ci接入全连接层和softmax来预测触发词的类别。公式如下:
3.4 Argument Classification
使用候选触发词向量Ti和实体向量Ej,经过全连接层来预测论元的类别。其中yai,j是第j个实体在第i个触发词的事件中扮演的角色。
对于错误的触发词,它的所有论元角色都是OTHER。
3.5 Biased Loss Function
由于ACE 2005的数据稀疏问题,顶下联合的损失函数如下。N是句子的数量,np, tp, ep分别是第p个句子中的token的数量、抽取得到的候补触发词和实体。I(yti)是标志函数,如果yti不是O,它将输出一个固定的大于1的数α,否则为1。β是一个超参数类似α。
4 实验
数据集为ACE 2005 ,使用Stanford CoreNLP处理数据,包括分词,分句,词性标注和生成依存分析树。实验结果如下图
同时将数据集分为1/1(一个句子中只有一个触发词或者一个论元只有一个角色)和1/N(除1/1的其余数据),以验证模型在多个事件中的效果。
self-attention机制的可视化效果,如下图。
5 总结
- 引入了句法解析树的信息,使用GCN编码,提高了在多事件情况下的效果。
- 通过偏差损失函数,联合抽取触发词和论元。