我目前正在学习信息检索,但我更喜欢召回和精度的例子
搜索者使用搜索引擎来查找信息。结果的第一个屏幕上有 10 个文档,第二个屏幕上有 10 个文档。
假设在搜索引擎索引中已知有 10 个相关文档。
Soo... 总共有 20 个搜索,其中 10 个是相关的。
谁能帮我理解这一点?
谢谢
我目前正在学习信息检索,但我更喜欢召回和精度的例子
搜索者使用搜索引擎来查找信息。结果的第一个屏幕上有 10 个文档,第二个屏幕上有 10 个文档。
假设在搜索引擎索引中已知有 10 个相关文档。
Soo... 总共有 20 个搜索,其中 10 个是相关的。
谁能帮我理解这一点?
谢谢
召回和精确测量结果的质量。为了理解它们,让我们首先定义结果的类型。返回列表中的文档可以是
正确分类
错误分类
那么精度是:
|TP| / (|TP| + |FP|)
即确实相关的检索文档的比例
召回是:
|TP| / (|TP| + |FN|)
即结果集中相关文档的比例
因此,在您的示例中,20 个结果中有 10 个是相关的。这为您提供了 0.5 的精度。如果相关文件不超过这 10 个,则召回 1 个。
(在测量信息检索系统的性能时,只考虑精度和召回率才有意义。通过不返回任何结果(即没有虚假返回实例 => 无 FP)或召回率,您可以轻松获得 100% 的精度100% 通过返回每个实例(即没有遗漏相关文档 => 没有 FN)。)
好吧,这是我对召回的回答的延伸: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 的精度。所以Cat是我们的正类,其余的类(这里只有Dog)是负类。精度意味着阳性检测的百分比实际上是阳性的。所以这里对于 Cat 有 3 个模型检测。但它们都是正确的吗?不!其中只有 2 个是正确的(在示例 0 和 2 中),另一个是错误的(在示例 3 中)。所以正确检测的百分比是2 out of 3 which is (2 / 3) * 100 = 66.67%
。
现在进入公式,在这里:
TP(真阳性):当它实际上是积极的时候预测一些积极的事情。如果猫是我们的正面例子,那么当它实际上是一只猫时,预测它是一只猫。
FP(假阳性):预测某事是肯定的,但实际上不是肯定的,即“错误地”说某事是肯定的。
现在某类的正确检测数就是该类的TP数。但除此之外,该模型还将其他一些示例预测为正例,但实际上并不是正例,因此这些是误报 (FP)。因此,无论正确与否,模型检测到的正类总数为TP + FP
。因此,在该类的所有检测中,正确检测到正类的百分比将是:TP / (TP + FP)
这是该类检测的精度。
就像回忆一样,我们也可以将这个公式推广到任意数量的类。一次只取一个类,将其视为正类,将其余类视为负类,并对所有类继续相同的过程,以计算每个类的精度。
您可以以另一种方式计算精度和召回率(基本上是考虑相同公式的另一种方式)。说Cat,先统计有多少样例同时在Ground-truth和Model的预测中都有Cat (即统计TP的个数)。因此,如果您正在计算精度,则将此计数除以模型预测中“猫”的数量。否则,召回除以Ground-truth中“Cat”的数量。这与精度和召回率的公式相同。如果你不明白为什么,那么你应该想一想,然后回顾一下,TP
和的真正含义。FP
TN
FN
如果您难以理解准确率和召回率,请考虑阅读本文
https://medium.com/seek-product-management/8-out-of-10-brown-cats-6e39a22b65dc