看懂YOLOv7混淆矩阵的含义,正确计算召回率、精确率、误检率、漏检率

1、准确率、精确率、召回率、误报率、漏报率概念及公式

阳性(正)样例 P 和 阴性(负)样例 N

  • 正样本预测为正样本的为True positive(TP)
  • 正样本预测为负样本的为False negative(FN)
  • 负样本预测为正样本的为False positive(FP)
  • 负样本预测为负样本的为True negative(TN)

所以有:
P = T P + F N N = F P + T N P = TP + FN \\ N = FP + TN P=TP+FNN=FP+TN

1.1 准确率 Accuracy

  • 反映模型对整体样本判断正确的能力,值越大越好
  • 但样本不平衡时,ACC 不能很好地评估模型性能
    A c c = T P + T F T P + F P + T N + F N Acc = \frac{TP + TF}{TP + FP + TN + FN} Acc=TP+FP+TN+FNTP+TF

1.2 精确率 Precision

  • 反映模型正确预测正样本精度的能力,值越大越好
  • 也称精度查准率阳性预测值(positive predictive value, PPV)
  • 即:衡量在所有预测为正样本的数据中,有多少是真正的正样本
    P r e c i s i o n ( P P V ) = T P T P + F P Precision(PPV) = \frac{TP}{TP + FP} Precision(PPV)=TP+FPTP

1.3 召回率 Recall

  • 反映模型正确预测正样本全度的能力,值越大越好
  • 也称真阳性率(true positive rate, TPR),灵敏度查全率
  • 即:衡量在所有真实的正样本中,有多少被预测为正样本
    R e c a l l ( T P R ) = T P T P + F N = T P P Recall(TPR) = \frac{TP}{TP + FN}=\frac{TP}{P} Recall(TPR)=TP+FNTP=PTP

1.4 F1-Score

  • 是对精确率和召回率的加权求和
    F 1 − S c o r e = 2 × P r e c i s i o n × R e c a l l P r e c i s i o n + R e c a l l F1-Score=\frac{2×Precision×Recall}{Precision+Recall} F1Score=Precision+Recall2×Precision×Recall

1.5 误检率 false rate

  • 反映模型正确预测正样本纯度的能力,值越小越好
  • 又称虚警率假阳性率(False Positive Rate)
  • 即:在所有真实的负样本中,有多少被预测为正样本
    F P R = F P T N + F P = F P N FPR=\frac{FP}{TN + FP}=\frac{FP}{N} FPR=TN+FPFP=NFP

1.6 漏检率 miss rate

  • 反应模型正确预测负样本纯度的能力,值越小越好
  • 又称错检率漏警率假阴性率(False Negative Rate)
  • 即:在所有真实的正样本中,有多少被预测为负样本
  • 漏检率 + 召回率 = 1
    F N R = F N T P + F N = F N P FNR=\frac{FN}{TP+FN}=\frac{FN}{P} FNR=TP+FNFN=PFN

2、YOLOv7混淆矩阵分析

  • 应该YOLO其他系列的也可以这样分析
  • 图中格子里面的数字表示比例,其余重要的含义在图中已表示

在这里插入图片描述

例如,通过计算可以得到:对角线的值就表示的召回率漏检率=1-Recall=0.4

类别 D 00 的召回率 = R e c a l l ( T P R ) = T P T P + F N = T P P = 0.60 0.60 + 0.01 + 0.39 = 0.6 类别 D 00 的漏检率 = F N R = F N T P + F N = F N P = 0.01 + 0.39 0.60 + 0.01 + 0.39 = 0.4 = 1 − R e c a l l 类别D_{00}的召回率=Recall(TPR) = \frac{TP}{TP + FN}=\frac{TP}{P}=\frac{0.60}{0.60+0.01+0.39}=0.6\\ 类别D_{00}的漏检率= FNR=\frac{FN}{TP+FN}=\frac{FN}{P}=\frac{0.01+0.39}{0.60+0.01+0.39}=0.4=1-Recall 类别D00的召回率=Recall(TPR)=TP+FNTP=PTP=0.60+0.01+0.390.60=0.6类别D00的漏检率=FNR=TP+FNFN=PFN=0.60+0.01+0.390.01+0.39=0.4=1Recall

以D00类别来看:

  • 除了对角线上的那个值以外,反映的是漏检率(漏检成了其他的类别)
  • 除了对角线上的那个值以外,反映的是误检率(误检成了其他的类别)

例如第1列第3行的值0.01表示:漏检D00且认为是D20的概率是0.01
第2列第1行的值0.01表示:误检D00且认为是D10的概率是0.01

  • 24
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孟孟单单

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值