2018-05-03 开胃学习Data系列 - ROC

2018-05-03  本文已影响0人  Kaiweio

在做决策时,ROC分析能不受成本/效益的影响,给出客观中立的建议。

分类模型(又称分类器,或诊断)是将一个实例映射到一个特定类的过程。
ROC分析的是二元分类模型,也就是输出结果只有两种类别的模型,例如:
(阳性/阴性)(有病/没病)(垃圾邮件/非垃圾邮件)(敌军/非敌军)。

当讯号侦测(或变数测量)的结果是一个连续值时,类与类的边界必须用一个阈值(英语:threshold)来界定。

举例来说,用血压值来检测一个人是否有高血压,测出的血压值是连续的实数(从0~200都有可能),以收缩压140/舒张压90为阈值,阈值以上便诊断为有高血压,阈值未满者诊断为无高血压。二元分类模型的个案预测有四种结局:

真阳性(TP):诊断为有,实际上也有高血压。
伪阳性(FP):诊断为有,实际却没有高血压。
真阴性(TN):诊断为没有,实际上也没有高血压。
伪阴性(FN):诊断为没有,实际却有高血压。

Ture Positive
False Positve
相对比较好记忆

这个东西可以合成 confusion matrix 中文是 混淆矩阵

ROC空间将伪阳性率(FPR)定义为 X 轴,真阳性率(TPR)定义为 Y 轴。





好的,接下来说曲线:

同一个二元分类模型的阈值可能设定为高或低,每种阈值的设定会得出不同的FPR和TPR。

将同一模型每个阈值 的 (FPR, TPR) 座标都画在ROC空间里,就成为特定模型的ROC曲线。





一些规律

  1. 当阈值设定为最高时,亦即所有样本都被预测为阴性,没有样本被预测为阳性,此时在伪阳性率 FPR = FP / ( FP + TN ) 算式中的 FP = 0,所以 FPR = 0%。同时在真阳性率(TPR)算式中, TPR = TP / ( TP + FN ) 算式中的 TP = 0,所以 TPR = 0%。当阈值设定为最高时,必得出ROC座标系左下角的点 (0, 0)。

  2. 当阈值设定为最低时,亦即所有样本都被预测为阳性,没有样本被预测为阴性,此时在伪阳性率FPR = FP / ( FP + TN ) 算式中的 TN = 0,所以 FPR = 100%。同时在真阳性率 TPR = TP / ( TP + FN ) 算式中的 FN = 0,所以 TPR=100%。当阈值设定为最低时,必得出ROC座标系右上角的点 (1, 1)。

  3. 因为TP、FP、TN、FN都是累积次数,TN和FN随着阈值调低而减少(或持平),TP和FP随着阈值调低而增加(或持平),所以FPR和TPR皆必随着阈值调低而增加(或持平)。
    → 随着阈值调低,ROC点 往右上(或右/或上)移动,或不动;但绝不会往左下(或左/或下)移动。





ROC下的面积 AUC

ROC曲线下方的面积(英语:Area under the Curve of ROC (AUC ROC)),其意义是:





从AUC判断分类器(预测模型)优劣的标准:

上一篇下一篇

猜你喜欢

热点阅读