准确率召回率

准确率召回率

http://blog.sina.com.cn/s/blog_4b59de070100ehl7.html

最近一直在做相关推荐方面的研究与应用工作,召回率与准确率这两个概念偶尔会遇到,

知道意思,但是有时候要很清晰地向同学介绍则有点转不过弯来。
召回率和准确率是数据挖掘中预测、互联网中的搜索引擎等经常涉及的两个概念和指标。
召回率:Recall,又称“查全率”——还是查全率好记,也更能体现其实质意义。
准确率:Precision,又称“精度”、“正确率”。

以检索为例,可以把搜索情况用下图表示:

 
相关
不相关
检索到
A
B
未检索到
C
D

A:检索到的,相关的                (搜到的也想要的)
B:检索到的,但是不相关的          (搜到的但没用的)
C:未检索到的,但却是相关的        (没搜到,然而实际上想要的)
D:未检索到的,也不相关的          (没搜到也没用的)

如果我们希望:被检索到的内容越多越好,这是追求“查全率”,即A/(A+C),越大越好。

如果我们希望:检索到的文档中,真正想要的、也就是相关的越多越好,不相关的越少越好,

这是追求“准确率”,即A/(A+B),越大越好。

“召回率”与“准确率”虽然没有必然的关系(从上面公式中可以看到),在实际应用中,是相互制约的。

要根据实际需求,找到一个平衡点。

往往难以迅速反应的是“召回率”。我想这与字面意思也有关系,从“召回”的字面意思不能直接看到其意义。

“召回”在中文的意思是:把xx调回来。“召回率”对应的英文“recall”,

recall除了有上面说到的“order sth to return”的意思之外,还有“remember”的意思。

Recall:the ability to remember sth. that you have learned or sth. that has happened in the past.

当我们问检索系统某一件事的所有细节时(输入检索query查询词),

Recall指:检索系统能“回忆”起那些事的多少细节,通俗来讲就是“回忆的能力”。

“能回忆起来的细节数” 除以 “系统知道这件事的所有细节”,就是“记忆率”,

也就是recall——召回率。简单的,也可以理解为查全率。

根据自己的知识总结的,定义应该肯定对了,在某些表述方面可能有错误的地方。
假设原始样本中有两类,其中:

1:总共有 P个类别为1的样本,假设类别1为正例。 
2:总共有N个类别为0 的样本,假设类别0为负例。 
经过分类后:
3:有 TP个类别为1 的样本被系统正确判定为类别1,FN 个类别为1 的样本被系统误判定为类别 0,

显然有P=TP+FN; 
4:有 FP 个类别为0 的样本被系统误判断定为类别1,TN 个类别为0 的样本被系统正确判为类别 0,

显然有N=FP+TN; 
 
那么:
精确度(Precision):
P = TP/(TP+FP) ;  反映了被分类器判定的正例中真正的正例样本的比重( 
 
准确率(Accuracy)
A = (TP + TN)/(P+N) = (TP + TN)/(TP + FN + FP + TN);

反映了分类器统对整个样本的判定能力——能将正的判定为正,负的判定为负 
 
召回率(Recall),也称为 True Positive Rate:
R = TP/(TP+FN) = 1 - FN/T;  反映了被正确判定的正例占总的正例的比重 
 
转移性(Specificity,不知道这个翻译对不对,这个指标用的也不多),

也称为 True NegativeRate 
S = TN/(TN + FP) = 1 – FP/N;   明显的这个和召回率是对应的指标,

只是用它在衡量类别0 的判定能力。 
 
F-measure or balanced F-score
F = 2 *  召回率 *  准确率/ (召回率+准确率);这就是传统上通常说的F1 measure,

另外还有一些别的F measure,可以参考下面的链接 
 
上面这些介绍可以参考: 
http://en.wikipedia.org/wiki/Precision_and_recall
同时,也可以看看:http://en.wikipedia.org/wiki/Accuracy_and_precision
 
为什么会有这么多指标呢?
        这是因为模式分类和机器学习的需要。判断一个分类器对所用样本的分类能力或者在不同的应用场合时,

需要有不同的指标。 当总共有个100 个样本(P+N=100)时,假如只有一个正例(P=1),

那么只考虑精确度的话,不需要进行任何模型的训练,直接将所有测试样本判为正例,

那么 A 能达到 99%,非常高了,但这并没有反映出模型真正的能力。另外在统计信号分析中,

对不同类的判断结果的错误的惩罚是不一样的。举例而言,雷达收到100个来袭 导弹的信号,

其中只有 3个是真正的导弹信号,其余 97 个是敌方模拟的导弹信号。假如系统判断 98 个

(97 个模拟信号加一个真正的导弹信号)信号都是模拟信号,那么Accuracy=98%,

很高了,剩下两个是导弹信号,被截掉,这时Recall=2/3=66.67%,

Precision=2/2=100%,Precision也很高。但剩下的那颗导弹就会造成灾害。 
 
因此在统计信号分析中,有另外两个指标来衡量分类器错误判断的后果:
漏警概率(Missing Alarm)
MA = FN/(TP + FN) = 1 – TP/T = 1 - R;  反映有多少个正例被漏判了

(我们这里就是真正的导弹信号被判断为模拟信号,可见MA此时为 33.33%,太高了)

虚警概率(False Alarm)
FA = FP / (TP + FP) = 1 – P;反映被判为正例样本中,有多少个是负例。

统计信号分析中,希望上述的两个错误概率尽量小。而对分类器的总的惩罚旧

是上面两种错误分别加上惩罚因子的和:COST = Cma *MA + Cfa * FA。

不同的场合、需要下,对不同的错误的惩罚也不一样的。像这里,我们自然希望对漏警的惩罚大,

因此它的惩罚因子 Cma 要大些。

个人观点:虽然上述指标之间可以互相转换,但在模式分类中,

一般用 P、R、A 三个指标,不用MA和 FA。而且统计信号分析中,也很少看到用 R 的。

好吧,其实我也不是IR专家,但是我喜欢IR,最近几年国内这方面研究的人挺多的,google和百度的强势,也说明了这个方向的价值。当然,如果你是学IR的,不用看我写的这些基础的东西咯。如果你是初学者或者是其他学科的,正想了解这些科普性质的知识,那么我这段时间要写的这个"信息检索X科普"系列也许可以帮助你。(我可能写的不是很快,见谅)

至于为什么名字中间带一个字母X呢? 

为什么先讲Precision和Recall呢?因为IR中很多算法的评估都用到Precision和Recall来评估好坏。所以我先讲什么是"好人",再告诉你他是"好人"

查准与召回(Precision & Recall)

先看下面这张图来理解了,后面再具体分析。下面用P代表Precision,R代表Recall

通俗的讲,Precision 就是检索出来的条目中(比如网页)有多少是准确的,Recall就是所有准确的条目有多少被检索出来了。

下面这张图介绍True Positive,False Negative等常见的概念,P和R也往往和它们联系起来。

我们当然希望检索的结果P越高越好,R也越高越好,但事实上这两者在某些情况下是矛盾的。比如极端情况下,我们只搜出了一个结果,且是准确的,那么P就是100%,但是R就很低;而如果我们把所有结果都返回,那么必然R是100%,但是P很低。

因此在不同的场合中需要自己判断希望P比较高还是R比较高。如果是做实验研究,可以绘制Precision-Recall曲线来帮助分析(我应该会在以后介绍)。

F1  Measure

前面已经讲了,P和R指标有的时候是矛盾的,那么有没有办法综合考虑他们呢?我想方法肯定是有很多的,最常见的方法应该就是F Measure了,有些地方也叫做F Score,都是一样的。

F Measure是Precision和Recall加权调和平均:

F = (a^2+1)P*R / a^2P +R

当参数a=1时,就是最常见的F1了:

F1 = 2P*R / (P+R)

很容易理解,F1综合了P和R的结果。

转载于:https://www.cnblogs.com/Lxiaojiang/p/3584597.html

机器学里面的一些概念-召回率,精确度等的介绍相关推荐

  1. Recall(召回率)和 sensitivity(灵敏性)是同一个概念,其他无相同点

     Recall(召回率)和 sensitivity(灵敏性)是同一个概念,其他无相同点 https://blog.csdn.net/jiandanjinxin/article/details/5184 ...

  2. 【数据挖掘】K-NN 分类 ( 简介 | 分类概念 | K-NN 分类实例 | K-NN 分类准确度评估 | K-NN 分类结果评价指标 | 准确率 | 召回率 )

    文章目录 I . K-NN 简介 II . K-NN 分类 III . K-NN 分类实例 IV . K-NN 分类 准确性评估方法 V . 保持法 VI . kkk-交叉确认法 VII . K-NN ...

  3. [白话解析] 通过实例来梳理概念 :准确率 (Accuracy)、精准率(Precision)、召回率(Recall) 和 F值(F-Measure)

    [白话解析] 通过实例来梳理概念 :准确率 (Accuracy).精准率(Precision).召回率(Recall)和F值(F-Measure) 文章目录 [白话解析] 通过实例来梳理概念 :准确率 ...

  4. 准确率、召回率和F值的概念和计算

    下面简单列举几种常用的推荐系统评测指标: 1.准确率与召回率(Precision & Recall) 准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量.其中精度 ...

  5. 【20210914】【机器/深度学习】模型评价指标:精确率、召回率、特异性、敏感性、F1-score、ROC曲线、AUC

    一.区分精确率.召回率和特异性.敏感性 在数据科学中,查看精确率和召回率来评估构建的模型是十分常见的.而在医学领域,通常使用特异性和敏感性来评估医学测试.这一点在兆观的论文.以及 xxx院的沟通过程中 ...

  6. 机器学习中精准率/召回率/PR曲线/AUC-ROC曲线等概念

    目录 TP/TN/FP/FN accuracy(准确率) precision(精确率/查准率) recall(召回率/查全率) F1分数与Fβ分数 PR曲线(precision recall curv ...

  7. 精确率(精准度),召回率,准确率:机器学习中关于样本和预测的几个概念

    先看一个简单的应用场景: 查询的图片编号为 :c1,c2,c3,c9,c0 样本库中的编号为:s1,s2,s3,s4,s5,s6,s7,s8, 实际情况对应为: c1–s1 , c2–s2 , c3– ...

  8. 机器学习面试题集-图解准确率,精确率,召回率

    https://www.toutiao.com/a6692359723615781389/ 今天进入第二章:模型评估 1. 什么是模型评估 模型训练后要对其进行评估,看模型表现如何,哪里可以改进 分类 ...

  9. [机器学习] 二分类模型评估指标---精确率Precision、召回率Recall、ROC|AUC

    一 为什么要评估模型? 一句话,想找到最有效的模型.模型的应用是循环迭代的过程,只有通过持续调整和调优才能适应在线数据和业务目标. 选定模型时一开始都是假设数据的分布是一定的,然而数据的分布会随着时间 ...

最新文章

  1. 案例 | 河小象:智办事高效驱动组织升级
  2. 设计模式第19篇:访问者模式
  3. Java错别字检查_java中关于异常的处理
  4. [MongoDB] MongoDB的基本操作以及文档的增删改查
  5. 用js代码判断质数_在 JS 中判断,并不是都要用 ===
  6. thrift编写服务端 客户端
  7. mapper的更多细节,日志配置、核心文件的配置等
  8. 前端开发写代码哪个软件更好用?
  9. cad导出pdf_CAD如何批量导出PDF文件?别说PDF了!GIF我都能给你导出来
  10. javashop源码百度云,java电商系统源码分享,Javashop多用户商城源码
  11. 《大数据之路:阿里巴巴大数据实践》-第2篇 数据模型篇 -第10章 维度设计
  12. C++ 并发指南-atomic原子变量使用struct(二)
  13. zookeeper因内存不足造成的CPU占用率高
  14. 中美大学生阅读书单公布:对比结果惊到你了吗?
  15. The server time zone value ‘?й???????‘ is unrecognized or represents more than one time zone.
  16. 近期一些我寨采用的新芯片资料汇总(更新Rk3066)
  17. 百度APP移动研发平台及DevOps实践
  18. 腾讯云部署hexo博客系统
  19. 运行 RoCEv2 的网络注意事项
  20. 【面朝大厂】面试官:说几种常用的分布式 ID 解决方案

热门文章

  1. kl距离 java_信息量、熵、最大熵、联合熵、条件熵、相对熵、互信息。
  2. 锐捷网络交换机配置命令大全
  3. 【干货】网工面试最常见的几大问题,附答案
  4. 基于 KubeVela 与 Kubernetes 打造“无限能力”的开放 PaaS
  5. Serverless 如何在阿里巴巴实现规模化落地?
  6. 林昊获中国计算机学会杰出工程师奖,阿里中间件再获高度肯定,“三位一体”推动技术普惠
  7. 从零入门 Serverless | 一文详解 Serverless 架构模式
  8. 一言不合就删库跑路?万名贡献者和阿里巴巴开源的二三事
  9. python爬取京东商品图片_python利用urllib实现爬取京东网站商品图片的爬虫实例
  10. webuploader 怎么在react中_另辟蹊径搭建阅读React源码调试环境支持所有React版本细分文件断点调试...