机器学习-基础知识 - Precision, Recall, Sensitivity, Specificity, Accuracy, FNR, FPR, TPR, TNR, F1 Score
本文介绍机器学习中的二分类性能评估指标Precision, Recall, Sensitivity, Specificity, Accuracy, FNR, FPR, TNR, TPR, F1 Score, Balanced F Score基本含义,给出公式和具体算例,并作简要分析。
基础定义
评估指标 | 预测结果 | ||
---|---|---|---|
正样本 | 负样本 | ||
实际 情况 |
正样本 | TP | FN |
负样本 | FP | TN |
具体含义和理解参考 机器学习-基础知识- TP、FN、FP、TN。
示例用例
样本信息
样本编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
真实类别 | P | P | P | P | P | P | P | N | N | N |
预测-1
样本编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
预测类别 | P | P | P | N | N | N | N | N | N | N |
评估指标 | TP | 3 | TN | 3 | FP | 0 | FN | 4 |
预测-2
样本编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
预测类别 | P | P | N | N | P | P | P | P | N | N |
评估指标 | TP | 5 | TN | 2 | FP | 1 | FN | 2 |
预测-3
样本编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|---|---|---|
预测类别 | P | P | P | P | P | P | P | P | P | P |
评估指标 | TP | 7 | TN | 0 | FP | 3 | FN | 0 |
Precision
译为:
精确率
,查准率
。含义:预测所有正样本中判断正确的比例:
Precision=TPTP+FPPrecision=\frac{TP}{TP+FP} Precision=TP+FPTP
预测用例Precision:
Precision预测1=TPTP+FP=33+0=1Precision_{预测1}=\frac{TP}{TP+FP}=\frac{3}{3+0}=1 Precision预测1=TP+FPTP=3+03=1
Precision预测2=TPTP+FP=55+1≈0.83Precision_{预测2}=\frac{TP}{TP+FP}=\frac{5}{5+1}\approx 0.83 Precision预测2=TP+FPTP=5+15≈0.83
Precision预测3=TPTP+FP=77+3=0.7Precision_{预测3}=\frac{TP}{TP+FP}=\frac{7}{7+3}=0.7 Precision预测3=TP+FPTP=7+37=0.7
可以看到预测1判断出的正样本全部正确,因此该预测具有最高的查准率。
可以理解Precision为模型判断为正样本的置信概率,概率越高,该模型判断出的正样本越可信。
FDR(False Discorvery Rate)
译为:
过杀率(工业缺陷)
。
含义:反映了检测器判断为正样本的样本中,负样本所占比例:
FDR=FPTP+FP=1−PrecisionFDR=\frac{FP}{TP+FP}=1-Precision FDR=TP+FPFP=1−Precision
预测用例FA:
FDR预测1=FPTP+FP=03+0=0FDR_{预测1}=\frac{FP}{TP+FP}=\frac{0}{3+0}=0 FDR预测1=TP+FPFP=3+00=0
FDR预测2=FPTP+FP=15+1≈0.17FDR_{预测2}=\frac{FP}{TP+FP}=\frac{1}{5+1}\approx0.17 FDR预测2=TP+FPFP=5+11≈0.17
FDR预测3=FPTP+FP=37+3=0.3FDR_{预测3}=\frac{FP}{TP+FP}=\frac{3}{7+3}=0.3 FDR预测3=TP+FPFP=7+33=0.3
Recall / Sensitivity / TPR(True Positive Rate)
译为:
召回率
,查全率
,敏感性
,真正率
。含义:预测正确的所有正样本占实际所有正样本的比例:
Recall=Sensitivity=TPR=TPTP+FNRecall=Sensitivity=TPR=\frac{TP}{TP+FN} Recall=Sensitivity=TPR=TP+FNTP
预测用例Recall / Sensitivity / TPR:
Recall预测1=TPTP+FN=33+4≈0.43Recall_{预测1}=\frac{TP}{TP+FN}=\frac{3}{3+4}\approx0.43 Recall预测1=TP+FNTP=3+43≈0.43
Recall预测2=TPTP+FN=55+2≈0.71Recall_{预测2}=\frac{TP}{TP+FN}=\frac{5}{5+2}\approx0.71 Recall预测2=TP+FNTP=5+25≈0.71
Recall预测3=TPTP+FN=77+0=1Recall_{预测3}=\frac{TP}{TP+FN}=\frac{7}{7+0}=1 Recall预测3=TP+FNTP=7+07=1
查全率和查准率考量角度不同,不关注模型判断出正样本是否足够准确,关注模型挑对的正样本占全部正样本的比例。
因此最简单判断所有样本为正的策略可以得到100%的查全率,因为这个模型查到的正样本很“全”。
Specificity / TNR (True Negative Rate)
译为:
特异度
,真负率
。
含义:预测正确的所有负样本占实际所有负样本的比例:
Specificity=TNR=TNTN+FPSpecificity=TNR=\frac{TN}{TN+FP} Specificity=TNR=TN+FPTN
预测用例Specificity / TNR :
Specificity预测1=TNTN+FP=33+0=1Specificity_{预测1}=\frac{TN}{TN+FP}=\frac{3}{3+0}=1 Specificity预测1=TN+FPTN=3+03=1
Specificity预测2=TNTN+FP=22+1≈0.67Specificity_{预测2}=\frac{TN}{TN+FP}=\frac{2}{2+1}\approx0.67 Specificity预测2=TN+FPTN=2+12≈0.67
Specificity预测3=TNTN+FP=00+3=0Specificity_{预测3}=\frac{TN}{TN+FP}=\frac{0}{0+3}=0 Specificity预测3=TN+FPTN=0+30=0
与查全率相似,描述的是另一边的情况。
FPR(False Positive Rate)
译为:
假正率
,误检率
,虚警概率
。
含义:预测误判为正样本的负样本数量占实际所有负样本的比例:
FPR=FPFP+TNFPR=\frac{FP}{FP+TN} FPR=FP+TNFP
预测用例FPR:
FPR预测1=FPFP+TN=00+3=0FPR_{预测1}=\frac{FP}{FP+TN}=\frac{0}{0+3}=0 FPR预测1=FP+TNFP=0+30=0
FPR预测2=FPFP+TN=11+2≈0.33FPR_{预测2}=\frac{FP}{FP+TN}=\frac{1}{1+2}\approx0.33 FPR预测2=FP+TNFP=1+21≈0.33
FPR预测3=FPFP+TN=33+0=1FPR_{预测3}=\frac{FP}{FP+TN}=\frac{3}{3+0}=1 FPR预测3=FP+TNFP=3+03=1
FNR(False Negative Rate)
译为:
假负率
,漏警概率
,漏检率
。
含义:预测误判为负样本的正样本数量占实际所有正样本的比例:
FNR=FNFN+TP=1−RecallFNR=\frac{FN}{FN+TP}=1-Recall FNR=FN+TPFN=1−Recall
预测用例FNR:
FNR预测1=FNFN+TP=44+3≈0.57FNR_{预测1}=\frac{FN}{FN+TP}=\frac{4}{4+3}\approx0.57 FNR预测1=FN+TPFN=4+34≈0.57
FNR预测2=FNFN+TP=22+5≈0.29FNR_{预测2}=\frac{FN}{FN+TP}=\frac{2}{2+5}\approx0.29 FNR预测2=FN+TPFN=2+52≈0.29
FNR预测3=FNFN+TP=00+7=0FNR_{预测3}=\frac{FN}{FN+TP}=\frac{0}{0+7}=0 FNR预测3=FN+TPFN=0+70=0
Accuracy
译为:
正确率
含义:所有实验中预测正确的样本数占所有样本数量的比例。
Accuracy=TP+TNTP+FP+TN+FNAccuracy=\frac{TP+TN}{TP+FP+TN+FN} Accuracy=TP+FP+TN+FNTP+TN
预测用例Accuracy:
Accuracy预测1=TP+TNTP+FP+TN+FN=3+33+0+3+4=0.6Accuracy_{预测1}=\frac{TP+TN}{TP+FP+TN+FN}=\frac{3+3}{3+0+3+4}=0.6 Accuracy预测1=TP+FP+TN+FNTP+TN=3+0+3+43+3=0.6
Accuracy预测2=TP+TNTP+FP+TN+FN=5+25+1+2+2=0.7Accuracy_{预测2}=\frac{TP+TN}{TP+FP+TN+FN}=\frac{5+2}{5+1+2+2}=0.7 Accuracy预测2=TP+FP+TN+FNTP+TN=5+1+2+25+2=0.7
Accuracy预测3=TP+TNTP+FP+TN+FN=7+07+3+0+0=0.7Accuracy_{预测3}=\frac{TP+TN}{TP+FP+TN+FN}=\frac{7+0}{7+3+0+0}=0.7 Accuracy预测3=TP+FP+TN+FNTP+TN=7+3+0+07+0=0.7
事实上预测1,2的模型对正、负样本都是有有一定正确分类能力的,预测3模型仅仅使用了“将所有样本都判为正”的策略既收获了最高的正确率,并不是这个指标有问题,而是数据分布本身并不平衡。
样本中正样本居多,预测3的模型成功预测了数据中正样本占大多数,因此策略得到了高正确率的回报。
Error Rate
译为:
错误率
含义:所有实验中预测错误的样本数占所有样本数量的比例。
Error_Rate=FP+FNTP+FP+TN+FN=1−AccuracyError\_Rate=\frac{FP+FN}{TP+FP+TN+FN}=1-Accuracy Error_Rate=TP+FP+TN+FNFP+FN=1−Accuracy
预测用例Accuracy:
Error_Rate预测1=FP+FNTP+FP+TN+FN=0+43+0+3+4=0.4Error\_Rate_{预测1}=\frac{FP+FN}{TP+FP+TN+FN}=\frac{0+4}{3+0+3+4}=0.4 Error_Rate预测1=TP+FP+TN+FNFP+FN=3+0+3+40+4=0.4
Error_Rate预测2=FP+FNTP+FP+TN+FN=1+25+1+2+2=0.3Error\_Rate_{预测2}=\frac{FP+FN}{TP+FP+TN+FN}=\frac{1+2}{5+1+2+2}=0.3 Error_Rate预测2=TP+FP+TN+FNFP+FN=5+1+2+21+2=0.3
Error_Rate预测3=FP+FNTP+FP+TN+FN=3+07+3+0+0=0.3Error\_Rate_{预测3}=\frac{FP+FN}{TP+FP+TN+FN}=\frac{3+0}{7+3+0+0}=0.3 Error_Rate预测3=TP+FP+TN+FNFP+FN=7+3+0+03+0=0.3
F1 Score / Balanced F Score
译为:
F1 分数
/平衡F分数
含义:F1分数兼顾了分类模型的精确率和召回率,定义为模型精确率和召回率的调和平均数。
F1Score=2×Precision×RecallPrecision+RecallF_1 Score=2\times\frac{Precision\times Recall}{Precision+ Recall} F1Score=2×Precision+RecallPrecision×Recall
预测用例F1 Score:
F1Score预测1=2×Precision预测1×Recall预测1Precision预测1+Recall预测1=2×1×371+37=0.6F_1 Score_{预测1}=2\times\frac{Precision_{预测1}\times Recall_{预测1}}{Precision_{预测1}+ Recall_{预测1}}=2\times\frac{1\times \frac{3}{7}}{1+ \frac{3}{7}}= 0.6 F1Score预测1=2×Precision预测1+Recall预测1Precision预测1×Recall预测1=2×1+731×73=0.6
F1Score预测2=2×Precision预测2×Recall预测2Precision预测2+Recall预测2=2×56×5756+57≈0.77F_1 Score_{预测2}=2\times\frac{Precision_{预测2}\times Recall_{预测2}}{Precision_{预测2}+ Recall_{预测2}}=2\times\frac{\frac{5}{6} \times \frac{5}{7}}{\frac{5}{6} + \frac{5}{7}}\approx 0.77 F1Score预测2=2×Precision预测2+Recall预测2Precision预测2×Recall预测2=2×65+7565×75≈0.77
F1Score预测3=2×Precision预测3×Recall预测3Precision预测3+Recall预测3=2×0.7×10.7+1≈0.82F_1 Score_{预测3}=2\times\frac{Precision_{预测3}\times Recall_{预测3}}{Precision_{预测3}+ Recall_{预测3}}=2\times\frac{0.7 \times 1}{0.7 + 1}\approx 0.82 F1Score预测3=2×Precision预测3+Recall预测3Precision预测3×Recall预测3=2×0.7+10.7×1≈0.82
机器学习-基础知识 - Precision, Recall, Sensitivity, Specificity, Accuracy, FNR, FPR, TPR, TNR, F1 Score相关推荐
- 机器学习——基础知识
机器学习--基础知识 机器学习 概述 机器学习(Machine Learning,ML) 是使用计算机来彰显数据背后的真实含义,它为了把无序的数据转换成有用的信息.是一门多领域交叉学科,涉及概率论.统 ...
- 机器学习基础知识之概率论的Matlab描述概率的图像(一)
机器学习基础知识之概率论的Matlab描述概率的图像(一) (由于有很多的分布,而且还有一维分布以及多维分布,因此,我们一篇博文写下来的话内容量太大,文章太长,因此,我们分三次写完所有的基本的一维以及 ...
- 机器学习基础知识之概率论的随机变量及其分布
❤️机器学习基础知识❤️之概率论的❤️随机变量及其分布❤️ 文章目录 ❤️机器学习基础知识❤️之概率论的❤️随机变量及其分布❤️ 一.随机变量以及其分布 1.连续变量 2.离散变量 3.概率密度 二. ...
- 机器学习中的precision, recall, accuracy, F值
假设用机器学习方法解决某个二元分类问题,在分析比较不同模型时常看到这些指标. 四个概念:TP,FP,TN,FN TP(True Positive):在判定为positive的样本中,判断正确的数目. ...
- 一次性掌握机器学习基础知识脉络 | 公开课笔记
来源 | AI科技大本营在线公开课 嘉宾 | 张相於 整理 | suiling 本次公开课AI科技大本营邀请到了阿里巴巴的高级算法专家张相於,他将从数据的概率分布开始介绍机器学习核心概念之间的有机关系 ...
- 什么是 ML.NET?应该如何理解机器学习基础知识?
ML.NET 是一个免费的开源跨平台机器学习框架,可用于生成自定义机器学习解决方案并将其集成到 .NET 应用程序. 借助 ML.NET API,可以使用你已有的 .NET 技能将 AI 结合到应用中 ...
- 独家 | 机器学习基础知识梳理,新手必备!(附链接)
翻译:吴金笛 校对:丁楠雅 本文约4000字,建议阅读16分钟. 本文介绍了机器学习以及几个易与其混淆的术语,并给出了几个机器学习的应用. 介绍 在过去的几年里,人们对机器学习重新产生了兴趣. 这种复 ...
- 机器学习基础知识总结!
机器学习定义 机器学习(Machine Learning)本质上就是让计算机自己在数据中学习规律,并根据所得到的规律对未来数据进行预测. 机器学习包括如聚类.分类.决策树.贝叶斯.神经网络.深度学习( ...
- 5分钟就能轻松入门的机器学习基础知识
机器学习定义 机器学习(Machine Learning)本质上就是让计算机自己在数据中学习规律,并根据所得到的规律对未来数据进行预测. 机器学习包括如聚类.分类.决策树.贝叶斯.神经网络.深度学习( ...
- 一次性掌握机器学习基础知识脉络 | 百万人学AI
我们这次分享的题目叫做<机器学习第二次入门>.我先简单自我介绍一下,我现在在做算法工作,在阿里做高级算法专家,主要关注的领域是在推荐系统.机器学习.金融风控这些方面. 本次分享包括三个内容 ...
最新文章
- python怎么样另存为_python要怎么保存python生成式
- STL源码剖析 仿函数
- java工具栏的工具提示,动态菜单项、状态条提示、工具条提示问题
- WHATWG API——url.parse()的替代方案
- [Python]学习基础篇:面向对象编程
- 一个农民矿工的悲情遗书
- java程序如何执行jar包_java程序如何打包成可执行jar包?
- 深入了解Excel工作表中的控件
- 上井冲刺港交所上市:人均消费金额降幅明显,只在中国经营业务
- 短视频适合做什么赚钱?短视频暴利赚钱商机,疫情期间实体商家必备拓客软件
- 关于 负反馈放大电路,你需要了解这些
- 服务器raid状态rebuild,RAID 1 误操作rebuild,如何恢复数据?
- QQ邮箱获取邮件客户端授权码
- 2011 Heilongjiang collegiate programming contest 【(7+1)/10】 [补完]
- Hdu 1878 欧拉回路[判断是否存在欧拉回路]
- 删除iphone4通讯录里的所有联系人
- 2150: 部落战争
- 《泰囧》的票房是如何成功运营的
- 【队列】C002_逛画展(单调队列)
- 【结构光三维重建标定学习】左超论文之Triangular stereo model
热门文章
- python里的百分号_python中的百分号
- O0 O1 O2 O3优化原理
- 恭喜 李星鹏 成为 Layotto Committer!
- ECU重编程流程(UDS)
- 让人苦笑不得的基带版本未知错误
- 【前端】微信小程序 内容安全图片校验API imgSecCheck 代码示例 图片违规校验
- 同学聚会,进行点菜,点了大盘鸡 水煮鱼 大虾 以及4个凉菜 1箱啤酒 分别录入各个单价,并计算总价,录入总学生数,计算人均多少钱。
- python123货币转换器_Python之美元大写转换器
- 第三方Android应用商店也有安全问题
- 怎么在字符串中加加号python_python加号连接字符串