• 分类效果评价指标一混淆矩阵


    1.混淆矩阵:判断分类模型好坏

      (摘自:版权声明:本文为CSDN博主「Orange_Spotty_Cat」的原创文章.原文链接:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80520839)

    混淆矩阵是ROC曲线绘制的基础,同时它也是衡量分类型模型准确度中最基本,最直观,计算最简单的方法。

    一句话解释版本:

    混淆矩阵就是分别统计分类模型归错类,归对类的观测值个数,然后把结果放在一个表里展示出来。这个表就是混淆矩阵。

     

    混淆矩阵是评判模型结果的指标,属于模型评估的一部分。此外,混淆矩阵多用于判断分类器(Classifier)的优劣,适用于分类型的数据模型,如分类树(Classification Tree)、逻辑回归(Logistic Regression)、线性判别分析(Linear Discriminant Analysis)等方法。

     

    在分类型模型评判的指标中,常见的方法有如下三种:

     

    混淆矩阵(也称误差矩阵,Confusion Matrix)
    ROC曲线
    AUC面积

        

      (1)混淆矩阵的指标

    预测性分类模型,肯定是希望越准越好。那么,对应到混淆矩阵中,那肯定是希望TP与TN的数量大,而FP与FN的数量小。所以当我们得到了模型的混淆矩阵后,就需要去看有多少观测值在第二、四象限对应的位置,这里的数值越多越好;反之,在第一、三象限对应位置出现的观测值肯定是越少越好。

    (2)二级指标
      但是,混淆矩阵里面统计的是个数,有时候面对大量的数据,光凭算个数,很难衡量模型的优劣。因此混淆矩阵在基本的统计结果上又延伸了如下4个指标,我称他们是二级指标(通过最底层指标加减乘除得到的):

    准确率(Accuracy)—— 针对整个模型
    精确率(Precision)
    灵敏度(Sensitivity):就是召回率(Recall)
    特异度(Specificity)
    我用表格的方式将这四种指标的定义、计算、理解进行了汇总:

     

    通过上面的四个二级指标,可以将混淆矩阵中数量的结果转化为0-1之间的比率。便于进行标准化的衡量。

    在这四个指标的基础上在进行拓展,会产令另外一个三级指标

    (3)三级指标
      这个指标叫做F1 Score。他的计算公式是:

     

    其中,P代表Precision,R代表Recall。

    F1-Score指标综合了Precision与Recall的产出的结果。F1-Score的取值范围从0到1的,1代表模型的输出最好,0代表模型的输出结果最差。

    (4)混淆矩阵的实例
      当分类问题是二分问题是,混淆矩阵可以用上面的方法计算。当分类的结果多于两种的时候,混淆矩阵同时适用。

    一下面的混淆矩阵为例,我们的模型目的是为了预测样本是什么动物,这是我们的结果:

     

    通过混淆矩阵,我们可以得到如下结论:

    Accuracy

      在总共66个动物中,我们一共预测对了10 + 15 + 20=45个样本,所以准确率(Accuracy)=45/66 = 68.2%。

      以猫为例,我们可以将上面的图合并为二分问题:

     

    Precision

      所以,以猫为例,模型的结果告诉我们,66只动物里有13只是猫,但是其实这13只猫只有10只预测对了。模型认为是猫的13只动物里,有1条狗,两只猪。所以,Precision(猫)= 10/13 = 76.9%

    Recall

      以猫为例,在总共18只真猫中,我们的模型认为里面只有10只是猫,剩下的3只是狗,5只都是猪。这5只八成是橘猫,能理解。所以,Recall(猫)= 10/18 = 55.6%

    Specificity

      以猫为例,在总共48只不是猫的动物中,模型认为有45只不是猫。所以,Specificity(猫)= 45/48 = 93.8%。

    虽然在45只动物里,模型依然认为错判了6只狗与4只猫,但是从猫的角度而言,模型的判断是没有错的。

    F1-Score

      通过公式,可以计算出,对猫而言,F1-Score=(2 * 0.769 *  0.556)/( 0.769 +  0.556) = 64.54%

    同样,我们也可以分别计算猪与狗各自的二级指标与三级指标值。

  • 相关阅读:
    【从零开始搭建uniapp开发框架】(九)—— ajax网络请求封装
    HDU 4276 The Ghost Blows Light
    HDU 3530 Subsequence
    HDU 4268 Alice and Bob
    HDU 4267 A Simple Problem with Integers
    HDU 4284 Travel
    HDU 4277 USACO ORZ
    使用iQuery的getJSON方法实现跨域
    【浅谈】<.net>使用AspNetPager分页
    java处理字符串公式运算
  • 原文地址:https://www.cnblogs.com/liyuewdsgame/p/13270346.html
Copyright © 2020-2023  润新知