ROC,PR,AUC的基本概念

常见评测指标

TP:将正类预测为正类数
FP:将负类预测为正类数
FN:将正类预测为负类数
TN:将负类预测为负类数

准确率

准确率(正确率)=所有预测正确的样本/总的样本 (TP+TN)/总

精确率

表示的是预测为正的样本中(一种是把正类预测为正类即TP,一种是把负类预测为正类即FP)有多少是真正的正样本
精确率= 将正类预测为正类 / 所有预测为正类 TP/(TP+FP)

召回率

召回率(recall):表示样本中的正例(一种是把正类预测为正类即TP,一种是把正类预测为负类即FN)被预测正确了
召回率 = 将正类预测为正类 / 所有正真的正类 TP/(TP+FN)

F1值

F1值 = 正确率 * 召回率 * 2 / (正确率 + 召回率) (F 值即为正确率和召回率的调和平均值)

评价曲线

ROC曲线

ROC(Receiver Operating Characteristic): 是一条曲线,由FPR和TPR的点连成。横轴是FPR,纵轴是TPR。
TPR在所有实际为正例的样本中,被正确地判断为正例之比率,也就是召回率:TPR=TP/(TP+FN)
FPR:在所有实际为反例的样本中,被错误地判断为正例之比率:
FPR = FP/(FP+TN)
ROC曲线重点了解下这几个节点:

(0,1)点:代表FPR=0,TPR=1;最好的情况,所有正样本都被正确的预测了,并且没有负样本被人为是正样本。

(1,0)点:代表FPR=1,TPR=0;最坏的情况,表明所有的正样本都被错误的认为是负样本

(0,0)点:代表FPR=0,TPR=0;分类器将所有的样本都判定为负样本

(1,1)点:代表FPR=1,TPR=1;分类器将所有的样本都判定为正样本

在实际中由于侧重的点不同,所以我们需要明白侧重在哪,如果在实际中结果重在覆盖,我们应该更加注重True Positive高,如果是重在准确,我们则应该更加注重False Positive低

那么怎么通过ROC曲线来判断True Positive和False Positive呢? 这里我们如果看到曲线越往左上凸越好,这样得到的True Positive 就越高,对应的False Positive越低,
曲线距离左上角越近,证明分类器效果越好

AUC值

AUC(Area under Curve):Roc曲线下的面积,介于0.1和1之间。Auc作为数值可以直观的评价分类器的好坏,值越大越好.ROC曲线围成的面积 (即AUC)可以解读为:从所有正例中随机选取一个样本A,再从所有负例中随机选取一个样本B,分类器将A判为正例的概率比将B判为正例的概率大的可能性。可以看到位于随机线上方的点(如图中的A点)被认为好于随机猜测。在这样的点上TPR总大于FPR,意为正例被判为正例的概率大于负例被判为正例的概率。

PR曲线

是由精确率和召回率的点连成的线,横轴为Recall ,纵轴为Precision。

ROC曲线与PR曲线的比较

ROC曲线优缺点

优点:1.兼顾正例和负例的权衡。因为TPR聚焦于正例,FPR聚焦于与负例,使其成为一个比较均衡的评估方法。2.ROC曲线选用的两个指标,都不依赖于具体的类别分布。
缺点:1.在类别不平衡的背景下,负例的数目众多致使FPR的增长不明显,导致ROC曲线呈现一个过分乐观的效果估计

PR曲线优缺点

PR曲线的两个指标都聚焦于正例。类别不平衡问题中由于主要关心正例

ROC曲线与PR曲线比较

1.ROC曲线由于兼顾正例与负例,所以适用于评估分类器的整体性能,相比而言PR曲线完全聚焦于正例。
2.如果有多份数据且存在不同的类别分布,比如信用卡欺诈问题中每个月正例和负例的比例可能都不相同,这时候如果只想单纯地比较分类器的性能且剔除类别分布改变的影响,则ROC曲线比较适合,因为类别分布改变可能使得PR曲线发生变化时好时坏,这种时候难以进行模型比较;反之,如果想测试不同类别分布下对分类器的性能的影响,则PR曲线比较适合
3.如果想要评估在相同的类别分布下正例的预测情况,则宜选PR曲线
4.类别不平衡问题中,ROC曲线通常会给出一个乐观的效果估计,所以大部分时候还是PR曲线更好

参考链接

机器学习之类别不平衡问题 (2) —— ROC和PR曲线

你可能感兴趣的:(机器学习基础知识)