了解召回和精确度

时间:2014-01-28 18:00:51

标签: search-engine information-retrieval precision-recall

我目前正在学习信息检索,而且我更倾向于回忆和精确的例子

搜索者使用搜索引擎查找信息。第一个结果屏幕上有10个文档,第二个屏幕上有10个文档。

假设搜索引擎索引中已知有10个相关文档。

Soo ......共有20个搜索,其中10个是相关的。

任何人都可以帮我理解这个吗?

由于

3 个答案:

答案 0 :(得分:8)

召回并精确测量结果的质量。为了理解它们,我们首先定义结果的类型。返回列表中的文档可以是

  • 分类正确

    • 真正的正面(TP):确实返回的相关(正面)文件(真实)
    • 一个真正的否定(TN):一个不相关的文件(否定的)确实没有返回(真实)
  • 错误分类

    • 误报(FP):不相关但已被退回的文件
    • 假阴性(FN):相关但未被退回的文件

精度是:

| VTP | /(| TP | + | FP |)

即。检索到的文件中确实相关的部分

然后召回:

| VTP | /(| TP | + | FN |)

即。结果集中相关文档的分数

因此,在您的示例中,20个结果中有10个是相关的。这使您的精度为0.5。如果不超过这10个相关文件,则召回1。

(当测量信息检索系统的性能时,仅考虑精度和召回是有意义的。通过根本不返回任何结果可以轻松获得100%的精度(即没有虚假返回实例=>没有FP )或通过返回每个实例召回100%(即没有错过相关文件=>没有FN)。)

答案 1 :(得分:0)

好吧,这是我在https://stackoverflow.com/a/63120204/6907424上的回忆上回答的扩展。首先在这里阅读有关精度的信息,然后再阅读回忆。在这里,我仅使用同一示例解释 Precision (精度):

ExampleNo        Ground-truth        Model's Prediction
   0                 Cat                   Cat
   1                 Cat                   Dog
   2                 Cat                   Cat
   3                 Dog                   Cat
   4                 Dog                   Dog

目前,我正在计算Cat的精度。因此,是我们的正类,其余的类(仅在此处)是否定类 Precision (精确度)表示阳性检测百分比实际为阳性。因此,对于Cat,此模型有3个检测。但是它们都正确吗? 否!其中只有2个是正确的(在示例0和2中),另一个是错误的(在示例3中)。因此正确检测的百分比为2 out of 3 which is (2 / 3) * 100 = 66.67%

现在开始制定,这里:

TP(真实肯定):预测实际是肯定的肯定的东西。如果cat是我们的积极榜样,那么当它实际上是猫时,就预测它是猫。

FP(假阳性):预测某物为阳性,但实际上不是阳性,即说某物为“假”。

现在正确检测某个类别的数量就是该类别的TP数量。但是除了这些模型之外,模型还预测了一些其他示例,这些示例都是肯定的,但实际上不是肯定的,因此是假阳性(FP)。因此,无论正确与错误,模型检测到的阳性分类总数为TP + FP。因此,在该类别的所有检测中正确检测到阳性类别的百分比将为:TP / (TP + FP),即该类别检测的精度

就像回想起一样,我们还可以将这个公式推广到任意数量的类。一次只取一个类别,将其视为肯定类别,其余类别视为负面类别,并对所有类别继续相同的过程即可计算出每个类别的精度。

您可以用另一种方式(基本上是考虑同一公式的另一种方式)来计算精度和召回率。对于Cat来说,首先在两者和模型的预测中都算出具有Cat的示例的数量(即TP的数量)。因此,如果您要计算精度,请将该计数除以模型的预测中的“猫”数量。否则,召回除以真实中的“猫”数量。这与精度和召回率的公式相同。如果您不明白为什么,那么您应该花点时间思考一下TP,FP,TN和FN的实际含义。

答案 2 :(得分:-2)

如果您无法理解精确度和召回率,请考虑阅读本文

https://medium.com/seek-product-management/8-out-of-10-brown-cats-6e39a22b65dc