查准率与查全率(precision and recall) 的个人理解
假设要识别照片中的狗的,在一些照片中,包含12只狗的照片和一些猫的照片。算法识别出有8只狗。在确定的8只狗中,5只实际上是狗(真阳性TP),而其余的是猫(假阳性FP)。该程序的精度为5/8,而其召回率为5/12。
| Predicted | |||
| Actual | 狗(+) | 猫(-) | |
| 狗(+) | 5(TP) | FN | 12 |
| 猫(-) | 3(FP) | TN | |
| 8 |
Confusion matrix
TP: T 是指标记正确, P 是指实际中的类别是P类, 所以
TP:正确地标记为正。
FP:错误地标记为正(即原来是负,标记成正)。
FN:错误地标记为负(即原来是正,标记成负)。
TN:正确地标记为负。
查准率 = 精度 = precision
查全率 = 召回率 = recall

当搜索引擎返回30个页面时,只有20个页是相关的(实际相关),而没有返回另外40个相关页面,其精度为20/30 = 2/3,而召回率为20/60 = 1/3。所以,在这种情况下,精度是“搜索结果有用”,召回率是“结果如何完整”。
| Predicted | |||
| Actual | (+) | (-) | |
| (+) | 20(TP) | 40(FN) | 60 |
| (-) | FP | TN | |
| 30 |
Confusion matrix
商品推荐系统中,为了尽可能地少打扰用户,更希望推荐内容确实是用户感兴趣的,就要提高精度(查准率),在分类时,慎重地预测为+,也就是说,预测成正地比例将减小,即
中 TP+FP变小,分母变小,分子也变小,但是分母变化的更剧烈,所以精度变大。在公式中,TP变小,分子变小,分母(实际的正类)不变,召回率变小。
在逃犯信息检索系统中,更希望尽可能地少漏掉逃犯,此时,就要提高召回率(查全率),在分类时,尽量多的预测为+,就需要提高预测正类的比例,TP+FP 变大,TP变大,在公式中 TP变大,分母不变,分子变大,所以召回率变大。在公式
中,分母变大,分子变大,但是分母变化的更剧烈,所以精度变小。
查准率与查全率(precision and recall) 的个人理解的更多相关文章
- ROC曲线、AUC、Precision、Recall、F-measure理解及Python实现
本文首先从整体上介绍ROC曲线.AUC.Precision.Recall以及F-measure,然后介绍上述这些评价指标的有趣特性,最后给出ROC曲线的一个Python实现示例. 一.ROC曲线.AU ...
- 吴恩达机器学习笔记40-用调和平均数F来进行查准率和查全率之间的权衡(Trading Off Precision and Recall by F sore)
在很多应用中,我们希望能够保证查准率和查全率的相对平衡. 我们可以将不同阀值情况下,查全率与查准率的关系绘制成图表,曲线的形状根据数据的不同而不同: 我们希望有一个帮助我们选择这个阀值的方法.一种方法 ...
- 机器学习性能度量指标:ROC曲线、查准率、查全率、F1
错误率 在常见的具体机器学习算法模型中,一般都使用错误率来优化loss function来保证模型达到最优. \[错误率=\frac{分类错误的样本}{样本总数}\] \[error=\frac{1} ...
- 机器学习常用性能度量中的Accuracy、Precision、Recall、ROC、F score等都是些什么东西?
一篇文章就搞懂啦,这个必须收藏! 我们以图片分类来举例,当然换成文本.语音等也是一样的. Positive 正样本.比如你要识别一组图片是不是猫,那么你预测某张图片是猫,这张图片就被预测成了正样本. ...
- Solr基础理论【排名检索、查准率、查全率】
一.排名检索 搜索引擎代表了基于查询,返回优先文档的一种方法.在关系型数据库的SQL查询中,表的一行要么匹配一个查询,要么不匹配,查询结果基于一列或多列排序.搜索引擎根据文档与查询匹配的程度为文档打分 ...
- 【分类问题中模型的性能度量(一)】错误率、精度、查准率、查全率、F1详细讲解
文章目录 1.错误率与精度 2.查准率.查全率与F1 2.1 查准率.查全率 2.2 P-R曲线(P.R到F1的思维过渡) 2.3 F1度量 2.4 扩展 性能度量是用来衡量模型泛化能力的评价标准,错 ...
- 准确率和召回率(precision&recall)
在机器学习.推荐系统.信息检索.自然语言处理.多媒体视觉等领域,常常会用到准确率(precision).召回率(recall).F-measure.F1-score 来评价算法的准确性. 一.准确率和 ...
- 一道关于 precision、recall 和 threshold关系的机器学习题
Suppose you have trained a logistic regression classifier which is outputing hθ(x). Currently, you p ...
- precision、recall、accuracy的概念
机器学习中涉及到几个关于错误的概念: precision:(精确度) precision = TP/(TP+FP) recall:(召回率) recall = TP/(TP+FN) accuracy: ...
随机推荐
- swift - 各种手势用法大全
UIGestureRecognizer有许多子类,用于监听一些常见的手势事件,这些子类主要有: 1.首先创建几个view,来用于手势的检测 let view1 = UIView() let view2 ...
- python2.0 s12 day8 _ 堡垒机前戏paramiko模块
堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 paramiko模块是做主机管理的,他模拟了一个ssh. 有两种形式连接形式, ...
- join()函数的用法【python】
转自:http://www.jb51.net/article/63598.htm
- 如何提高AJAX客户端响应速度
AJAX的出现极大的改变了Web应用客户端的操作模式,它使的用户可以在全心工作时不必频繁的忍受那令人厌恶的页面刷新.理论上AJAX技术在很大的程度上可以减少用户操作的等待时间,同时节约网络上的数据流量 ...
- AVL树与红黑树
平衡树是平时经常使用数据结构. C++/JAVA中的set与map都是通过红黑树实现的. 通过了解平衡树的实现原理,可以更清楚的理解map和set的使用场景. 下面介绍AVL树和红黑树. 1. AVL ...
- Minix2.0操作系统公用头文件说明
以下头文件均在目录include/下: ansi.h: 用来检测编译器是否遵循标准C,如果是的话,_ANSI就被定义为31415,如果不是的,则_ANSI未定义.通过这个宏来诊测. limits.h: ...
- iOS - 获取状态栏和导航栏尺寸(宽度和高度)
iPhone开发当中,有时需要获取状态栏和导航栏高度.宽度信息,方便布局其他控件.下面介绍一下如何获取这些信息: // 状态栏(statusbar) CGRect rectStatus = [[UIA ...
- angularJS中的MVC思想?
mvc 思想: 将应用程序的组成,划分为三个部分:model , controller 和 view ; - 控制器的作用是用来初始化模型用的: - 模型就是用于存储数据的: - 视图是展示数据的: ...
- Jmeter性能测试实践之java请求
前言 Apache Jmeter是开源.易用的性能测试工具,之前工作中用过几次对http请求进行性能测试,对jmeter的基本操作有一些了解.最近接到开发的对java请求进行性能测试的需求,所以需要 ...
- mysql中or和in的效率问题
分三中情况进行测试,分别是:第一种情况:in和or所在列为主键的情形.第二种情况:in和or所在列创建有索引的情形.第二种情况:in和or所在列没有索引的情形.每种情况又采用不同的in和or的数量进行 ...