计算机视觉中各个评价指标的含义
⽬录
⼀.图像分类
评价指标
1)True positives(TP): 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数(样本数);
2)Fal positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;
3)Fal negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;
4)True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。
Column 1相关(Relevant),正类⽆关(NonRelevant),负类
被检索到(Retrieved)true positives(TP 正类判定为正类,例⼦中就是正确的判定"这位是⼥
⽣")
fal positives(FP 负类判定为正类,“存伪”,例⼦中就是分明是
男⽣却判断为⼥⽣,当下伪娘横⾏,这个错常有⼈犯)
社保卡更换未被检索到
在尝试中成长(Not Retrieved)fal negatives(FN 正类判定为负类,“去真”,例⼦中就是,分明是⼥
⽣,这哥们却判断为男⽣–梁⼭伯同学犯的错就是这个)
卧室电视柜true negatives(TN 负类判定为负类,也就是⼀个男⽣被判断为男
⽣,像我这样的纯爷们⼀准⼉就会在此处)
1)正确率(accuracy)
正确率是我们最常见的评价指标,accuracy = (TP+TN)/(P+N),这个很容易理解,就是被分对的样本数除以所有的样本数,通常来说,正确率越⾼,分类器越好;
2)错误率(error rate)
错误率则与正确率相反,描述被分类器错分的⽐例,error rate = (FP+FN)/(P+N),对某⼀个实例来说,分对与分错是互斥事件,所以accuracy =1 - error rate;
3)灵敏度(nsitive)
nsitive = TP/P,表⽰的是所有正例中被分对的⽐例,衡量了分类器对正例的识别能⼒;
4)特效度(specificity)
specificity = TN/N,表⽰的是所有负例中被分对的⽐例,衡量了分类器对负例的识别能⼒;
懒姑娘的幸福生活5)精度(precision)
精度是精确性的度量,表⽰被分为正例的⽰例中实际为正例的⽐例,precision=TP/(TP+FP);
6)召回率(recall)
召回率是覆盖⾯的度量,度量有多个正例被分为正例,recall=TP/(TP+FN)=TP/P=nsitive,可以看到召回率与灵敏度是⼀样的。
7)其他评价指标
计算速度:分类器训练和预测需要的时间;
鲁棒性:处理缺失值和异常值的能⼒;
可扩展性:处理⼤数据集的能⼒;
可解释性:分类器的预测标准的可理解性,像决策树产⽣的规则就是很容易理解的,⽽神经⽹络的⼀堆参数就不好理解,我们只好把它看成⼀个⿊盒⼦。
⼆.⽬标检测
1.基本概念
IoU(交并⽐)
交并⽐IoU衡量的是两个区域的重叠程度,是两个区域重叠部分⾯积占⼆者总⾯积(重叠部分只计算
⼀次)的⽐例。如下图,两个矩形框的IoU是交叉⾯积(中间图⽚红⾊部分)与合并⾯积(右图红⾊部分)⾯积之⽐。
Confidence(置信度)
置信度是每个bounding box输出的其中⼀个重要参数,作者对他的作⽤定义有两重:
⼀重是:代表当前box是否有对象的概率 注意,是对象,不是某个类别的对象,也就是说它⽤来说明当前box内只是个背景
(backgroud)还是有某个物体(对象);
另⼀重:表⽰当前的box有对象时,它⾃⼰预测的box与物体真实的box可能的I O U p r e d t r u t h
IOU^{truth}_{pred}IOU pred truth 的值,注意,这⾥所说的 物体真实的box实际是不存在的
,这只是 模型表达⾃⼰框出了物体的⾃信程度。
yolov3 在⽹络最后的输出中,对于每个grid cell产⽣3个bounding box,每个bounding box的输出有三类参数:
⼀个是对象的box参数,⼀共是四个值,即box的中⼼点坐标(x,y)和box的宽和⾼(w,h);寄给远方的他
一些的近义词
⼀个是置信度,这是个区间在[0,1]之间的值;
最后⼀个是⼀组条件类别概率,都是区间在[0,1]之间的值,代表概率。
:
拿SSD为例:
全科网格其中的 就是softmax,也就是我们可以根据⽹络前向计算得到的概率值处理下的结果。我觉得使⽤conf⽽不是简单的概率主要是针对多分类和剔除Neg Sample 的loss 的⽬的吧。。负样本我们没必要再去loss优化了。。。
2.评价指标
1.PR图
1、PR图
由上表以Recall值为横轴,Precision值为纵轴,我们就可以得到PR曲线。我们会发现,Precision与Recall的值呈现负相关,在局部区域会上下波动。
2.AP(Average Precision)
AP为平均精度,使⽤积分的⽅式来计算PR曲线与坐标轴围成的⾯积
但是在实际应⽤中,我们不是去对其进⾏计算,⽽是对其平滑操作来简化计算,对PR曲线上的每个点,Precision的值取该点右侧最⼤的Precision的值,结果如下图所⽰:
计算出AP之后,对所有的类别的AP求平均就可以得出整个数据集上的mAP。
3.MAP(Mean Average Precision)
不同的数据集给出不同的mAP的计算⽅法
检测出来的bbox包含score和bbox,按照score降序排序,所以每添加⼀个样本,就代表阈值降低⼀点(真实情况下score降低,iou不⼀
定降低)。这样就是可以有很多种阈值,每个阈值情况下计算⼀个Precious和Recall。
使⽤区域选择算法得到候选区域
对候选区域,计算每⼀个候选区域和标定框(groud truth)的iou
设定⼀个iou阈值,⼤于这个的标为正样本,⼩于的标为负样本,由此得到⼀个类似于分类时的测试集。
将给定的测试集(正负样本),通过分类器,算出每⼀个图⽚是正样本的score
设定⼀个score阈值,⼤于等于此值的视作正样本,⼩于的作为正样本
根据上⼀步的结果可以算出准确率和召回率
调节score阈值,算出召回率从0到1时的准确率,通过计算所有类的AP就可以计算mAP了。
1、Interplolated AP(Pascal Voc 2008 的AP计算⽅式)
Pascal VOC 2008中设置IoU的阈值为0.5,如果⼀个⽬标被重复检测,则置信度最⾼的为正样本,另⼀个为负样本。在平滑处理的PR曲
线上,取横轴0-1的10等分点(包括断点共11个点)的Precision的值,计算其平均值为最终AP的值。
2、MS COCO mAP
蒙古长调民歌
对于coco数据集来说,使⽤的也是Interplolated AP的计算⽅式。与Voc 2008不同的是,为了提⾼精度,在PR曲线上采样了100个点进⾏计算。⽽且Iou的阈值从 0.5 - 0.95 的区间上每隔0.05计算⼀次mAP的值,取所有结果的平均值作为最终的结果。除了AP,还有 [公式], [公式] 等值,分别代表了如下含义:
:
阈值为0.5时的AP测量值
:IoU阈值为0.75时的测量值
: 像素⾯积⼩于 的⽬标框的AP测量值(⼩尺度)
: 像素⾯积在~之间⽬标框的测量值(中等尺度)
: 像素⾯积⼤于 的⽬标框的AP测量值(⼤尺度)
通常来说AP是在单个类别下的,mAP是AP值在所有类别下的均值。在这⾥,在coco的语境下AP便是mAP,这⾥的AP已经计算了所有类别下的平均值,这⾥的AP便是mAP。
三.⽬标跟踪AP 50AP 75AP S 322AP M 322962AP L 962