知识图谱-TransR原理
TransR:实体和关系分开嵌入(Learning Entity and Relation Embeddings for Knowledge Graph Completion)
一.摘要
知识图谱补全旨在执行实体之间的链接预测。在本文中,我们考虑了知识图嵌入的方法。最近,诸如TransE和TransH等模型通过将关系视为从头实体到尾实体的翻译来构建实体和关系嵌入。我们注意到这些模型知识将实体和关系放在同一个语义空间中。事实上,一个实体可能有多个方面,各种关系可能集中在实体的不同方面,这使得公共空间不足以进行建模。在本文中,我们提出的TransR在单独的实体空间和关系空间中构建实体和关系嵌入。之后,我们通过首先将实体从实体空间投影到相应的关系空间,然后在投影实体之间建立翻译来学习嵌入。
知识图谱补全类似于社交网络分析中的链接预测,但由于以下原因更具有挑战性:(1)知识图谱中的节点是具有不同类型和属性的实体;(2)知识图中的边是不同类型的关系。对于知识图谱补全,我们不仅要判断两个实体之间是否存在关系,还要预测关系的具体类型。因此,传统的链接预测方法无法完成知识图谱。最近,该任务的一种有前途的方法是将知识图嵌入到连续向量空间中,同时保留图的某些信息。已经探索了很多方法,在这些方法中,TransE和TransH简单有效,实现了最先进的预测性能。TransE和TransH都假设实体和关系的嵌入在同一个空间中。然而,一个实体可能有多个方面,各种关系集中在实体的不同方面。因此,可以直观地看出,一些实体在实体空间中相似,因此彼此接近,但在某些特定方面却相对不同,因此在相应的关系空间中彼此相距甚远。为了解决这个问题,我们提出了一种新方法,它在不同的空间,即实体空间和多个关系空间(即特定关系的实体空间)中对实体和关系进行建模,并在相应的关系空间中进行翻译,因此命名为TransR。
问题:TransH存在的问题是虽然考虑了实体自身的分布表示,但是对实体的关系的表示依然是在同一空间(超平面空间)中进行的。可是本质上,实体和关系是相互区别的。
TransR:"Learning and Relation Embedding for Knowledge Graph Completion"(AAAI2015)
模型:TransR算法是将实体和关系分别映射到两个空间中,然后将实体空间中的实体通过转移矩阵Mr转移到关系空间中进行向量表示,在TransR算法中,每一个三元组的实体向量被设定为一个k维向量,关系向量被设为一个d维向量,但是k可以不等于d,而映射矩阵则为一个k*d的矩阵,这样在从实体空间转移到关系空间之后,每个头实体和尾实体都变成了关系空间的向量表示。如下图:
TransR的目标函数优化思想跟TransE一致。论文通过分析发现TransE,TransH以及TransR对于关系的表示均是使用一个唯一的表示,但是关系本身却是一个多元的,类型丰富的。为了解决这个问题,论文提出了一种CtransR的方法。个人理解是一个近似于“词袋”的模型,将具有同性质的关系进行打包学习。
CtransR流程:首先,算法将输入的实例分割成n个组。其次,对于一种具体的关系r,与它相关的全部实体被聚到一类,这样训练集中的全部实体都被分成n个组。然后,所有的实体对(h,t)都用其所在的组别的偏移向量(h-t)表示。最后,学习每个组的关系向量rc和转移矩阵Mr.具体的得分函数和目标函数如下所示,同样是同SGD算法进行优化。
问题:TransR没有考虑关系的类型问题,而CtransR是仅考虑了关系的类型问题,而没有考虑实体的类型问题。因为在通用领域中,不同的实体是属于不同的类型的。