分类常用的评价指标-二分类/多分类

二分类常用的性能度量指标

精确率、召回率、F1、TPR、FPR、AUC、PR曲线、ROC曲线、混淆矩阵

精确率」查准率 Precision=TP/(TP+FP)
召回率」查全率Recall=TP/(TP+FN)
真正例率」即为正例被判断为正例的概率TPR=TP/(TP+FN)
假正例率」即为反例被判断为正例的概率FPR=FP/(TN+FP)
F1 :

错误率

准确率:ACC = 1-e
混淆矩阵
样本失衡时,如何评价分类器的性能好坏?

使用ROC曲线

PR曲线

横轴是Recall,纵轴是Precision
PR曲线的意义

PR曲线可以用来衡量分类性能的好坏,从数值角度来说,PR曲线下的面积越大,分类性能越好,也就是说PR曲线越靠近右上角,性能越好!

我们把PR曲线下的面积称为AP分数。

好坏的比较

如果说,一条PR曲线完全在另外一条PR曲线之上,则代表其分类性能更好,但是在实际状况中,PR曲线存在着局部的上下波动,也就是说,PR曲线并不能直观的比较出不同分类模型的效果。

PR曲线的两个坐标轴即Recall、Precision分别表示模型对于正样本的查全率和查准率。也就是说PR曲线能够反应正样本的预测状况。
PR曲线的优缺点:

优点

对于类别分布差异敏感,常常用于样本类别不平衡的情况,因为PR曲线变换敏感,并且更加关心正例样本。
缺点

PR曲线对于类别不平衡,图像变换比较明显,除此之外,PR曲线过于粗糙,没办法精确的反应模型的性能。但我们可以从F1值直观的反应出来。

ROC曲线

ROC曲线:ROC空间是一个以

伪阳性率(FPR,false positive rate)为X轴,伪阳率FPR = FP / N

真阳性率(TPR, true positive rate)为Y轴,真阳率TPR = TP / P = recall,
ROC的优点:

可以兼顾正负样本的评估。因为ROC的横轴是FPR,纵轴是TPR,TPR聚焦于正样本、FPR聚焦于负样本,那么这样,ROC曲线成为一个比较均衡的评估方法。

ROC的两个指标都不依赖于具体的样本分布,可以看到TPR中的TP、FN均来自于P,而FPR中的FP和TN均来自于N。那也就是说,无论是P或者N哪一方的激增,都不会影响另外一个指标。

但是PR曲线中却不是,可以看到,FP来自N、TP来自P,易受类别分布的影响

ROC对于类别不平衡,反映到图上并不敏感。PR很敏感。
ROC的缺点:
ROC的优点也就是不随着类别分布而改变,或者说改变很小。这也是他的缺点,因为如果我们需要通过指标观测到类别分布变换带来的影响的话,ROC曲线便不适合。但是PR就很合适,因为PR也会随着类别分布的变换带来明显的变化。但是如果想要比较分类器的性能或者剔除掉类别分布的影响,ROC还是更合适的。

ROC曲线在类别分布不平衡下,表现出过于乐观的评估结果。比如:一个数据集包含20个正例,10000个负例。当前有20个负例预测为了正例,那么 FPR=20/(20+9980) ,如果再有20个负例预测成了正例,此时 FPR=40/(40+9960) 。可见FPR改变并不明显,但是此时精度从0.5降到了0.333。那么这样的变化,在ROC图像上只能带来非常微小的变换,无法直观的看出来。

ROC曲线与PR曲线的比较

ROC曲线和PR曲线都使用了Recall,只不过在ROC中,我们将其称为TPR,并且PR曲线中,TPR作为横轴。而在ROC中TPR作为纵轴。

ROC中曲线越靠近左上角,代表分类性能越好。而PR曲线中,越靠近右上角,代表分类性能越好。

在样本不平衡问题中,PR曲线较于ROC曲线适用范围更广。这是因为在样本不平衡的情况中,我们更关心正样本的分类情况。而在上文中,我们分析过PR曲线更关心正样本的变换情况。

AUC两种定义

AUC就是ROC曲线下的面积,AUC值越大,说明曲线顶点越靠近左上角,那么真阳率就越大于假阳率,那么模型就越可能将正样本排在负样本前面。
从统计特性的角度理解:

AUC等于随机挑选一个正样本和负样本时,模型对正样本的预测分数大于负样本的预测分数的概率。

AUC = P(P正>P负)
AUC与ROC曲线

对于0、1分类问题,一些分类器得到的结果并不是0或1,如神经网络得到的是0.5、0.6等,此时就需要一个阈值cutoff,那么小于阈值的归为0,大于的归为1,可以得到一个分类结果。

ROC曲线(Receiver Operational Characteristic Curve)是以False Positive

Rate为横坐标,True Postive Rate为纵坐标绘制的曲线。

曲线的点表示了在敏感度和特殊性之间的平衡,例如越往左,也就是假阳性越小,则真阳性也越小。曲线下面的面积越大,则表示该方法越有利于区分两种类别。

AUC即为ROC曲线所覆盖的区域面积。
ROC曲线的主要意义是方便观察阈值对学习器的泛化性能影响,所以有助于选择最佳的阈值 。ROC曲线越靠近左上角,模型的查全率就越高。最靠近左上角的ROC曲线上的点是分类错误最少的最好阈值,其假正例和假反例总数最少。

多分类

kappa系数

相关推荐
蓝天星空1 分钟前
Python调用open ai接口
人工智能·python
睡觉狂魔er2 分钟前
自动驾驶控制与规划——Project 3: LQR车辆横向控制
人工智能·机器学习·自动驾驶
scan72425 分钟前
LILAC采样算法
人工智能·算法·机器学习
leaf_leaves_leaf28 分钟前
win11用一条命令给anaconda环境安装GPU版本pytorch,并检查是否为GPU版本
人工智能·pytorch·python
夜雨飘零133 分钟前
基于Pytorch实现的说话人日志(说话人分离)
人工智能·pytorch·python·声纹识别·说话人分离·说话人日志
爱喝热水的呀哈喽1 小时前
《机器学习》支持向量机
人工智能·决策树·机器学习
minstbe1 小时前
AI开发:使用支持向量机(SVM)进行文本情感分析训练 - Python
人工智能·python·支持向量机
月眠老师1 小时前
AI在生活各处的利与弊
人工智能
四口鲸鱼爱吃盐1 小时前
Pytorch | 从零构建MobileNet对CIFAR10进行分类
人工智能·pytorch·分类
苏言の狗1 小时前
Pytorch中关于Tensor的操作
人工智能·pytorch·python·深度学习·机器学习