Confusion Matrix
了解混淆矩阵如何评估分类性能。探索 TP、FP、TN 和 FN,以优化你的 Ultralytics YOLO26 模型以获得更高的准确性。
混淆矩阵是用于机器学习分类问题的性能评估工具,适用于输出结果包含两个或多个类别的情况。它是一个包含预测值与实际值四种不同组合的表格,是模型评估中进行数据可视化的基础要素。与简单准确率不同(如果数据集不平衡,准确率可能会产生误导),混淆矩阵提供了计算机视觉 (CV) 模型出错位置的精细分析。通过对比预测结果与真值标签,开发人员可以确定系统是否混淆了两个特定类别,或者是否完全未能检测到某个对象。
Link to this section矩阵的核心组成部分#
矩阵本身通常被划分为四个象限用于二分类问题,对于Ultralytics YOLO26处理的那类多分类问题,矩阵则会相应扩展。这四个组件代表了模型预测结果与图像中实际存在对象之间的交集。
- 真阳性 (TP): 模型正确预测了正类。例如,在目标检测任务中,模型成功为画面中真实存在的人绘制了边界框。
- 真阴性 (TN): 模型正确预测了负类。这在异常检测等场景中至关重要,即系统能正确识别出制造零件没有缺陷。
- 假阳性 (FP): 模型错误地预测了正类。这通常被称为“I型错误”,发生在系统检测到不存在的对象时,例如监控摄像头将阴影误报为入侵者。
- 假阴性 (FN): 模型错误地预测了负类。这被称为“II型错误”,发生在模型未能检测到真实存在的对象时,本质上是“漏检”了目标。
Link to this section衍生指标及其意义#
混淆矩阵中的原始数值可用于计算描述模型性能的更高级指标。理解这些衍生指标对于优化神经网络至关重要。
- 精确率 (Precision): 计算公式为 TP / (TP + FP),该指标揭示了正类预测的准确程度。高精确率意味着更少的误报。
- 召回率 (敏感度): 计算公式为 TP / (TP + FN),用于衡量模型查找所有正样本的能力。当漏检对象后果严重时,高召回率至关重要。
- F1 分数: 精确率和召回率的调和平均数。它提供了一个平衡两者权衡的单一分数,适用于比较不同的YOLO26 模型。
Link to this section实际应用#
由混淆矩阵定义的具体错误代价决定了模型如何针对不同行业进行调整。
在**医疗 AI**领域,混淆矩阵关乎安全。当训练用于医学图像分析以检测肿瘤的模型时,假阴性(漏掉肿瘤)远比假阳性(将良性斑点标记给医生复查)严重得多。因此,工程师在这些矩阵中会优先考虑召回率而非精确率,以确保没有任何潜在的健康风险被忽略。
相反,在**制造质量控制**中,效率是关键。如果一个对流水线零件进行分类的系统产生过多的假阳性(将合格零件标记为有缺陷),会导致不必要的浪费并拖慢生产进度。此时,混淆矩阵可以帮助工程师调整模型以最大化精确率,确保被剔除的确实是有缺陷的零件,从而优化自动机器学习 (AutoML) 工作流程。
Link to this section使用 YOLO26 生成混淆矩阵#
When using modern frameworks, generating this matrix is often part of the standard validation pipeline. The example below demonstrates how to validate a YOLO26 model and access the confusion matrix data using the ultralytics package.
from ultralytics import YOLO
# Load a pre-trained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# This automatically generates and plots the confusion matrix
metrics = model.val(data="coco8.yaml")
# Access the confusion matrix object directly
print(metrics.confusion_matrix.matrix)Link to this section区分相关概念#
务必将混淆矩阵与类似的评估术语区分开来。
- 对比 准确率: 准确率仅仅是正确预测数占总预测数的比例。虽然有用,但在不平衡数据集中,准确率可能会极具欺骗性。例如,如果 95% 的电子邮件不是垃圾邮件,那么一个对所有邮件都预测“非垃圾邮件”的模型准确率可达 95%,但它毫无用处。混淆矩阵通过显示垃圾邮件类别的真阳性为零,揭示了这一缺陷。
- 对比 ROC 曲线: 混淆矩阵提供的是在特定置信度阈值下的性能快照。相比之下,接收者操作特征 (ROC) 曲线可视化了真阳性率和假阳性率随该阈值变化而变化的情况。诸如 Ultralytics Platform 之类的工具允许用户探索这两种可视化结果,从而为部署选择最佳的操作点。






