1. TP , FP , TN , FN定义
TP(True Positive)是正样本预测为正样本的数量,即与Ground truth区域的IoU>=threshold的预测框
FP(False Positive)是负样本预测为正样本的数量,误报;即与Ground truth区域IoU < threshold的预测框
FN(True Negative)是本为正,错误的认为是负样本的数量,漏报;遗漏的Ground truth区域
TN(False Negative)是本为负,正确的认为是负样本的数量,没法算,因为没有标框的地方无法界定
2. 评价标准(一般来说mAP针对整个数据集而言的;AP针对数据集中某一个类别而言的;而percision和recall针对单张图片某一类别的。)
①精确率precision:就是在识别出来的图片中(预测为正样本的图片是识别出的图片)TP所占的比值:
【大白话:判断对了多少个(都被模型判断为positive,其中判对了多少个)】
表达式:precision=TP/(TP+FP)
②召回率recall:就是被正确识别出来的正样本个数与测试集中所有正样本的个数的比值:
【大白话:positive找到了多少个 (在真实标签为positive的所有样本中,找到了多少个)】
表达式:recall=TP/(TP+FN)
注: Precision和Recall之间往往是一种博弈关系,好的模型让Recall值增长的同时保持Precision的值也在很高的水平,而差的模型性可能会损失很多Precision值才能换来Recall值的提高。通常情况下,都会使用Precision-recall曲线,来显示分类模型在Precision与Recall之间的权衡。
③准确率:计算的是分类正确个数占全体样本的比例,针对的是所有类别
表达式:accuracy=(TP+TN)/(TP+FP+FN+TN)
注:一般不直接使用准确率
- 主要是因为类别不平衡问题,如果大部分是negative的 而且大部分模型都很容易判别出来,那准确率都很高, 没有区分度,也没有实际意义(因为negative不是我们感兴趣的)
"Object Detection不仅需要检测出图像中物体的分类,还需要给出物体在图像中的位置,并使用IoU来映射Prediction结果与Ground Truth的关系。"
④IoU:就是系统预测出来的框与原来图片中标记的框的重合程度。即通过计算Prediction Box与Ground Truth Box的交并比(IoU)来评价边界框正确性的度量指标,即为检测的准确率:
IoU=(DetectionResult⋂GroundTruth)/(DetectionResult⋃GroundTruth)
⑤平均准确度均值mAP(mean average precision):
目标检测中衡量识别精度的指标。它是多类的检测中,取每个类AP的平均值。多个类别物体检测中,每一个类别都可以根据recall和precision绘制一条曲线AP是Precision-Recall Curve(PRC)曲线所覆盖的面积,用来衡量模型在每个具体类别上的好坏。mAP就是给每一分类分别计算AP,再做mean平均。
即多个类别AP的平均值。这里average等于是对recall取平均。而mAP(mean average precision)的mean,是对所有类别取平均。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:目标检测评价标准(mAP, 精准度(Precision), 召回率(Recall), 准确率(Accuracy),交除并(IoU)) - Python技术站