【文章来源】
Nguyen T H, Cho K, Grishman R. Joint Event Extraction via Recurrent Neural Networks[C]// Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. 2016:300-309.
【原文链接】
通过递归神经网络提取联合事件:http://www.aclweb.org/anthology/N/N16/N16-1034.pdf
事件提取是信息提取中特别具有挑战性的问题。这个问题的最先进模型要么在流水线框架中应用卷积神经网络(Chen等,2015),要么通过具有丰富局部和全局特征的结构化预测来遵循联合架构(Li 等,2013) 。前者能够基于单词的连续和广义表示从数据中自动学习隐藏的特征表示。另一方面,后者能够减轻流水线方法的错误传播问题,并通过离散结构利用事件触发器和参数角色之间的相互依赖性。在这项工作中,我们建议在具有双向递归神经网络的联合框架中进行事件提取,从而受益于两个模型的优点以及解决现有方法中固有的问题。我们系统地研究了联合模型的不同记忆特征,并证明了所提出的模型在ACE 2005数据集上实现了最先进的性能。
我们解决了事件提取(EE)的问题:在文本中识别指定类型的事件触发器及其参数。触发器通常是单个动词或规范化,它们会引发一些感兴趣的事件,而参数是参与此类事件的实体。这是自然语言处理(NLP)中信息提取的一项重要且具有挑战性的任务,因为同一事件可能出现在不同的表达式中,而一个表达式可能在不同的上下文中表达不同的事件。
EE有两种主要方法:(i)将事件触发器和句子参数同时预测为结构化预测问题的联合方法;(ii)首先执行触发器预测然后在不同阶段对参数进行识别的流水线方法。
最成功的EE联合系统(Li 等,2013)是基于具有大量局部和全局特征的结构化感知器算法。这些特性被设计用来捕获离散的结构,这些结构直观地对使用NLP工具包的EE有帮助(例如,部分语音标记、依赖和组成标记)。这种联合系统的优点有两个:(i)减轻从上游组件(触发器标识)到下游分类器(参数标识)的错误传播;(ii)通过全局特性从事件触发器和参数角色之间的相互依赖中获益。例如,考虑以下句子(摘自Li等(2013))在ACE 2005数据集中:
In Baghdad, a cameraman died when an American tank fired on the Palestine hotel. 在巴格达,当一架美国坦克向巴勒斯坦酒店开火时,一名摄影师死亡。
在这句话中,Die和fired分别是Die和Attack类型事件的事件触发器。在流水线方法中,参数分类器通常很容易认识到摄影师是Die事件的Target参数,因为摄影师和死在句子中的很接近。然而,由于摄影师远离被射击fired,流水线方法中的参数分类器可能无法将摄影师cameraman识别为具有其本地特征的事件Attack的Target参数。
尽管具有上述优点,但Li等人(2013)的联合系统在未见词/特征上缺乏泛化,无法提取EE的底层结构(由于其离散表示来自手工特征集)(Nguyen and Grishman, 2015b;Chen等,2015)。
迄今为止最成功的EE流水线系统(Chen等人,2015)通过动态多池卷积神经网络(DMCNN)解决了Li等人(2013)的联合系统的这些缺点。在这个系统中,单词连续(Bengio等,2003; Turian等,2010; Mikolov等,2013a)表示,并且DMCNN自动从数据中学习特征,从而减轻了看不见的单词/特性问题,并为给定数据集提取出更有效的特性。但是,由于Chen等人(2015)的系统是流水线操作的,因此仍然存在错误传播的固有局限性,无法利用事件触发器和参数角色之间的相互依赖关系(Li 等,2013)。最后,我们注意到在Chen等人(2015年)的研究中,并未考虑在EE(Li等人,2013)的先前研究中显示有用的离散特征。
在Li等(2013)和Chen等(2015)研究EE系统的这些特征的指导下,在本研究中,我们建议通过递归神经网络(RNNs)(Hochreiter和Schmidhuber,1997; Cho等人,2014)用联合方法解决EE问题,增加了离散特征,从而继承了两个系统的所有优点,并克服了它们固有的问题。据我们所知,这是第一次使用神经网络进行联合情感表达。
我们的模型涉及两个在正向和反向的句子上运行的RNNs,以学习更丰富的句子表示。然后利用这种表示来联合预测事件触发器和参数角色。为了捕获触发器和参数角色之间的相互依赖关系,我们引入了存储器向量/矩阵来在句子标记过程中的预测信息。
我们系统地探索各种记忆向量/矩阵以及不同的方法来学习联合模型的词表示。实验结果表明,我们的系统在广泛使用的ACE 2005数据集上达到了最先进的性能。
我们专注于自动上下文提取(ACE)评估的EE任务。 ACE将事件定义为发生的事件或导致状态的某些变化。我们使用以下术语:
• 事件提及:事件发生的短语或句子,包括一个触发器和任意数量的参数。
• 事件触发器:最清楚地表达事件发生的主要词。
• 事件参数:实体提及,时间表达式或值(例如,Job-Title),其作为参与者或属性在事件提及中具有特定角色。
ACE为事件提及注释了8种类型和33种子类型(例如,攻击,死亡,起始位置),这些事件也与事件触发器的类型和子类型相对应。每个事件子类型都有自己的角色集,由事件参数填充。例如,Die事件的角色包括Place,Victim和Time。所有事件子类型的角色总数为36。
给定英文文本文档,事件提取系统需要识别具有特定子类型的事件触发器以及与每个句子的角色相对应的参数。在之前的工作(Liao and Grishman,2011; Li et al。,2013; Chen et al。,2015)之后,我们假设提供(由ACE注释)候选参数(即实体提及,时间表达式和值)给事件提取系统。
我们将EE任务正式化如下:设是一个句子,其中n是句子长度,是第i个标记。另外,设是这句话中的实体提及(k是实体提及的数量,可以为零),提到的每个实体都带有头部和实体类型的偏移量。我们进一步假设分别是的提及头的最后几个字的索引。
在EE中,对于句子中的每个标记,我们需要为它预测事件子类型(如果有的话)。如果是某个感兴趣事件的触发词,那么我们需要预测每个提到的实体在此类事件中扮演的角色(如果有的话)。
图1 输入句子的联合EE模型“当一辆坦克在巴格达发射时,一名男子死亡”,局部上下文窗口d = 1。我们只在该图中展示了记忆矩阵。 绿色对应于当前步骤中“死亡”的触发候选者,而紫色和红色分别用于实体提及“男人man”和“巴格达Baghdad”。
在这项工作中事件提取的联合模型包括两个阶段:(i)应用递归神经网络的编码阶段,以诱导更抽象的句子表示;(ii)使用新表示执行事件的预测阶段W的触发器和参数角色同时识别。图1显示了该模型的概述。
3.1.1 句子编码
在编码阶段,我们首先使用以下三个向量的串联将每个标记变换为实值向量:
1. 的单词嵌入向量:这是通过查找预训练的单词嵌入表D(Collobert和Weston,2008; Turian等,2010; Mikolov等,2013a)获得的。
2. 实体类型为的实值嵌入向量:该向量是根据先前的工作(Nguyen和Grishman,2015b)推动的,并通过查找实体类型嵌入表(随机初始化)为的实体类型生成。注意,我们还使用BIO注释模式,使用Nguyen和Grishman (2015b)提到的实体的头,为句子中的每个标记分配实体类型标签。
3. 二进制向量,其维度对应于依赖树中单词之间的可能关系。仅当在W的依赖性树中存在与连接的对应关系的一个边时,才将该向量的每个维的值设置为1。该向量表示在先前的研究中显示有用的依赖性特征(Li等人,2013)。
请注意,我们不使用相对位置特征,不像以前的EE神经网络工作(Nguyen和Grishman,2015b; Chen等,2015年)。原因是我们共同预测了触发器和参数角色的整个句子,因此在句子中没有固定的锚定位置。从令牌到向量的转换实质上将输入句子W转换成实值向量序列,以便由递归神经网络用来学习更有效的表示。
3.1.2递归神经网络
考虑输入序列。在每个步骤i,我们基于当前输入向量和先前隐藏向量,使用非线性变换函数计算隐藏向量。这种循环计算在X上完成,以产生隐藏的矢量序列,表示为。
循环机制的一个重要特征是它自适应地将位置1到i的上下文信息累积到隐藏矢量中,使成为丰富的表示。然而,对于位置i处的事件触发和参数预测是不够的,因为这样的预测可能需要依赖于将来的上下文信息(即,从位置i到n)。为了解决这个问题,我们在从Xn到X1的反方向上运行第二个RNN,以生成第二个隐藏的向量序列:
其中总结了从位置n到i的上下文信息。最后,我们通过连接和中的隐藏向量来获得X的新表示。请注意,基本上将上下文信息封装在整个句子上(从1到n),更多地关注位置i。
关于非线性函数,文献中最简单的Φ形式将其视为单层前馈神经网络。不幸的是,这个函数容易出现“消失梯度”问题(Bengio等,1994),这使得正确训练RNNs变得具有挑战性。这个问题可以通过长期短期记忆单位(LSTM)来缓解(Hochreiter和Schmidhuber,1997; Gers,2001)。在这项工作中,我们使用LSTM的变体;称为Cho等人(2014)的门控循环单元(GRU)。GRU已被证明可以达到相当的性能(Chung等,2014; Jozefowicz等,2015)。
为了联合预测W的触发器和参数角色,我们为触发器建立了一个二进制存储器向量,为参数(对每个i)维护二进制存储器矩阵和。这些矢量/矩阵最初被设置为零(i = 0)并且在W的预测过程期间被更新。
在编码阶段和初始化的存储器矢量/矩阵中给定双向表示,联合预测过程循环句子中的n个标记(从1到n)。在每个时间步骤i,我们按顺序执行以下三个阶段:
(i)触发对的预测。
(ii)关于当前令牌,所有实体的参数角色预测都提到了。
(iii)使用先前的存储器矢量/矩阵,计算当前步骤的,以及早期阶段的预测输出。
该过程的输出将是的预测触发子类型,预测的参数角色和用于当前步骤的内存向量/矩阵。请注意,如果是某些感兴趣事件的触发词,则应该是事件子类型,或者在其他情况下是“其他Others”。相比之下,应该是实体提及的关于的参数角色,如果是一个触发器词,是相应事件的参数,否则被设置为“Other”(j = 1到k)。
3.2.1 触发预测
在当前标记的触发预测阶段,我们首先使用以下三个向量的串联来计算的特征表示向量:
•:用于封装输入句的全局上下文的隐藏向量。
•:的本地上下文向量。是通过连接单词在上下文窗口d中的向量而产生的:
•:上一步的记忆向量。
然后将表示向量馈送到前端神经网络Ftrg中,最后用softmax层计算概率分布超过可能的触发子类型:,其中t是触发子类型。最后,我们通过以下公式计算的预测类型:。
3.2.2 参数角色预测
在参数角色预测阶段,我们首先检查前一阶段中预测的触发子类型是否为“Others其他”。如果是,我们可以简单地为所有j = 1到k设置为“Other”并立即进入下一阶段。否则,我们我们循环实体提及。对于每个实体提及头部的索引为,我们使用以下过程预测关于触发词的参数角色。首先,我们通过连接以下向量为和生成特征表示向量:
• 和:隐藏的向量,分别捕获和的输入句子的全局上下文。
• :和的本地上下文向量。是和的大小为d的上下文窗口中的单词向量的串联:
• :二进制特征向量的隐藏向量。基于令牌i和之间的局部参数特征(Li 等,2013)。然后通过将馈送到前馈神经网络以进一步抽象来计算:。
• 和:从上一步骤中的记忆矩阵和中提取的的记忆向量。
在下一步中,我们再次使用一个带有softmax层的前馈神经网络来转换进入概率分布超过可能的参数角色:,其中a是参数角色。最终,和的预测论证角色是。
注意,二元向量丰富了用于参数标记的特征表示,其具有在先前关于EE的特征分析的工作中发现的离散结构(Li等人,2013)。这些功能包括最短的依赖路径,实体类型,子类型等。
3.2.3 记忆向量/矩阵
EE的一个重要特征是在同一句子中存在触发器标签和参数角色之间的依赖关系(Li等,2013)。在这项工作中,我们将这些依赖关系编码到记忆向量/矩阵(i = 0到n)中,并将它们用作触发器和参数预测中的特征(如上面的表示向量所示和)。我们将依赖项分为以下三类:
1. 触发子类型之间的依赖性:由存储器矢量捕获(,,并且nT是可能的触发子类型的数量)。在时间i,指示在i之前已识别出哪些事件子类型。我们从获得并且在时间i获得触发预测输出:如果且为otherwise,则。
这种依赖关系的动机是,如果Die事件出现在句子的某个地方,则可能发生后来发生Attack事件的可能性。
2. 参数角色之间的依赖关系:由存储矩阵编码(,,nA是可能的参数角色的数量)。在时间i,总结了实体提及的过去与某些事件有关的论点角色。特别是,当且仅当在时间i之前具有某个事件的角色时,。i是从计算出来的,在时间i预测输出ti和:如果,则。
3. 参数角色和触发子类型之间的依赖关系:由存储矩阵()编码。在时间i,指定哪个实体提到已被识别为之前的事件子类型的参数。特别是,当且仅当被检测为i之前的某个子类型t事件的参数时。 由计算,在时间i的触发预测输出ti:,则。
在训练时间内将W的给定触发子类型和参数角色表示为和。我们通过最小化触发器和参数角色的联合负对数似然函数C来训练网络:
其中I为指标函数。
我们应用具有小批量的随机梯度下降算法和AdaDelta更新规则(Zeiler,2012)。使用反向传播计算梯度。在训练期间,除了权重矩阵之外,我们还优化了单词和实体类型嵌入表以实现最佳状态。最后,我们对Frobenius规范超过超参数的权值进行了重标(Kim, 2014;Nguyen和Grishman, 2015a)。
在之前的工作(Nguyen和Grishman,2015b; Chen等人,2015)之后,我们预先训练大型语料库中的单词嵌入并使用它们初始化单词嵌入表。Mikolov(2013a; 2013b)等人提出了训练单词嵌入的模型之一,引入了两个对数线性模型,即连续袋文字模型(CBOW)和连续跳图模型(SKIP-GRAM)。 CBOW模型试图基于上下文单词向量的平均值来预测当前单词,而SKIPGRAM模型旨在预测给定当前单词的句子中的周围单词。在这项工作中,除了CBOW和SKIP-GRAM模型之外,我们还研究了基于串联的CBOW变体(C-CBOW)来训练单词嵌入,并比较这三个模型以了解它们对EE的有效性。C-CBOW的目标是使用周围单词的向量的串联来预测目标单词。
对于下面的所有实验,在编码阶段,我们使用50个维度用于实体类型嵌入,300个维度用于单词嵌入,300个单位用于RNN的隐藏层。
关于预测阶段,我们使用大小为2的上下文窗口用于局部特征,并且前馈神经网络具有用于F trg,F arg和F binary的一个隐藏层(隐藏层的大小是600,600和300)最后,对于训练,我们使用小批量大小= 50,Frobenius规范的参数= 3。
这些参数值要么继承自先前的研究(Nguyen和Grishman,2015b; Chen等,2015),要么根据验证数据进行选择。我们使用word2vec工具包预先训练英语Gigaword语料库中的嵌入词(修改为添加C-CBOW模型)。关注Baroni等人 (2014),我们使用大小为5的上下文窗口,设置为1e-05的频繁字的子采样和10个负样本。
我们使用ACE 2005语料库评估模型。出于比较的目的,我们使用与先前工作相同的数据分割(Ji和Grishman,2008; Liao和Grishman,2010; Li等人,2013; Nguyen和Grishman,2015b; Chen等人,2015)。该数据分组包括用于测试集的40个新闻专线文章(672个句子),用于该开发集的30个其他文档(836个句子)和用于该训练集的529个剩余文档(14,849个句子)。此外,我们遵循先前工作的标准(Ji和Grishman,2008; Liao和Grishman,2010; Li等,2013; Chen等,2015)来判断预测事件提及的正确性。
本节评估第3.2.3节中介绍的存储器矢量和矩阵的有效性。特别地,我们在不同情况下测试联合模型,其中用于触发Gtrg的存储器向量和用于参数Garg / trg和Garg的存储器矩阵被包括在模型中或从模型中排除。由于有4种不同的方法可以将Garg/trg和Garg用于参数标记,还有两种方法可以将Gtrg用于触发器标记,因此我们总共有8个系统进行比较。表1报告了开发集上触发器和参数角色的标识和分类性能(F1分数)。请注意,我们在本节中使用了使用C-CBOW技术训练的嵌入词。
表1开发集上的存储器向量/矩阵的性能。No表示不使用记忆向量/矩阵
我们观察到记忆向量Gtrg对联合模型没有帮助,因为它会恶化触发器和参数角色的性能(考虑到内存矩阵Garg / trg和Garg的相同选择(即表中的同一行),除了与Garg / trg + Garg的行)。
最明显的趋势是Garg / trg在提高参数标签的性能方面非常有效。包含和排除Gtrg都是如此。另一方面,Garg及其与Garg / trg的组合对此任务产生负面影响。最后,Garg / trg和Garg对触发器标签性能的贡献不大(除了Gt,Garg / trg和Garg都应用的情况除外)。这些观察结果表明,触发子类型之间和参数角色之间的依赖关系不够强大,无法对此数据集中的联合模型有所帮助。这与参数角色和触发子类型之间的依赖性形成对比,触发子类型显着改善了联合模型。最好的系统对应于存储矩阵Garg / trg的应用,并将在下面的所有实验中使用。
我们研究了在EE联合模型中获取初始化预训练词嵌入的各种技术。表2显示了当使用CBOW,SKIP-GRAM和CCBOW技术从同一语料库中获取单词嵌入时,开发集上的性能(对于触发器和参数角色)。我们还报告了联合模型在使用Mikolov(2013a; 2013b)等人的Word2Vec字嵌入初始化时的性能(使用Google新闻上的Skip-gram模型进行培训)(WORD2VEC)。最后,为了比较,还包括随机字嵌入(RANDOM)的性能。所有这些词嵌入都是在模型的训练过程中更新的。
表2 词嵌入技术的性能
表中的第一个观察结果是,RANDOM不足以初始化joint EE的嵌入字,我们需要为此目的借用一些预先训练过的字嵌入。其次,SKIP-GRAM,WORD2VEC和CBOW在触发标记方面具有可比性,而在联合EE模型中,SKIP-GRAM和WORD2VEC的参数标记性能明显优于CBOW。第三,也是最重要的是,在两个词的比较中,C-CBOW的表现明显优于其他所有词。我们认为CCBOW的更好性能来自于多重语境词向量的串联,从而提供了比SKIPGRAM和WORD2VEC更多的信息来学习更好的词嵌入。另外,连接机制本质上有助于为不同的上下文单词分配不同的权重,从而比CBOW为所有上下文单词应用单一权重更加的灵活。
从现在开始,为了保持一致性,C-CBOW将用于以下所有实验中。
ACE 2005数据集中最先进的EE系统是Chen等人(2015)设计的具有动态多池卷积神经网络的流水线系统和Li等人(2013)设计的具有结构化预测和各种离散局部和全局特征的联合系统(Li’s structure)。
值得注意的是,Chen等人(2015)的流水线系统也是EE基于神经网络的最佳报告系统。表3将这些最先进的系统与本文中基于联合rnnn的模型进行了比较(用JRNN表示)。为了完整起见,我们还报告了以下代表性系统的性能:
1)Li的基线:这是Li等人(2013年)的具有局部特征的流水线系统。
2)Liao的交叉事件:是Liao和Grishman(2010)关于文档级信息的系统。
3)Hong的跨实体(Hong 等,2011):该系统利用跨实体推理,也是文献中报道最好的具有离散特征的流水线系统。
表3 盲测数据的整体性能。“†”是指在句子层面以外使用证据的体系。
从表中可以看出,JRNN在所有比较模型中都获得了最佳F1分数(包括触发器和参数标记)。这与参数角色标记性能(Chen等人(2015)中最佳报告模型DMCNN的改进率为1.9%)具有显著性,并证明了具有RNNs和记忆特征的联合模型在这项工作中的益处。此外,由于JRNN在Li et al.(2013)中显著优于具有离散特征的联合模型(触发器和参数角色标记分别提高1.8%和2.7%),我们可以确认RNN学习EE有效特征表示的有效性。
为了进一步证明JRNN的有效性,特别是对于那些具有多个事件的句子,我们根据句子中的事件数量(即单个事件和多个事件)将测试数据分为两部分,并分别对性能进行评价,跟随Chen等人(2015)。由表4可知,JRNN、DMCNN以及Chen等人(2015)的另外两个基线系统Embeddings+T和CNN的表现(F1得分)。Embeddings+T在(Li et al., 2013)中使用了单词嵌入和传统的语句级特征,而CNN类似于DMCNN,只是它使用了标准的池机制而不是动态的多池方法(Chen et al., 2015)。
表4 单个事件句(1/1)和多个事件句(1/N)的系统性能。
表中最重要的观察结果是,当输入句子包含多个事件时(即表中标有1/N的行),JRNN明显优于所有其他具有大边距的方法。特别是,JRNN在触发标记方面比DMCNN好13.9%,而参数角色标记的相应改进为6.5%,从而进一步表明JRNN具有记忆功能的好处。在单事件句的表现上,JRNN在触发标记上仍然是最好的系统,尽管在参数角色标记上比DMCNN差。这可以部分解释为这样一个事实,即DMCNN包含了参数的位置嵌入特性,并且在JRNN中内存矩阵Garg/trg在此事件中不起作用。
关于事件提取的早期研究主要集中在流水线架构中的局部句子级表示(Grishman等,2005; Ahn,2006)。之后,我们研究了更高级别的特性来提高性能(Ji和Grishman,2008; Gupta和Ji,2009; Patwardhan和Riloff,2009; Liao和Grishman,2010; Liao和Grishman,2011; Hong等,2011; ; McClosky等,2011; Huang和Riloff,2012; Li等,2013)。此外,最近的一些研究提出了EE的联合模型,包括基于马尔可夫逻辑网络的方法(Riedel等,2009; Poon和Vanderwende,2010; Venugopal等,2014),结构感知器(Li等,2013; Li等,2014b)和双重分解(Riedel等人(2009; 2011a; 2011b))。
神经网络在情感表达中的应用是最近才出现的。特别是Nguyen和Grishman (2015b)通过CNNs研究领域适应和事件检测,而Chen等人(2015)在流水线框架下为EE应用动态多池CNNs。然而,这些工作中没有一项像我们在这项工作中所做的那样使用RNNs来执行联合EE。
我们提出了一个基于双向RNN进行EE的联合模型,以克服以前模型对此任务的限制。我们引入了可以有效捕获参数角色和触发子类型之间依赖关系的记忆矩阵。我们证明了基于连接的CBOW字嵌入变体对关节模型非常有用。实验结果表明,所提出的联合模型对具有多个事件的句子有效,并在ACE 2005数据集上获得了最先进的性能。未来,我们计划将该联合模型应用于KBP评估的事件参数提取任务,并将其扩展到其他联合任务,如提及检测和关联提取等。