P(查准率),R(查全率),F1 值
起源:
我们平时用的精度 accuracy,也就是整体的正确率
acc=predict_right_num/predict_num
这个虽然常用,但不能满足所有任务的需求。比如,因为香蕉太多了,也不能拨开人工的一个一个的看它的好坏 (我爱吃啊,想想就心疼),此时我们就需要有一种方法,代替拨开香蕉这种粗鲁的手段。这时我们需要通过一些测试,看看哪种方法能更加准确的预测。我们可以通过
“准”:预测的准确度,就是我预测的结果中真正好的香蕉要越多越好;
“全”:就是所有的好的香蕉预测出来的越多越好,虽然把有些坏的也预测是好的了,那也不管,“全” 就行。好的香蕉越多的出现在预测结果里
其实这两者都想要达到就好了,但是不行的:
比如 "准", 我就预测一个算了,好的香蕉肯定比坏的比例高,也就是我只预测一个,100% 比例几率最大了,这时就不 “全” 了,海有好多好的香蕉不在预测结果里面
再比如 "全", 我去全部预测成好的,这真正好的都在我的预测里,也就是 100%。可是这时的 "准" 就一点都不准了。。
所以就必须来平衡这俩同志的关系了,怎么平衡呢?肯定是通过权重来的呀,此时,F 值登上历史舞台!
实例说明:
实例化讲解吧。比如我们的香蕉中 1 表示好的,0 表示坏的,有 10 个香蕉:
gold : [1,1,1,1,1,0,0,0,0,0]
pred: [1,0,1,1,1,1,1,0,0,0]
注释:gold 是现实的好坏;pred 是预测的好坏。
P(Precision) 查准率,准确率:就是上面说的 "准"。字面意思好理解呀,就是在预测当中查找准确个数的比例。公式为:
P = 真正预测准确的数量 / 预测是准确的数量 = 4 / 6
R(Recall) 查全率,召回率:就是上面的 "全"。根据字面理解,在预测中看看真正预测对的占全有对的比率。公式为:
R = 真正预测准确的数量 / 所有真正好的数量 = 4 / 5
准确率就是找得对,召回率就是找得全。大概就是你问问一个模型,这堆东西是不是某个类的时候,准确率就是 它说是,这东西就确实是的概率吧,召回率就是, 它说是,但它漏说了(1 - 召回率)这么多。
F 值 综合评价指标,是:
F(k) = ( 1 + k ) * P * R / ( ( k*k ) * P + R )
注释:k>0 度量了 查全率 对 查准率 的相对重要性。k>1 查全率有更大影响;k<1查准率有更大影响。
在这个实例中可以表示为:k>1 就是查全率有更大影响,就是好的香蕉最好都预测出来,因为你觉得不想把好的当成坏的扔点 (真可惜,我爱吃啊) ;k<1 查准率有更大影响,就是一定要准确,省时间,省力更重要,不在乎好的香蕉当坏的扔点。
而我们常用的是 F1,就是 F(1) 的意思,k=1,比如我们做一个分类任务,这几个类觉得都一样重要。此时:
F(1) = 2 * P * R / ( P + R ) = 2*4/6*4/5/(4/6+4/5) = 8/11
P(查准率),R(查全率),F1 值的更多相关文章
- 详谈P(查准率),R(查全率),F1值
怎么来的? 我们平时用的精度accuracy,也就是整体的正确率 acc = predict_right_num / predict_num 这个虽然常用,但不能满足所有任务的需求.比如,因为香蕉太多 ...
- 混淆矩阵、准确率、精确率/查准率、召回率/查全率、F1值、ROC曲线的AUC值
准确率.精确率(查准率).召回率(查全率).F1值.ROC曲线的AUC值,都可以作为评价一个机器学习模型好坏的指标(evaluation metrics),而这些评价指标直接或间接都与混淆矩阵有关,前 ...
- 机器学习性能度量指标:ROC曲线、查准率、查全率、F1
错误率 在常见的具体机器学习算法模型中,一般都使用错误率来优化loss function来保证模型达到最优. \[错误率=\frac{分类错误的样本}{样本总数}\] \[error=\frac{1} ...
- 【分类问题中模型的性能度量(一)】错误率、精度、查准率、查全率、F1详细讲解
文章目录 1.错误率与精度 2.查准率.查全率与F1 2.1 查准率.查全率 2.2 P-R曲线(P.R到F1的思维过渡) 2.3 F1度量 2.4 扩展 性能度量是用来衡量模型泛化能力的评价标准,错 ...
- 吴恩达机器学习笔记40-用调和平均数F来进行查准率和查全率之间的权衡(Trading Off Precision and Recall by F sore)
在很多应用中,我们希望能够保证查准率和查全率的相对平衡. 我们可以将不同阀值情况下,查全率与查准率的关系绘制成图表,曲线的形状根据数据的不同而不同: 我们希望有一个帮助我们选择这个阀值的方法.一种方法 ...
- 精确率、准确率、召回率和F1值
当我们训练一个分类模型,总要有一些指标来衡量这个模型的优劣.一般可以用如题的指标来对预测数据做评估,同时对模型进行评估. 首先先理解一下混淆矩阵,混淆矩阵也称误差矩阵,是表示精度评价的一种标准格式,用 ...
- 机器学习性能指标精确率、召回率、F1值、ROC、PRC与AUC--周振洋
机器学习性能指标精确率.召回率.F1值.ROC.PRC与AUC 精确率.召回率.F1.AUC和ROC曲线都是评价模型好坏的指标,那么它们之间有什么不同,又有什么联系呢.下面让我们分别来看一下这几个指标 ...
- 机器学习笔记--classification_report&精确度/召回率/F1值
https://blog.csdn.net/akadiao/article/details/78788864 准确率=正确数/预测正确数=P 召回率=正确数/真实正确数=R F1 F1值是精确度和召回 ...
- BERT模型在多类别文本分类时的precision, recall, f1值的计算
BERT预训练模型在诸多NLP任务中都取得最优的结果.在处理文本分类问题时,即可以直接用BERT模型作为文本分类的模型,也可以将BERT模型的最后层输出的结果作为word embedding导入到我们 ...
- D. Powerful array 离线+莫队算法 给定n个数,m次查询;每次查询[l,r]的权值; 权值计算方法:区间某个数x的个数cnt,那么贡献为cnt*cnt*x; 所有贡献和即为该区间的值;
D. Powerful array time limit per test seconds memory limit per test megabytes input standard input o ...
随机推荐
- 04 Spring的@Autowired注解、@Resource注解、@Service注解
什么是注解 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事务,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分 ...
- #LOJ2564 SDOI2018 原题识别 主席树
转载请注明原文地址:http://www.cnblogs.com/LadyLex/p/9057297.html 原题链接: 今天考试考了前天的SDOI考题 天啊我菜爆,只有T2拿了30分 然后考试后半 ...
- 自学Zabbix10.1 Configuration export/import 配置导入导出
自学Zabbix10.1 Configuration export/import 配置导入导出 通过导入/导出zabbix配置文件,我们可以将自己写好的模板等配置在网络上分享,我们也可以导入网络上分享 ...
- 解题:SDOI 2017 硬币游戏
题面 板板的生成函数做法太神仙了,我跑了 朴素的做法是建立AC自动机变成图上的随机游走问题 来仔细考虑一下转移,把状态分成非结尾状态和结尾状态.在一个非结尾状态后补一个串是一定能到达目标串的,但是如果 ...
- hdu 1789 Doing HomeWork Again (贪心算法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1789 /*Doing Homework again Time Limit: 1000/1000 MS ...
- SQL记录-PLSQL集合
PL/SQL集合 集合是一个有序组具有相同的数据类型的元素.每个元素进行标识的唯一标表示其在集合中的位置. PL/SQL提供了三种集合类型: 索引表或关联数组 嵌套表 可变大小的数组或变长数组 Ora ...
- bzoj千题计划187:bzoj1770: [Usaco2009 Nov]lights 燈 (高斯消元解异或方程组+枚举自由元)
http://www.lydsy.com/JudgeOnline/problem.php?id=1770 a[i][j] 表示i对j有影响 高斯消元解异或方程组 然后dfs枚举自由元确定最优解 #in ...
- IntelliJ IDEA 破解 - pycharm
MAC激活方法 下载破解文件 下载地址: https://files.cnblogs.com/files/resn/JetbrainsCrack-2.7-release-str.jar.zip 或者去 ...
- javascript类式继承最优版
直接看实例代码: <!doctype html> <html lang="en"> <head> <meta charset=" ...
- 20155305乔磊2016-2017-2《Java程序设计》第六周学习总结
20155305乔磊2016-2017-2<Java程序设计>第六周学习总结 教材学习内容总结 InputStream与OutputStream 串流设计 1.串流:Java将输入/输出抽 ...