COCO 数据集的评价指标
1. AP(Average precision)
- AP50
- AP75
- AP[.5:.5:.95!]
对应解释:
简单的说:就是判断是否检测正确,需要通过以下这几个指标进行判断
为了定义上述的术语,引入一个辅助指标Intersection over Union (IoU)。
目标检测中的 IoU 模型评估原始面积gt(ground truth)和预测面积pd( prediction)之间的重叠程度。真值和预测可以是任何形状——矩形框、圆形,甚至不规则形状)
从图表上讲,IoU 定义如下(交集面积除以地面实况和预测框之间的联合面积。
IoU 的范围在 0 和 1 之间,其中 0 表示没有重叠,1 表示 gt 和 pd完全重合。IoU 通过阈值处理很有用,也就是说,我们需要一个阈值(例如,α),只要结果在这个阈值范围就可以确定检测是否正确。
下面通过一组图进行解释:
TP:通过模型检测到正确的位置,也就是检测的区域和实际的区域的误差在设定的阈值范围内
FP:检测器检测的位置不正确,也就是检测的区域和实际的区域的误差不在阈值的范围内
FN:表示实际的区域没有被检测器检测到
TN:表示背景区域正确地没有被模型检测到,一般不表示它
备注:将检测的结果设为TP还是FP,将ground-truth 设为 FN,完全取决于 IoU 阈值 α 的选择。例如,在上图中,如果我们将阈值降低到 0.24 以下,则第二张图像中的检测变为 TP,如果 IoU 阈值提高到 0.86 以上,则第一张图像上的检测将是 FP。
2. precision和recall
-
Precision: 它是模型识别正确的部分所占的比例,就是所有检测中TP所占的比例
-
Recall:他是衡量模型检测原始区域(ground truth)的能力,,就是检测出gt中的TP的比例
注意:如果模型具有高精度和高召回率,则称其为好模型。完美模型的 FN 和 FP 为零(即精度 = 1 和召回率 = 1)。通常,获得完美的模型是不可行的。
3. Precision x Recall Curve (PR Curve)
就像IOU描述的一样,置信度(confidence score)也依赖阈值。提升置信度的阈值,将意味着模型将检测不到更多的目标,也就是产生更多的FNs,因此导致低的recall和高的precision。降低置信度的阈值将意味产生更多的FPs,因此会产生低的precision和高的recall。这意味着我们要对precision和recall进行取舍。
PR Curve是在不同置信度值下precision和recall的图,对于一个好的模型,即使置信度变化时,精确度和召回率也会保持较高。
4. Avarage precision
AP@α是在IOU阈值为α下,评估的Precision-Recall曲线(AUC-PR)下的区域。它定义如下:
PR曲线下的高面积意味着高召回率和高精度。但是PR曲线是一个曲折的曲线,意味着它不是单调递减的,我们可以通过插值方法(interpolation methods)移除此属性,下面有两种插值方法:
4.1 11点插值法(11-point interpolation method)
A 11-point AP is a plot of interpolated precision scores for a model results at 11 equally spaced standard recall levels, namely, 0.0, 0.1, 0.2, . . . 1.0. It is defined as
where, R = {0.0, 0.1, 0.2, . . . 1.0} and
that is, interpolated precision at recall value, r — It is the highest precision for any recall value r’≥ r.
4.2 全点插值法(All-point interpolation approach)
In this case interpolation is done for ll the positions(recall values), that is
5. Mean Average Precision (mAP)
标注(AP和类的数量):AP是单独计算每个类,这意味着至少有与类别数量相等的AP。
mAP:就是对所有类别的AP值进行求和再求平均值。
标注(AP和IoU):如前所述,AP 是在给定的 IoU 阈值 α 下计算的。 有了这个推理,AP 可以在一个阈值范围内计算出来。 Microsoft COCO,在 10 个不同的 IoU 范围内以 5% 的步长计算给定类别/类的 AP,范围从 50% 到 95%,通常表示为 AP@[.50:.5:.95]。 Mask R-CNN,将AP@[.50:.5:.95] 的平均值简单地报告为 AP。
6. 案例
考虑下图5所示的3个图像。它们总共包含12个检测(红色盒子)和9个Groun-truths(绿色)。每个检测都有一个以字母和模型信心标记的类。在此示例中,请考虑所有检测率均为相同的对象类,并且iou theshold设置为α= 50%。下面的表1显示了IOU值。
11点插值
要使用11点插值计算AP@0.5的近似值,我们需要平均R中的回忆值的精度值(请参见公式3),即召回值0.0、0.1、0.2,。。。1.0。如图6所示。
全点插值
根据公式 5 中的定义,我们可以使用全点插值计算 AP@50,如下所示
简单来说,全点插值就是计算求和,4 个区域(R1、R2、R3 和 R4)的面积值,即:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!