信息检索评价指标

信息检索评价指标可以对一个检索系统的性能进行评价,在信息检索的研究领域中,有很多的排名质量评价指标。例如 MAP,NDCG,MRR,ERR 等,其中 NDCG 和 ERR 等指标可以处理不同的相关性等级 (文档之间的相关性分等级,0,1,2,3 等);而 MAP 和 MRR 只能处理相关和不相关两种情况。

1.Precision、Recall、F1

Precision 是准确率,Recall 是召回率,F1 是准确率和召回率的调和平均,这些都是分类问题中常见的指标。在信息检索中,适用于文档只分相关和不相关的情况。

计算公式如下

Precision、Recall、F1

2.Average Precision (AP)

(AP) Average Precision 指平均准确率,是在不同的召回率上的准确率求平均。假设我们的检索系统找出了下面 10 篇文章,最上面的是系统认为最相关的文章,最下面的是系统认为最不相关的文章。

然后切换阈值,使每次只采用前 k 个文章作为筛选结果,可以得到不同的召回率和准确率,如下图所示,k 从 1 到 10。

top k 召回率和准确率

这时对准确率求平均就是 AP 值。

AP 值

除了上述方法计算 AP 值外,还可以取不同的召回率值,例如从 0, 0.1, 0.2, ..., 1 的召回率,然后计算在这种召回率下准确率的平均值。

(MAP) Mean Average Precision 是采用不同的查询,分别计算得到 AP 值,然后计算这些 AP 值的平均。

MAP 值

3.Cumulative Gain (CG)

(CG) Cumulative Gain 累计效益,对于所有的文档,都有一个对应的相关度 g,如 0, 1, 2, 3, 4,相关度越高表示文章与查询越相关。假设一共检索得到 T 个文档,CG 计算的就是这 T 个文档的相关度之和。

CG 计算公式

(DCG) Discounted Cumulative Gain CG 计算的时候只是简单的把 T 个文档的相关度相加,并没有考虑文档的排名顺序。

例如文档 A 相关度为 4,文档 B 相关度为 3,文档 C 相关度为 0。

两个检索系统返回的文档顺序分别是 (A,B,C) 和 (C,B,A),则这两个系统计算得到的 CG 值都是一样的,但是明显第一个系统返回的结果更加合理。

DCG 在 CG 的基础上加上了排名位置信息作为分母,排名越靠后的文章对于指标值的影响越小,DCG 有两种计算公式。

DCG 计算公式

(IDCG) Ideal DCG 理想状态下的 DCG 值,把检索到的 T 个文档按照相关度从高到低排列 (即最理想的排列顺序),然后在这个顺序下计算 DCG 值。

(NDCG) Normalized DCG 归一化的 DCG 值,不同的查询返回的文档个数 T 通常是不同的,所以不能直接使用 DCG 进行比较,也不能直接对不同查询的 DCG 求均值。通过 NDCG 进行归一化之后,得到的值在 0-1 之间,此时可用于多个查询的情况。

NDCG 计算公式

4.Reciprocal Rank (RR)

(RR) Reciprocal Rank 排名的倒数,文档在检索结果中有一个排名,RR 计算的是第一个相关的文档在检索结果中的排名的倒数。例如对于查询 i 来说,第一个相关的文档排名是 rank(i),则 RR 如下。

RR 计算公式

(MRR) Mean RR 多个查询结果的 RR 值求均值,如下,N 为查询次数。

MRR 计算公式

(ERR) Expected RR 假设用户会按照顺序查阅检索到的文档,可以计算用户点击位置 r 文档的概率 Pr,此概率是一个关于文档相关度等级 g 的函数,如下。

从上式可以看到,Ri 表示用户对文档 i 感兴趣的概率。计算 Pr,则要知道位置 r 之前的文档 i 用户不感兴趣的概率 (1-Ri)。

ERR 是对每个位置 r 的 Pr 值加权平均,和 NDCG 类似,ERR 也考虑了位置的影响,即位置越靠后权重越低。如下所示。

ERR 计算公式

5.参考文献

  • 《From RankNet to LambdaRank to LambdaMART: An Overview》
  • 信息检索中的各项评价指标
  • 信息检索评价指标NDCG、a-NDCG

你可能感兴趣的:(信息检索评价指标)