use*_*536 5 machine-learning precision-recall
我真的很困惑如何使用NB分类器在监督机器学习算法中计算精度和召回
比如说
1)我有两个类A,B
2)我有10000个文件,其中2000个去训练样本集(A类= 1000,B类= 1000)
3)现在根据上述训练样本集分类休息使用NB分类器的8000个文件
4)现在分类5000个文件后转到A类,3000个文件转到B类
5)现在如何计算Precision和Recall?
请帮我..
谢谢
Tom*_*rek 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
让我解释清楚一点.
假设视频中有9只狗和一些猫,图像处理算法告诉你现场有7只狗,其中只有4只狗是真正的犬(真阳性)而3只是猫(假阳性)
精确告诉我们出于分类为狗的物品,实际上有多少狗
所以精密=真阳性/(真阳性+假阳性) = 4 /(4 + 3)= 4/7
虽然回忆告诉了狗的总数,实际发现了多少只狗.
所以Recall = True Positives/Total Number = True Positive /(True positive + False Negative) = 4/9
你必须找到A级和B级的精度和召回率
对于A类
真阳性=(5000个分类A类文件中的A类文件数)
误报=(5000个分类A类文件中的B类文件数)
从上面你可以找到精确度.
召回=真阳/(测试时使用的A类文件总数)
对B类重复上述操作以查找其精度和召回率.