检索到的文档少于 k 时的精度为 k

Precision at k when fewer than k documents are retrieved

在信息​​检索评估中,如果检索到的文档少于 k 个,那么 precision@k 是多少?假设只检索到 5 个文档,其中 3 个是相关的。 precision@10 是 3/10 还是 3/5?

很难找到定义像这样的措施的边缘情况的文本,而且数学公式通常不处理数据的不完整性。对于这样的问题,我倾向于求助于 trec_eval 做出的决定,该工具由 NIST 分发,实现了所有常见的检索措施,尤其是文本检索会议挑战(TREC 挑战)中使用的措施。

根据 trec_eval 9.0m_P.c 中的指标描述(在此页面上称为最新):

Precision measured at various doc level cutoffs in the ranking.
If the cutoff is larger than the number of docs retrieved, then
it is assumed nonrelevant docs fill in the rest.  Eg, if a method
retrieves 15 docs of which 4 are relevant, then P20 is 0.2 (4/20).
Precision is a very nice user oriented measure, and a good comparison
number for a single topic, but it does not average well. For example,
P20 has very different expected characteristics if there 300
total relevant docs for a topic as opposed to 10.

这意味着即使检索到少于 k,您也应该始终除以 k,因此在您的特定情况下精度将是 0.3 而不是 0.6。 (惩罚系统检索少于k)。

另一种棘手的情况是相关文档少于 k 个。这就是为什么他们注意到精度是一个有用的衡量标准,但平均水平并不高。

一些对这些问题更稳健的措施是:归一化贴现累积增益 (NDCG),它将排名与理想排名(截止点)和(更简单)R-Precision 进行比较:计算精度相关文件的数量,而不是固定的k。因此一个查询可以计算 R=15 的 P@15,另一个查询可以计算 R=200 的 P@200。