1、总述
事件检测旨在从给定的文本中识别事件触发词,并将其分类为事件类型。目前事件检测的大多数方法在很大程度上依赖于训练实例,而几乎忽略了事件类型之间的相关性。因此,它们往往会面临数据匮乏的问题,并且无法处理新的未见过的事件类型。
为了解决这些问题,我们将事件检测重构成事件本体填充的过程:将事件实例链接到事件本体中的预定义事件类型,并提出一种新颖的借助本体嵌入进行事件检测的框架——OntoED。我们通过建立事件类型之间的联系来丰富事件本体,并进一步推理出更多的事件对之间的关联。
OntoED可以基于事件本体实现事件知识的利用和传播,特别是从高资源传播到低资源的事件类型。此外,OntoED可以通过建立未知事件类型与现有事件的链接,实现对新的未见事件类型的检测。
2、方法
具体来说,OntoED模型分为三阶段:
(1)事件本体填充
在这一阶段,初始的事件本体包含孤立的事件类型和事件实例,这一步就是为了建立起事件类型和事件实例的初始关联,并建立起事件实例之间的联系。
Instance Encoder:我们利用BERT得到事件实例的表示 ;
Class Encoder:每个事件类型由事件原型 表示,初始的事件原型是通过计算事件实例表示的均值得到;
Event Detector:通过计算事件实例表示 和事件原型 之间的向量距离进行事件检测;
Instance Relation Extractor:抽取事件实例之间的关系。我们利用 来建模两个事件实例表示之间的相互作用,并用softmax进行关系分类。
(2)事件本体学习
在事件本体学习阶段,通过事件实例之间的联系建立起事件类型之间的联系,以得到更为丰富的事件本体。
Ontology Completion:主要包含建模事件实例的内部结构(Instance-to-class Linking)以及事件类型之间关联的外部结构(Class-to-class Linking)。
Ontology Embedding:主要包含原型传播和原型更新。在原型传播阶段,每个事件原型会传播到与它邻接的事件原型上,我们用 的矩阵 来表示事件对之间的关系;在原型更新阶段,每个事件原型的表示更新成自身原本的原型表示与邻接原型传播得到表示的加权平均。
传播到每个事件原型的表示:
事件原型更新后的表示:
(3)事件关联推断
在事件关联推断阶段,通过上一阶段得到的事件之间的关联推断出更多事件对之间的联系,比如,(e1, CAUSE, e2) → (e1, BEFORE, e2);(e1, BEFORE, e2) ∧ (e2, BEFORE, e3) → (e1, BEFORE, e3)。
给定grounding ,我们通过计算它的得分来判断事件之间关联推断成立的可能性。
这里我们主要考虑了本体语言OWL2中所定义的关系的对象属性:
并利用线性映射假设对关系矩阵的表示进行约束:
最后通过计算grounding左右两边关系矩阵的表示差异来得到grounding的得分,也就是可以通过grounding右边的事件关联推断出grounding左边新的事件关联的可能性。
3、实验
(1)数据集
为了验证OntoED的效果,我们构造了包含事件之间关系的事件抽取数据集——OntoEvent(数据集链接已给出,详细的数据统计在论文的支撑材料里)。
(2)实验结果
我们分别在全量样本、少样本、零样本的数据上做了实验。实验表明,OntoED比以往的事件检测方法效果更佳,尤其是在低资源的情况下。
编辑:jq
全部0条评论
快来发表一下你的评论吧 !