漸漸 看此月中和 換工作 r=h:destiny.to

作者:Wenyuan Zeng, Yankai Lin, Zhiyuan Liu , Maosong Sun

来源:2017 EMNLP

原文链接:原文链接

研究机构:Department of Physics, Tsinghua University, Beijing, China

State Key Laboratory of Intelligent Technology and Systems

Tsinghua National Laboratory for Information Science and Technology

Department of Computer Science and Technology, Tsinghua University, Beijing, China

源码链接:源码链接

转载请注明出处:学习ML的皮皮虾


Introduction

远程监督关系提取被广泛用于从纯文本中找到新的关系事实。预测一组两个目标实体之间的关系,现有的方法都是只依靠那些直接包含两个实体的句子。其实也有很多句子只包含一个目标实体,也提供了丰富的有用信息,但尚未被关系提取使用。为了解决这个问题,本文通过中间实体建立两个目标之间的推理链,并提出一种基于路径的神经关系抽取模型,对来自直接句子和推理链的关系语义进行编码。通过真实世界数据集的实验结果表明,这个模型可以充分利用只包含一个目标实体的句子,实现关系抽取得显著提升。

Motivation

知识库(KB)提供有效的结构化信息为现实世界事实和已被用作几种自然语言处理应用程序的关键资源作为网络搜索和问答。 典型地,诸如Freebase,DBpedia,YAGO等,通常将知识描述为多元数据,并将其表示为三元事实。 现有的大多数监督关系抽取系统受困于缺乏足够的已标注数据,为了解决这一问题,有人提出通过将文本对齐到知识库来自动生成训练数据。

虽然现有的关系抽取系统已经可以在远程监督和神经模型的帮助下自动生成训练数据,但这些系统仍然只能从包含两个目标实体的句子中学习。但是,有时候那些只包含一个实体的句子也可以提供有用的信息来帮助构建推理链。例如,如果我们知道“h是e的父亲”,而“e是t的父亲”,我们可以推断,h是t的祖父。

本文提出了一个基于关系路径的神经关系抽取模型, 该模型:

(1)采用卷积神经网络(CNN)来表示句子的语义

(2)基于关系路径编码器来度量文本中所给推理链的关系的概率

(3)结合来自句子和关系路径的信息来预测关系

大多数远程监督的方法都是启发式的,它们将传统监督学习的远程监督转变为一个实例对应一个标签的问题,而在现实中,一个例子可以在不同场景中对应多个标签,反之亦然。为了减轻这个问题,就有人提出将每个句子视为一个训练实例,并允许多个实例分享相同的标签,但不允许超过一个标签。

就关系路径模型来说,关系推理的大型知识库已经考虑了关系路径。路径排序算法(PRA)已经被采纳用于专家发现、信息检索等,并进一步用于基于知识库结构的关系分类。 也有使用循环神经网络来表示基于知识库里的所有相关关系的关系路径。2015年提出了一种基于向量的组合训练方法来连接三元组以完成知识库。 不同于以上知识库里的模型关系路径的工作,本文的模型旨在利用文本语料库中的关系路径,并帮助从纯文本直接提取知识。

Model

漸漸 看此月中和 換工作 r=h:destiny.to

给定一对目标实体,一组相应的包含该实体对的直接句子S = { s_{1},s_{2},...,s_{n} },以及一组关系路径P = { p_{1},p_{2},...,p_{m} },本文的模型目标是衡量这个实体对中每个关系的依赖性。

主要是三个部分:

(1)文本编码器。给定有两个相关目标实体的句子,我们使用CNN将句子嵌入一个语义空间,并测量所给句子中每组关系的概率。

(2)关系路径编码器。给定一个目标实体之间的关系路径,我们测量以关系路径为条件每个关系r的概率。

(3)联合模型。 我们整合来自直接句子和关系路径的信息,然后预测每个关系的依赖性。

  • Text Encoder
漸漸 看此月中和 換工作 r=h:destiny.to

首先,使用CNN从文本中提取信息。给定一个包含实体对的句子集合,我们首先将每个句子转换成其分布式表示,然后通过一个多实例学习机制使用最具代表性的句子来预测关系。

其次,我们将句子s中的单词{ {w_{1},w_{2},...,w_{l}} }转成维度d的向量。对于每一个词 w_{i} ,我们使用词向量来编码它的句法和语义含义,以及使用位置向量对其位置信息进行编码。再连接词向量和位置向量形成CNN的输入向量 w_{i}

然后,开始处理句子。在这个过程中有两个问题:第一,重要的信息可能出现在这个句子的任何一个地方;第二,,句子的长度l也可能有很大变化。因此,本文应用CNN对所有局部特征进行编码,而不管句长。我们先利用卷积层提取所有可能的局部特征,然后通过最大池化层选择最重要的一个。

最后,进行多示例学习,即对句子表示S应用一个softmax分类器来预测相应的关系。我们定义关系r的条件概率如下:

漸漸 看此月中和 換工作 r=h:destiny.to

其中 e_{i} 是e的一个组成部分,用来衡量这句话匹配关系 r_{i} 的效果如何,而 n_{r} 是关系数量。

而e可以从下面的式子计算得到:

漸漸 看此月中和 換工作 r=h:destiny.to

其中, U\in R^{n_{r}\times d_{c}} 是关系的系数矩阵, v\in R^{n_{r}} 是偏差向量。

本文使用多示例学习来缓解在远程监督下的错误标签问题,通过在所有直接句子S = { s_{1},s_{2},...,s_{m} }的集合中选择一个句子,它和实体对 (h,t) 相对应。定义该实体对的分数函数并且设置它的对应关系r作为最大值:

漸漸 看此月中和 換工作 r=h:destiny.to

其中E反映了我们从句子得到的直接信息。 我们也可以设置一个随机环境作为基准:

漸漸 看此月中和 換工作 r=h:destiny.to

其中 S_{i} 是随机从S中选取的。

  • Relation Path Encoder

我们使用关系路径编码器来嵌入关系路径的推理信息。 关系路径编码器测量文本中给定关系路径的每个关系r的概率。我们定义一个路径p1在(h,t)和{(h,e),(e,t)}之间,相应的关系为 r_{A}r_{B} 。每个(h,e)和(e,t)在文本中对应至少一个句子。我们的模型计算如下以p1为条件的关系r的概率:

漸漸 看此月中和 換工作 r=h:destiny.to

其中 O_{i} 是用来衡量关系r与关系路径 ( r_{A}r_{B} ) 匹配是否好。本文的模型首先将关系r转换到其分布式表示,即向量 r∈R^{d_{R}} ,并通过组合关系向量构建路径向量。 然后,相似 O_{i} 计算如下:

漸漸 看此月中和 換工作 r=h:destiny.to

因此,如果 r_{i} 更接近于( r_{A}+r_{B} ),那么ri的条件预测概率就变大。在这里,我们作出一个隐含的假设,如果ri在语义上类似于关系路径pi: h\rightarrow e \rightarrow t ,则 r_{i} 将是更接近关系路径( r_{A}+r_{B} )。最后,对于这个关系路径 P_{i}h\rightarrow e \rightarrow t ,我们定义一个关系路径得分函数:

漸漸 看此月中和 換工作 r=h:destiny.to

其中 E(h,r_{A},e)E(e,r_{B},t) 是用来衡量文本中的关系事实 (h,r_{A},e)

(e,r_{B},t) 的概率, p(r | r_{A},r_{B}) 是衡量给定关系路径 (r_{A},r_{B}) 的关系r的概率。

实际上,两个实体之间的路径通常有多重关系。 因此,我们定义了推断关系r和多个句子路径P之间的相关性:

漸漸 看此月中和 換工作 r=h:destiny.to

其中,我们用max操作过滤掉那些嘈杂的路径,并选择最具代表性的路径。

漸漸 看此月中和 換工作 r=h:destiny.to
  • Joint Model

给定任何实体对(h,t),这些句子S直接提及它们和它们之间的关系路径P,我们定义关于候选关系r的全局得分函数为:

漸漸 看此月中和 換工作 r=h:destiny.to

其中E(h,r,t | S)模型之间的相关性由直接句子中的r和(h,t)计算所得,G(h,r,t | P)模型建立关系r和几个句子路径P之间的推断相关性。 α等于(1-E(h,r,t | S))乘以常数β。这个术语用于描述直接句子和关系路径之间的相对权重,因为当CNN已经有了足够的预测时,我们不需要太多关注额外的信息,E(h,r,t | S)的预测值较大。

这个联合模式的优点之一是减轻错误传播的问题。来自文本编码器和关系路径编码器的信息不确定性的特征在于其依赖性,并且可以在这个联合模型步骤中进行整合和纠正。此外,由于我们以概率方式对待关系路径,我们的模型可以充分利用所有的关系路径,即那些已经拥有的和可能拥有的关系路径。

Dataset

本文构建了一个评估关系抽取任务的新数据集。

漸漸 看此月中和 換工作 r=h:destiny.to

以前的数据集是通过将Freebase与纽约时报语料库对齐而建立的。两个实体之间有53种可能的关系,包括意味着头部和尾部实体之间没有关系的特殊关系类型NA。

存在一些局限性:
第一,关系事实是从2009年的Freebase快照中提取的。因此,这个数据集太旧了,不能包含许多更新的事实。一些现实世界的事实从数据集中被遗漏并被标记为NA,所以这将低估关系提取系统的性能。

第二,这个数据集中的关系事实是分散的,即在这个数据集中没有足够的关系路径,而现实世界中的关系事实总是有联系的。

第三,Freebase在2016年之后将不再更新。这些限制意味着这个数据集对评估关系抽取系统有些不当。

所以新的数据集通过将维基数据库关系与纽约时报语料库对齐来构建数据集。维基数据库是一个庞大的,不断发展的知识库,其中包含超过8000万的三重事实和2000万个实体。与Freebase不同,维基数据库仍在维护中,可以通过API轻松访问。首先挑选那些同时出现在维基数据库和Freebase中的实体,以及与之相关的关系事实。然后,筛选出一个子集S,保留那些与99个最高频率关系相关的事实。这导致了4,574,665个三元组,1,045,385个实体和99个关系。

Experiment

  • Precision-Recall Curve比较:

这是Precision-Recall曲线:

漸漸 看此月中和 換工作 r=h:destiny.to

由此可见:

(1)我们的方法优于对应的方法,在几乎整个召回范围内实现更高的精度。他们还提高了20%的回收率,而不降低精度。这些结果证明了我们的方法的有效性。我们注意到,我们的方法在小召回值得情况下baselinse的改进相对较小,这对应于高预测置信度。这种现象是直观的,因为我们的联合模型可以动态地利用直接句子和关系路径的重要性,并且在依赖性高时倾向于信任文本编码器。

(2)随着召回量的增加,我们的模型与CNN相比,在百分比方面有了较大的提高。这是由于有时CNN不能从直接句子中提取可靠的信息,而我们的方法可以通过考虑来自推理链的更多信息来缓解这个问题,因此仍然保持高精度。

(3)CNN + max和Path +rand都是CNN + rand的变体,旨在缓解数据噪声的问题。我们看到Path + rand在所有范围内均优于CNN + max,这表明考虑路径信息是解决这个问题的更好的方法。同时,结合路径信息和最大操作,Path + max给出最佳性能。

  • Long Tail Situation比较:
漸漸 看此月中和 換工作 r=h:destiny.to

真实世界的数据遵循长尾分布(幂律)。在测试集中,我们也观察到一个事实,即大约40%的三重事实只出现在单个句子中,因此多实例关系抽取系统,如:CNN + max,只能依靠有限的信息,多实例机制不能正常工作。

从表3可以看出:

(1)合并关系路径对于预测关系确实有效,我们的模型有显着的改进与基线相比。

(2)当 N_{s} 很小时,Path + max对CNN+ max确实有了较大的改进,这与我们以前的预期是一致的。还要注意,Path + rand和CNN + rand之间的差距是相对恒定的。这是因为不管有多少句子与一个实体对相关联,这两种方法只使用一个随机句子。

Case study

漸漸 看此月中和 換工作 r=h:destiny.to

表4显示了来自测试数据集的一些代表性推理链。这些例子不能被原始的CNN模型正确预测,但后来用本文的模型进行了修正。

在第一个例子中,测试句不直接表达关系配偶,这个关系的证明在纽约时报的另一个上下文中出现。但是,使用路径#1和路径#2,我们可以很容易推断出Rebecca和Issac是配偶。

第二个例子也不显示关系。但在中间实体Dijibouti的帮助下,我们的模型预测,Somalia与Ethiopia分界。

但是这个推理链并不总是成立,但是我们的模型可以通过softmax操作很好地捕捉到这个不确定性。一般来说,我们的模型可以利用推理链的常识。即使推断不明确,它也有助于做出正确的预测。

Conclusion & Future Work

本文提出了一种对关系路径信息进行编码的神经关系提取模型。与现有的神经关系抽取模型相比,我们的模型能够利用既包含两个目标实体又包含一个目标实体的句子,并且对于噪声数据更具鲁棒性。实际数据集上的实验结果表明,与baselines相比,我们的模型在关系抽取方面取得了显着且一致的改进。

未来,我们将探索以下几个方向:

(1)我们将探索纯文本和知识库关系路径的组合来进行关系抽取。

(2)我们可以利用概率图模型或递归神经网络来编码关系路径之间更复杂的相关性,例如,用于关系抽取的多步关系路径。