6.翻译模型(Trans模型)
翻译模型是把关系当作头实体和尾实体之间的翻译,包括TransE,TransH,TransR,TransD等模型。
(1)TransE
TransE 是基于平移的最具代表性的模型。TransE 希望实体和关系满足方程:h+r≈t。也就是说,把实体和关系都表示成向量,在三元组(h, r, t)中,关系的表示向量被看作是头尾实体间的平移向量(也称为翻译向量)。
TransE 以关系作为实体之间的平移向量,这种方式可以有效地学习一对一的关系类型,但不能有效学习一对多、多对一、多对多这些关系。比如(姚明,搭档,王治郅)和(姚明,搭档,刘炜)两个三元组,当头实体h为“姚明”和关系r为“搭档”相同时,TransE 认为这两个尾实体“王治郅”和“刘炜”具有相同的嵌入向量,但实际情况并非如此。
TransE 模型简单,参数较少,同时,在多个数据集上,TransE表现很好。
(2)TransH
针对 TransE 存在的问题,TransH 模型提出一个新的办法,即是将头、尾实体都映射到关系的平面中,然后在关系的超平面上以关系向量为平移向量找存在特定关系的头、尾实体。
虽然 TransH 模型将实体投影到关系的超平面,但它仍然假设实体和关系是处于相同的语义空间中。
(3)TransR
TransR 模型认为实体和关系的语义属性不一样,那么实体和关系的嵌入空间不应该是相同的。TransR 模型的主要思想是:将实体和关系嵌入到不同的语义空间,然后在关系的嵌入空间中建立从头实体到尾实体的翻译关系。
TransR 模型性能好,但仍然存在明显的缺点:不分头实体还是尾实体,实体空间向关系表示空间投影所用的向量是同一个。
(4)TransD
TransD 模型解决了 TransR模型的缺点,头实体、尾实体投影到关系语义空间所用的矩阵是两个不同的矩阵。
知识图谱嵌入的主要方法总结:包括距离模型、单层神经网络模型、能量模型、张量神经网络模型、双线性模型、翻译模型(Trans模型)。