zoukankan      html  css  js  c++  java
  • 准确率、精确率、召回率、F-Measure、ROC、AUC

     先理解一下正类(Positive)和负类(Negetive),比如现在要预测用户是否点击了某个广告链接,点击了才是我们要的结果,这时,点击了则表示为正类,没点击则表示为负类。

      TP(True Positive):被预测成了正类的正类,即正确预测的正类

      FP(False Positive):被预测成了正类的负类

      TN(True Negetive):被预测成了负类的负类,即正确预测的负类

      FN(False Negetive):被预测成了负类的正类

    一、准确率(Accuracy)

      准确率跟正类负类没多大关系,表示在预测结果中,正确预测的数量 / 样本总数。

    二、精确率(Precision)

      在预测结果中,正确预测的正类数 / 预测为正类的数量 : TP / (TP+FP)

    三、召回率(Recall)

      在预测结果中,正确预测的正类数 / 原本即为正类的数量 : TP / (TP+FN)

    四、F-Measure

      用precision和recall两个指标不直观,索性把他们合并为一个变量——F-measure:Recall * Precision * 2 / (Recall + Precision)(越大越好,1为理想状态,此时precision为1,recall为1)

    五、ROC

      ROC曲线是以 FP Rate 为横轴,TP Rate 为纵轴的曲线。如下图所示

            

            图片来源:https://www.cnblogs.com/haoguoeveryone/p/haoguo_5.html

    六、AUC

      AUC 即 ROC 曲线对应的面积,面积越大越好。

    七、疑问

      ROC曲线理想情况下,应该是TP Rate越接近1,FP Rate越接近0更好才对。但对应于AUC,应该是曲线越靠近左上方AUC越大,曲线越靠近右下方AUC越小。这样就显得有点矛盾了,有点搞不清楚,是不是曲线呈现下降趋势才是正确的?希望有大神看到了帮我一下,谢谢!感激不尽!

  • 相关阅读:
    Java中的多线程
    谈谈Java中的类型识别RTTI
    Java中的几个重要的数据类型
    编译和运行Java程序
    说说Java中的接口
    说说Java的反射
    谈谈Java中的新的IO特性
    谈谈Java中的内部类
    谈谈Java中的类
    老妈也加入偷菜行列了
  • 原文地址:https://www.cnblogs.com/lyuzt/p/11066675.html
Copyright © 2011-2022 走看看