分类器评估方法:精确度-召回率-F度量(precision-recall-F_measures)
注:本文是人工智能研究网的学习笔记
Precision和Recall都能够从下面的TP,TN,FP,FN里面计算出来。
几个缩写的含义:
| 缩写 | 含义 |
|---|---|
| P | condition positive |
| N | condition negative |
| TP | true positive (with hit) |
| TN | true negative (with correct rejection) |
| FP | false positive (with false alarm, Type I error) |
| FN | false negative (with miss, Type II error) |
TP: 我认为是真的,结果确实是真的
TN: 我认为是假的,结果确实是假的
FP: 我认为是真的,结果是假的
FN: 我认为是假的,结果是真的
T / F: 表名我预测的结果的真假
P / N: 表名我所认为的真还是假

precision和recall的进一步解释

precision和accuracy的区别
简单的来说,给定一组测量点的集合:
精确(precision): 所有的测量点到测量点集合的均值非常接近,与测量点的方差有关。就是说各个点紧密的聚合在一起。
准确(accuracy): 所有的测量点到真实值非常接近。与测量点的偏差有关。
以上两个概念是相互独立的,因此数据点集合可以使accurate的,也可以使precise的,还可以都不是或者都是。

二元分类问题

from sklearn import metrics
y_pred = [0, 1, 0, 0]
y_true = [0, 1, 0, 1]
print(metrics.precision_score(y_true, y_pred)) # 1.0
print(metrics.recall_score(y_true, y_pred)) # 0.5
# beta值越小,表示越看中precision
# beta值越大,表示越看中recall
print(metrics.f1_score(y_true, y_pred)) # 0.666666666667
print(metrics.fbeta_score(y_true, y_pred, beta=0.5)) # 0.833333333333
print(metrics.fbeta_score(y_true, y_pred, beta=1)) # 0.666666666667
print(metrics.fbeta_score(y_true, y_pred, beta=2)) # 0.555555555556
将二元分类指标拓展到多类和或多标签问题中

from sklearn import metrics
y_pred = [0, 1, 2, 0, 1, 2]
y_true = [0, 2, 1, 0, 0, 1]
print(metrics.precision_score(y_true, y_pred, average='macro'))
print(metrics.recall_score(y_true, y_pred, average='micro'))
print(metrics.f1_score(y_true, y_pred, average='weighted'))
print(metrics.fbeta_score(y_true, y_pred, beta=0.5, average='macro'))
print(metrics.precision_recall_fscore_support(y_true, y_pred, beta=0.5, average=None))

分类器评估方法:精确度-召回率-F度量(precision-recall-F_measures)的更多相关文章
- 准确率,召回率,F值,ROC,AUC
度量表 1.准确率 (presion) p=TPTP+FP 理解为你预测对的正例数占你预测正例总量的比率,假设实际有90个正例,10个负例,你预测80(75+,5-)个正例,20(15+,5-)个负例 ...
- Recall(召回率)and Precision(精确率)
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/7668501.html 前言 机器学习中经过听到" ...
- 机器学习笔记--classification_report&精确度/召回率/F1值
https://blog.csdn.net/akadiao/article/details/78788864 准确率=正确数/预测正确数=P 召回率=正确数/真实正确数=R F1 F1值是精确度和召回 ...
- 评估指标:准确率(Precision)、召回率(Recall)以及F值(F-Measure)
为了能够更好的评价IR系统的性能,IR有一套完整的评价体系,通过评价体系可以了解不同信息系统的优劣,不同检索模型的特点,不同因素对信息检索的影响,从而对信息检索进一步优化. 由于IR的目标是在较短时间 ...
- 召回率(Recall),精确率(Precision),平均正确率
https://blog.csdn.net/yanhx1204/article/details/81017134 摘要 在训练YOLO v2的过程中,系统会显示出一些评价训练效果的值,如Recall, ...
- 机器学习classification_report方法及precision精确率和recall召回率 说明
classification_report简介 sklearn中的classification_report函数用于显示主要分类指标的文本报告.在报告中显示每个类的精确度,召回率,F1值等信息. 主要 ...
- 正确率、召回率和 F 值
原文:http://peghoty.blog.163.com/blog/static/49346409201302595935709/ 正确率.召回率和 F 值是在鱼龙混杂的环境中,选出目标的重要评价 ...
- Andrew Ng机器学习课程笔记--week6(精度&召回率)
Advice for applying machine learning 本周主要学习如何提升算法效率,以及如何判断学习算法在什么时候表现的很糟糕和如何debug我们的学习算法.为了让学习算法表现更好 ...
- 准确率、精确率、召回率、F1
在搭建一个AI模型或者是机器学习模型的时候怎么去评估模型,比如我们前期讲的利用朴素贝叶斯算法做的垃圾邮件分类算法,我们如何取评估它.我们需要一套完整的评估方法对我们的模型进行正确的评估,如果模型效果比 ...
随机推荐
- P3959 宝藏
P3959 宝藏 题目描述 参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 nn 个深埋在地下的宝藏屋, 也给出了这 nn 个宝藏屋之间可供开发的 mm 条道路和它们的长度. 小明决心亲自前往挖掘 ...
- Java基础-标识符与关键字
Java基础-标识符与关键字 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是标识符 标识符就是程序员在编写程序时,给类,变量,方法等起的名字. 二.标识符的命名规则 1& ...
- Python序列化与反序列化-json与pickle
Python序列化与反序列化-json与pickle 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.json的序列化方式与反序列化方式 1>.json序列化 #!/usr ...
- 流媒体技术学习笔记之(九)减少VLC 延迟的方法
之前写过一篇关于在Linux平台上编译Android平台上VLC播放器源代码的文章,vlc这款播放器非常优秀而且是开源的,它的核心是开源视频编解码库ffmpeg.而且这款播放器还支持RTSP协议,这个 ...
- [转载]AngularJS视图
http://www.yiibai.com/angularjs/angularjs_views.html <html> <head> <title>Angular ...
- Flex 笔记整理 三
1. Panel, TitleWindow PopUpManager 透明 用一个类,这个类里引用一个组件, P如 Panel, TitleWindow等, 利用PopUpManager来弹出显示. ...
- 广度优先搜索(BFS)----------------(TjuOj1140_Dungeon Master)
这次整理了一下广度优先搜索的框架,以后可以拿来直接用了.TjuOj1140是一个三维的迷宫题,在BFS时我增加了一个控制数组,用来对队列的出队进行控制,确保每次出队的结点均为同一步长的结点,个人认为比 ...
- jquery的clone方法bug的修复select,textarea的值丢失
项目中多次使用了iframe,但是操作起来是比较麻烦,项目中的现实情况是最外面是一个form,里面嵌套一个iframe,下面是一个其他的数据,在form提交的时候将iframe的数据和其他的数据一块提 ...
- Oracle PLSql配置
1.安装Oracle客户端或者服务端 2.配置环境变量 <1>.一般如果安装了Oracle客户端或者服务端的话,在环境变种的Path中有Oracle的安装路径(计算机-属性-高级系统设置- ...
- C#并行计算 Parallel.Foreach&Parallel.For
Parallel.For(int fromInclude, int toExclude, Action<int> body) 栗子: Parallel.For(0, 10, (i) =&g ...