跳至正文

C-KGEs

NeuralKG 复现了常规的知识图谱嵌入模型,即C-KGEs。其设计理念是将知识图谱中的实体和关系映射到特定的向量空间中,并利用设计好的打分函数对三元组的真实性进行打分,最终得到高质量的实体和关系的向量表示。​

本文从表示空间、打分函数、一些具体的模型实例三个方面介绍C-KGEs。

表示空间


知识图谱表示学习的关键问题是学习实体和关系的低维分布式嵌入空间。目前主要采用的表示空间有逐点欧式空间、复数空间、高斯分布空间、流形空间和群。表示空间应遵循三个条件,即在该空间假设下打分函数的可微性、计算可能性和可定义性。

  • 逐点欧式空间:如下图a所示,此空间是使用最多的空间假设,将实体表示为空间中的一个点,关系映射为向量或是矩阵。TransE等翻译模型就是使用这种表示空间。
  • 复数空间:如下图b所示,不同于实值空间,复数空间中的实体表示由实部和虚部组成。代表模型有ComplE、RotatE。
  • 高斯分布空间:如下图c所示,还有一些工作利用高斯空间表示实体和关系的不确定性,其中以KG2E、TransG为代表。
  • 流形空间和群: 如下图d所示,针对逐点建模的知识表示是一种不适定的代数系统,以及过于严格的几何形式。一些研究人员开始研究流形空间,李群,二面体群中的知识表示。代表工作有:MainfoldE、TorusE和DihEdral。

打分函数


打分函数用于度量事实三元组的真实性,在基于能量的学习框架中也称为能量函数。打分函数有两种典型类型,分别是基于距离和基于相似性的打分函数。

  • 基于距离的打分函数:基于距离的得分函数通过计算头尾实体之间的欧式距离来衡量事实三元组的真实性,距离越近代表样本越可信。
  • 基于相似度的打分函数:基于语义相似度的评分方法是通过语义匹配来衡量事实三元组的可信性,通常采用乘法矩阵公式来完成。

下图使用TransE和DistMult分别展示了基于距离和语义相似度的打分函数​

模型实例


TransE

这是最早的一种知识图谱嵌入方法, 作者受到word2vec模型发现词向量空间存在有趣的平移不变现象,于是将知识图谱中的关系也视为实体间的某种平移向量。

并定义了基于距离的打分函数:

$$f_r(h, t) = |l_h + l_r - l_t|_{L1/L2}$$

在实际学习过程中,为了增强知识表示的区分 能力,TransE采用最大间隔方法,定义了如下优化目标函数:

其中, \(S\)是正确三元组的集合, \(S^-\)为错误三元组的集合,max(x, y)返回x和y中较大的值,\(\gamma\)为正确三元组得分与错误三元组得分之间的间隔距离。错误三元组通过随机替换头实体或者尾实体得到。下图展示了TransE的训练流程:​

尽管TransE简单有效,但它有着无法处理1-N、N-1、 N-N的关系以及无法处理对称关系等缺陷。因此,之后有大量研究工作对TransE进行了扩展和应用

DistMult

DistMult是一种经典的基于相似度打分函数的语义匹配模型。该模型通过匹配实体和关系在嵌入向量空间的潜在语义来衡量三元组事实成立的可能性。DistMult是对RESCAL的进一步简化,它用向量表示实体,用对角矩阵表示关系。 其打分函数为 $$𝑓(ℎ,𝑟,𝑡)=𝐡^T diag(𝐫)𝐭$$ 之后沿用了TransE的随机负采样和损失函数来训练模型, 其在三个数据集上的链接预测结果如下图所示:​

参考

[1] A Survey on Knowledge Graphs:Representation, Acquisition and Applications.

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注