zoukankan      html  css  js  c++  java
  • 机器学习 评价指标整理

    目录

    1.准确率(Accuracy)

    2.召回率(Recall)

    3.精确率(Precision)

    4.召回率与精确率的关系

    ​5.误报率(FPR)与漏报率(FNR)

    1.准确率(Accuracy)

    准确率是指我们的模型预测正确的结果所占的比例。

    正式点说,准确率的定义如下:

    $Accuracy = frac{Number of correct predictions}{Total number of predictions}$

    对于二元分类,也可以根据正类别和负类别按如下方式计算准确率: 

    $Accuracy = frac{TP+TN}{TP+TN+FP+FN}$

    其中,TP = 真正例,TN = 真负例,FP = 假正例,FN = 假负例。 

    例如:该模型将 100 条流分为Tor (正类别)或no-Tor(负类别):

     $Accuracy = frac{TP+TN}{TP+TN+FP+FN}= frac{1+90}{1+90+1+8}=0.91$

    准确率为 0.91,即 91%(总共 100 个样本中有 91 个预测正确)。

    但仔细琢磨正负例的比例,显然是不够能说明问题的。例如,我有1000个样本,其中910都是负例,模型只要学到将所有样本预测为负例,准确率即可达到91%,这样却永远检测不出正例。

    所以,当使用分类不平衡的数据集(比如正类别标签和负类别标签的数量之间存在明显差异)时,单单准确率一项并不能反映全面情况。

    在2、3部分中,我们将介绍两个能够更好地评估分类不平衡问题的指标:召回率和精确率。

    2.召回率(Recall=TPR)


    召回率表示在所有正类别样本中,被正确识别为正类别的比例。

    从数学上讲,召回率的定义如下:

    $Recall=frac{TP}{TP+FN}$ 

    让我们来计算一下流量分类器的召回率(上面的例子):

    $Recall=frac{TP}{TP+FN} = frac{1}{1+8} = 0.11$  

    该模型的召回率是 0.11,也就是说,该模型能够正确识别出所有Tor流量的百分比是 11%。 

    3.精确率(Precision)

    精确率表示被识别为正类别的样本中,确实为正类别的比例。

    精确率的定义如下:

    $Precision=frac{TP}{TP+FP}$ 

    让我们来计算一下流量分类器(上面的例子)的精确率:

    $Precision=frac{TP}{TP+FP} =frac{1}{1+1} = 0.5$  

    该模型的精确率为 0.5,也就是说,该模型在预测Tor流量方面的正确率是 50%。 

    参考:https://developers.google.com/machine-learning/crash-course/classification/precision-and-recall?hl=zh-cn

    4.召回率与精确率的关系 

     

    在信息检索领域,召回率和精确率又被称为查全率和查准率

    • 查全率=检索出的相关信息量 / 系统中的相关信息总量 
    • 查准率=检索出的相关信息量 / 检索出的信息总量

    由此可以理解:

    • 假负例 (FN)又叫漏报
    • 假正例 (FP)又叫误报

    参考:机器学习性能评估指标

    5.误报率(FPR)与漏报率(FNR) 

    真正例率 TPR = TP / (TP + TN)

    表示,被挑出来的(预测是“正”的),且正确的(预测值=真实值)的,占总的预测正确的比率。 

    反正例率 FPR = FP / (FP + TN)

    表示,被挑出来的(预测是“正”的),但错误的(预测值!=真实值)的,占总的预测错误的比率。

    TPR越大,则表示挑出的越有可能(是正确的);FPR越大,则表示越不可能(在挑选过程中,再挑新的出来,即再挑认为是正确的出来,越有可能挑的是错误的)。

    TNR(True Negative Rate)可以理解为所有反类中,有多少被预测成反类(反类预测正确),给出定义如下:

    large TNR=frac{TN}{FP+TN}

    FNR(False Negative Rate)可以理解为所有正类中,有多少被预测成反类(反类预测错误),给出定义如下:

    large FNR=frac{FN}{TP+FN}

    误报率(FPR)、漏报率(FNR)

  • 相关阅读:
    统计一段文字中出现频率最高的10个单词(c语言)
    java之过滤器Filter (应用场景)
    java之过滤器Filter
    Spring AOP
    清华大学iCenter区块链公开课 第二节
    学习区块链 第一节 精通比特币
    使用Shiro登录成功后,跳转到之前访问的页面实现
    windows下系统移植到linux下出现的问题
    mysql分页查询
    安卓开发随笔
  • 原文地址:https://www.cnblogs.com/shona/p/12239400.html
Copyright © 2011-2022 走看看