为什么使用ROC曲线?

1.roc曲线
roc曲线全称为受试者工作特征曲线(receiver operating characteristic)。提到roc曲线就要先说明一下两个概念:fpr(伪正类率),tpr(真正类率),它们都是分类任务的评测指标。
1.1 tpr 、fpr
对于一个二分类任务(假定为1表示正类, 0表示负类),对于一个样本,分类的结果总共有四种:
类别实际为1,被预测为0,fn(false negative)
类别实际为1,被预测为1,tp(true positive)
类别实际为0,被预测为1,fp(false positive)
类别实际为0,被预测为0,tn(true negative)
fpr(false positive rate)= fp /(fp + tn),即负类数据被预测为正类的比例;
tpr(true positive rate)= tp /(tp + fn),即正类数据被预测为正类的比例。
1.2 roc曲线
那什么是roc曲线呢?我们看一下roc曲线的图示:
对于样本数据,我们使用分类器对其进行分类,分类器会给出每个数据为正例的概率。我们可以针对此来设定一个阈值,当某个样本被预测为正例的概率大于这个阈值时,认为该样本为正例,小于则为负例。
通过计算我们就可以得到一个(tpr , fpr)对,即图像上的一个点。通过不断调整这个阈值,就得到若干个点,从而画出一条曲线。
可以看出,当这个阈值越大时,会有越多的样本被预测为负例,而这些样本中其实也有正例的存在。这样一来,tpr下降(正例数据被预测为负例了),fpr下降(负类数据更不会被预测为正例,但是影响要比tpr小,所以斜率呈上升趋势)。
当阈值越小时,越多的样本被预测为正例,而这些样本中可能包含是正例,却被预测为负例的样本以及是负例却被预测为正例的样本,这样一来tpr上升(更多的正例样本被预测为正例),fpr上升(更多的负例样本预测为正例,影响更大,所以斜率呈下降趋势)。
1.3 阈值调整
那么该如何调整这个阈值呢?一般来说,分类器会对一批数据的每个样本给出一个是正例的概率,如下图示,共20个样本,class为实际标签,score为分类器判断样本为正例的概率:
对给出的分数进行排序,然后依次使用score作为阈值,这样就得到了20组(fpr, tpr),做出roc曲线如下:
当阈值为1时就可以到达roc曲线上(0, 0)点,当阈值为0时就可以到达roc曲线上(1, 1) 点。当然也不一定就必须使用概率值,也可以使用未经过softmax(或其他类似处理)的结果,使用方法相同,毕竟我们只需要一个次序。
2.auc
说完roc,再来说一下auc。auc被定义为roc曲线下的面积(area under curve),显然这个面积小于1。又因为roc曲线一般都处于y=x这条直线的上方,所以auc一般在0.5到1之间。
2.1 auc优点与含义
使用auc值作为评价标准是因为很多时候roc曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应auc更大的分类器效果更好。
auc的含义为,当随机挑选一个正样本和一个负样本,根据当前的分类器计算得到的score将这个正样本排在负样本前面的概率。
2.2 auc与分类器优劣
从auc判断分类器(预测模型)优劣的标准:
auc = 1,是完美分类器,采用这个预测模型时,存在至少一个阈值能得出完美预测。绝大多数预测的场合,不存在完美分类器。
0.5 < auc < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
auc = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。
auc < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。
3. 为什么使用roc曲线?
既然已经这么多评价标准,为什么还要使用roc和auc呢?因为roc曲线有个很好的特性:当测试集中的正负样本的分布变化的时候,roc曲线能够保持不变。
在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。
下图中,(a)和(c)为roc曲线,(b)和(d)为precision-recal[1]曲线。(a)和(b)展示的是分类其在原始测试集(正负样本分布平衡)的结果,(c)和(d)是将测试集中负样本的数量增加到原来的10倍后,分类器的结果。
可以明显的看出,roc曲线基本保持原貌,而precision-recall曲线则变化较大。


美图M8评测:美图M6的外观、美图T8的自拍功能,拍照中的战斗机!摄影、功能、性能解析
阿里未来将大力发展云计算基础设施及相关技术
三星 Galaxy S7 edge 获评 MWC 2017 最佳智能手机
智能工厂的构成
3D打印市场状况解析 行业死亡笔记正在发生
为什么使用ROC曲线?
MIUI9最新消息,MIUI9系统上手抢先看,“各方面都还不错!”
欢创播报 | 苹果与Arm签署20年的芯片合作协议
德州仪器高度集成2.4GHz RF前端将低功耗无线系统覆盖范
中国移动:未来5G数字技术将催生生产生活场景的更多模式创新
如何警惕“区块链诈骗”
多种单片机控制程序的加密策略
流水灯原理图和程序设计
集成电路里程碑:三星与Cadence合推20纳米设计方法
双轴倾角传感器在风力发电机监控系统中的应用解析
浅谈全闪存阵列市场发展的七大预测
华硕白色系机电散好物盛装登场,高颜值装机的首选
13种医疗科技工具盘点 方便但让人忐忑不安?
高性能并行电路仿真工具Empyrean ALPS的功能、优势及特点分析
锤子科技官宣坚果3手机:4月9日亮相