知识图谱评价指标hit@n、MR

  • Post author:
  • Post category:其他




MRR

MRR的全称是Mean Reciprocal Ranking,其中Reciprocal是指“倒数的”的意思。具体的计算方法如下:

在这里插入图片描述

其中S是三元组集合,i 是三元组集合个数,rank_i 是指第i个三元组的链接预测排名。

该指标越大越好。


我的理解:


对于每个 testing triple,以预测tail entity为例,我们

将(h,r,t)中的t用知识图谱中的每个实体来代替

,然后通过fr(h,t)【1】函数来计算分数,这样我们可以得到一系列的分数,之后按照

降序

将这些分数排列。

例如,对于三元组(Jack,born_in,Italy),链接预测的结果可能是:

在这里插入图片描述

【1】例如:transE的fr(h,t)为:

在这里插入图片描述

我们需要知道的是,d越小,说明两者关系越接近,分数也越高,所以f函数值是越大越好,那么在上个排列中,排的越前越好。

现在重点来了,我们去看每个 testing triple中正确答案,也就是真实的t到底能在上述序列中排多少位,比如说t1排100,t2排200,t3排60…,(上边的例子里这一条三元组t1排第二名)之后对这些排名求倒数再求平均,MRR就得到了。



MR

Mean rank 具体计算方式如下:

在这里插入图片描述

上述公式涉及的符号和MRR计算公式中涉及的符号一样。该指标越小越好。


我的理解:


对于每个 testing triple,以预测tail entity为例,我们

将(h,r,t)中的t用知识图谱中的每个实体来代替

,然后通过fr(h,t)函数来计算分数,这样我们可以得到一系列的分数,之后按照升序将这些分数排列。



Hit@n

该指标是指在链接预测中排名小于n的三元组的平均占比。具体的计算方法如下:

在这里插入图片描述


我的理解:


比如hit@10

还是按照上述进行f函数值排列,然后去看每个testing triple正确答案是否排在序列的前十,如果在的话就计数+1

最终 排在前十的个数/总个数 就是Hit@10

该指标越大越好



注意

MRR和HITS@10是两个重要指标,不可缺少。MR则不被认为是一个好的指标。



版权声明:本文为lf_78910jqk原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。