ML和DL算法评估(Precision/Recall/F1 score/Specificity/ROC/AUC/AP)总结

机器学习和深度学习算法评估

为了包含尽可能多的性能指标,我们这里只讨论二分类(0/1)问题,比较常见的性能指标包括但不仅限于Precision、Recall(又称为Sensitivity)、Accuracy,F1 score(f1),Specificity,ROC,AUC,AP(mAP),下面我们讨论一下这些指标的具体含义。
ML和DL算法评估(Precision/Recall/F1 score/Specificity/ROC/AUC/AP)总结_第1张图片
注:暂且用1代表正样本,0代表负样本

TP:实际为1,预测为1,预测正确,预测值为1(正样本),记为True Positive
TN:实际为0,预测为0,预测正确,预测值为0(负样本),记为True Negative
FP:实际为0,预测为1,预测错误,预测值为1(正样本),记为False Positive
FN:实际为1,预测为0,预测错误,预测值为0(负样本),记为False Negative

  • Precision(精确率)
     
    P=TPTP+FP P = T P T P + F P

     解释:精确率关注正样本,意义就是在所有预测为1(正样本)的样本中,预测正确的概率
  • Recall(召回率,又称为Sensitivity(敏感性))
     
    R=Sen=TPTP+FN R = S e n = T P T P + F N

     解释:召回率(敏感性)同样也是关注正样本,意义就是在所有实际为1(正样本)的样本中,预测正确的概率
  • Accuracy(准确率)
     
    Acc=TP+TNTP+TN+FP+FN A c c = T P + T N T P + T N + F P + F N

     解释:准确率就是在所有样本中,预测正确(无论预测结果,只要预测正确即可)的样本占总样本的比例
  • F1 score
     
    F1=2PRP+R F 1 = 2 ∗ P ∗ R P + R

     解释:F1 score综合反映了Precision和Recall,是两者的在模型中的综合体现,是较常用的一个指标
  • Specificity(特异性)
     
    Spe=TNTN+FP S p e = T N T N + F P

     解释:Spe关注于负样本,等价于正样本中的Recall,在医学中此指标使用较多
  • ROC(Receiver operating characteristic)曲线及其下的面积AUC(Area Under Curve)
     ROC曲线以TPR(Recall或者Sen)为纵轴,FPR(1-TPR)为横轴,根据不同的threshold画出的曲线,如何画出ROC曲线呢?通常情况下,我们是按照threshold=0.5计算TPR、FPR的,当我们选择0.1~1.0之间不同的值作为threshold时,分别求出TPR、FPR,将其值作为坐标,连接点形成曲线,形成ROC曲线,其下的面积称为AUC,AUC面积越大,代表模型预测效果越好,如下图所示:
     ML和DL算法评估(Precision/Recall/F1 score/Specificity/ROC/AUC/AP)总结_第2张图片
     注:图为五折交叉验证的ROC曲线和相应的AUC值,其中的黑色曲线为平均值。在这里有必要提出一个新的概念叫做约登系数,其计算方式为Sen+Spe-1,其等价形式为Sen-(1-Spe)=TPR-FPR,反映在ROC曲线图中就是y-x,最大约登系数反映了模型最好的分辨能力,此时的Sen和Spe最接近真实值。

  • Average precision(&mAP)
      AP:只是AP代表以recall和precision为横纵坐标,取不同的threshold时所围成的面积;
      mAP:当分类器任务不仅仅局限于二分类时,比如是imageNet上的1k分类任务,我们计算所有类的AP,而后进行平均,就得到了mAP
    以上论述的性能指标,在Machine Learning和Deep Learning中较为常用,除此之外还有一些其他的指标,such as:AP、mAP,Hamming loss(汉明损失),有时间再和大家一起分享讨论。


作者:gengmiao 时间:2018.02.25,原创文章,转载请保留原文地址、作者等信息
 

你可能感兴趣的:(Machine,Learning,Deep,Learning,常用性能指标,二分类,ML,and,DL)