为何ssd_mobilenet_v2模型mAP@.50极低但识别效果良好?
你遇到的“模型视觉预测准确但AP指标极低”的矛盾,核心问题出在AP的计算逻辑和评估细节上,而非模型的视觉检测能力,具体原因可从以下几点确认:
测试样本量严重不足
Pascal VOC的AP是依赖大量样本的统计指标,需要覆盖不同场景、大小、遮挡程度的目标,还要统计真阳性(TP)、假阳性(FP)、假阴性(FN)的完整分布。你仅用8张测试图评估,样本量远不足以支撑AP的有效计算——这些图大概率是简单易检测的样本,没有出现难例、漏检或误检,但AP计算需要足够多的样本绘制精度-召回曲线,少量样本会让统计结果严重失真,甚至出现极端低AP的情况。预测框与真值框的IoU未达标
AP@.50的判定标准是预测框与真值框的IoU(交并比)≥0.5才算真阳性。你看到类别预测正确,但可能预测框的位置、大小和真值框偏差较大,重叠度没达到0.5的阈值,这类预测会被判定为假阳性;如果还有目标被漏检,也会拉低召回率,最终导致AP下降。视觉上的“准确”不等于指标计算的严格标准。置信度阈值的影响
AP计算会遍历0到1的所有置信度阈值,统计每个阈值下的精度和召回率,最终取曲线下的面积。如果模型预测的置信度普遍偏低,大量正确预测会被过滤;或者模型输出大量低置信度的误检结果被计入FP,都会让精度-召回曲线下的面积变小,AP值降低。类别映射或标注格式错误
你用的是COCO预训练模型,若自定义任务的类别与COCO类别映射错误,或者评估时加载的真值标注格式(比如坐标是相对值/绝对值、框的表示方式)与模型输出不匹配,会导致评估逻辑错误——比如模型预测的类别被误判为错误,或者IoU计算失效,进而出现AP极低的结果。评估流程配置疏漏
检查TensorBoard的评估配置:是否正确加载了测试集的真值标注文件?是否设置了正确的评估参数(比如Pascal VOC的IoU阈值、类别列表)?如果评估时没正确读取真值,或参数配置错误,会让AP计算完全偏离实际情况。
内容的提问来源于stack exchange,提问作者Nuno Marques

