深圳Yolo 视觉
深圳
立即加入
词汇表

平均精度mAP)

了解mAP如何评估计算机视觉模型。探索IoU、精度和召回率,并了解今天如何使用Ultralytics YOLO26计算mAP。

平均精度均值 (mAP) 是一种广泛用于评估计算机视觉模型性能的综合指标,特别是在object detectioninstance segmentation等任务中。与仅仅检查图像是否正确分类的简单准确率不同,mAP评估模型找到对象的程度以及它围绕对象定位边界框的准确性。这使其成为比较YOLO26等最先进架构与前几代产品的主要基准。通过总结所有类别中精度和召回率之间的权衡,mAP提供了一个单一分数,反映了模型在实际场景中的鲁棒性。

mAP的组成部分

要计算mAP,首先需要理解定义检测质量的三个基本概念:

  • 交并比 (IoU): 它衡量预测框与真实标注之间的空间重叠。这是一个介于0到1之间的比率。只有当IoU超过特定阈值(例如0.5或0.75)时,预测才常被视为“真阳性”。
  • 精确率:该指标回答了:“在模型声称 detect 的所有对象中,有多少比例是实际正确的?”高精确率意味着模型产生的误报非常少。
  • 召回率:该指标提出了一个问题:“在图像中实际存在的所有对象中,模型找到了多少比例?”高召回率表明模型避免了漏报,并且很少遗漏对象。

计算方法

计算首先通过为每个特定类别(例如,“人”、“汽车”、“狗”)计算平均精度 (AP) 来开始。这是通过找到精度-召回曲线下的面积来完成的,该曲线在各种置信度阈值下绘制精度与召回率。平均精度均值中的“均值”简单地指对训练数据中所有类别的这些AP分数进行平均。

标准研究基准,例如COCO dataset,经常报告两种主要变体:

  1. mAP@50:如果 IoU 至少为 0.50,则认为该 detect 是正确的。这是一个宽松的指标。
  2. mAP@50-95:这是在 IoU 阈值从 0.50 到 0.95(步长为 0.05)计算的 mAP 的平均值。这个严格的指标奖励那些实现高 定位精度的模型。

mAP 与相关指标

将mAP与准确率区分开来很重要。准确率适用于图像分类,其中输出是整个图像的单个标签,但在object detection中它会失效,因为它没有考虑对象的空间位置或背景类别。同样,虽然F1分数单个置信度阈值下提供了精度和召回率的调和平均值,但mAP整合了所有置信度水平的性能,提供了对模型稳定性的更全面的视图。

实际应用

在安全和效率至关重要的环境中,高mAP分数至关重要。

  • 自动驾驶汽车:在自动驾驶技术中,安全性取决于以高召回率(不错过任何目标)和高精确率(避免虚假制动)detect 行人与交通标志。mAP 确保感知系统能有效平衡这些需求。
  • 医学图像分析: 在识别 X 射线中的肿瘤或骨折时,放射科医生依靠 医疗 AI 来标记潜在问题。高 mAP 分数表明模型可靠地突出显示异常,而不会用误报淹没医生,从而促进准确诊断。

使用 Ultralytics 衡量 mAP

现代框架简化了这些指标在 验证 阶段的计算。以下示例展示了如何加载模型并使用 ultralytics Python 软件包。

from ultralytics import YOLO

# Load the YOLO26 model (recommended for new projects)
model = YOLO("yolo26n.pt")

# Validate the model on a dataset to compute mAP
# This runs inference and compares predictions to ground truth
metrics = model.val(data="coco8.yaml")

# Print mAP@50-95 (map) and mAP@50 (map50)
print(f"mAP@50-95: {metrics.box.map:.3f}")
print(f"mAP@50: {metrics.box.map50:.3f}")

模型部署 之前,理解和优化 mAP 至关重要。为了简化此过程,Ultralytics 平台 在训练期间提供 mAP、损失曲线和其他 KPI 的自动化跟踪,使开发人员能够可视化进度并选择最佳模型检查点进行生产。

让我们一起共建AI的未来!

开启您的机器学习未来之旅