Record_05:准确率(Accuracy)_精确率(Precision)_召回率(Recall)_漏报率_误报率

@Record_05_准确率(Accuracy)_精确率(Precision)_召回率(Recall)_漏报率_误报率
折腾了这么久,跟别人探讨了,自学了这么久,还是要来写一下这个博客,对自己是一种记录,希望这种记录对你有用。

混淆矩阵

不怎容易弄明白的矩阵,所以叫混淆矩阵,很多人混淆可能是看表格的方向不知道,按照下面说的,再看看能不能明白。

原始标签检测成正样本检测成负样本
标签:正样本TPFN
标签:负样本FPTN

这个表格:

第2行从左往右看:

原来样本标签是正样本,通过模型后,模型检测该样本为正样本,是为真阳,TP,True Positive

原来样本标签是正样本,通过模型后,模型检测该样本为负样本,是为假阴,FN,False Negative

第3行从左往右看:

原来样本标签是负样本,通过模型后,模型检测该样本为正样本,是为假阳,FP,False Positive

原来样本标签是负样本,通过模型后,模型检测该样本为负样本,是为真阴,TN,True Negative

对于分类问题,我们关注的是正样本到底检测没检测出来。所以正,是,阳;负,是,阴。

由混淆矩阵,可以得到下面公式:

准确率_Accuracy 计算公式:

A C C = T P + T N T P + F N + F P + T N ACC=\frac{TP+TN}{TP+FN+FP+TN} ACC=TP+FN+FP+TNTP+TN

精确率_Precision 计算公式:

P r e c i s i o n = T P T P + F P Precision =\frac{TP}{TP+FP} Precision=TP+FPTP

召回率_Recall 计算公式:

R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP

误报率计算公式:

F N R = F N T P + F N = 1 − P r e c i s i o n FNR = \frac{FN}{TP+FN}=1-Precision FNR=TP+FNFN=1Precision

漏报率计算公式:

F P R = F P T P + F P = 1 − R e c a l l FPR = \frac{FP}{TP+FP}=1-Recall FPR=TP+FPFP=1Recall

以下补充内容,仅供参考!不负法律责任!

下面补充是我自己的理解,你觉得能帮助你理解就行,你要是大牛看不惯,可以忽略。

漏报:

漏报的含义是:原来标签是正样本,模型如果检测它是正样本,那么应该报警。

比如吸烟分类,吸烟是正样本,不吸烟的其他所有都是负样本。

模型在检测时,如果检测到吸烟,就要报警:请勿吸烟!

这就是报警,报警报告的是正样本。

原来是正样本,结果模型没检测出来它是吸烟样本,就是漏报。

漏报率计算公式:

F N T P + F N \frac{FN}{TP+FN} TP+FNFN

也就是:

1 − R e c a l l = 1 − T P T P + F N = F N T P + F N 1-Recall=1-\frac{TP}{TP+FN}=\frac{FN}{TP+FN} 1Recall=1TP+FNTP=TP+FNFN

误报:

误报的含义是:原来标签是负样本,模型如果检测它是正样本,也是报警,只不过是误报。

比如吸烟分类,吸烟是正样本,不吸烟的其他所有都是负样本。

如果司机吃苹果,模型检测司机吃苹果是吸烟,就是误报。

原来是负样本,结果模型检测出来它是吸烟样本,就是误报。

误报率计算公式:

但是,很多人要把这些公司在python代码中实现出来,用FNR,FPR表达出来的含义在网上一搜好多版本,以下是我的理解。不喜忽略!不负法律责任!

FNR,是False Negative Rate的英文简写,有两个表达式:

F N R p o s i t i v e = F N T P + F N FNR_{positive} = \frac{FN}{TP+FN} FNRpositive=TP+FNFN
F N R n e g t i v e = F N T N + F N FNR_{negtive} = \frac{FN}{TN+FN} FNRnegtive=TN+FNFN

通常默认FNR_positive为漏报率,即漏报率默认是FNR表示,即漏报率:

F N R = F N T P + F N FNR = \frac{FN}{TP+FN} FNR=TP+FNFN

FPR,是False Positive Rate的英文简写,也是两个表达式:

FPR却是有两个公式,我标记成如下:

F P R p o s i t i v e = F P T P + F P FPR_{positive} = \frac{FP}{TP+FP} FPRpositive=TP+FPFP
F P R n e g t i v e = F P T N + F P FPR_{negtive} = \frac{FP}{TN+FP} FPRnegtive=TN+FPFP

通常默认FPR_positive为漏报率,即误报率默认是FPR表示,即误报率:

F P R = F P T P + F P FPR = \frac{FP}{TP+FP} FPR=TP+FPFP

文章最后有微信公众号:惟CPP,欢迎关注,一起交流学习进步~

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值