一开始接触查全率和查准率时遇到一个想不明白的地方:查准率和查全率是一对矛盾的度量。一般来说查准率高时,查全率往往偏低;反之同理。  可是为什么就不能两个都高呢?为了解决这个疑惑,决定还是记录一下原本感觉没必要记录的相关的知识。。。。。

首先呢,举一个例子。在信息检索中,我们常常关心“检索出得信息中有多少比例是用户感兴趣的”“用户感兴趣的信息中有多少被检索出来了”。查准率(precision)与查全率(recall)是为适用于此类需求的性能度量。对于二分类问题,可列出分类结果的“混淆矩阵”(confusion matrix)

  预测结果 预测结果
真实情况 正例 反例
正例 TP FN
反例 FP TN

查准率P与查全率R的定义为: 

下面就回到了我遇到疑惑的地方,一般来说,查准率较高时,查全率往往偏低;而查全率高时,查准率往往偏低。 西瓜书中给了一个例子:若希望将好瓜尽可能多的选出来,则可通过增加选瓜的数量来实现,如果将所有的西瓜都选上,那么所有的好瓜也必然都被选上了,但这样查准率就会较低(个人理解为,在模型能力有限的情况下,如果想更少的遗漏正例,那么筛选的标准在相对的降低,从而查准率下降)若希望选出的瓜中好瓜比例尽可能高,则可以只挑选最有把握的瓜,但这样就难免会漏掉不少好瓜,使得查全率降低(个人理解就好比生产厂家提高了审核标准导致优质品产量降低)。 通常只有在一些简单任务中,才可能使查全率和查准率都很高。(所以归根到底还是解决问的方法相较复杂的问题而言能力不足啊)

在很多情况下,可根据学习器的预测结果对样例进行排序,排在前面的时学习器认为“最可能”是正例的样本,排在后面的是最不可能的。按此顺序逐个把正例进行预测,则每次可以计算出当前的查全率、查准率,并绘制P-R曲线。

P-R图直观的显示出学习器在样本总体上的查全率、查重率。  比较合理的判断学习器好坏的依据是比较P-R曲线下面积的大小,他在一定程度上表征了学习器在查准率和查全率上取得的相对“双高”的比例。但这个值不太容易估算,因此,人们设计了一些综合考虑查准率,查全率的性能度量。

“平衡点”(Break-Even Point)就是这样一个度量,它是“查准率=查全率”时的一个取值。但BEP还是过于简化了些,更常用的是一个叫做F1度量的家伙:

    ALL为样例总数

F1度量的一般形式:  ,能让我们表达出对查准率/查全率的不同偏好。其中度量了查全率对查准率的相对重要性。时退化为标准的F1;时查全率有更大影响;时查准率有更大影响。

有很多时候我们有多个二分类混淆矩阵,我们希望在n个二分类混淆矩阵上综合考察查准率和查全率。一种直接的做法是先在各混淆矩阵上分别计算出查准率和查全率再计算平均值,这样就得到“宏查准率”(macro-P)、”宏查全率“(macro-R),以及相应的”宏F1“

       

还可以先将各混淆矩阵的对应元素进行平均,得到TP、FP、TN、FN的平均值,再基于这些平均值计算出”微查准率“(micro-P)、"微查全率"(micro-R)和”微F1“(micro-F1):

   ,    , 

查全率、查准率与F1相关推荐

  1. [吴恩达机器学习笔记]11机器学习系统设计3-4/查全率/查准率/F1分数

    11. 机器学习系统的设计 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 11.3 偏斜类的误差度量 Error Metr ...

  2. 机器学习_评价指标Accuracy(准确率)、Precision(精准度/查准率)、Recall(召回率/查全率)、F1 Scores详解

    首先我们先上一个整体的公式: 混淆矩阵 真实情况 T或F 预测为正1,P 预测为负0,N 本来的label为1,则预测结果正的话为T,负的话为F TP(正样本预测为正) FN(正样本预测为假) – – ...

  3. 查全率、查准率与F1分数

    查全率.查准率都和正类样本密切相关.为了便于理解这几个概念,我们给出如图 1 所示的示意图. 查全率与查准率 图 1:查全率与查准率 图中实心小圆圈代表正类样本,空心小圆圈代表负类样本,大圆形区域(由 ...

  4. java计算混淆矩阵(分类指标:查准率P,查全率R,P和R的调和均值F1,正确率A)

    [0]README 本文使用 java 计算混淆矩阵,并利用 混淆矩阵值计算 分类指标:通用分类指标有: 查准率,查全率,查准率和查全率的调和均值F1值,正确率, AOC, AUC等:本文计算前4个指 ...

  5. 【机器学习笔记】 模型评估:查准率、查全率和F1

    前言 错误率与精度经常用来衡量一个模型的好坏,但这两项指标并不能满足所有的需求.以西瓜书中的例子来说,农夫拉来一车西瓜,错误率可以衡量出有多少比例的瓜被判别错误,而我们关心的是好瓜,或说好瓜中有多少比 ...

  6. 机器学习--查准率和查全率

    机器学习--查准率和查全率 问题引出 一.混淆矩阵 二.查准率和查全率 总结 问题引出 以西瓜问题为例,我们现在想要解决的问题为"挑出的西瓜有多少是好西瓜","所有好瓜中 ...

  7. 查准率与查全率一图搞懂

    听说你学查准率与查全率老不理解,什么玩意呢?你去查,都是给你扔个表扔个公式 淦,很抽象,但是你运气好刷到了我这篇,我悟了,现在教你hh 从上面这个图看吧,你需要先知道各个样本是属于哪一类,再往下看. ...

  8. 精确率、召回率、F1 值、ROC、AUC

    首先我们来思考一个问题,如何评估一个机器学习模型效果的好坏呢? 1.性能度量 机器学习首先要建模,对于模型性能的好坏(即模型的泛化能力),我们必须有个评判的标准.为了了解模型的泛化能力,我们需要用某个 ...

  9. 每天五分钟机器学习:评价算法模型常用的数值评估方式——F1值

    本文重点 上一节课程中我们学习了查准率和召回率,作为遇到偏斜类问题的评估度量值.那么究竟是查准率更好一些还是召回率更好一些呢?其实都不是,真正好的应该是使得查准率和召回率的相对平衡,那么这个相对平衡的 ...

最新文章

  1. 解决Visual Code安装中文插件失败问题
  2. 11.python并发入门(part8 基于线程队列实现生产者消费者模型)
  3. 1 HBase 介绍
  4. boost之lexical_cast
  5. NodeJS解决跨域问题:Access-Control-Allow-Origin
  6. 第45课 蝴蝶效应-动动脑 第2题 《小学生C++趣味编程》
  7. 计算机技能大赛试题及答案,全国中职计算机技能大赛(园区网)试题及参考答案...
  8. Java Web开发中,自定义过滤器被执行两次的原因分析及解决办法
  9. Disable STRICT_TRANS_TABLES @Mysql 5.7
  10. CentOS 7 搭建企业内网 DNS 服务器
  11. oracle产生连续的数字
  12. Android / iOS 招聘
  13. 生成帮助文档(html或chm格式)
  14. 双摄像头测距的OpenCV实现
  15. Google Map开发之实战
  16. 苹果 谷歌 微软 三国混战 附地图详解
  17. IP SAN 实验(小白教程,超级具体)
  18. 成都Uber优步司机奖励政策(1月17日)
  19. 一键部署oracle,一种Oracle单机一键自动部署方法与流程
  20. python 实现聊天室

热门文章

  1. 如何把Windows电脑变得果里果气的
  2. cvcvtcolor,opencv函数cvcvtcolor和cvtcolor之间的区别是什么
  3. 制作教学资源:好钢用在刀刃上
  4. 看书好还是看视频好?
  5. Mysql数据库学习感受总结
  6. 用JS实现input输入框里的只读属性
  7. 计算机网络读书笔记(五)
  8. 一条代码带大家绘制交互式+pdf+png等多格式桑基美图
  9. 辗转相除法求最大公约数的原理及 Java 实现
  10. 2020A证(安全员)模拟考试及A证(安全员)实操考试视频