MindSpore分类指标之准确率、AUC/ROC详解(一)

一、评价指标基本概念

评价指标是针对模型性能优劣的一个定量指标。

一种评价指标只能反映模型一部分性能,如果选择的评价指标不合理,那么可能会得出错误的结论,故而应该针对具体的数据、模型选取不同的的评价指标。

本文将详细的介绍一下在教程中的图片分类项目为什么要用准确率(Accuracy)来作为评价指标。使用准确率(Accuracy)的时候,数据需要满足那些条件。

二、混淆矩阵

我们从混淆矩阵开始,引出我们所要讲述的评价指标。

MindSpore分类指标之准确率、AUC/ROC详解(一)

图1-混淆矩阵

TP、FN、FP、TN的解释:
(1)若一个实例是正类,并且被预测为正类,即为真正类TP(True Positive )
(2)若一个实例是正类,但是被预测为负类,即为假负类FN(False Negative )
(3)若一个实例是负类,但是被预测为正类,即为假正类FP(False Positive )
(4)若一个实例是负类,并且被预测为负类,即为真负类TN(True Negative )

三、准确率

那么准确率所表示的意义是什么呢?

预测正确的样本数量占样本总数量的百分比,让我们结合混淆矩阵用公式来表示它

MindSpore分类指标之准确率、AUC/ROC详解(一)

图2-准确率

首先我们分析一下这个公式:分母表示的是样本总量,分子表示的是在正负样本中被预测正确的。然后我们可以分析一下我们图片分类中所使用的数据,一共有6万张图片,运行程序后的结果是将这6万张图片分为了10个类别,统计可得出每一个类别的图片数量大致相等。所以对于这样样本均衡的数据集使用准确率是没有什么问题的。

接下来,我们假设有一个10000张男性和女性的图片,其中男性图片9900张,女性图片100张,我们创建了一个模型只会把所有图片都分为男性那一类,我们用准确率去衡量这个模型的性能,哇!!!惊人的99%。这个模型堪称完美。但是显然这个模型太大男子主义了,没有把女性当回事。

我们来总结一下准确率的优缺点:

优点:公式高效简单,易于理解;

缺点:使用场景受限,只有在样本数据集均衡的情况下才能较为准确的评测一个模型。

所以在对于正负样本不均衡的数据集,准确率的公式就不能够准确评价一个模型的优劣了。

那么,有没有哪一个标准即使在数据集类别不均衡的时候也能准确衡量模型的性能呢?

这绝对是当然的有啊!!!

四、ROC曲线和AUC值

我们再欣赏两个公式:

MindSpore分类指标之准确率、AUC/ROC详解(一)

图3-真正率和假正率

仔细看这两个公式,发现其实TPRate就是TP除以TP所在的列,FPRate就是FP除以FP所在的列,二者意义如下:

  • TPRate的意义是所有真实类别为1的样本中,预测类别为1的比例。
  • FPRate的意义是所有真实类别为0的样本中,预测类别为1的比例。
  • 按照定义,AUC即ROC曲线下的面积,而ROC曲线的横轴是FPRate,纵轴是TPRate,当二者相等时,即y=x,如下图:

MindSpore分类指标之准确率、AUC/ROC详解(一)
  • 图4-ROC曲线
  • 表示的意义是:对于不论真实类别是1还是0的样本,分类器预测为1的概率是相等的。
  • 而我们希望分类器达到的效果是:对于真实类别为1的样本,分类器预测为1的概率(即TPRate),要大于真实类别为0而预测类别为1的概率(即FPRate),即y>x,因此大部分的ROC曲线长成下面这个样子,举一个简单的例子:

MindSpore分类指标之准确率、AUC/ROC详解(一)
  • 图5-数据预测表

MindSpore分类指标之准确率、AUC/ROC详解(一)

图6-数据混淆矩阵

进而算得TPRate=3/4,FPRate=2/4,得到ROC曲线:

MindSpore分类指标之准确率、AUC/ROC详解(一)

图7-数据ROC曲线

最终得到AUC为0.625。最理想的情况下,既没有真实类别为1而错分为0的样本——TPRate一直为1,也没有真实类别为0而错分为1的样本——FP rate一直为0,AUC为1,这便是AUC的极大值。

此时,我们再看上面举的例子,假设有一个10000张男性和女性的图片,其中男性图片9900张,女性图片100张,我们创建了一个模型只会把所有图片都分为男性那一类,那么用AUC指标评测时,TPRate=9900/(9900+0)=1,FPRate=100/(0+100)=1,AUC=0.5,因此极大的改善了一盖而全的情况。

五、总结

我们通过上面的分析,对于准确率这个指标,在简单高效易于计算的同时,也受到样本数据类别是否均衡的限制,不同分类样本数量均衡时,准确率可以很好的衡量训练后模型的优劣,但在样本数量不均衡时,便会有些不相符。所以我也介绍了另一种指标AUC,首先我们通过真正率和假正率来组成一个坐标系,然后通过真正率和假正率的计算绘制出ROC曲线,最后AUC的值便是ROC曲线与坐标轴围成的面积。此方法中充分考虑了每一个类别的分类情况。所以能够更全面的表示分类模型的性能。

以上是本人的一些见解,欢迎大家指正讨论!

Original: https://blog.csdn.net/xi_xiyu/article/details/122680584
Author: xi_xiyu
Title: MindSpore分类指标之准确率、AUC/ROC详解(一)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/698574/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球