目录
一、mAP相关概念
1、正例与负例
2、P(精确率)
3、R(召回率)
4、ACC(准确率)
5、AP(平均精确度)
6、示例
二、mAP
1、mAP简介
2、P—R曲线
学习深度学习,总会有各种各样的概念,对于刚入门的小白来说,真的是越看越迷糊。比如我们今天要说的,什么是mAP?于是我问了一下度娘...
看完这个之后,我的表情是这样的
我们看相关论文的时候,很明显啊,这个东东和地图有什么关系? 所以到底什么是我们在深度学习论文中所说的mAP呢?
首先要给大家介绍几个常见的模型评价术语,
现在假设我们的分类目标只有两类,计为正例(positive)和负例(negtive),然后我们就能得到如下的四种情况:
(1)True positives(TP): 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数(样本数);
(2)False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;
(3)False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;
(4)True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。
P 代表 precision,即精确率,精确率表示预测样本中实际正样本数占所有正样本数的比例,计算公式为:
精确率 = 正确预测样本中实际正样本数 / 所有的正样本数
即 precision = TP/(TP+FP);
R 代表 recall ,即召回率,召回率表示预测样本中实际正样本数占所有预测的样本的比例,计算公式为:
召回率 = 正确预测样本中实际正样本数 /实际的正样本数
即 Recall = TP/(TP+FN) ;
一般来说,召回率越高,准确率越低。
ACC 代表 Accuracy,即准确率,准确率表示预测样本中预测正确数占所有样本数的比例,计算公式为:
准确率 = 预测样本中所有被正确分类的样本数 / 所有的样本数
即 ACC = (TP+TN)/(TP+FP+TN+FN);
AP 代表 Average Precision,即平均精确度。
有朋友反映解释的概念太专业话,大家听不懂,在这里,通过一个示例来给大家说明一下。
狼吃羊的故事大家都听说过。懒羊羊这个小孩,心眼不坏,就是有时不靠谱。灰太狼继承了祖先的优良传统,带狼族来进攻羊村了,懒羊羊在门口,通报狼族进攻情况,这时候就会有如下四种情况:
在这个示例中:
预测正样本就是懒羊羊提醒了,预测负样本就是懒羊羊没有提醒。
实际正样本数就是狼族进攻了,实际负样本数就是狼族没有进攻。
真就是提醒和狼族进攻是相辅相成的,进攻就提醒,没进攻就没有提醒;假就是提醒错误,人家进攻了,没提醒,人家不进攻,乱提醒。
对于上面几个定义:
精确率:即正确提醒狼族进攻次数/所有提醒狼族的次数。
召回率:即正确提醒狼族进攻次数/所有真正狼族的次数。
准确率:所有的真/所有的情况。
mAP 是 Mean Average Precision 的缩写,即 均值平均精度。作为 object dection 中衡量检测精度的指标。计算公式为:
mAP = 所有类别的平均精度求和除以所有类别。
P-R曲线,顾名思义,就是P-R的关系曲线图,表示了召回率和准确率之间的关系;我们可以在坐标系上做以 precision 和 recall 作为 纵、横轴坐标 的二维曲线。
上图就是一个P-R曲线的例子,通过这几个例子,我们能够发现一个规律:精度越高,召回率越低,当召回达到1时,对应概率分数最低的正样本,这个时候正样本数量除以所有大于等于该阈值的样本数量就是最低的精度值。