计算精度和召回

时间:2012-12-08 11:50:48

标签: machine-learning precision-recall

我对如何使用NB分类器

在监督机器学习算法中计算精度和召回感到困惑

比如说 1)我有两个班级A,B
2)我有10000个文件,其中2000个去训练样本集(A级= 1000,B级= 1000)
3)现在在上述训练样本集的基础上,使用NB分类器分类rest 8000文件 4)现在将5000份文件分类后转到A级,3000份文件转到B级 5)现在如何计算精度和召回?

请帮帮我..

由于

2 个答案:

答案 0 :(得分:18)

您好,您必须将结果分为四组 -
真正的A级(TA) - 正确分类为A级 假类A(FA) - 错误地归类为A类 真正的B类(TB) - 正确分类为B类 假B类(FB) - 错误地归类为B类

精度= TA /(TA + FA)
召回= TA /(TA + FB)

您可能还需要准确性和F测量:

准确度=(TA + TB)/(TA + TB + FA + FB)
f-measure = 2 *((精确*召回)/(精确+召回))

更多信息:
http://en.wikipedia.org/wiki/Precision_and_recall#Definition_.28classification_context.29

答案 1 :(得分:6)

让我解释清楚一点。

假设视频中有9只狗和一些猫,图像处理算法告诉你现场有7只狗,其中只有4只狗是真正的犬(真阳性),而3只是猫(假阳性)

精确告诉我们出于分类为狗的物品,实际上狗的数量

  

所以精确度=真阳性/(真阳性+假阳性) = 4 /(4 + 3)= 4/7

虽然回忆告诉了狗的总数,实际发现了多少只狗。

  

所以召回=真阳性/总数=真阳/(正阳性+假阴性) = 4/9


在您的问题中

你必须找到A级和B级的精确度和召回

对于A类

  

真阳性=(5000个分类A类文件中的A类文件数)

     

假阳性=(5000个分类A类文件中的B类文件数量)

从上面你可以找到精确度。

  

召回=真阳/(测试时使用的A类文件总数)

对B类重复上述操作以查找其精度和召回。