MRR(Mean Reciprocal Rank)简介

MRR概念

这是一个常用来衡量搜索算法效果的指标,目前被广泛用在允许返回多个结果的问题,或者目前还比较难以解决的问题中(由于如果只返回top 1的结果,准确率或召回率会很差,所以在技术不成熟的情况下,先返回多个结果)。在这类问题中,系统会对每一个返回的结果给一个置信度(打分),然后根据置信度排序,将得分高的结果排在前面返回。

而MRR得核心思想很简单:返回的结果集的优劣,跟第一个正确答案的位置有关,第一个正确答案越靠前,结果越好。

具体来说:对于一个query,若第一个正确答案排在第n位,则MRR得分就是 1n (如果没有正确答案,则得分为0)

公式为:

MRR=1|Q|i=1|Q|1ranki

其中,Q为样本query集合,|Q|表示Q中query个数, ranki 表示在第i个query中,第一个正确答案的排名

例子

比如,设测试集有4个query,他们的结果中,前三个query的第一个正确答案分别被排在第3,1,5位,而第四个query没有找到正确答案。则该系统的MRR得分就是:

MRR=(13+11+15+0)÷4=0.383

你可能感兴趣的:(搜索,术语)