附言:最近由于主要将经历花在对于KGE与SPARQL的结合上,导致TransH的文章解读一再拖延,近期已大致完成这方面工作,后期会专门出一个介绍一下KGE与SPARQL结合的文章。
前言:书读百遍不如抄书一遍!通过复现各类模型,可以帮助更好的理解模型的细节,并加深记忆,为后面的学习铺平道路.
首先先附上论文原文地址:
TransH 原文citeseerx.ist.psu.eduTransH 是Zhen Wang 等人在2014年提出的一种对于TransE模型(TransE论文详解,请移步我之前的文章论文笔记(一):TransE论文详解及代码复现)的改进方案,这个模型的具体思路是将三元组中的关系(relation, 或者 predicate),抽象成一个向量空间中的超平面(Hyperplane),每次都是将头结点或者尾节点映射到这个超平面上,再通过超平面上的平移向量计算头尾节点的差值。
这样做的目的,主要是因为TransE模型在反射,一对多,多对一等关系中处理的效果并不好。举个例子,在一个对多的关系中,头结点由一个向量表示,它在一个关系中指向多个不同的节点,而这个关系也是由一个vector表示的;理想情况下,如果h + r - t = 0,这就会导致指向的多个节点所计算出来的向量都是相同的值,这明显是有问题的。而且同时,这也造成一个节点在连接不同relations中时,都使用一个相同的vector表示。而在TransH中,为了改善上述问题,引入超平面来代替原有关系向量,从而使得同一个节