ROC ( receiver operating characteristic curve),是信号检测理论中的一个坐标图式的分析工具,用于(1)选择最佳的信号侦测模型 (2)选择最佳的阈值
ROC可以用来评价一个分类模型的分类能力。举例来说,对于高血压的诊断,会出现四种情况
TP ( True Positive,True 代表预测正确,Positive 表示预测成阳性 ):真阳性,表示这个样本本来是阳性的,然后使用这个模型(或分类器)预测成了阳性
FP ( False Positive, False 代表预测错误,Positive 表示预测成阳性 ):伪阳性,表示这个样本本身是阴性的,然后使用这个模型(或分类器)预测成了阳性
TN ( True Negative, True 代表预测正确,Negative 表示预测成阴性): 真阴性,表示这个样本本身是阴性的,然后使用这个模型(或分类器)预测成了阴性
FN (False Negative, False 代表预测错误,Negative 表示预测成阴性):伪阴性,表示这个样本本身是阳性的,然后使用这个模型(或分类器)预测成了阴性
以下是一个2x2的confusion matrix
要画ROC曲线,还要知道TPR和FPR
TPR( True Positive Rate ),即真阳性率,定义为
在所有的阳性样本中,被正确判断为阳性的比率
TPR=TP/( TP + FN )
FPR( False Positive Rate),即伪阳性率,定义为
在所有的阴性样本中,被错误定义为阳性的比率
FPR=FP/( FP + TN )
在ROC空间中,TPR为定义为Y轴,FPR为定义为X轴
给定一个二分类的模型和一个阈值,就可以在所有的样本的(阳性/阴性)的真实值和预测值计算出一个(X=FPR,Y=TPR)坐标点。从(0,0)到(1,1)的一条直线将ROC空间划分为两个区域,直线代表的是随机分类,左上部分表示分类结果好于随机分类,右下部分表示分类结果坏与随机分类。
完美的分类在(0,1)表示真阳率为1,伪阳率为0。也就是说所有的分类都完全错误;相对的最坏的就是(1,0),表示把阳性全预测成阴性,阴性样本全部预测成阳性。不过其相反的结论表示全部预测正确。
AUC (Area Under the curve of ROC ),其意义是:
1.AUC的值在ROC曲线空间中,值在0~1之间
2.假设阈值以上是阳性,阈值一下是阴性
3.若随机抽取一个阳性样本和一个阴性样本,分类器能正确判断阳性样本的值高于阴性样本之概率=AUC
4.AUC的值越大,表示模型的正确率越高,分类效果更好
AUC的判断分类器优劣的标准
1. AUC=1表示完美的分类器
2. 0.5< AUC < 1表示大于随机
3. AUC=0.5 ,等于随机预测
4. AUC < o.5表示分类效果比随机还差,但要反预测就能比随机预测好