【原创】你懂精确率与召回率吗?还有RoC曲线与PR曲线?

在机器学习的算法评估中,尤其是分类算法评估中,我们经常听到精确率(precision)与召回率(recall),RoC曲线与PR曲线这些概念,那这些概念到底有什么用处呢?
首先,我们需要搞清楚几个拗口的概念:

01

TP, FP, TN, FN


True Positives,TP:预测为正样本,实际也为正样本的特征数
False Positives,FP:预测为正样本,实际为负样本的特征数
True Negatives,TN:预测为负样本,实际也为负样本的特征数
False Negatives,FN:预测为负样本,实际为正样本的特征数
听起来还是很费劲,不过我们用一张图就很容易理解了。图如下所示,里面绿色的半圆就是TP(True Positives), 红色的半圆就是FP(False Positives), 左边的灰色长方形(不包括绿色半圆),就是FN(False Negatives)。右边的 浅灰色长方形(不包括红色半圆),就是TN(True Negatives)。这个绿色和红色组成的圆内代表我们分类得到模型结果认为是正值的样本。

02

精确率,召回率与特异性


精确率(Precision)的定义在上图可以看出,是绿色半圆除以红色绿色组成的圆。严格的数学定义如下:
    P=TP/(TP+FP)
召回率(Recall)的定义也在图上能看出,是绿色半圆除以左边的长方形。严格的数学定义如下:
    R=TP/(TP+FN)
特异性(specificity)的定义图上没有直接写明,这里给出,是右边长方形去掉红色半圆部分后除以右边的长方形。严格的数学定义如下:
    S=TN/(FP+TN)
有时也用一个F1值来综合评估精确率和召回率,它是精确率和召回率的调和均值。当精确率和召回率都高时,F1值也会高。严格的数学定义如下:
    2/F1=1/P+1/R
有时候我们对精确率和召回率并不是一视同仁,比如有时候我们更加重视精确率。我们用一个参数β来度量两者之间的关系。如果β>1, 召回率有更大影响,如果β<1,精确率有更大影响。自然,当β=11的时候,精确率和召回率影响力相同,和F1形式一样。含有度量参数β的F1我们记为Fβ, 严格的数学定义如下:
  Fβ=[(1+β2)∗P∗R]/(β2∗P+R)
此外还有灵敏度(true positive rate ,TPR),它是所有实际正例中,正确识别的正例比例,它和召回率的表达式没有区别。严格的数学定义如下:
    TPR=TP/(TP+FN)
另一个是1-特异度(false positive rate, FPR),它是实际负例中,错误得识别为正例的负例比例。严格的数学定义如下:
    FPR=FP/(FP+TN)
我们熟悉了精确率, 召回率和特异性,以及TPR和FPR,后面的RoC曲线和PR曲线就好了解了。

03

RoC曲线和PR曲线


有了上面精确率, 召回率和特异性的基础,理解RoC曲线和PR曲线就小菜一碟了。
以TPR为y轴,以FPR为x轴,我们就直接得到了RoC曲线。从FPR和TPR的定义可以理解,TPR越高,FPR越小,我们的模型和算法就越高效。也就是画出来的RoC曲线越靠近左上越好。如下图左图所示。从几何的角度讲,RoC曲线下方的面积越大越大,则模型越优。所以有时候我们用RoC曲线下的面积,即AUC(Area Under Curve)值来作为算法和模型好坏的标准。
以精确率为y轴,以召回率为x轴,我们就得到了PR曲线。仍然从精确率和召回率的定义可以理解,精确率越高,召回率越高,我们的模型和算法就越高效。也就是画出来的PR曲线越靠近右上越好。如上图右图所示。
使用RoC曲线和PR曲线,我们就能很方便的评估我们的模型的分类能力的优劣了。

1.机器学习原来这么有趣!【第一章】

2.机器学习原来这么有趣!【第二章】:用机器学习制作超级马里奥的关卡

3.机器学习从零开始系列连载(1)——基本概念

4.机器学习从零开始系列连载(2)——线性回归

5.机器学习从零开始系列连载(3)——支持向量机

6.机器学习从零开始系列连载(4)——逻辑回归

7.机器学习从零开始系列连载(5)——Bagging and Boosting框架

8.机器学习从零开始系列连载(6)—— Additive Tree 模型

记得把公号加星标,会第一时间收到通知。

创作不易,如果觉得有点用,希望可以随手转发或者”在看“,拜谢各位老铁

(0)

相关推荐

  • 搞懂机器学习的常用评价指标!

    每日干货 & 每月组队学习,不错过  Datawhale干货  作者:陈安东,湖南大学,Datawhale成员 我与评价指标的首次交锋是第一次实习面试时,面试官开头就问分类任务的评价指标.我当 ...

  • 你真的了解模型评估与选择嘛

    前面几讲我们基于数据分析师需要掌握的基本技能,从SQL出发,学习了统计学的基本知识,在系统层面基本讲完了数据分析师需要具备的能力.下面几讲,我们会围绕数据挖掘工程师需具备的知识体系展开,今天会着重介绍 ...

  • 终于有人把准确率、精度、召回率、均方差和R²都讲明白了

    在真实场景中,模型很少能成功地预测所有的内容.我们知道应该使用测试集的数据来评估我们的模型.但是这到底是如何工作的呢? 简短但不是很有用的答案是,这取决于模型.人们已经提出了各种评分函数,它可用于在所 ...

  • 新能源车召回率高达1.5% ,召回原因主要是因为啥?

    随着新能源汽车的快速发展,保有量也是越来越多,但是随着保有量的增加,一些新能源汽车制造企业,为了抢占风口,节省成本,导致新能源汽车安全问题日益突出,新能源车召回率高达1.5% ,召回原因主要是因为啥? ...

  • 眼花缭乱的妥投率、投递率,你都搞懂了吗(一)

    2017年12月新一代揽投功能正式上线以来,监控报表基本上从空白,到现在已经伴随全环节功能的上线,已经衍生出来一系列不同用途的报表.其中就涉及了很多[妥投率].[投递率]的报表.实际生产中,大家都真的 ...

  • 用户召回你真的会吗?10%召回率仅需三步!

    用户在每个产品中的生命周期是接触--使用--放弃或者遗忘的过程.在用户使用阶段,有效的促活手段也能提高留存,但同样重要的是召回用户,而召回用户有一个通用的流程.本文将梳理用户召回的运营思路. 01. ...

  • 准确率、召回率、精确度、F1分数和混淆矩阵

    介绍 准确率.召回率.精确度和F1分数是用来评估模型性能的指标.尽管这些术语听起来很复杂,但它们的基本概念非常简单.它们基于简单的公式,很容易计算. 这篇文章将解释以下每个术语: 为什么用它 公式 不 ...

  • 免费Python机器学习课程八:精确度,召回率

    > Photo by James Lee on Unsplash 完全了精确度,召回率和F分数概念 如何处理机器学习中偏斜的数据集 用偏斜的数据集开发有效的机器学习算法可能很棘手.例如,数据集涉 ...

  • 年度入职率和离职率怎么算

    年度入职率和离职率怎么算呢?下面以excel为例进行计算. 打开一个excel"年度人力资源计算表" 输入年末在岗人数.年度累计离职人数.年度入职人数以及年度录用总人数. 然后在& ...

  • 原创|懂你-冲上云霄作品欢迎品鉴

    网络文学 | 文学交流 | 专注原创 原创作品授权天美五星全网首发 懂你 作者/冲上云霄 编审/天美五星 懂你 作者/冲上云霄(李丽) - 世上最美的语言就是"有我在"我懂你&qu ...

  • 什么是股息率?股息率是什么意思

    什么是股息率? 所以,只有低估值的高分红个股的股息率才会很高.比如贵州茅台的分红率达52%,远高于银行股,但股息率按现价仅为1.2%,却比大多数银行股低,原因就是贵州茅台的市盈率更高.所以我们作为投资 ...