常用分类模型的评价指标

评价分类模型的指标

1. 准确率
                 acc = 分类正确的样本数/总样本数

例如:当样本总数是100,正确分类的样本个数是60,那么
acc = 60/100=0.6 。
缺点:当正负样本不均衡的时候,用准确率不能很好的评估模型的好坏。例如:正样本个数为:995个;负样本个数为:5个;即使我的模型不做任何训练,对所有的数据都判定为正,这样得到的准确率也很高,acc=99.5%。

2. 混淆矩阵

在这里插入图片描述

3. F1_score

在这里插入图片描述
举例说明:

在这里插入图片描述

4.PR曲线、ROC曲线和AUC
(1)PR曲线

对于同一模型,我们可以通过调整阈值得到不同的P-R值,从而得到一条曲线。(P就是查准率(Precision),R就是查全率(Recall)。以P作为横坐标,R作为纵坐标,就可以画出P-R曲线。
在这里插入图片描述

当我们比较两个分类器好坏时,P和R都是越大越好也就是图中的曲线越往坐标(1,1)的位置靠近越好。如果一个学习器的P-R曲线被另一个学习器完全”包住”,则后者的性能优于前者。当存在交叉时,可以计算曲线围住面积,不太容易判断,但是可以通过平衡点(查准率=查全率,Break-Even Point,BEP)来判断。例如上图,基于BEP的比较,可以认为A优于B。

(2)ROC曲线和AUC

AUC(Area Under the ROC Curve)指标在模型评估阶段常被用作最重要的评估指标来衡量模型的准确性。AUC作为模型评价指标,用于二分类模型的评价。AUC考虑的是模型预测的排序质量,反映了模型把正例排在反例前面的比例(如果AUC=1,说明模型100%将所有正例排在反例前面)

真正例率,True Positive Rate:TPR = TP/ (TP+FN)
假正例率, False Postive Rate:FPR = FP/(TN+FP)
真正率,正确预测到的正例数与实际正例数的比值(灵敏度)
特异度 ,正确预测到的负例数与实际负例数的比值(NPV = TN / (TN+FN))
将假正例率作为横轴,真正例率作为纵轴,可以得到ROC曲线,而AUC则是ROC曲线下的面积。如下图所示:
在这里插入图片描述
对于ROC的图,有几比较重要的点和线

  • [0,0],FPR=TPR=0, 由公式可以看出,TP=FP=0,也就是说模型把所有的样本预测为负例。
  • [0,1], FPR=0,TPR=1. 此时FP=FN=0,也就是说模型做出了没有任何错误的完美预测(由此可以看出ROC曲线越是向上凸(贴近上边界),曲线上的点的纵坐标(TPR)越是大,代表模型的性能越好)。
  • [1,0], FPR =1,TPR=0. 此时TP=TN=0, 也就是说模型做出的预测全部错误(由此可以看出,ROC曲线越是贴近下边界(下凹),那么模型的性能越是差)。
  • [1, 1],FPR =1,TPR=1. 此时TN=FN=0,也就是模型将所有样本均预测为正例。
  • 对角线:在对角线上的点都有TPR = FPR, 也就是说对于任意抽取的样本,模型将其中正例预测为正例的概率和将负例预测为正例的概率是相等的.这也就意味着和随机分类的性能一样.
  • 对角线左上方的曲线: 一般情况下,机器学习模型要优于随机分类器,因此我们经常看到的曲线都是像图中的ROC曲线.它们相比对角线是有明显上凸的,同样的横坐标(FPR)下,ROC线是大于对角线的,即代表模型将正例预测为正例的概率要大于将负例预测为正例的概率。所以如果模型越往左上方凸,那么效果越好。

AUC:对于任意一对正负例样本,模型将正样本预测为正例的可能性大于将负例预测为正例的可能性的概率。其数值大小(越大越好)代表了模型的性能优劣。
例如: AUC = 0.5, ROC曲线为对角线时, 模型将一对正负例样本中的正样本预测为正例的概率为0.5,将负样本预测为正例的概率也为0.5,相当于于随机分类预测) AUC=0.7,对角线左上方的曲线,其含义可以理解为:模型将一对正负例样本中的正样本预测为正例的概率为0.7。

  • AUC = 1:全部分类正确
  • 0.5 < AUC < 1,优于随机分类器
  • 0 < AUC < 0.5,差于随机分类器

那么为什么要用AUC作为二分类模型的评价指标呢?为什么不直接通过计算准确率来对模型进行评价呢?

因为机器学习中的很多模型对于分类问题的预测结果大多是概率,即属于某个类别的概率,如果计算准确率的话,就要把概率转化为类别,这就需要设定一个阈值,概率大于某个阈值的属于一类,概率小于某个阈值的属于另一类,而阈值的设定直接影响了准确率的计算。也就是说AUC越高说明阈值分割所能达到的准确率越高。

AUC的计算方式:

1、绘制出ROC曲线,然后计算出曲线下包绕的面积,面积值即AUC.
2、假设总共有(T+N)个样本,其中正样本T个,负样本N个,总共有TN个样本对,计数,正样本预测为正样本的概率值大于负样本预测为正样本的概率值记为1,累加计数,然后除以(TN)就是AUC的值

在sklearn中,多分类模型评价指标包括准确率、混淆矩阵、精确率、召回率、F1-score、支持度等。 首先,准确率是评价多分类模型性能的常用指标之一。它表示模型预测正确的样本占总样本数量的比例。准确率越高,模型的性能越好。 其次,混淆矩阵是多分类模型评价的重要工具。它是一个正方形矩阵,行表示实际类别,列表示预测类别。矩阵的每个元素表示被分为某个类别的样本数量。通过分析混淆矩阵可以得到模型在不同类别上的预测情况。 除了准确率和混淆矩阵之外,精确率和召回率也是常用的多分类模型评价指标之一。精确率表示在所有被预测为某一类别的样本中,实际属于该类别的比例。召回率表示在所有实际属于某一类别的样本中,被正确预测为该类别的比例。 F1-score是综合衡量精确率和召回率的指标,它是二者的调和均值,可以更全面地评估模型的性能。F1-score越高,模型的性能越好。 最后,支持度指标表示每个类别在样本中的出现次数。该指标可以衡量模型对各个类别的预测能力。支持度越高,表示该类别在样本中的比例越大。 在sklearn中,我们可以使用相应的函数或方法计算这些多分类模型评价指标,如准确率可以使用accuracy_score函数,混淆矩阵可以使用confusion_matrix函数,精确率和召回率可以使用classification_report函数,F1-score可以使用f1_score函数,支持度可以使用value_counts方法等。通过这些评价指标,我们可以对多分类模型的性能进行全面的评估和比较。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值