为什么用ROC与AUC评价分类器

模型有很多评估方法,为什么还要使用ROC和AUC呢? 因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变换的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现样本类不平衡,即正负样本比例差距较大,而且测试数据中的正负样本也可能随着时间变化。

 

ROC全称是“受试者工作特征”(Receiver Operating Characteristic)。

ROC曲线的面积就是AUC(Area Under the Curve)。

AUC用于衡量“二分类问题”机器学习算法性能(泛化能力)。

ROC曲线,通过将连续变量设定出多个不同的临界值,从而计算出一系列真正率和假正率,再以假正率为纵坐标、真正率为横坐标绘制成曲线,曲线下面积越大,诊断准确性越高。在ROC曲线上,最靠近坐标图左上方的点为假正率和真正率均较高的临界值。

对于分类器,或者说分类算法,评价指标主要有precision,recall,F-score。下图是一个ROC曲线的示例。

 

为什么用ROC与AUC评价分类器

ROC曲线的横坐标为false positive rate(FPR),纵坐标为true positive rate(TPR)。其中 TODO, TODO, 下面着重介绍ROC曲线图中的四个点和一条线。 第一个点,(0,1),即FPR=0, TPR=1,这意味着FN(false negative)=0,并且FP(false positive)=0。意味着这是一个完美的分类器,它将所有的样本都正确分类。 第二个点,(1,0),即FPR=1,TPR=0,意味着这是一个最糟糕的分类器,因为它成功避开了所有的正确答案。 第三个点,(0,0),即FPR=TPR=0,即FP(false positive)=TP(true positive)=0,可以发现该分类器预测所有的样本都为负样本(negative)。 第四个点,(1,1),即FPR=TPR=1,分类器实际上预测所有的样本都为正样本。 经过以上分析,ROC曲线越接近左上角,该分类器的性能越好。

ROC曲线所覆盖的面积称为AUC(Area Under Curve),可以更直观的判断学习器的性能,AUC越大则性能越好。