机器学习算法常用评估指标

在认识机器学习算法的常用评估指标之前,先明确一下几个概念的定义:

  • TP(True Positive):实际正样本,预测为正样本
  • FP(False Positive):实际负样本,预测为正样本
  • TN(True Negative):实际负样本,预测为负样本
  • FN(False Negative):实际正样本,预测为负样本

如果觉得不好理解,请注意其英文翻译,应该更容易理解。那么下面介绍我们常用的几个指标。

一、精确率、召回率

1、精确率(precision)的定义为:P = TP / (TP + FP),是指正样本被预测正确的比例;

2、召回率(recall)定义为:R = TP / (TP + FN),是指预测为正样本的样本中,正确的比例;

3、P-R曲线:以 P 为 y 轴,以 R 为 x 轴,根据样本数变化得出不同的 P,R,绘制出来的曲线,如下图。在实际中,从精确率和召回率的定义可以理解,精确率越高,召回率越高,我们的模型和算法就越高效。也就是画出来的PR曲线越靠近右上越好。
机器学习算法常用评估指标

二、灵敏度、特异度、ROC曲线、AUC

1、灵敏度(True Positive Rate, TPR)的定义为:TPR = TP / (TP + FN),实际上与召回率的定义相同;

2、1-特异度(False Positive Rate, FPR)的定义为: FPR = FP / (FP + TN)

3、以 TPR 为 y 轴,以 FPR 为 x 轴,调整不同的阈值得到 TPR,FPR,就可以得到 ROC 曲线,如下图。从FPR和TPR的定义可以理解,TPR越高,FPR越小,我们的模型和算法就越高效。也就是画出来的RoC曲线越靠近左上越好。
机器学习算法常用评估指标

4、ROC 曲线下的面积称为 AUC(Area Under Curve),从几何的角度讲,RoC 曲线下方的面积越大越大,则模型越优。所以有时候我们用 ROC 曲线下的面积,即 AUC 值来作为算法和模型好坏的标准。