机器学习 对分类问题的评价方法

分类问题的评价指标

  1. 准确率(Accuracy):正确预测的样本占所有样本的比例
  2. 精确率/查准率(Precision):预测为True的样本中真正为True的比例, P = TP/(TP + FP)
  3. 查全率/召回率(Recall):所有正样本中被正确预测的比例,R = TP/(TP+FN)
  4. F1-score:查准率和查全率的调和平均值
    在这里插入图片描述

ROC曲线

  1. 定义
    ROC曲线指受试者工作特征曲线(receiver operating characteristic curve), 是反映敏感性和特异性连续变量的综合指标,是用构图法揭示敏感性和特异性的相互关系,它通过将连续变量设定出多个不同的临界值,从而计算出一系列敏感性和特异性,再以敏感性为纵坐标、(1-特异性)为横坐标绘制成曲线,曲线下面积越大,诊断准确性越高。在ROC曲线上,最靠近坐标图左上方的点为敏感性和特异性均较高的临界值
    机器学习 对分类问题的评价方法_第1张图片
  2. 混淆矩阵
    混淆矩阵也称误差矩阵,是表示精度评价的一种标准格式,用n行n列的矩阵形式来表示。具体评价指标有总体精度、制图精度、用户精度等,这些精度指标从不同的侧面反映了图像分类的精度。 在人工智能中,混淆矩阵(confusion matrix)是可视化工具,特别用于监督学习,在无监督学习一般叫做匹配矩阵。
    机器学习 对分类问题的评价方法_第2张图片
  3. ROC曲线优点
    • 兼顾正例和负例的权衡。因为TPR聚焦于正例,FPR聚焦于与负例,使其成为一个比较均衡的评估方法
    • ROC曲线选用的两个指标,TPR=TPP=TPTP+FNTPR=TPP=TPTP+FN,FPR=FPN=FPFP+TNFPR=FPN=FPFP+TN,都不依赖于具体的类别分布
    • 注意TPR用到的TP和FN同属P列,FPR用到的FP和TN同属N列,所以即使P或N的整体数量发生了改变,也不会影响到另一列。也就是说,即使正例与负例的比例发生了很大变化,ROC曲线也不会产生大的变化,而像Precision使用的TP和FP就分属两列,则易受类别分布改变的影响
  4. ROC曲线缺点
    • ROC曲线的优点是不会随着类别分布的改变而改变,但这在某种程度上也是其缺点。因为负例N增加了很多,而曲线却没变,这等于产生了大量FP。像信息检索中如果主要关心正例的预测准确性的话,这就不可接受了
    • 在类别不平衡的背景下,负例的数目众多致使FPR的增长不明显,导致ROC曲线呈现一个过分乐观的效果估计。ROC曲线的横轴采用FPR,根据FPR =FPNFPN=FPFP+TNFPFP+TN,当负例N的数量远超正例P时,FP的大幅增长只能换来FPR的微小改变。结果是虽然大量负例被错判成正例,在ROC曲线上却无法直观地看出来。(当然也可以只分析ROC曲线左边一小段)
      举个例子,假设一个数据集有正例20,负例10000,开始时有20个负例被错判,FPR=2020+9980=0.002FPR=2020+9980=0.002,接着又有20个负例错判,FPR2=4040+9960=0.004FPR2=4040+9960=0.004,在ROC曲线上这个变化是很细微的。而与此同时Precision则从原来的0.5下降到了0.33,在PR曲线上将会是一个大幅下降

AUC

为了更好的衡量ROC所表达结果的好坏,Area Under Curve(AUC)被提了出来,简单来说就是曲线右下角部分占正方形格子的面积比例。AUC 的值在0.5到1之间,越接近1表示分类器的效果越好对于多个分类器的AUC曲线,若其中一条曲线完全包围另一条曲线时,则可以认为前一条曲线所对应分类器的效果更好,此时它所包含的右下角的面积也更大

P-R曲线

  1. P-R曲线定义
    P-R曲线是由查准率和召回率共同构成的曲线,其中横轴为召回率,纵轴为查准率
  2. 使用场景
    • ROC曲线由于兼顾正例与负例,所以适用于评估分类器的整体性能,相比而言PR曲线完全聚焦于正例
    • 如果有多份数据且存在不同的类别分布,比如信用卡欺诈问题中每个月正例和负例的比例可能都不相同,这时候如果只想单纯地比较分类器的性能且剔除类别分布改变的影响,则ROC曲线比较适合,因为类别分布改变可能使得PR曲线发生变化时好时坏,这种时候难以进行模型比较;反之,如果想测试不同类别分布下对分类器的性能的影响,则PR曲线比较适合
    • 如果想要评估在相同的类别分布下正例的预测情况,则宜选PR曲线
    • 类别不平衡问题中,ROC曲线通常会给出一个乐观的效果估计,所以大部分时候还是PR曲线更好
    • 最后可以根据具体的应用,在曲线上找到最优的点,得到相对应的precision,recall,f1 score等指标,去调整模型的阈值,从而得到一个符合具体应用的模型

参考资料:ROC、PR曲线

你可能感兴趣的:(机器学习 对分类问题的评价方法)