[LTR] 信息检索评价指标(RP/MAP/DCG/NDCG/RR/ERR)
[LTR] 信息检索评价指标(RP/MAP/DCG/NDCG/RR/ERR)
2018-03-29 23:37 by Memento, … 阅读, … 评论, 收藏, 编辑
一、RP
recall 和 precision 的影响,较为全面的评价一个模型。
表示召回率比准确率重要一倍;F0.5-Score 表示准确率比召回率重要一倍。
二、MAP
Precision),即
的计算是对排序位置敏感的,相关文档排序的位置越靠前,检索出相关的文档越多,AP 值越大。
其中,N 代表所有相关文档的总数,p(k) 表示能检索出 k 个相关文档时的 precision 值,而
△r(k) 则表示检索相关文档个数从 k-1 变化到 k 时(通过调整阈值)recall 值的变化情况。
个文档是否相关,若相关则为1,否则为0,则可以简化公式为:
表示相关文档总数,position(i) 表示第 i 个相关文档在检索结果列表中的位置。
Precision)即多个查询的平均正确率(AP)的均值,从整体上反映模型的检索性能。
对应总共有5个相关文档。当通过模型执行查询1、2时,分别检索出4个相关文档(Rank=1、2、4、7)和3个相关文档(Rank=1、3、5)。
MAP=(0.83+0.45)/2=0.64。
三、NDCG
1、CG(Cumulative Gain)累计效益
k 表示 k 个文档组成的集合,rel 表示第 i 个文档的相关度,例如相关度分为以下几个等级:
Relevance Rating | Value |
Perfect | 5 |
Excellent | 4 |
Good | 3 |
Fair | 2 |
Simple | 1 |
Bad | 0 |
2、DCG(Discounted Cumulative Gain)
CG 的计算公式得出的排名是相同的,但是显然前者的排序好一些。
1/log2(i+1),其中
log2(i+1)
为折扣因子;
3、IDCG(ideal DCG)
4、NDCG(Normalized
DCG)
的计算结果。所以不能简单的对不同查询的 DCG 结果进行平均,需要先归一化处理。
相差多大:
NDCG。
5、例子
List,当假设用户的选择与排序结果无关,则根据相关度生成的累计增益如下图所示:
URL | rel | Gain(2reli-1) | Cumulative Gain | |
#1 | http://abc.go.com | 5 | 31 | 31 |
#2 | http://www.abctech.com | 2 | 3 | 34=31+3 |
#3 | http://abcnews.go.com/sections/ | 4 | 15 | 49=31+3+15 |
#4 | http://www.abc.net.au/ | 4 | 15 | 64=31+3+15+15 |
#5 | http://abcnews.com/ | 4 | 15 | 79=31+3+15+15+15 |
#6 | … | … | … | … |
factor):1/(log(i+1)/log2) = log2/log(i+1)。
URL | rel | Gain(2reli-1) | Cumulative Gain |
DCG | |
#1 | http://abc.go.com | 5 | 31 | 31 | 31=31×1 |
#2 | http://www.abctech.com | 2 | 3 | 34=31+3 | 32.9=31+3×0.63 |
#3 | http://abcnews.go.com/sections/ | 4 | 15 | 49=31+3+15 | 40.4=32.9+15×0.50 |
#4 | http://www.abc.net.au/ | 4 | 15 | 64=31+3+15+15 | 46.9=40.4+15×0.43 |
#5 | http://abcnews.com/ | 4 | 15 | 79=31+3+15+15+15 | 52.7=46.9+15×0.39 |
#6 | … | … | … | … | … |
而理想的情况,根据相关度 rel 递减排序后计算 DCG:
URL | rel | Gain(2reli-1) | IDCG(Max DCG) |
|
#1 | http://abc.go.com | 5 | 31 | 31=31×1 |
#3 | http://abcnews.go.com/sections/ | 4 | 15 | 40.5=31+15×0.63 |
#4 | http://www.abc.net.au/ | 4 | 15 | 48.0=40.5+15×0.5 |
#5 | http://abcnews.com/ | 4 | 15 | 54.5=48.0+15×0.43 |
#7 | http://abc.org/ | 4 | 15 | 60.4=54.5+15×0.39 |
#9 | … | … | … | … |
所以最终得出 NDCG 结果:
URL | rel | Gain(2reli-1) | Cumulative Gain |
DCG | IDCG(Max DCG) | NDCG | |
#1 | http://abc.go.com | 5 | 31 | 31 | 31=31×1 | 31=31×1 | 1=31/31 |
#2 | http://www.abctech.com | 2 | 3 | 34=31+3 | 32.9=31+3×0.63 | 40.5=31+15×0.63 | 0.81=32.9/40.5 |
#3 | http://abcnews.go.com/sections/ | 4 | 15 | 49=31+3+15 | 40.4=32.9+15×0.50 | 48.0=40.5+15×0.5 | 0.84=40.4/48.0 |
#4 | http://www.abc.net.au/ | 4 | 15 | 64=31+3+15+15 | 46.9=40.4+15×0.43 | 54.5=48.0+15×0.43 | 0.86=46.9/54.5 |
#5 | http://abcnews.com/ | 4 | 15 | 79=31+3+15+15+15 | 52.7=46.9+15×0.39 | 60.4=54.5+15×0.39 | 0.87=52.7/60.4 |
#6 | … | … | … | … | … | … |
四、ERR
1、RR(reciprocal rank)
2、MRR(mean reciprocal
rank)
i 个查询的第一个相关文档的排名。
3、Cascade Model(瀑布模型)
i 个位置的文档项被点击的概率为:
i 个文档被点击的概率,前 i-1 个文档则没有被点击,概率均为 1-rj;
4、ERR(Expected reciprocal rank)
计算第一个相关文档的位置倒数不同。
g 表示文档的相关度,参考 NDCG 中的 rel。
不一定是计算用户需求满足时停止的位置的倒数的期望,它可以是基于位置的函数 φ(r)
,只要满足 φ(0)=1,且随着 r→∞,φ(r)→0。
参考链接: