基于关系路径的知识库表征学习

原文: Modeling Relation Paths for Representation Learning of Knowledge Bases
出版: arXiv:1506.00379 [cs.CL]
代码:https://github.com/Mrlyk423/Relation_Extraction

摘要

知识库的表示学习旨在将实体和关系嵌入到低维空间中。现有的大多数方法在表征学习中只考虑直接的关系。
我们认为多步关系路径也包含丰富的实体间推理模式,并提出了一个基于路径的表征学习模型。该模型将关系路径视为实体间的翻译,解决了两个关键问题:
(1)由于不是所有的关系路径都是可靠的,我们设计了一个路径约束的资源分配算法来度量关系路径的可靠性。(2)我们通过关系嵌入的语义组合来表示关系路径。
真实数据集上的实验结果表明,与基线相比,该模型在知识库完备化和文本关系抽取方面取得了显著且一致的改进。

模型

模型来源

本文将传统的TransE算法扩展到了关系路径的学习,称之为PtransE。TransE只考虑头实体和尾实体之间直接的关系连接,而Ptranse不仅考虑直接的关系连接,还考虑头尾实体之间的多条关系路径连接。具体如下图所示:

核心问题

因为PTransE将关系路径引入到知识表征,所以需要解决以下两个核心问题:关系路径的选择与表征。

  1. 关系路径可靠性。
    实体对之间的关系路径有很多条,并不是每一条路径都是可靠的,需要选择适当的算法来选择可靠的关系路径。
    在实验中我们发现在实体对之间那些更大可能性被指向的尾实体是不太可靠的。由此,我们在文中提出了一种路径约束的资源分配算法来度量关系路径的可靠性。
  2. 关系路径表征方式。
    如果需要考虑关系路径,就需要将其投影到低维度的向量空间。对于关系路径,可以直接使用路径上的所有关系的序列来表示,如(r1, r2, ..., rl),现在需要定义与学习一种二元运算(o)来将这一个关系序列向量化。

能量函数

对于每一个三元组(h, r, t),我们定义的能量函数如下:

其中前面部分和TransE的能量函数计算方式一致,如下:

后面部分则是如下的定义:

其中R(p|h, t)是关系p对于实体对(h, t)的置信度,而Z则是该实体对的所有路径的置信度总和;所以这两项合在一起可以解释为关系p置信度的正则化。而最后一项E(h, p, t)则与E(h, r, t)计算方式类似。

关系路径可靠性

我们提出了一种路径约束资源分配算法(PCRA)来度量关系路径的可靠性。基本思想是,假设一定量的资源与头实体h相关联,并且将沿着给定的路径p流动,我们使用最终流向尾实体t的资源数量来衡量路径p作为h和t之间有意义的连接的可靠性。
对于任意实体,其对于关系ri的前驱实体集合与后继实体集合表示如下图(需要注意,给定一个尾实体和关系,能确定的头实体不止一个,尾实体同理):

最终流向实体点m的资源定义公式如下:

上面式子中的Rp(m)表示m点获得的资源数量,对于每一条关系路径,我们设置初始资源为Rp(h) = 1。

关系路径表征

加法

乘法

RNN


其中c1 = r1,并且CNN的执行是沿着RNN路径的。

函数优化

由于在训练过程中,r ~ t - h, 所以关系路径的能量函数可以优化到如下:

评估

数据集

本文采用从Freebase中抽取的两个数据集。即FB15K和FB40K。下表是具体数据:

实体预测

实体预测就是给定头实体和关系预测尾实体或者给定尾实体和关系预测头实体,在和其他几个基线模型比较之后,下图给出结果:

从图中得出如下结果:

  1. PTransE明显且持续地优于包括TransE在内的其他基线。 这表明关系路径为知识库的表征学习提供了良好的补充,这些知识库已经被PTransE成功编码。
  2. 对于PTransE,加法运算在Mean Rank和Hits@10方面都优于其他组合运算。原因是,加法运算与TransE和PTransE的学习目标兼容。比如两个直接关系的优化目标h + r1 = e1和e1 + r2 = t可以很容易地得出路径目标h + r1 + r2 = t。

关系预测

关系预测是指给定头实体和尾实体,预测对应的关系。预测评估结果如下图所示:

从上图可以得出如下结论:

  1. 对于关系预测,PTransE显著优于TransE+Rev+Path,减少了41.8%的预测误差。
  2. 即使对于TransE本身,考虑关系路径进行测试也比TransE+Rev减少17.3%的误差,这表明对关系路径进行编码将有利于预测关系。
  3. 仅考虑关系路径的PTransE(PTransE-TransE)获得了很高的Mean Rank。
posted @   chaosliang  阅读(458)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示