信息检索的评价标准

信息检索的评价标准

最近在看检索的相关论文,接触到了很多与检索相关的评价准则。整理在此,以供查询

以下内容主要来自
Wiki for evaluation of an information retrieval system


1. 基本假设与术语

  • 以一个文本检索系统为例,我们事先拥有一堆文档集,并且集合中每篇文档的属性都知道,每篇文档对应的相关文档是哪些也都一清二楚。
  • 设想我们查询单篇文档,该文档检索系统的所有返回结果称为"返回文档",文档集合中与该篇文档中相关的文档(即我们期望被返回的文档)的集合称为“相关文档”,其余文档则被称为“不相关文档”

2. 精确度(Precision)

(precision = \frac{|{相关文档}\cap{返回文档}|}{|返回文档|})
简言之,精确度就是检索系统返回的文档中,与被查询文档是相关的比例,越高越好

3. 召回率(Recall)

(recall = \frac{|{相关文档}\cap{返回文档}|}{|相关文档|})
简言之,召回率就是所有相关文档中,被检索系统返回的比例,越高越好

4. 误检率(fall-out)

{fall-out = \frac{|{不相关文档}\cap{返回文档}|}{|不相关文档|}}
如上,误检率就是所有不相关文档中,被检索系统返回的比例,越低越好

5. F-score/F-measure

安利一个简单的版本,它相当于精确度和召回率的平均
(F = \frac{2\cdot precision\cdot recall}{(precision + recall)})

6. 平均精度(average precision)

  • 之前介绍的精度和召回率都是针对所有的检索结果进行评估,但是实际上检索系统返回的结果是存在序关系的。最理想的情况是返回结果按照与文档的相关程度是一致的。因此我们有必要在评估检索效果时考虑序的影响。
  • 针对返回结果(应该是排好序的),在每一个位置(即第某个检索结果),都可以在该位置以上的所有返回文档,计算其召回率和准确率。这样一来,我们可以画出以召回率(r)为自变量,以精确度(p(r))为因变量的图。
  • 那么,平均精度为:
    (AveP = \int\limits_{0}^{1}p(r)dr)
  • 换成离散形式:
    (AveP = \sum\limits_{k=1}^{n}p(k)\delta r(k))
    其中k代表返回文档的序k,n是返回文档的总数,p(k)是在从第1到k位的检索结果中的精确度,\(\delta r(k)\)代表从第k-1位到第k位,召回率的差值
  • 因此,上述离散形式等价于:
    (AveP = \frac{\sum\limits_{k=0}^{n}(P(k)\times rel(k))}{|相关文档|})
    此处的\(rel(k)=1\)代表第k个返回为相关文档,否则为0.

7. 截至第k位的精度(Precision at K)

(precision-K = \frac{|{返回文档的前K篇}\cap{相关文档}|}{K})
简言之,给定K,返回前K个结果中于被查询文档相关的比例

8. R-Precision

(R-precision = \frac{|{返回文档的前R篇}\cap{R篇相关文档}|}{R})
此处假设相关文档的篇数固定为R,除此之外,该定义与Precision at K类似。

  • 该精度实际上也是截至第R位的召回率。

9. 平均的平均精度(average precision)

(mAP = \frac{\sum\limits_{q=1}^{Q}AveP(q)}{Q})
这个名字的翻译比较拗口哈。

  • 之前的average precision是针对单篇被查询文档得到的。
  • 此处一共做了Q次查询,mAP即为每次的average precision的均值。
posted @ 2015-10-08 21:27  lightninghzw  阅读(1878)  评论(0编辑  收藏  举报