知识图谱表示学习模型

表示模型

TransE

TransE认为h+r≈t,即r是头尾实体之间的翻译关系,并定义评分函数为f r (h,t)=∣∣h+r−t∣∣ 22,优化目标是最小化评分函数。

TransR认为TransE是把实体和关系放在同一空间中进行考虑,但实体可能具有多个不同方面的属性,不同的关系也关注着实体的不同属

RESCAL

RESCAL把关系利用满秩矩阵表示,并定义评分函数为f r (h,t)=h T M t t。能够看到,RESCAL的实体和关系之间全是矩阵运算,因此实体和关系的信息可以进行深层次交互,非常具有表现力。

DistMult

针对RESCAL存在的问题,DisMult放松对关系矩阵的约束,把关系矩阵Mr利用对角矩阵表示,并定义损失函数为f r (h,t)=h T diag(M r )t。

ComplEx

ComplEx通过引入复值嵌入来扩展DistMult,以便更好地对非对称关系进行建模。在ComplEx中,实体和关系嵌入h,r,t不再存在于实空间中,而是存在于复空间中。

RotatE

RotatE模型将实体和关系映射到复数向量空间,并将每个关系定义为从head实体到tail实体间的旋转。

评价指标

MR

对于测试集的每个三元组,以预测tail实体为例,将(h,r,t)中的t用知识图谱中的每个实体来代替,然后通过distance(h,r,t)函数来计算距离,这样我们可以得到一系列的距离,之后按照升序将这些分数排列。distance(h,r,t)函数值是越小越好,那么在上个排列中,排的越前越好。

MRR

国际上通用的对搜索算法进行评价的机制。返回结果集的优劣,跟第一个正确答案的位置有关,第一个正确答案越靠前,结果越好。即第一个结果匹配,分数为1,第二个匹配分数为0.5,第n个匹配分数为1/n,如果没有匹配的句子分数为0。最终的分数为所有得分之和。

HITS@N

按照打分函数值排列,然后去看每个三元组正确答案是否排在序列的前N个,如果在的话就计数+1。最终 排在前N的个数/总个数 就是H i t @ N Hit@NHit@N。