其他分享
首页 > 其他分享> > 使用RNN的实体关系和文本推理链

使用RNN的实体关系和文本推理链

作者:互联网

原文:Chains of Reasoning over Entities, Relations, and Text using Recurrent Neural Networks
出版:arXiv:1607.01426 [cs.CL]
代码:https://rajarshd.github.io/ChainsofReasoning/

摘要

我们的目标是将符号逻辑推理的丰富的多步骤推理与神经网络的概括能力相结合。我们对文本和大规模知识库(KBs)中的实体和关系的复杂推理特别感兴趣。Neelakantan等人(2015)使用RNNs来组成KBs中多跳路径的分布式语义;然而由于多种原因,该方法缺乏准确性和实用性。
本文提出了三个重要的建模进展。
(1)我们学会联合推理关系、实体和实体类型;
(2)我们使用神经注意建模来纳入多个路径;
(3)我们学会在一个代表所有关系的逻辑组合的单一RNN中分享力量。
在一个大规模的Freebase+ClueWeb预测任务中,我们实现了25%的错误减少,而在稀疏关系上,由于共享强度,错误减少了53%。在WordNet中的推理链上,我们将平均量化的误差比以前的最先进水平降低了84%。

模型方法

共享参数

之前的方法对于每一个查询的关系进行建模,从而导致每个关系有不同的模型参数。作为改进,我们共享所有目标关系的关系类型表示和RNN的组合矩阵,使相同训练数据的参数数量更少。我们把这个模型称为Single-Model。其中的RNN的隐藏层的表达式如下所示:

从上面式子可以很容易看出,模型中参数与每个目标关系r是没有关系的,这种共享参数的模式

分数池

对于每一个待查询的实体对,存在多条待选择的路径。以往的方法是考虑最大匹配分数的路径,而忽略其他路径。这里我们将介绍分数池的方法,以将实体对之间的多条路径考虑在内。具体有如下三种方式:

Top-(k)

Top-(k)的核心是选择出K个匹配分数最高的路径,然后对其求平均,具体公式如下:

平均法

平均法则是将所有路径的匹配分数求平均,具体公式如下:

LogSumExp

本方法相较于直接求平均更加光滑,平滑地近似于max函数,具体计算公式如下:

合并实体

大多数的知识库(KBS)都为实体提供了带注释的类型,并且每一个实体有多个类型。我们可以将实体类型加入到RNN的输入,实体类型可以在训练中学习,并且我们限定一个实体的实体类型是KB中最频繁出现的7种类型。加入实体之后隐藏层公式如下:

模型性能

各类池化技术表现结果如下:

LogSumExp给出了最好的结果。这表明了考虑所有路径信息的重要性。然而,平均池化的表现最差,这表明根据路径的价值来衡量路径的得分也很重要。
我们接下来将SingleModel的性能与其他两个多跳模型(PathRNN和PRA)进行比较,这两种方法都是为每个查询关系训练一个单独的模型。
加入实体类型的表现如下:

见Single-Model-Types这一行,我们的方案取得的最佳的效果,即对知识库路径上的实体的类型进行建模可以提高推理性能。

标签:关系,路径,RNN,实体,如下,类型,文本,推理
来源: https://www.cnblogs.com/chaosliang/p/16475604.html