分类算法中常用的评价指标

来源:互联网 发布:新浪博客做淘宝客网站 编辑:程序博客网 时间:2024/05/22 04:27

混淆矩阵

labeled as positive labeled as negative predicted as positive True Positive
(TP) False Positive
(FP) predicted as negative False Negative
(FN) True Negative
(TN)


混淆矩阵(Confusion Matrix)中包含四种数据:

  • TP:实际为正例,被预测为正例,预测正确
  • FP:实际为负例,被预测为正例,预测错误
  • FN:实际为正例,被预测为负例,预测错误
  • TN:实际为负例,被预测为正例,预测正确

由以上四种数据得到四种比率如下:

  • TPR(True Positive Rate,又称 灵敏度:sensitivity):TPR=TPTP+FN,即
  • FPR(False Positive Rate):FPR=FPFP+TN,即
  • FNR(False Negative Rate):FNR=FNTP+FN,即
  • TNR(True Negative Rate,又称 特指度:specificity):TNR=TNFP+TN,即

评价指标

  • Precision,即查准率:P=TPTP+FP
  • Recall,即查全率:R=TPTP+FN
  • F-Score,即precision和recall的调和平均值,更接近precision和recall中较小的那一个值:F=2×P×RP+R
  • Accuracy,分类器对整体样本的分类能力,即正例分为正例,负例分为负例:A=TP+TNTP+FP+FN+TN
  • ROC,Receiver Operating Characteristic,主要用于画ROC曲线(横坐标为FPR,纵坐标为TPR)

ROC曲线中,关于四个关键点的解释:
(FPR=0,TPR=0):将全部正例分为负例,全部负例分为负例
(FPR=0,TPR=1):全部划分正确,即正例全部分为正例,负例全部分为负例
(FPR=1,TPR=1):将全部负例分为正例,全部正例分为正例
所以,ROC曲线越靠近左上角,说明分类器的效果越好。

  • AUC,Area Under ROC Curve
    在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化,这样ROC曲线会出现加大的波动。
    AUC的值就是处于ROC curve下方的那部分面积的大小。通常,AUC的值介于0.5到1.0之间,较大的AUC代表了较好的performance。如果模型是完美的,那么它的AUG = 1,如果模型是个简单的随机猜测模型,那么它的AUG = 0.5,如果一个模型好于另一个,则它的曲线下方面积相对较大。

参考文献:http://gim.unmc.edu/dxtests/roc3.htm
     http://alexkong.net/2013/06/introduction-to-auc-and-roc/