深度学习mAP

mAP,其中代表P(Precision)精确率。AP(Average precision)单类标签平均(各个召回率中最大精确率的平均数)的精确率,mAP(Mean Average Precision)所有类标签的平均精确率。

1.准确率(accuracy)、精确率(Precision)、召回率(Recall)

准确率(accuracy),精确率(Precision)和召回率(Recall)是信息检索,人工智能,和搜索引擎的设计中很重要的几个概念和指标。

准确率:预测标签与ground truth的正确率。

精确率:预测为正标签的样本中的准确率。Precision = TP / (TP + FP)

召回率:体现了预测为负样本中标签为正(正样本漏检)的程度。Recall =  TP/(TP + FN)

举例:先假定一个具体场景作为例子。假如某个班级有男生80人,女生20人,共计100人,目标是找出所有女生,某人挑选出50个人,其中20人是女生,另外还错误的把30个男生也当作女生挑选出来了。

accuracy:分类正确的人占总人数的比例。他把其中70(20女+50男)人判定正确了,而总人数是100人,所以它的accuracy就是70 %。

当正负样本比例失调时,单纯的依靠准确率不靠谱。例如99个负样本,1个正样本,将样本全部判断为负即可达到99%的准确率。

其中TP代表正确(TURE)预测出正样本(POSITIVE)、FN代表错误(FALSE)预测成负样本(NEGTIVE)而真实标签为正样本。

通过这张表,我们可以很容易得到例子中这几个分类的值:TP=20,FP=30,FN=0,TN=50。

“精确率”与“召回率”虽然没有必然的关系(从上面公式中可以看到),然而在大规模数据集合中,这两个指标却是相互制约的。放宽“检索策略”时,往往也会伴随出现一些不相关的结果,从而使准确率受到影响。而希望去除检索结果中的不相关样本时,务必要将“检索策略”定的更加严格,这样也会使有一些相关的样本不再能被检索到,从而使召回率受到影响。

2.P-R曲线

用训练好的模型得到所有测试样本的confidence score,本例中某一类有20个测试样本。(每一类的P-R曲线、AP均单独计算)

这里写图片描述

对该类的confidence score排序,得到:

这里写图片描述

计算top-1到top-N(N是所有测试样本个数,本文中为20)对应的precision和recall,这两个标准的定义如下:

这里写图片描述

直观的理解就是,第一次我们排序后第一个样本的confidence作为划分正负样本的阈值,此时,只有第一个判断为正,其他均为负样本(因为其他样本的confidence均小于第一个样本的confidence),计算该阈值情况下的recall(1/1=1)和precision(1/1=1);然后第二次将排序后第二个样本的confidence作为划分正负样本的阈值,依次类推到最后一个。显然随着阈值的降低,我们选定的样本越来也多,recall一定会越来越高,而precision整体上会呈下降趋势。把recall当成横坐标,precision当成纵坐标,即可得到常用的precision-recall曲线。这个例子的P-R曲线如下: 

这里写图片描述

3.AP计算

PASCAL VOC CHALLENGE自2010年后就换了新计算方法。新的计算方法假设这N个样本中有M个正例,那么我们会得到M个recall值(1/M, 2/M, …, M/M),对于每个recall值r,我们可以计算出对应(r’ > r)的最大precision,然后对这M个precision值取平均即得到最后的AP值。计算方法如下:​ 
这里写图片描述

相应的Precision-Recall曲线中被用于计算AP的部分如下(每一个recall的节点都取precision的最大值连接起来): 

这里写图片描述

4.mAP

AP衡量的是学出来的模型在每个类别上的好坏,mAP衡量的是学出的模型在所有类别上的好坏,得到AP后mAP的计算就变得很简单了,就是取所有AP的平均值。

参考文献:https://blog.youkuaiyun.com/hust_lmj/article/details/79052559

### 关于深度学习中的最大后验概率(MAP) #### 定义 在统计学和机器学习领域,最大后验概率估计(Maximum A Posteriori Estimation, MAP)是一种用于推断未知参数的方法。这种方法通过寻找能够使得给定观测数据下的后验分布达到最大的参数值来完成估计工作[^1]。 对于深度学习而言,MAP可以被看作是在训练过程中对权重进行调整的一种方式,其目的是让这些权重视为最有可能产生已知训练样本集的概率密度函数的一部分。具体来说,在贝叶斯框架下,当假设先验分布已知时,MAP试图找到一组最优的模型参数θ*,该组参数可以使联合概率P(θ|D)最大化,其中D代表观察到的数据集合[^2]。 #### 应用场景 - **超参数调优**:利用MAP可以在一定程度上减少过拟合现象的发生,因为引入了正则化项作为先验信息; - **不确定性量化**:相比于仅给出单个最佳解的传统方法,基于MAP得到的结果不仅提供了具体的数值预测,还附带有关此预测置信水平的信息; - **图像处理任务**:例如去噪、修复等问题中,MAP可用于构建损失函数并指导算法迭代更新直至收敛至全局极值点附近。 ```python import numpy as np from scipy.optimize import minimize def log_posterior(params, data): """计算log posterior""" likelihood = compute_likelihood(data, params) prior = compute_prior(params) return -(likelihood + prior) initial_guess = ... # 初始猜测值 result = minimize(log_posterior, initial_guess, args=(data,)) optimal_params = result.x ```
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值