搜索排序评价指标

信息检索中常用的评价指标:MAP,NDCG,ERR,F-measure

一. NDCG:

Normalized Discounted Cumulative Gain; rel是相关度(Gain);i是排名位置(Discounted), 加起来就是Cumulative

N是Normalized; 

(Query是同一个p,但是分子(当前列表)和分母(最优列表)的内容可能不同)

二. MAP

Average Precision@K:  准确率和召回率都只能衡量检索性能的一个方面,最理想的情况肯定是准确率和召回率都比较高。因此同时考虑准确率和召回率:

其中rel(k)表示第k个文档是否相关,若相关则为1,否则为0,P(k)表示前k个文档的准确率。

MAP:通常会用多个查询语句来衡量检索系统的性能,所以应该对多个查询语句的AveP求均值(the mean of average precision scores),即公式:

这里把MAP用图示解释的非常清楚,还有例子

三. F1-Score

F-Score:

常用的两种设置是F2和F0.5,前者中recall重要程度是precision的两倍,后者则相反,precision重要程度是recall的两倍。

四. ROC和AUC (适合于不定最后的判别边界)

横轴是False Positive Rate = FP/(真实负例个数)

纵轴是True Positive Rate = TP/(真实正例个数)

五. ERR

一个文档是否被用户点击和排在它前面的文档有很大的关系,比如排在前面的文档都是不相关文档,那么它被点击的概率就高,如果排它前面的文档都是非常相关的文档,那么它被点击的概率就很低。Cascade Models假设用户从排名由高到底依次查看文档,一旦文档满足了用户的需求,则停止查看后续的文档。用R_{i}表示用户只看在位置ii上的文档后就不在需要查看其它文档的概率,显然文档的相关度越高,R_{i}越大。

(1-R_{i})是不点击i的概率;前r-1个都不点击的概率,乘以点击第r个的概率,就是停在第r个的概率;

g_{i}是相关性等级, 等级越高,被点击的概率就越大;

ERR表示用户的需求被满足时停止的位置的倒数的期望。越大越好。

MRR和MAP只能对二级的相关性(排序等级:相关和不相关)进行评分,而NDCG和ERR则可以对多级的相关性(排序等级>2)进行评分。NDCG和ERR的另一个优点是更关注排名靠前的文档,在计算分数时会给予排名靠前的文档更高的权重。但是这两种评分方式的缺点是函数不连续,不能进行求导,所以也就不能简单地将这两种评分方式加入到模型的损失函数中去。

MRR

用于导航型搜索测量查准性。翻译成中文就是第一个正确结果的平均排名倒数,根据用户点击得到。比如,用户搜索词A,希望找到相关结果B,B出现位置越靠前,用户会对结果排序越满意。如果B出现在第一位,RR=1/1=1,出现在第二位,RR=1/2=0.5.如果用户满意的结果,可以认为结果出现在无穷大的位置,那么其RR=0.MRR就是综合考虑多个主题的RR值求平均即为MRR。MRR是0到1之间的一个数,越接近1表明搜索排序越好。

你可能感兴趣的:(机器学习,推荐系统,概率论,算法)