关于精确回忆曲线和平均精度的混淆

时间:2016-11-29 12:13:05

标签: information-retrieval precision-recall

我正在阅读很多关于Precision-Recall曲线的信息,以便评估我的图像检索系统。特别是我正在阅读关于VLFeat中特征提取器的this文章和关于精确召回的wikipedia page

据我所知,此曲线对于评估我们的系统性能非常有用w.r.t.检索的元素数量。所以我们反复计算精确回忆检索顶部元素,然后是前2,前3等等......但我的问题是:什么时候停止

我的直觉是:当我们检索到的元素列表的召回等于1时,我们停止,因此我们检索所有相关元素(即没有漏报,只有真正的积极因素)。

同样的问题是平均精度:检索结果中应该有多少元素用于计算它?如果我以前的直觉是正确的,那么我们只需要找出什么是最小的列表s.t.召回是1并用它来计算它AP。

我想知道为什么所有用于计算p-r曲线的库都没有显示如何实现它?

1 个答案:

答案 0 :(得分:1)

具有召回1的信息检索系统意味着在实践中看起来不可能的完美系统!当您需要比较两个或更多信息检索系统时,Precision-Recall曲线很好。它不是在召回或精度达到一定值时停止。 Precision-Recall曲线显示每个点的调用和精度值对(考虑前3或5个文档)。您可以将曲线绘制到任何合理的点。

接近完美Precision-Recall曲线的曲线具有比接近基线的曲线更好的性能水平。换句话说,另一条曲线上方的曲线具有更好的性能水平。两条Precision-Recall曲线代表两个IR系统的性能水平:A和B.系统A明显优于系统B,如下图所示。

enter image description here

记住Precision-Recall曲线不仅用于评估IR系统。它可以用来显示你的分类器有多好!例如,您可以计算精度,调用二进制分类任务并绘制Precision-Recall曲线,以便对分类器的性能进行良好估计。

例如:

enter image description here enter image description here

我建议您在Coursera中看到这个tutorial。我相信你的想法会更加明确Precision-Recall曲线。