当前位置: 首页 > news >正文

混淆矩阵(Confusion Matrix);归一化混淆矩阵(Confusion Matrix Normalized)

 ---------------------------------------------------------------------------------------

图片中文名称

  1. 第一张图片:混淆矩阵(Confusion Matrix)

  2. 第二张图片:归一化混淆矩阵(Confusion Matrix Normalized)

相同点和不同点

相同点:
  1. 结构:两张图片都是混淆矩阵,展示了模型预测结果与真实标签之间的关系。

  2. 标签:两张图片的行和列标签相同,都是不同的类别名称,如“bottle”、“calculator”等。

  3. 对角线元素:对角线上的值表示正确分类的数量或比例,两张图中这些值是一致的。

不同点:
  1. 数值表示

    • 第一张图显示的是绝对数量,即每个类别被正确或错误分类的次数。

    • 第二张图显示的是归一化后的比例,即每个类别被正确或错误分类的比例

  2. 颜色深浅

    • 第一张图中颜色深浅  表示数量的多少,颜色越深表示数量越多。

    • 第二张图中颜色深浅  表示比例的大小,颜色越深表示比例越高。

图片解释

第一张图片(混淆矩阵)
  • 用途:用于展示分类模型的性能,特别是模型在不同类别上的分类准确性。

  • 解读

    • 对角线上的值(如“bottle”类别的29,表示29个“bottle”被正确分类)表示模型正确分类的数量。

    • 非对角线上的值表示分类错误的数量,例如“bottle”被错误分类为“calculator”的数量为37。

    • 颜色越深表示数量越多,帮助快速识别分类错误的模式

第二张图片(归一化混淆矩阵)
  • 用途:用于更直观地展示每个类别的分类准确性,特别是当类别样本数量不均衡时。

  • 解读

    • 对角线上的值(如“bottle”类别的0.97)表示该类别的分类准确率

    • 非对角线上的值表示分类错误的比例,例如“bottle”被错误分类为“calculator”的比例为0.04

    • 颜色越深表示比例越高,帮助快速识别分类错误的模式。

通过这两张图,可以更全面地了解模型在不同类别上的分类性能,特别是识别出哪些类别容易被误分类,从而指导模型的进一步优化。

-------------------------------------------------------------------------------

精确率表示模型的准确性:预测为正的结果中有多少是真的。例如模型检出了10个物体,其中8个真的是目标、另外2个是误报,则Precision=80%。这是什么意思呢?

您对 精确率(Precision) 的理解完全正确!以下是更详细的解释和补充说明,帮助您彻底掌握这一概念:


精确率的定义

精确率(Precision) 衡量的是模型预测为“正类”(Positive)的结果中,有多少是真实的正类。其计算公式为:

Precision=真正例(True Positives, TP)真正例(TP) + 假正例(False Positives, FP)Precision=真正例(TP) + 假正例(False Positives, FP)真正例(True Positives, TP)​

  • 真正例(TP):模型正确预测为正的样本(确实是目标)。

  • 假正例(FP):模型错误预测为正的样本(实际不是目标,误报)。


您的例子解析

假设模型检测出 10 个物体

  • 8 个是真实目标(TP = 8)

  • 2 个是误报(FP = 2)

则精确率为:

Precision=88+2=80%Precision=8+28​=80%

含义:模型给出的所有“正类”预测中,80% 是准确的,剩余 20% 是噪声或错误。


直观场景对比

场景 1(高精确率)
  • 模型检测 5 个物体,全部是真实目标(TP=5, FP=0)。

  • Precision = 100%
    ✅ 适用于零容忍误报的场景(如医疗诊断)。

场景 2(低精确率)
  • 模型检测 20 个物体,其中 10 个是真实目标(TP=10, FP=10)。

  • Precision = 50%
    ❌ 大量误报,需进一步筛选(如垃圾邮件过滤)。


与召回率(Recall)的区别

  • 精确率:关注 预测结果的质量(“宁缺毋滥”)。

  • 召回率(Recall):关注 找出所有真实目标的能力(“宁可错杀”),计算为:

    Recall=TPTP+假负例(False Negatives, FN)Recall=TP+假负例(False Negatives, FN)TP​

    (FN 是漏检的真实目标)。


实际应用中的权衡

  • 高精确率 + 低召回率:模型保守,只预测高置信度目标(减少误报,但可能漏检)。

  • 低精确率 + 高召回率:模型激进,检测更多目标(减少漏检,但误报增多)。

平衡方法

  • 调整分类阈值(如 YOLO 中的 conf 参数)。

  • 使用 F1 Score(精确率和召回率的调和平均)。


在 YOLO 中的体现

python

from ultralytics import YOLOmodel = YOLO("yolov8n.pt")
results = model.predict(source="image.jpg", conf=0.5)  # 调整置信度阈值
  • 提高 conf → 精确率上升(预测更严格),召回率可能下降。

  • 降低 conf → 召回率上升(检测更多目标),精确率可能下降。


总结

您的例子完美展示了精确率的本质:模型预测为正类的可靠性。在实际项目中,需结合召回率共同优化,才能达到最佳效果!

confusion_matrix.png

PNG 173.31KB

confusion_matrix_normalized.png

PNG 223.28KB

横坐标和纵坐标,哪一个是真实的,哪一个被预测的呢?

在混淆矩阵(Confusion Matrix)中,横坐标(列)通常表示模型的预测结果(Predicted),而纵坐标(行)表示真实的标签(Actual/Ground Truth)。这是机器学习中的标准表示方式(但需注意个别文献或工具可能相反,需结合上下文确认)。


针对您提供的混淆矩阵的分析

1. 非归一化矩阵(confusion_matrix.png)
  • 结构问题:您的表格未明确标注行列含义,但通过内容可推测:

    • 左侧列(如 bottle - | 29)可能是真实标签(Actual)。

    • 右侧数值可能是模型预测为该类的次数(Predicted)。

    • 例如:真实标签为 bottle 的样本中,模型正确预测了 29 次,但也可能被误预测为其他类别(如 background)。

2. 归一化矩阵(confusion_matrix_normalized.png)
  • 数值范围(0~1):表示预测的准确率或比例。

    • 例如 bottle - 0.97 表示真实为 bottle 的样本中,97% 被模型正确预测。

    • 低值(如 clock - 0.02)表示模型对该类别的识别能力较差。


如何验证行列含义?

  1. 对角线元素

    • 混淆矩阵的对角线(从左上到右下)通常表示 正确预测(TP)。

    • bottle 的真实标签对应预测值 0.97(高值),则进一步支持纵轴是 Actual。

  2. 非对角线元素

    • 其他位置的数值表示 误分类(如真实为 bottle 但预测为 background)。


标准混淆矩阵示例

Predicted: APredicted: B
Actual: ATP (A→A)FP (A→B)
Actual: BFN (B→A)TN (B→B)
  • 在您的数据中,bottle - 0.97 类似 A→A(TP),而 bottle - 0.03 类似 A→其他类(FP)。


总结

  • 纵轴(行) = 真实标签(Actual)

  • 横轴(列) = 预测结果(Predicted)

建议:若数据来自 Ultralytics YOLO,可通过其文档或可视化工具(如 val.py 生成的矩阵)确认行列标注。

相关文章:

  • 《AI大模型应知应会100篇》【精华】第40篇:长文本处理技巧:克服大模型的上下文长度限制
  • 制作一款打飞机游戏33:碰撞体编辑
  • 推荐系统实验指标置信度:p值核心原理与工程应用指南
  • 李录谈卖出股票的时机:价值投资的动态决策框架
  • centos6.7安装完python3 找不到python3命令
  • DES与AES算法深度解析:原理、流程与实现细节
  • 【Yolo精读+实践+魔改系列】Yolov2论文超详细精讲(翻译+笔记)
  • 深度学习·经典模型·SwinTransformer
  • C语言教程(二十三):C 语言强制类型转换详解
  • C++核心编程 1.2 程序运行后
  • 【阿里云大模型高级工程师ACP习题集】2.7 通过微调增强模型能力 (上篇)(⭐️⭐️⭐️ 重点章节!!!)
  • 什么是缓冲区溢出?NGINX是如何防止缓冲区溢出攻击的?
  • LangChain4j +DeepSeek大模型应用开发——5 持久化聊天记忆 Persistence
  • Linux 命名管道+日志
  • 微信小程序开发,购物商城实现
  • 阿里通义Qwen3:双引擎混合推理,119语言破局全球AI竞赛
  • Golang 并发编程
  • 厚铜PCB钻孔工艺全解析:从参数设置到孔壁质量的关键控制点
  • Sql刷题日志(day7)
  • BG开发者日志429:故事模式的思路
  • 视频丨中国海警位中国黄岩岛领海及周边区域执法巡查
  • 共绘“彩色上海”,IP SH艺术共创沙龙首期圆满举办
  • 辽宁辽阳市白塔区一饭店火灾事故举行新闻发布会,现场为遇难者默哀
  • 蔡澜回应“入ICU观察”称未至于病危,助理:只是老毛病
  • 2025年“投资新余•上海行”钢铁产业“双招双引”推介会成功举行
  • “光荣之城”2025上海红色文化季启动,红色主题市集亮相