跳转至内容

性能指标深度解析

简介

性能指标是评估准确性目标检测模型效率的关键工具。它们揭示了模型在图像中识别和定位目标的有效程度。此外,它们还有助于理解模型对假正例和假负例的处理。这些见解对于评估和提高模型的性能至关重要。在本指南中,我们将探讨与 YOLO11 相关的各种性能指标、它们的意义以及如何解读它们。



观看: Ultralytics YOLO11 性能指标 | MAP、F1 分数、 精确度,IoU & 准确率

对象检测指标

首先,让我们讨论一些不仅对 YOLO11 重要,而且广泛适用于不同目标检测模型的指标。

  • 交并比 (IoU): IoU 是一种量化预测边界框与真实边界框之间重叠程度的度量。它在评估对象定位的准确性方面起着 фундаментальную роль.

  • 平均精度 (AP): AP 计算精度-召回曲线下的面积,提供一个包含模型精度和召回性能的单一值。

  • 平均精度均值 (mAP): mAP 通过计算多个对象类别的平均 AP 值来扩展 AP 的概念。这在多类对象 detect 场景中非常有用,可以提供对模型性能的全面评估。

  • 精确度和召回率:精度量化了所有阳性预测中的真阳性比例,评估模型避免假阳性的能力。另一方面,召回率计算的是真阳性预测在所有实际阳性预测中所占的比例,衡量的是模型detect 某类所有实例的能力。

  • F1 分数: F1 分数是精度和召回率的调和平均值,在考虑假正例和假负例的同时,对模型的性能进行均衡评估。

如何计算 YOLO11 模型的指标

现在,我们可以探索YOLO11 的验证模式,该模式可用于计算上述讨论的评估指标。

使用验证模式很简单。一旦你训练好了一个模型,你就可以调用 model.val() 函数。然后,此函数将处理验证数据集并返回各种性能指标。但是,这些指标是什么意思?你应该如何解读它们?

解释输出

让我们分解一下 model.val() 函数的输出,了解输出的每个segment 。

按类别划分的指标

输出的部分内容是性能指标的按类别细分。当您试图了解模型在每个特定类别上的表现时,此细粒度信息非常有用,尤其是在具有多种目标类别的数据集中。对于数据集中的每个类别,将提供以下信息:

  • 类别:这表示目标类别的名称,例如“人”、“汽车”或“狗”。

  • 图像:此指标告诉你验证集中包含目标类别的图像数量。

  • 实例:这提供了该类别在验证集中所有图像中出现的次数。

  • Box(P、R、mAP50、mAP50):该指标可帮助我们深入了解模型在检测物体方面的性能:

    • P (精确率): 检测到的物体的准确度,表示有多少检测结果是正确的。

    • R (召回率): 模型识别图像中所有物体实例的能力。

    • mAP50:以 0.50 为阈值计算的平均值IoU这是仅考虑 "容易 "检测的模型精确度的衡量标准。

    • mAP50:在 0.50 至 0.95 之间的不同IoU 门限下计算得出的平均精度的平均值。它全面反映了模型在不同检测难度下的表现。

速度指标

推理速度与准确性同样重要,尤其是在实时对象检测场景中。本节将详细介绍验证过程中各个阶段所花费的时间,从预处理到后处理。

COCO 指标评估

对于在COCO 数据集上进行验证的用户,还可使用COCO 评估脚本计算其他指标。这些指标可帮助用户深入了解不同IoU 临界值和不同大小对象的精确度和召回率。

可视化输出

除了生成数值指标外,model.val() 函数还会生成可视化输出,从而可以更直观地了解模型的性能。以下是您可以预期的可视化输出的详细信息:

  • F1 分数曲线 (F1_curve.png): 此曲线表示 F1 分数 在各种阈值上的表现。解释此曲线可以深入了解模型在不同阈值下假阳性和假阴性之间的平衡。

  • 精确率-召回率曲线 (PR_curve.png): 作为任何分类问题不可或缺的可视化工具,此曲线展示了精确率和 召回率 在不同阈值下的权衡。在处理不平衡类别时,这一点尤其重要。

  • 精确率曲线 (P_curve.png): 精确率值在不同阈值下的图形表示。此曲线有助于了解精确率如何随阈值变化而变化。

  • 召回率曲线 (R_curve.png): 相应地,此图说明了召回率值如何在不同阈值上变化。

  • 混淆矩阵 (confusion_matrix.png): 混淆矩阵提供了结果的详细视图,展示了每个类别的真阳性、真阴性、假阳性和假阴性的计数。

  • 归一化混淆矩阵 (confusion_matrix_normalized.png): 此可视化是混淆矩阵的归一化版本。它以比例而不是原始计数来表示数据。此格式使得比较各个类别的性能变得更加简单。

  • 验证批次标签 (val_batchX_labels.jpg): 这些图像描绘了来自验证数据集的不同批次的真实标签。它们清晰地展示了根据数据集,对象是什么及其各自的位置。

  • 验证批次预测 (val_batchX_pred.jpg)与标签图像形成对比的是,这些可视化图像展示了 YOLO11 模型对相应批次所做的预测。通过将这些图像与标签图像进行比较,您可以轻松地评估模型在视觉上检测和分类物体的效果。

结果存储

结果会保存到一个目录中,通常名为 runs/detect/detect,以备将来参考。

选择正确的指标

选择正确的评估指标通常取决于具体的应用。

  • mAP:适用于对模型性能进行广泛评估。

  • IoU:在需要精确定位目标时必不可少。

  • Precision: 当最大限度地减少错误检测是一项优先任务时,此指标非常重要。

  • 召回:在需要detect 对象的每个实例时非常重要。

  • F1 Score: 当需要在精确率和召回率之间取得平衡时,此指标非常有用。

对于实时应用,FPS(每秒帧数)和延迟等速度指标对于确保及时获得结果至关重要。

结果解释

理解这些指标非常重要。以下是一些常见的较低分数可能表明的问题:

  • 低mAP:表示模型可能需要全面改进。

  • 低IoU:模型可能难以准确定位物体。采用不同的边界框方法可能会有所帮助。

  • Low Precision: 模型可能检测到过多的不存在的对象。调整置信度阈值可能会减少这种情况。

  • Low Recall: 模型可能遗漏了真实对象。改进 特征提取 或使用更多数据可能会有所帮助。

  • Imbalanced F1 Score: 精确率和召回率之间存在差异。

  • 针对具体班级的AP:这里的低分可以凸显模型在某些方面的不足。

案例研究

实际示例可以帮助阐明这些指标在实践中如何工作。

案例 1

  • 情况: mAP 和 F1 分数都不理想,但召回率很高,精度却不高。

  • Interpretation & Action: 可能存在过多的不正确检测。收紧置信度阈值可以减少这些检测,尽管这也可能会略微降低召回率。

案例 2

  • 情况: mAP 和 Recall 可以接受,但IoU 不足。

  • Interpretation & Action: 该模型可以很好地检测对象,但可能无法精确定位它们。改进边界框预测可能会有所帮助。

案例 3

  • 情况:有些班级的AP 比其他班级低得多,即使总的mAP 还不错。

  • Interpretation & Action: 这些类别对于模型来说可能更具挑战性。为这些类别使用更多数据或在训练期间调整类别权重可能是有益的。

连接与协作

融入由爱好者和专家组成的社区可以扩大您使用 YOLO11 的旅程。以下是一些可以促进学习、故障排除和交流的途径。

参与更广泛的社区

  • GitHub Issues: GitHub 上的 YOLO11 仓库有一个 Issues 选项卡,您可以在其中提问、报告错误和建议新功能。社区和维护者会积极参与,这是一个获得特定问题帮助的好地方。

  • Ultralytics Discord 服务器: Ultralytics 有一个 Discord 服务器,您可以在其中与其他用户和开发人员互动。

官方文档和资源:

  • Ultralytics YOLO11 Docs: 官方文档 提供了 YOLO11 的全面概述,以及关于安装、使用和故障排除的指南。

利用这些资源不仅能指导您应对各种挑战,还能让您及时了解 YOLO11 社区的最新趋势和最佳实践。

结论

在本指南中,我们仔细研究了 YOLO11 的关键性能指标。这些指标是了解模型性能的关键,对于任何想要微调其模型的人来说都至关重要。它们为改进提供了必要的见解,并确保模型在实际情况下有效工作。

请记住,YOLO11 和 Ultralytics 社区是一笔宝贵的财富。与开发人员和专家互动可以开启通往标准文档中找不到的见解和解决方案的大门。在您进行目标检测的过程中,保持学习的热情,尝试新的策略,并分享您的发现。通过这样做,您将为社区的集体智慧做出贡献,并确保其发展。

祝您目标检测顺利!

常见问题

平均精度mAP) 在评估YOLO11 模型性能方面有何意义?

平均精度mAP)对于评估YOLO11 模型至关重要,因为它提供了一个单一指标,囊括了多个类别的精度和召回率mAPmAP@0.50 在 0.50 的IoU 阈值下测量精度,重点关注模型正确detect 物体的能力mAPmAP@0.50:0.95 在一系列IoU 阈值下平均精度,对检测性能进行全面评估。高mAP 分数表明模型有效地平衡了精确度和召回率,这对自动驾驶和监控系统等应用至关重要,因为在这些应用中,准确检测和尽量减少误报是关键。

如何解释YOLO11 物体检测的 "交集大于联合"IoU)值?

交集大于联合IoU)衡量预测边界框与地面实况边界框之间的重叠程度。IoU 值从 0 到 1 不等,值越高表示定位精度越高。IoU 值为 1.0 表示完全对齐。通常情况下,IoU 的阈值为 0.50,用于定义mAP 等指标中的真阳性。较低的IoU 值表明模型在精确定位对象方面存在困难,这可以通过完善边界框回归或提高训练数据集的注释准确性来改善。

为什么 F1 分数对于评估目标检测中的 YOLO11 模型至关重要?

F1 Score 对于评估 YOLO11 模型非常重要,因为它提供了精确率和召回率的调和平均值,从而平衡了假正例和假负例。在处理不平衡的数据集或仅靠精确率或召回率不足的应用时,它尤其有价值。高 F1 Score 表明该模型有效地检测对象,同时最大限度地减少了漏检和误报,使其适用于安全系统医学成像等关键应用。

使用 Ultralytics YOLO11 进行实时目标检测的主要优势是什么?

Ultralytics YOLO11 为实时目标检测提供了多项优势:

  • 速度和效率:针对高速推理进行了优化,适用于需要低延迟的应用。
  • 高精确度:先进的算法可确保较高的mAP 和IoU 分数,同时兼顾精确度和召回率。
  • 灵活性:支持各种任务,包括目标检测、分割和分类。
  • 易于使用:用户友好的界面、丰富的文档以及与 Ultralytics HUB 等平台的无缝集成 (HUB 快速入门)。

这使得 YOLO11 非常适合从自动驾驶汽车到智慧城市解决方案的各种应用。

YOLO11 的验证指标如何帮助提高模型性能?

来自YOLO11 的验证指标,如精确度、召回率、mAP 和IoU ,通过提供对检测不同方面的见解,有助于诊断和改进模型性能:

  • 精度:帮助识别并最大限度地减少假阳性。
  • 召回率:确保检测到所有相关对象。
  • mAP:提供整体性能快照,指导总体改进。
  • IoU:帮助微调目标定位精度。

通过分析这些指标,可以针对特定的弱点,例如调整置信度阈值以提高精度,或收集更多样化的数据以提高召回率。有关这些指标的详细解释以及如何解释它们,请查看目标检测指标,并考虑实施超参数调整以优化您的模型。



📅 2 年前创建 ✏️ 5 个月前更新
glenn-jocherUltralyticsAssistantY-T-Gwillie.maddox@gmail.comRizwanMunawarleonnil

评论