二分类问题模型指标

二分类问题模型指标

本文旨在介绍比较在二分类模型中,常用的几个模型评估指标,包括:准确率,召回率,F1-score,ROC,AUC,MSE等

1.简单概念

二分类问题模型指标

2. 准确率P 召回率R和 F1值

  • 准确率(Precision)
    P=TP/(TP+FP)。通俗地讲,就是预测正确的正例数据占预测为正例数据的比例。
  • 召回率(Recall)
    R=TP/(TP+FN)。通俗地讲,就是预测为正例的数据占实际为正例数据的比例
  • F1值(F score)
    二分类问题模型指标

思考

正如下图所示,F1的值同时受到P、R的影响,单纯地追求P、R的提升并没有太大作用。在实际业务工程中,结合正负样本比,的确是一件非常有挑战的事。
二分类问题模型指标

3.简单概念

  • a) TPR=TP/(TP+FN)=TP/actual positives-准确率P,通俗地讲,就是预测正确的正例数据占预测为正例数据的比例。
  • b) FPR=FP/(FP+TN)=FP/actual negatives-通俗地讲,就是在所有的真实负样本中,有多少被预测成了正样本,FPR越小越好。
  • c) ROC是由点(FPR,TPR)组成的曲线,AUC就是ROC的面积。AUC越大越好。ROC横轴是FPR,纵轴是TPR;横轴是在所有的负样本中被预测成正样本的比例,纵轴是在所有的正样本中,被预测对了的比例。曲线越曲越好。
  • d)一般来说,如果ROC是光滑的,那么基本可以判断没有太大的overfitting
    二分类问题模型指标

4.PRC和ROC比较

AUC是ROC的积分(曲线下面积),是一个数值,一般认为越大越好,数值相对于曲线而言更容易当做调参的参照。
PR曲线会面临一个问题,当需要获得更高recall时,model需要输出更多的样本,precision可能会伴随出现下降/不变/升高,得到的曲线会出现浮动差异(出现锯齿),无法像ROC一样保证单调性。在正负样本分布得极不均匀(highly skewed datasets)的情况下,PRC比ROC能更有效地反应分类器的好坏。
本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:

5.Mape平均绝对百分误差

二分类问题模型指标
MAE = 把mse的平方换成绝对值

• 技巧
o 在sklearn中,对于回归任务,一般都提供了mse损失函数(基于树的模型除外)。但有时我们会遇到sklearn中没有定义的损失函数,那么我们可以自定重写模型或者定义函数,下面以xgboost为模型,mape作为损失函数为例(grad、hess分别对应损失函数一阶导、二阶导)。