机器学习中的二分类问题评价指标之精确率、召回率、F1值通俗理解

article/2025/11/7 3:10:21

        引言:对于分类问题,我们在评估一个模型的好坏时,通常想到的是把该模型在测试集上分类结果正确的样本数量比上测试集的样本数量的比值结果,即准确率(精确率)作为评价准则。但除此之外,还有精确率和召回率作为二分类问题的评价指标。那么什么时精确率和召回率呢,之前了解过这个概念用到时总是会忘,现在抽出时间对此进行总结。

        在了解这两个评价指标之前,我们必须要对模型预测出的结果类型进行定义,这里是对于二分类问题来讲的,在二分类问题中,我们把类别定义为正类(Positive)和负类(Negative)。需要记住四个结果类型,分别为TP,FP,TN,FN;

        TP:TP是True Positive,即预测正确的正类样本数,也就是模型在进行预测的时候,把正类预测为了正类,也就是把正类预测正确了。

        TN:TN是True Negative,即预测正确的负类样本数,也就是模型在进行预测的时候,把负类预测为了负类,也就是把负类预测正确了。

        FP:FP是False Positive,即预测错误的正类样本数,也就是模型在进行预测的时候,把负类预测为了正类,也就是把负类预测错误了,本来模型该把这个负类预测为负类的,结果却把这个负类预测为了正类。

        FN:FN是False Negative,即预测错误的负类样本数,也就是模型在进行预测的时候,把正类预测为了负类,也就是把正类预测错误了,本来模型该把这个正类预测为正类的,结果却把这个正类预测为了负类。

        无外乎,模型给出的预测结果只能是上面四种中的一种,当模型把正类样本预测为正类(TP),把负类样本预测为负类(TN),是模型预测正确的表现;当模型把正类样本预测为负类(FN),把负类样本预测为正类(FP),是模型预测错误的表现。

        有了以上概念,我们来分析一下精确率和召回率。

精确率:

        官方给出的公式为: P = \frac{TP}{TP+FP}

        分析:该公式的意思是该模型将正类预测为正类的样本数量与该模型将正类和负类均预测为正类的样本数量的比值。看起来有点绕,我们分步分析:

        分子TP是模型在预测时将正类预测为了正类的样本数;分母是TP+FP,FP是模型在预测时,将负类预测为了正类的样本数,即FP是假的正类样本数,我们想一想,如果一个模型预测能力很强,那该模型会极大可能的把正类预测为正类,负类预测为负类,而极小可能的把负类预测为正类,也就是FP的样本数应该越小越好,而FP越小,就会导致P的值越接近于1。是不是很神奇,人类太聪明了。

召回率:

        官方给出的公式为:R=\frac{TP}{TP+FN}

        分析:该公式的意思是该模型将正类预测为正类的样本数量与该模型将正类预测为正类和负类的样本数量的比值。我们依然分步分析:

        分子TP和精确率中的TP是一个含义;分母是TP+FN,FN是模型在预测时,将正类样本预测为了负类样本的样本数,即FN指的是模型应该把正类样本预测为为正类,但是却把正类样本预测为了负类样本的数量;那我们想一想,如果一个模型的预测能力很强,那该模型应该极大可能的把正类预测为正类,而很小可能把正类预测为负类,也就是FN越小越好,FN越小,表示该模型有更大的把握把正类预测为正类,那么FN越小,就会导致R的值越接近于1。

        总结,在分析完精确率和召回率的公式之后,我们知道了P和R的值当然是越接近于1,表明模型的预测能力越好。上面我说到的预测能力很强是用来表达模型的预测能力很优秀。

问题:那在评价模型的时候,我是应该以P为评价指标基准,还是以R为评价指标基准呢?

答:这里就引入了F1值,它是精确率P和召回率R的调和均值。

F1值:

        公式为:\frac{2}{F_{1}} = \frac{1}{P}+\frac{1}{R},对该公式进行通分,将F1放到一边,并将P、R带入,求出公式为:

                                         F_{1} = \frac{2TP}{2TP+FP+FN}

        分析:对于该公式,分子TP是该模型将正类预测为正类的样本数量,分母中的FP是该模型将负类预测为了正类,FN是该模型将正类预测为了负类;相应的,如果模型的预测能力很强,那么就应该很少可能的将负类预测为了正类,即FP应该越小越好,而根据精确率的公式,FP越小,P就越大;并且模型应该很少可能的将正类预测为了负类,即FN应该越小越好,而根据召回率的公式,FN越小,R就越大;而根据F1的公式来看,FP和FN越小,则F1越接近于1。

        得出结论:精确率P和召回率R的值越大,F1的值也会越大,这里的越大指的是越接近于1,P、R、F1的值最大也就是1了。

        总结不易,希望给个赞支持一下,转载请注明链接哈,如果有总结不到位或表达不恰当之处,欢迎批评指正。


http://chatgpt.dhexx.cn/article/kbG1Pg1u.shtml

相关文章

【转】一些因素对F1值的影响

截自:https://blog.csdn.net/qq_27590277/article/details/88374695 https://blog.csdn.net/qq_27590277/article/details/88367082 一些因素对F1值的影响 如果还没了解F1值的话,这里有我之前写的通俗易懂的文章 详谈P(查准率),R(查全率)&…

keras计算precision、recall、F1值

近期写课程作业,需要用Keras搭建网络层,跑实验时需要计算precision,recall和F1值,在前几年,Keras没有更新时,我用的代码是直接取训练期间的预测标签,然后和真实标签之间计算求解,代码…

F1值(F-Measure)、准确率(Precision)、召回率(Recall) 菜鸡版理解

前置知识: T(True): 正确的 F (False) : 错误的 P (Positive) : 正向的/积极的 N (Negetive): 负向的/消极的 则: TP:正确的 预测了 正向的 FN:错误的 预测了 负向的 FP&#xff1a…

准确率、精确率、召回率、F1值学习笔记

一、TN、TP、TN、FP、FN概念 TP与TN都是分对了情况,TP是正类,TN是负类。则推断出,FP是错误的正类,FN是错误的负类。 举例:我们需要从一个班级中的人中寻找所有女生,如果把这个任务当成一个分类器的话,那么女生就是我们…

为何选用F1值(调和平均数)衡量P与R?

二分类问题的性能度量为何选用 F 1 F_1 F1​ 值? 已知混淆矩阵 prediction positiveprediction negativeactuality positiveTrue Positive(TP)False Negative(FN)actuality negativeFalse Positive(FP)True Negative(TN) 其中:Precise(精…

精确度/召回率/F1值/Micro-F1和Macro-F1的理解

如下图所示,假设有若干张图片,其中12张是狗的图片其余是猫的图片.现在利用程序去识别狗的图片,结果在识别出的8张图片中有5张是狗的图片,3张是猫的图片(属于误报). 图中,…

混淆矩阵、精确率、召回率、F1值、ROC曲线、AUC曲线

假设一个分类器A,分类器A的作用是告诉你一张图片是不是汉堡,我们如果想知道这个分类器的效果到底好不好,如何做? 最简单的方法就是将手机里所有的图片都扔给分类器A看,让分类器告诉我们哪些是汉堡 我们无法直观的看到…

python实现计算精度、召回率和F1值

python实现计算精度、召回率和F1值 摘要:在深度学习的分类任务中,对模型的评估或测试时需要计算其在验证集或测试集上的预测精度(prediction/accuracy)、召回率(recall)和F1值。本文首先简要介绍如何计算精…

模型评价指标—F1值

最近空余时间在参加数字中国创新大赛,比赛规则是根据模型的F1值对参赛者进行排名。为了更深刻地理解这个指标,我最近对它做了一些梳理,现在把它分享给更多有需要的人图片。最近在参赛时也发现了一个问题,就是算法在训练集上完全拟…

精确率、召回率、F1 值、ROC、AUC等分类模型评价指标含义与作用详解

文章目录 摘要一、精确率、召回率、F函数、准确率和错误率1、定义2、区别与应用 二、ROC曲线、P-R曲线、AUC1、P-R曲线2、ROC曲线3、AUC 摘要 在涉及机器学习领域的分类问题时(尤其是衡量推荐系统性能时),经常会遇到诸如准确率、召回率、ROC…

机器学习F1值的概念

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、什么是F1-score二、计算过程1.首先定义以下几个概念:2.通过第一步的统计值计算每个类别下的precision和recall3. 通过第二步计算结果计算每个类别下…

【数学建模】分类问题的几种常见指标(一)——准确率、召回率、F1值

分类问题的几种常见指标(一)——错误率、精度、准确率、召回率、F1值 前言1 错误率与精度2 准确率与召回率2.1 混淆矩阵2.2 准确率(Precision)2.3 召回率(Recall) 3 F1值(F1-score)4…

准确率、精确率、召回率、F1值、ROC/AUC整理笔记

文章目录 前言 一、TP、TN、FP、FN概念二、准确率、精确率(精准率)、召回率、F1值1.准确率(Accuracy)2.精确率(Precision)查准率3.召回率(Recall)查全率4.F1值(H-mean值&…

准确率、精准率、召回率和F1值详解

专业术语的中英文对照表 英文名准确率Accuracy精准率Precise召回率RecallF1值F1 measure Precise和Recall是广泛应用在信息检索和统计学分类领域的两个度量值,用来评价结果的质量;F1 measure是综合Precise和Recall两个指标的评估指标,用于综…

matlab color选取(颜色对照表)

只看前面部分,后面的颜色不用看 参考链接:https://wenku.baidu.com/view/111e6c47773231126edb6f1aff00bed5b8f3734e.html

Matlab RGB 颜色对照表(0-1之间取值)

需要说明的是我并非此表的制作者,原链接如上,我也已将原作者信息一并截入图中,此举只是为了扩大此表传播度,所以连标题都没改。此前想找个如此全的对照表找了好久,是同门师妹发给我该链接才知道这张表,感谢…

matlab画图RGB调色

1.使用matlab画图时,怎样才能调出顺眼的颜色呢?反正我之前使用红、绿、蓝三种颜色画图时,真的辣眼睛。下面这图是我根据一篇论文上的图像调的颜色: 我也知道这并不好看,但是可以给各位提个醒、提个方向。 代码也奉上&…

让颜色对应数值,matlab colormap

#问 如何让自己画出的数值对应不同的颜色呢?换话句话说,如何用不同的颜色表示不同的数值呢? 就是让数值的范围对应颜色的范围。 matlab colormap ##标准色 hsv 色彩饱和值(以红色开始束) hot 从黑到红到黄到白 cool …

【Matlab】到底怎么自定义colorbar/colormap的颜色?

1.Introduction 最近在搜混淆矩阵的时候,发现别人做的图研究就是好看。于是乎开始探寻怎么改变图片colorbar的颜色,搜到后面发现其实是改变colormap的颜色,colorbar只是显示而已。 中间也走过不少坑,一把辛酸泪呀~ 2.Materials …