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

文章目录

  • 1、准确率、精确率、召回率、误报率、漏报率概念及公式
    • 1.1 准确率 Accuracy
    • 1.2 精确率 Precision
    • 1.3 召回率 Recall
    • 1.4 F1-Score
    • 1.5 误检率 false rate
    • 1.6 漏检率 miss rate
  • 2、YOLOv7混淆矩阵分析

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

  • 重点参考博文:【机器学习】准确率、精确率、召回率、误报率、漏报率概念及公式
  • 误报率、漏报率、准确率和召回率(虚警率、漏警率)
    • 误报率和漏报率的关系:一般来说无法同时降低误报率和漏报率。举个例子来说,某门卫为了防止小偷进入小区,凡是过往人员都要盘查,这时漏报率为0,但是显著提高了误报率;反之如果门卫什么都不做,任由人员出入,那么这是漏报率就会提高,而误报率降低为0。
    • 漏检率 + 召回率 = 1,也就是召回率越高,漏检率越低
  • 【积累】机器学习知识,看里面的1.1.2 二分类问题

阳性(正)样例 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/228860.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

河北中洺科技-数据标注是怎样工作的?

由于人工智能系统的普及,各种智能场景在生活中变得普遍。然而,在这些极大方便我们生活的智能背后,数据标注似乎从未被人们所重视。数据标注是怎样的工作?为什么被称为人工智能训练师? 要想了解这些问题,我…

界面控件DevExpress WPF流程图组件,完美复制Visio UI!(二)

DevExpress WPF Diagram(流程图)控件帮助用户完美复制Microsoft Visio UI,并将信息丰富且组织良好的图表、流程图和组织图轻松合并到您的下一个WPF项目中。 在上文中(点击这里回顾>>),我们为大家介绍…

Linux常用命令——basename命令

在线Linux命令查询工具 basename 打印目录或者文件的基本名称 补充说明 basename命令用于打印目录或者文件的基本名称。basename和dirname命令通常用于shell脚本中的命令替换来指定和指定的输入文件名称有所差异的输出文件名称。 语法 basename(选项)(参数)选项 --help&…

有哪些不错的golang开源项目?

前言 下面是github上的golang项目,适合练手,可以自己选择一些项目去练习,整理不易,希望能多多点赞收藏一下!废话少说,我们直接进入正题>>> 先推荐几个教程性质的项目(用于新手学习、…

数据结构与算法(Java)-树形DP题单

树形DP(灵神笔记) 543 二叉树的直径 543. 二叉树的直径 - 力扣(LeetCode) 给你一棵二叉树的根节点,返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根…

【SK-learn学习】1.16 概率校准

一、说明 概率校准,指的是对于分类器而言,对应多种类别,概率最大就将样本归入,这个事实没有考虑置信度的问题。sklearn的calibration就是指的这种情形,参考本文。 二、关于sklearn.calibration的概念 执行分类时&#…

算法基础之食物链

食物链 核心思想&#xff1a;带权并查集 用距根节点和距离表示与根节点的关系 求距离 #include<iostream>using namespace std;const int N50010;int n,m;int p[N],d[N];//找到祖宗节点(路径压缩) 并求出对应距离int find(int x){if(p[x]!x){int up[x]; //保存旧父节点…

C#通过NPOI 读、写Excel数据;合并单元格、简单样式修改;通过读取已有的Excel模板另存为文件

文章目录 1 需要引用的DLL2 调用示例3 工具类 1 需要引用的DLL 2 调用示例 public static void WriteExcel() {string templateFile "F:\12312\excel.xlsx"; // 文件必须存在string outFile "F:\12312\" DateTime.Now.ToString("yyyyMMddHHmmssff…

快速了解Spring AOP的概念及使用

文章目录 1. AOP概念1.1 什么是AOP&#xff1f;1.2 什么是Spring AOP&#xff1f; 2. Spring AOP的使用2.1 引入Spring AOP依赖2.2 编写AOP程序 3. Spring AOP详解3.1 Spring AOP核心概念1. 切点&#xff08;Pointcut&#xff09;2. 连接点&#xff08;Join Point&#xff09;3…

【软件测试】银行测试项目VS常规项目有什么区别?怎么做?

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 银行测试项目跟常…

20世纪30年代的大危机

背景 1929年9月&#xff0c;美国财政部部长安德鲁梅隆向公众保证“现在没有担心的理由&#xff0c;这一繁荣的高潮将会继续下去”。 当时流行的一首儿歌&#xff1a;“梅隆拉响汽笛&#xff0c;胡佛敲起钟&#xff0c;华尔街发出信号&#xff0c;美国往地狱里冲&#xff01;”…

水文监测遥测终端机RTU

水文监测是指通过测量和监测水体的物理、化学和生物性质&#xff0c;以获得关于水资源质量和水体环境状态的信息的过程。包括地下水位、地表水位、河流水位等&#xff0c;从而能够及时采取措施应对水资源过度开采、污染等问题&#xff0c;保障水资源的可持续利用。其次&#xf…