1.先说Mean rank
首先 对于每个 testing triple,以预测tail entity为例,我们将(h,r,t)中的t用知识图谱中的每个实体来代替,然后通过fr(h,t)函数来计算分数,这样我们可以得到一系列的分数,之后按照 升序将这些分数排列。
然后,我们需要知道的是f函数值是越小越好,那么在上个排列中,排的越前越好。
现在重点来了,我们去看每个 testing triple中正确答案也就是真实的t到底能在上述序列中排多少位,比如说t1排100,t2排200,t3排60…,之后对这些排名求平均,Mean rank就得到了。
2.Hit10
还是按照上述进行f函数值排列,然后去看每个testing triple正确答案是否排在序列的前十,如果在的话就计数+1
最终 排在前十的个数/总个数 就是Hit@10
上述就是个人理解,不知道对不对,目前也没有资料确认,所以如果有大佬看到愿意搭救一把,感激不尽,临表涕零!
3.MRR
是一个国际上通用的对搜索算法进行评价的机制,即第一个结果匹配,分数为1,第二个匹配分数为0.5,第n个匹配分数为1/n,如果没有匹配的句子分数为0。最终的分数为所有得分之和。