Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >什么是目标检测中的平均精度均值(mAP)?

什么是目标检测中的平均精度均值(mAP)?

作者头像
小白学视觉
发布于 2024-10-10 11:22:17
发布于 2024-10-10 11:22:17
32700
代码可运行
举报
运行总次数:0
代码可运行

计算机视觉界已经集中在度量 mAP 上,来比较目标检测系统的性能。在这篇文章中,我们将深入了解平均精度均值 (mAP) 是如何计算的,以及为什么 mAP 已成为目标检测的首选指标。

目标检测的快速概述

在我们考虑如何计算平均精度均值之前,我们将首先定义它正在测量的任务。目标检测模型试图识别图像中相关对象的存在,并将这些对象划分为相关类别。例如,在医学图像中,我们可能希望能够计算出血流中的红细胞 (RBC)、白细胞 (WBC) 和血小板的数量,为了自动执行此操作,我们需要训练一个对象检测模型来识别这些对象并对其进行正确分类。

EfficientDet(绿色)与 YOLOv3(黄色)的示例输出

这两个模型都预测了图片中细胞周围的边界框,然后他们为每个边界框分配一个类。对于每个任务,网络都会对其预测的置信度进行建模,可以在此处看到我们共有三个类别(RBC、WBC 和Platelets)。

我们应该如何决定哪个模型更好?查看图像,看起来 EfficientDet(绿色)绘制了过多的 RBC 框,并且在图像边缘漏掉了一些细胞。这当然是从事物表面来看——但是我们可以相信图像和直觉吗?

如果我们能够直接量化每个模型在测试集中的图像、类和不同置信阈值下的表现,那就太好了。要理解平均精度均值,我们必须花一些时间来研究精度-召回曲线。

精确-召回曲线

精确是“模型猜测它正确猜测的次数?” 的一个衡量标准,召回是一种衡量“模型每次应该猜到的时候都猜到了吗?” 。假设一个具有有 10 个红细胞的图像,模型只找到这 10 个中正确标记的一个,因为“RBC”具有完美的精度(因为它做出的每一个猜测都是正确的),但并不同时具有完美的召回(仅发现十个 RBC 细胞中的一个)。

包含置信元素的模型可以通过调整进行预测所需的置信水平来权衡召回的精确度。也就是,如果模型处于避免假阳性(当细胞是白细胞时说明存在红细胞)比避免假阴性更重要的情况下,它可以将其置信阈值设置得更高,以鼓励模型只产生以降低其覆盖率(召回)为代价的高精度预测。

精度-召回曲线是绘制模型精度和以召回率作为模型置信阈值函数的过程。它是向下倾斜的,因为随着置信度的降低,会做出更多的预测,进而预测的准确性会降低(影像精确度)。

一个 NLP 项目中不同模型的精度、召回率和置信度

随着模型越来越不稳定,曲线向下倾斜,如果模型具有向上倾斜的精度和召回曲线,则该模型的置信度估计可能存在问题。

人工智能研究人员偏向于指标,并且可以在单个指标中捕获整个精确召回曲线。第一个也是最常见的是 F1,它结合了精度和召回措施,以找到最佳置信度阈值,其中精度和召回率产生最高的 F1 值。接下来是 AUC(曲线下面积),它集成了精确性和召回曲线下的绘图量。

精确召回汇总指标图

最终的精确-召回曲线指标是平均精度 (AP),它被计算为在每个阈值处实现的精度的加权平均值,并将前一个阈值的召回率增加用作权重。

AUC 和 AP 都捕获了精确-召回曲线的整个形状,选择一个或另一个进行目标检测是一个选择问题,研究界已经将注意力集中在AP 的可解释性上。

通过并集上的交点测量正确性

目标检测系统根据边界框和类标签进行预测。

真正的目标检测图

在实践中,X1、X2、Y1、Y2 坐标中预测的边界框肯定会偏离地面真实标签(即使稍微偏离)。我们知道如果边界框预测是错误的类,我们应该将其视为不正确的,但是我们应该在哪里绘制边界框重叠的线?

Intersection over Union (IoU) 提供了一个度量来设置这个边界,与地面真实边界框重叠的预测边界框的数量除以两个边界框的总面积。

真正对 IoU 指标的图形描述。

为 IoU 指标选择正确的单个阈值似乎是任意的,一位研究人员可能会证明 60% 的重叠是合理的,而另一位则认为 75% 似乎更合理,那么为什么不在一个指标中考虑所有阈值呢?

绘制mAP精度-召回曲线

为了计算 mAP,我们绘制了一系列具有不同难度级别的 IoU 阈值的精确-召回曲线。

我们真正绘制的 mAP 精确召回曲线图

在上图中,红色绘制的是对 IoU 的最高要求(可能是 90%),橙色线绘制的是对 IoU 的最低要求(可能是 10%),要绘制的线数通常由挑战设置。例如,COCO 挑战设置了十个不同的 IoU 阈值,从 0.5 开始,以 0.05 的步长增加到 0.95。

最后,我们为按类型划分的数据集绘制这些精度-召回曲线。

由我们真正按对象类别划分的 mAP 图

该指标在所有 IoU 阈值上单独计算每个类的平均精度 (AP),然后该指标对所有类别的 mAP 进行平均以得出最终估计值。

在实验中使用平均精度均值(mAP)

我最近在一篇文章中使用了mAP,比较了最先进的EfficientDet和YOLOv3检测模型,我想看看哪个模型在识别血液中的细胞表现更好。

在对测试集中的每个图像进行推理后,我导入了一个 python 包来计算Colab笔记本中的mAP,结果如下!

EfficientDet 对细胞物体检测的评价:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
78.59% = Platelets AP 
77.87% = RBC AP 
96.47% = WBC AP 
mAP = 84.31%

YOLOv3对细胞物体检测的评价:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
72.15% = Platelets AP 
74.41% = RBC AP 
95.54% = WBC AP 
mAP = 80.70%

因此,与本文开头的单一推断图片相反,事实证明EfficientDet在建模细胞目标检测方面做得更好!我们还将注意该指标是按对象类划分的,这告诉我们,白细胞比血小板和红细胞更容易检测,这是有道理的,因为它们比其他细胞大得多,并且不同。

地图也经常被分成小、中、大对象,这有助于识别模型(和/或数据集)可能出现错误的地方。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-10-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小白学视觉 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
深入了解平均精度(mAP):通过精确率-召回率曲线评估目标检测性能
平均精度(Average Precision,mAP)是一种常用的用于评估目标检测模型性能的指标。在目标检测任务中,模型需要识别图像中的不同目标,并返回它们的边界框(bounding box)和类别。mAP用于综合考虑模型在不同类别上的准确度和召回率。
deephub
2023/08/28
2.7K0
深入了解平均精度(mAP):通过精确率-召回率曲线评估目标检测性能
什么是mAP ? 比较目标检测模型性能的统计量,了解一下?
翻译 | 张建军 出品 | 人工智能头条(公众号ID:AI_Thinker) 在机器学习领域,对于大多数常见问题,通常会有多个模型可供选择。当然,每个模型会有自己的特性,并会受到不同因素的影响而表现不同。 每个模型的好坏是通过评价它在某个数据集上的性能来判断的,这个数据集通常被叫做“验证/测试”数据集。这个性能由不同的统计量来度量,包括准确率( accuracy )、精确率( precision )、召回率( recall )等等。选择我们会根据某个特定的应用场景来选择相应的统计量。而对每个应用来说,找到
用户1737318
2018/06/05
1K0
YOLO 目标检测实战项目『原理篇』
在目标检测中,IoU 为预测框 (Prediction) 和真实框 (Ground truth) 的交并比。如下图所示,在关于小猫的目标检测中,紫线边框为预测框 (Prediction),红线边框为真实框 (Ground truth)。
机器视觉CV
2019/11/14
4.7K1
YOLO 目标检测实战项目『原理篇』
什么是MAP? 理解目标检测模型中的性能评估
【导读】近日,机器学习工程师Tarang Shah发布一篇文章,探讨了机器学习中模型的度量指标的相关问题。本文首先介绍了机器学习中两个比较直观和常用的度量指标:精确度和召回率,然后详细讲解了目标检测领
WZEARW
2018/04/13
3.2K0
什么是MAP? 理解目标检测模型中的性能评估
目标检测技术指标mAP:识别准确率IOU:检测效果
mAP:识别准确率 mAP在目标检测中用于判断识别的准确率,即用于衡量物品被检测出的概率,其跟以下两个指标有关: Precision(准确率):检测出的“物品有多少是真的物品 Recall(召回率):数据集中的物品有多少被检出 对于以上两个概念,将其置于标准二分类问题框架下有以下公式: $$ Precision = \cfrac{TP}{TP+FP} \\ Recall = \cfrac{TP}{TP+FN} $$ 对于以上,有: TP:正例,被识别为正例 FP:反例,被识别为正例 TN:反例,被识别为正
月见樽
2018/07/04
2K0
目标检测中的平均精度(mAP)详解--建议收藏+掌握
本文将详细介绍目标检测中的平均精度(mAP),建议收藏并掌握。(公众号:OpenCV与AI深度学习)
Color Space
2022/09/26
9.8K0
ECCV 2018 | 旷视科技Oral论文解读:IoU-Net让目标检测用上定位置信度
论文:Acquisition of Localization Confidence for Accurate Object Detection
机器之心
2018/08/07
1.6K0
ECCV 2018 | 旷视科技Oral论文解读:IoU-Net让目标检测用上定位置信度
利用mAP评估目标检测模型
在本文中,我们将了解如何使用 precision 和召回率来计算平均精度 (mAP)。mAP 将真实边界框与检测到的框进行比较并返回分数。分数越高,模型的检测越准确。
数据科学工厂
2023/01/19
8550
Python 深度学习目标检测评价指标
准确率 (Accuracy),混淆矩阵 (Confusion Matrix),精确率(Precision),召回率(Recall),平均正确率(AP),mean Average Precision(mAP),交除并(IoU),ROC + AUC,非极大值抑制(NMS)。
用户9925864
2022/07/27
8990
Python 深度学习目标检测评价指标
【深度学习】目标检测
目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有挑战性的问题。
杨丝儿
2022/03/01
3K0
【深度学习】目标检测
目标检测任务中的一些评估准则
本篇文章介绍一下目标检测中常用的一些评估准则,大家跑 yolo 的时候可能看着一堆输出不知道啥意思,希望这篇文章能够解决大家的疑惑,主要是翻译 GitHub 上的一个 repo,原文是英文写的,链接在这里,写的挺不错,就翻译过来给英文不好的同学看看,另外还加了几个项目中没有提到的准则
棒棒鸡不棒
2022/09/02
9660
目标检测任务中的一些评估准则
目标检测mAP计算方式
目标检测中常见的mAP计算说起来比较麻烦,所以结合VOC的计算代码进行一次详细的解析。
泽霖
2023/11/26
5510
业余AI与专业AI的区别,就在这些评估指标上
嘿,AI探险家们!你是否曾经花了好几周训练了一个"完美"的模型,却发现它在实际应用中表现得像个"学渣"?别担心,我们都经历过这种痛苦。事实上,这正是业余AI实践者和专业人士之间的重要分水岭——专业人士知道,评估模型不能只看它在训练数据上多么优秀,而是需要一套科学的"成绩单"来衡量它在未知数据上的真实表现。
martinzh7
2025/05/30
1190
业余AI与专业AI的区别,就在这些评估指标上
ADA-YOLO | YOLOv8+注意力+Adaptive Head,相对YOLOv8,mAP提升3%+118FPS
近年来,目标检测技术取得了显著的进展,使得可以实现对解剖结构、病变或异常的自动识别和定位。多年来,目标检测方法取得了重大的进步,这是由于大规模的带有标注的数据集的出现和深度学习技术的开发所驱动的。这些技术在改善医疗诊断和治疗结果方面展示出巨大的潜力。
集智书童公众号
2024/01/17
1.3K0
ADA-YOLO | YOLOv8+注意力+Adaptive Head,相对YOLOv8,mAP提升3%+118FPS
【小知识】目标检测各类指标概念总结
目标检测论文中出现过很多容易混淆的评价指标,比如FLOPS、FLOPs、 GFLOPS,包括最基本的AP、mAP这些定义,索性将这些基本概念搞清楚,做个总结。
机器学习AI算法工程
2024/07/04
4510
【小知识】目标检测各类指标概念总结
从 YOLOv1 到 YOLOv2:目标检测的进化之路
你有没有想过,当你用手机拍一张照片,里面的人、车、狗是怎么被自动识别出来的?这背后靠的就是目标检测技术。目标检测是计算机视觉中的一个重要领域,它不仅要回答“图片里有什么”,还要告诉你“这些东西在哪里”。今天,我们要聊的是目标检测领域的两个经典模型:YOLOv1 和 YOLOv2。它们的名字听起来很酷——“You Only Look Once”(你只看一次),不仅名字帅,性能也很强。这篇博客将带你走进 YOLO 的世界,聊聊它们的原理、区别,以及那些听起来高大上的概念,比如 mAP、FPS、IoU 等。我们会尽量用大白话解释,并在后面深入讲解数学公式和代码实现,让你轻松看懂!
机器学习司猫白
2025/03/15
1050
从 YOLOv1 到 YOLOv2:目标检测的进化之路
YOLO系列改进 | YOLOF的小小改进升级之轻量化TE-YOLOF
显微图像中的血细胞分析通过识别不同的细胞对象在疾病识别领域中起着至关重要的作用。在血细胞领域,血液中有三种重要成分:白细胞(WBC)、红细胞(RBC)和血小板。这些血细胞的比例和数量严重影响医生对疾病的判断。因此,找到一种基于深度卷积神经网络的目标检测算法来准确高效地检测血细胞,可以提高医疗系统的效率。
AiCharm
2023/05/15
5730
YOLO系列改进 | YOLOF的小小改进升级之轻量化TE-YOLOF
目标检测中常提到的IoU和mAP究竟是什么?
intersect over union,中文:交并比。指目标预测框和真实框的交集和并集的比例。
AI粉嫩特工队
2019/09/26
3.4K0
目标检测中常提到的IoU和mAP究竟是什么?
绝对不容错过:最完整的检测模型评估指标mAP计算指南(附代码)在这里!
作者: 叶 虎 编辑: 赵一帆 前 言 本文翻译自Measuring Object Detection models - mAP - What is Mean Average Pr
机器学习算法工程师
2018/07/27
4.3K0
绝对不容错过:最完整的检测模型评估指标mAP计算指南(附代码)在这里!
【必备】目标检测中的评价指标有哪些?
上期我们一起学习了全卷积神经网络FCN,今天我们看下目标检测中的评价指标都有哪些?
智能算法
2020/05/08
17.7K0
推荐阅读
相关推荐
深入了解平均精度(mAP):通过精确率-召回率曲线评估目标检测性能
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验