正确率能很好的评估分类算法吗_分类、目标检测中的评价指标(一)

eba6ee756a74f5ee9b52e8c489db0346.png

Email:gong5264@mail.ustc.edu.cn

原创内容,转载请标明

本人水平有限,如有错误还请批评指正

微博:帅帅家的人工智障


目录:

一:准确率 (Accuracy) 、错误率 (Error rate)

二:混淆矩阵 (Confusion Matrix)

三:召回率(Recall)、精确率(Precision)

四: P-R曲线、平均精度(Average-Precision,AP)、F指标

五:受试者工作特征曲线(Receiver Operating

Characteristic,ROC)、AUC(Area Under Curve)、

EER(Equal Error Rate)

六: 平均精度均值(Mean Average Precision,mAP)、

IOU(Intersection Over Union)

七:参考文献


一:准确率 (Accuracy) 、错误率 (Error rate)

准确率 (Accuracy):

分对的样本数除以所有的样本数 ,即:

准确(分类)率=正确预测的正反例数 / 总数

错误率(error rate):

错误率则与正确率相反,描述被分类器错分的比例,即:

误分类率=错误预测的正反例数/总数 = 1 - 准确(分类)率

准确率一般用来评估模型的全局准确程度,不能包含太多信息,全面评价一个模型,其中混淆矩阵是一个常用的手段。


二:混淆矩阵 (Confusion Matrix)

混淆矩阵又被称为错误矩阵, 在每个类别下,模型预测错误的结果数量,以及错误预测的类别和正确预测的数量都在一个矩阵下面显示出来,方便直观的评估模型分类的结果。

bbc62ed214d22ab6bb9a030db197b8bd.png

图片参考我之前的笔记:植物幼苗分类--Kaggle学习笔记(1)pretrained-keras-models

混淆矩阵中的横轴是模型预测的类别数量统计,纵轴是数据真实标签的数量统计。

对角线,表示模型预测和数据标签一致的数目,所以对角线之和除以测试集总数就是准确率。

对角线上数字越大越好,在可视化结果中颜色越深,说明模型在该类的预测准确率越高。

如果按行来看,每行不在对角线位置的就是错误预测的类别。

总的来说,我们希望对角线越高越好,非对角线越低越

好,可视化对角线时可以归一化处理。



三:召回率(Recall)、精确率(Precision)

虽然我们的模型处理的是多标签的分类任务,在一些场景中我们更加关注的可能是某一个类别对错与否的标签,相当于一个二分类。比如在做一个查找某个对象的任务。

当样本不均衡是,如正样本10,负样本990,这时即使模型把1000个样本全部预测为负样本,准确率(Accuracy)也有99%,这显然是有问题的。这里可以考虑用其他指标。

预测是否的二分类混淆矩阵:

68dc11520284237ee5b78eea05b31d4a.png

出处请参考:分类指标准确率(Precision)和正确率(Accuracy)的区别

分类目标只有两类,计为正例(positive)负(negtive):

 1) True positives(TP): 被正确地划分为正例的个数,即实际 为正例且被分类器划分为正例的实例数(样本数);

 2)False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;

 3)False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;

4)True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。

召回率(recall):

又被称为查全率,预测为正例(positive)的样本中正确的数量除以真正的Positive的数量,即:

Recall=TP/(TP+FN)=TP/P

精确率(Precision):

又被称为查准率,被分为正例的示例中实际为正例的比例,即:

Precision=TP/(TP+FP)

这里放出一张wikipedia上的图:

8873fd0bc7f74acfd7179890c18f7519.png

这里有一个隐藏的假设,就是类别的判断是根据每个类别的概率的最大值确定的。

在多分类中如最后经过一个softmax层得到的是某个概率最大值,然而对于二分类,往往把模型预测为某个对象的概率从高到低排序,并且和真实标签对应。

这时我们会设置某个阈值,大于这个阈值的分为正样本,反之为负样本。随着选取的阈值不同,得到的指标是不一样的。这时我们可以画P-R曲线。



四: P-R曲线、平均精度(Average-Precision,AP)、F指标

P-R曲线:

选取不同阈值时对应的精度和召回画出来

d8163e52b3cdc4abb8e441576d856614.png

总体趋势,精度越高,召回越低,当召回达到1时,对应概率分数最低的正样本,这个时候正样本数量除以所有大于等于该阈值的样本数量就是最低的精度值。

平均精度(Average-Precision,AP):

P-R曲线围起来的面积,通常来说一个越好的分类器,AP值越高。

F指标(F-Measure):

实际应用到分类时,需要综合考虑精度,召回。选取一个阈值,F-Measure是选取这个阈值的常用手段:

b6bfed863becd5bfc7c3c7d4682d14f4.png

是关与召回的权重,大于1说明更看重召回的影响,小于1则更看重精度,等于1相当于两者的调和平均,这里得到一个常用的指标F1-Measure。

F1指标(F1-Measure):

637dac59864ff59d74578290519d769f.png

想用F1指标时,只需要选取F1指标最大时的阈值即可。



五:受试者工作特征曲线Receiver Operating

Characteristic,ROC)、AUC(Area Under Curve)

EER(Equal Error Rate)

通过选取不同的阈值还可以得到另外一种常见的受试者工作特征曲线,简称ROC曲线,方法类似P-R曲线,根据不同的阈值,横轴为FPR,纵轴为TPR的曲线。

68dc11520284237ee5b78eea05b31d4a.png

ROC关注两个指标:

1) True Positive Rate ( TPR ) = TP / [ TP + FN] ,TPR代表能将正例分对的概率

2)False Positive Rate( FPR ) = FP / [ FP + TN] ,FPR代表将负例错分为正例的概率

下面是wikipedia的一张ROC曲线:

3790dd585bbc6e80359a4f3fb545f67b.png

曲线左下和右上代表一个完全没有效果的分类器,如果曲线在对角线左上,说明分类器有效果,在右下说明是负效果。

越靠近左上效果越好,理想的分类器对应的ROC曲线和(0,0)、(0,1)、(1,1)所在折线重合。

AUC(Area Under Curve):

ROC曲线围住的面积,越大,分类器效果越好。

EER(Equal Error Rate):

指的是FNR=FPR的情况,因为FNR=1-TPR,所以在ROC曲线中就是曲线和(0,1)、(1,0)对角线的交点。从漏检和误检的角度,FPR理解为对正样本的漏检率,FNR则是预测为正样本的误检率。EER是均衡考虑这两者时的阈值选定标准。



六: 平均精度均值(Mean Average Precision,mAP)

IOU(Intersection Over Union)

评价一个检测算法时,主要看两个指标,即是否正确的预测了框内物体的类别;预测的框和人工标注框的重合程度。

平均精度均值(Mean Average Precision,mAP):

mAP即是把每个类别的AP都单独拿出来,然后计算所有类别AP的平均值,代表着对检测到的目标平均精度的一个综合度量。

daf7c57b707b54bbd81116ffe5643441.png

IOU(Intersection Over Union):

IOU用来衡量预测的物体框和真实框的重合程度,即:

ee654c6861419264067c9372d5ae346d.png

89a5066cd3dc92df8dc158ea3f71fec9.png

蓝色的框是:GroundTruth

黄色的框是:DetectionResult

绿色的框是:DetectionResult ⋂GroundTruth

红色的框是:DetectionResult ⋃GroundTruth

即两个框的交并比,评价一个算法的时候,一种常见的方法是先设置一个IOU的阈值,只要算法找到的IOU大于这个阈值,就是一个有效的检测,把记过拿出来计算mAP作为最终的评价指标。



七:参考文献

1.

Information retrieval​en.wikipedia.org
bf2094dc4ad5192082bcd16a2003b597.png

2.

Precision and recall​en.wikipedia.org
ef43f0bd51023f59a5f324185871810b.png

3.

Receiver operating characteristic​en.wikipedia.org
f51571bed5c3fb17716a0ebdcbb1644f.png

4.

检测评价函数 intersection-over-union ( IOU )​blog.csdn.net
179935259f60dd402423fa01525f0e4d.png

5.

目标检测(一)目标检测评价指标 - CSDN博客​blog.csdn.net
d2809e8bf531bccd26a442620d0224d2.png

6.

宫帅USTC:植物幼苗分类--Kaggle学习笔记(1)pretrained-keras-models​zhuanlan.zhihu.com
fa373e9ca6979df972f97940c9b3cef0.png

7.

信息检索(IR)的评价指标介绍 - 准确率、召回率、F1、mAP、ROC、AUC​blog.csdn.net
5ede1fadedf35e90db1ca5bf5f62c2ff.png

8.

分类指标准确率(Precision)和正确率(Accuracy)的区别 - 止战 - 博客园​www.cnblogs.com

9.

目标检测中的mAP是什么含义?​www.zhihu.com

10.

信息检索的评价指标(Precision, Recall, F-score, MAP)​blog.csdn.net
7aa315aaa169a41d72b8b2b2b7612722.png

11.

准确率(Precision)、召回率(Recall)以及综合评价指标(F1-Measure )​www.cnblogs.com
0b935768a5dd0d7ea0545de5c8a25f66.png

12.

目标检测(一)目标检测评价指标 - CSDN博客​blog.csdn.net
d2809e8bf531bccd26a442620d0224d2.png

13.

目标检测研究综述+LocNet: Improving Localization Accuracy for Object Detection CVPR2016 阅读​www.jianshu.com
4bcb0cc7badc0c4e5c8e1af6b4c9e0b9.png

14. 《OReilly Hands On Machine Learning with Scikit Learn and TensorFlow》 Aurélien Géron

15. 《深度学习与计算机视觉》 叶韵 机械工业出版社 2017.8

16. 《 统计学习 》 李航

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值