1 背景
知识图谱的表示学习在问答系统、关系抽取等任务中有着重要的作用。目前知识图谱的表示学习的主要是基于translation的思想。对于知识图谱上的三元组<h, r, t>,分别将其映射为三个向量<h, r, t>,使得h+r尽量接近于t。由此,可以得到目标函数|h+r–t|。
这里介绍两种知识图谱的表示学习的方法,TranD和TKRL。
代码:https://github.com/thunlp/TensorFlow-TransX
https://github.com/thunlp/CANE
2 TransD
对于三元组<h,r,t>,TransD先将其映射为向量h,r,t。另外,还有3个相应的投影相关向量。这六个向量都通过优化过程学习得到。其中都是n维向量,为m维向量。
优化过程的目标函数构建过程中,首先通过3个投影向量,分别构建两个投影矩阵,分别将h, t映射到关系向量所在的空间,即:
这里的两个映射矩阵,的构建过程为:
尽量让投影后的向量具有translation的关系,因此每个三元组的分数为:
整体的优化目标为:
这里是margin,是正样本集合,是负样本集合。
与其他方法的比较:TransR方法中每个关系都对应一个投影矩阵,而TransD方法中投影向量是两个个实体对应的向量与关系对应的向量组成,复杂度更低。TransH中每个关系对应一个投影向量,投影向量完全取决于关系,而TransD中,投影矩阵由实体与关系共同决定,具有更好的建模能力。
3 TKRL
TKRL(Type-embodied Knowledge Representation Learning)是考虑了实体类型的层次结构来学习知识图谱上的实体向量与关系向量。与TransD相同,TKRL先将实体与关系表示成向量,然后使用两个投影矩阵将实体向量投影到关系向量所在的空间。能量(分数)函数定义为:
因此,一个实体的类型表示为类型层次结构上的一条路径。其中表示实体在第i层上的类型。每一种类型都对应着一个投影矩阵。类型c对应的投影矩阵由整个类型路径上的类型所对应投影矩阵计算得到。这里分为两种计算方法:
(1)RHE(Recursive Hierarchy Encoder)
(2)WHE(Weighted Hierarchy Encoder)
文章中对于加权权重的计算使用了一个技巧,规定
总体的目标函数为:
这里T表示正样本集合,T’是负样本集合。
另外,还有两个小技巧。一个是Soft Type Constraint (STC),在采样负样本的稍微多采样相同类型的实体,使得相同类型中的实体更有区分度。即:
另一个技巧是,LCWA(local closed-world assumptions),规定在相同一个关系的首部或者出现的实体具有相同的类型,以减少知识图谱不全带来的影响。
实验结果表明,RHE与WHE的类型对应的投影矩阵计算方式效果相差不大,STC技巧的使用可以提高实验效果。
5总结
这几年的研究不断扩展基于translation思想的知识图谱表示方法,在解决1对N、N对1之后,又考虑了关系路径、实体类型,链接预测、三元组分类等任务的效果得到不断提升。
参考文献
[1] Ji, Guoliang, et al. “Knowledge Graph Embedding via Dynamic Mapping Matrix.” ACL. 2015.
[2]?Xie, Ruobing, Zhiyuan Liu, and Maosong Sun. “Representation learning of knowledge graphs with hierarchical types.” IJCAI. 2016.
1,994 评论