简单理解mAP究竟是什么

简介: 简单理解mAP究竟是什么

mAP是深度学习模型的一个非常常见的模型评估指标,那么这么重要的一个指标究竟是一个啥东西呢?


在了解这个指标之前,我们需要明白以下几个概念:


什么是TP、TN、FP、FN?


现在假设我们的分类目标只有两类,分类结果正确的计为正例(positive)分类结果错误的j计为负例(negtive),然后我们就能得到如下的四种情况:


1)TP的英文全称为True Positives,其指的是被分配为正样本,而且分配对了的样本,代表的是被正确分类的正样本。


2)TN的英文全称为,其指的是被分配为负样本,而且分配对了的样本,代表的是被正确分类的负样本。


3)FP的英文全称为False Positives,其指的是被分配为正样本,但分配错了的样本,代表的是被错误分类的负样本。


4)FP的英文全称为False Negatives,其指的是被分配为负样本,但分配错了的样本,代表的是被错误分类的正样本。


什么是Precision和Recall?


Precision指的是精度;

Recall指的是召回率。


那么两者具体代表的意思是什么呢?


Precision 其实代表精确率,精确率表示预测样本中实际正样本数占所有正样本数的比例,


计算公式为:


精确率 = 正确预测样本中实际正样本数 / 所有的正样本数


即 precision = TP/(TP+FP);


Recall 召回率,召回率表示预测样本中实际正样本数占所有预测的样本的比例,


计算公式为:  


召回率 = 正确预测样本中实际正样本数 /实际的正样本数


即 Recall = TP/(TP+FN) ;


什么是AP?


对于目标检测而言任务,每一个类都可以计算出其Precision和Recall,通过合理的计算,每个类都可以得到一条P-R曲线,曲线下的面积就是AP的值。


如下图所示:


1dc618a0ed9580ce8bfa6facb208c08f.png


计算面积:


b001cd2dd849a60e17405f7ed5f145b8.jpeg


即:AP = A1 + A2 + A3 + A4


什么是mAP?


讲到这里那究竟什么才是mAP?


其实mAP就是所有类别计算出来的AP取平均值!


mAP本质代表着什么?


为了理解mAP真正代表着什么,我们先来看看他的具体计算公式:


5d4c6812c8535adbb050f4ddf2e1bce8.png


我们可以看出,mAP的分子是AP,而AP的分子是什么呢?换句话来说,什么与mAP成正比关系?


这个答案就是:分类器判断是正确的类别并且真实确实是正确类别的数量TP。


从这个角度来看,结论显然而出:


mAP体现的核心是其实就是准确率,mAP越高代表着的是判断是正确并且真正正确的精准度越高!


相关文章
|
8月前
|
Java
使用JavaStream将List转为Map
使用JavaStream将List转为Map
|
6天前
|
Java
map.getOrDefault
map.getOrDefault
17 0
|
6天前
|
存储 缓存 Java
map应用
map应用
16 0
|
6天前
|
存储 算法 安全
Map中的那些事
Map中的那些事
32 0
|
6天前
|
算法 C++ Python
map的使用(C++)
map的使用(C++)
25 0
|
5月前
|
存储 安全 Java
Map详解
Map详解
52 0
|
6月前
|
JSON 数据库 数据格式
Map和List的碰撞
Map和List的碰撞
30 0
|
9月前
Map
Map
41 0
|
11月前
|
安全
Map
Map
62 0