分类算法常用的评价指标

评价指标(分类指标)知识笔记 评价指标(分类指标) 对学习器的泛化性能进行评估,不仅仅需要有效可行的实验估计方法,还需要有衡量模型泛华能力的评价标准,这就是性能度量。我们通常会根据不同的业务选出适合的业务指标。 评价指标大概有 1、回归的有:RMSE(平方根误差)、MAE(平均绝对误差)、MSE(平均平方误差)、Coefficient of determination (决定系数)。 2、分类的有:精度、召回率、精确率、F值、ROC-AUC 、混淆矩阵、PRC。 3、聚类的有:兰德指数、互信息、轮廓系数。 分类 1.精度(Accurac 阅读详情
AI摘要

本文系统介绍了分类算法常用的评价指标,包括准确率、精确率、召回率、F1值、ROC曲线与AUC等。重点解析了混淆矩阵基础上的各项指标含义及其适用场景,特别强调在类别不平衡时ROC/AUC的优势。通过实例说明如何绘制ROC曲线并计算AUC,帮助理解模型性能评估的核心原理。


该博文内容大部分是参考自Poll的笔记和dzl_ML两位博主的写作内容,再经过自己的学习,理解和整理后形成该文。参考资料的链接在最后部分给出。

1,评价指标列表

在这里插入图片描述

2,基本概念

针对一个二分类问题,即将实例分成正类(positive)或负类(negative),在实际分类中会出现以下四种情况:
(1)若一个实例是正类,并且被预测为正类,即为真正类(True Positive TP)
(2)若一个实例是正类,但是被预测为负类,即为假负类(False Negative FN)
(3)若一个实例是负类,但是被预测为正类,即为假正类(False Positive FP)
(4)若一个实例是负类,并且被预测为负类,即为真负类(True Negative TN)

3,准确率(Accuracy)

  • 定义:对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。
  • 计算公式: A c c u r a c y = T P + T N T P + T N + F P + F N Accuracy = \frac{TP+TN}{TP+TN+FP+FN} Accuracy=TP+TN+FP+FNTP+TN​
  • 缺点:在正负样本不平衡的情况下,这个指标有很大的缺陷。例如:给定一组测试样本共1100个实例,其中1000个是负类,剩余100个是正类。即使分类模型将所有实例均预测为负类,Accuracy也有90%以上,这样就没什么意义了。

4,精确率(Precision)、召回率(Recall)和F1值

精确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量。其中:

  • 精确率是检索出相关文档数与检索出的文档总数的比率(正确分类的正例个数占分类为正例的实例个数的比例),衡量的是检索系统的查准率。 p r e c i s i o n = T P T P + F P precision = \frac{TP}{TP+FP} precision=TP+FPTP​
  • 召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率(正确分类的正例个数占实际正例个数的比例),衡量的是检索系统的查全率。 r e c a l l = T P T P + F N recall = \frac{TP}{TP+FN} recall=TP+FNTP​

为了能够评价不同算法优劣,在Precision和Recall的基础上提出了F1值的概念,来对Precision和Recall进行整体评价。F1的定义如下: F 1 = 精确率 ∗ 召回率 ∗ 2 精确率 + 召回率 F1 = \frac{精确率*召回率*2}{精确率+召回率} F1=精确率+召回率精确率∗召回率∗2​
我们当然希望检索结果(分类结果)的Precision越高越好,同时Recall也越高越好,但事实上这两者在某些情况下有矛盾的。比如极端情况下,我们只搜索出了一个结果,且是准确的(分类后的正确实例只有一个,且该实例原本就是正实例),那么Precision就是100%,但是Recall就会很低;而如果我们把所有结果都返回(所有的结果都被分类为正实例),那么Recall是100%,但是Precision就会很低。因此在不同的场合中需要自己判断希望Precision比较高还是Recall比较高。如果是做实验研究,可以绘制Precision-Recall曲线来帮助分析。

5,综合评价指标F-Measure

Precision和Recall指标有时候会出现矛盾的情况,这样就需要综合考虑他们,最常见的方法就是F-Measure(又称为F-Score)。F-Score是Precision和Recall的加权调和平均: F = ( a 2 + 1 ) P ∗ R a 2 ( P + R ) F=\frac{(a^2+1)P*R}{a^2(P+R)} F=a2(P+R)(a2+1)P∗R​
当参数 a = 1 a=1 a=1时,就是最常见的F1.因此,F1综合了P和R的结果,当F1较高时则能说明试验方法比较有效。

6,ROC曲线和AUC

6.1,TPR、FPR&TNR

在介绍ROC和AUC之前,我们需要明确以下几个概念:

  • 真正类率(true positive rate, TPR),也称为sensitivity,刻画的是被分类器正确分类的正实例占所有正实例的比例。 T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP​
  • 负正类率(false positive rate, FPR),也称为1-specificity,计算的是被分类器错认为正类的负实例占所有负实例的比例。 F P R = F P F P + T N FPR =\frac{FP}{FP+TN} FPR=FP+TNFP​
  • 真负类率(true negative rate, TNR),也称为specificity,刻画的是被分类器正确分类的负实例占所有负实例的比例。 T N R = 1 − F P R = T N F P + T N TNR = 1 - FPR = \frac{TN}{FP+TN} TNR=1−FPR=FP+TNTN​

6.2 ,为什么引入ROC曲线?

  • Motivation1:在一个二分类模型中,对于所得到的连续结果,假设已确定一个阈值,比如说0.6,大于这个值的实例为正类,小于这个值则为负类。如果减小阈值,比如减到0.5,固然能之别出更多的正类,也就是提高了识别出的正例占所有正例的比例,即TPR值变大;但同时也将更多的负实例当作了正实例,即,提高了FPR。为了形象化这一变化,引入了ROC,ROC可以用于评价一个分类器。
  • Motivation2:在类不平衡的情况下,如正样本90个,负样本10个,直接把所有样本分类为正样本,得到识别率为90%。但这显然是没有意义的。单纯根据Precision和Rcall来衡量算法的优劣已经不能表征这种病态问题。

6.3 ,什么是ROC曲线?

ROC曲线:接收者操作特征(receiver operating characteristic),ROC曲线上每个点反映着对同一信号刺激的感受性。

  • 横轴:负正类率(FPR,特异度);
  • 纵轴:真正类率(TPR,灵敏度)。

以逻辑回归分类器(LR)举例,LR给出了针对每个实例为正类的概率,那么通过设定一个阈值如0.6,概率大于等于0.6的为正类,小于0.6的为负类。对应的就可以算出一组(FPR,TPR),在平面中得到对应坐标点。随着阈值的逐渐减小,越来越多的实例被划分为正类,但是这些正类汇中同样也掺杂着真正的负实例,即TPR和FPR会同时增大。阈值最大时,对应坐标点为(0,0),阈值最小时,对应坐标点(1,1)。如下这幅图,图(a)中实线为ROC曲线,线上每个点对应一个阈值。
在这里插入图片描述
理想目标: TPR=1, FPR=0,即图中(0,1)点。故ROC曲线越靠拢(0,1)点,即,越偏离45度对角线越好。

6.4,如何画ROC曲线

假设已经得出一系列被划分为正类的概率,然后按照大小排序,下图是一个示例,图中共有20个测试样本,“Class”一栏表示每个测试样本真正的标签(p表示正样本,n表示负样本),“Score”表示每个测试样本属于正样本的概率。
在这里插入图片描述
接下来,我们从高到低,依次将“Score”值作为阈值threshold,当测试样本属于正样本的概率大于或等于这个threshold时,我们认为它为正样本,否则为负样本。举例来说,对于图中的第4个样本,其“Score”值为0.6,那么样本1,2,3,4都被认为是正样本,因为它们的“Score”值都大于等于0.6,而其他样本则都认为是负样本。每次选取一个不同的threshold,我们就可以得到一组FPR和TPR,即ROC曲线上的一点。这样一来,我们一共得到了20组FPR和TPR的值,将它们画在ROC曲线的结果如下图:
在这里插入图片描述

6.5,什么是AUC曲线?

AUC(Area Under Curve):ROC曲线下的面积,介于0.1和1之间。AUC作为数值可以直观的评价分类器的好坏,值越大越好。
AUC的物理意义:首先AUC值是一个概率值。假设分类器的输出是样本属于正类的Score(置信度),则AUC的物理意义为,任取一对(正、负)样本,正样本的Score大于负样本的Score的概率。

6.6,怎样计算AUC?

  • 方法一:AUC为ROC曲线下的面积,那我们直接极端面积可得。面积为一个个小的梯形面积之和。计算的精度与阈值的精度有关。

  • 方法二:根据AUC的物理意义,我们计算正样本Score大于负样本Score的概率。取 N ∗ M ( N 为正样本数, M 为负样本数 ) N*M(N为正样本数,M为负样本数) N∗M(N为正样本数,M为负样本数)个二元组,比较Score,最后得到AUC。时间复杂度为 O ( N ∗ M ) O(N*M) O(N∗M)。
    具体的计算方法详见AUC的计算方法

  • 方法三:我们首先把所有样本按照score排序(从小到大或从大到小),依次用rank表示他们,如,按从大到小排序的时候,最大score的样本序号值 r a n k = n rank=n rank=n,其中 n = M + N n=M+N n=M+N,其次是 n − 1 n-1 n−1。然后利用下面的公式计算AUC,
    A U C = ∑ 所有正样本 r a n k − M ∗ ( M − 1 ) 2 M ∗ N AUC = \frac{\sum_{所有正样本}rank-\frac{M*(M-1)}{2}}{M*N} AUC=M∗N∑所有正样本​rank−2M∗(M−1)​​
    其中, ∑ 所有正样本 r a n k \sum_{所有正样本}rank ∑所有正样本​rank 表示所有正样本的序号值 r a n k rank rank之和;时间复杂度是 O ( M + N ) O(M+N) O(M+N)。
    具体的计算案例详见AUC的计算方法

7,为什么使用ROC和AUC评价分类器呢?

既然已经这么多标准,为什么还要使用ROC和AUC呢?因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变换的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现样本类不平衡,即正负样本比例差距较大,而且测试数据中的正负样本也可能随着时间变化。下图是ROC曲线和Presision-Recall曲线的对比:
在这里插入图片描述
在上图中,(a)和©为Roc曲线,(b)和(d)为Precision-Recall曲线。
(a)和(b)展示的是分类其在原始测试集(正负样本分布平衡)的结果,©(d)是将测试集中负样本的数量增加到原来的10倍后,分类器的结果,可以明显的看出,ROC曲线基本保持原貌,而Precision-Recall曲线变化较大。

8,参考资料

https://www.cnblogs.com/maybe2030/p/5375175.html#_label3
https://www.cnblogs.com/dlml/p/4403482.html
https://blog.youkuaiyun.com/qq_22238533/article/details/78666436

9,欢迎关注公众号

最近在写公众号,感兴趣的欢迎扫码关注,公众号名称:挑灯看剑王知事
在这里插入图片描述

分类评价指标Accuracy/Recall/Precision/F-score/FalseAlarm 分类评价指标Accuracy/Recall/Precision/F-score/FalseAlarm一、前言二、评价指标介绍1. Accuracy(准确率)2. Recall(召回率、查全率)新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导 阅读详情

相关推荐

分类问题的评价指标(Precision、Recall、Accuracy、F1-Score、Micro-F1、Macro-F1)以及混淆矩阵、ROC曲线

文章目录一、四个基本概念 TP、FP、TN、FN二、精确率(precision)、召回率(recall)、准确率(accuracy)三、F1-Score(F1分数)四、宏平均 Macro-F1 、微平均 Micro-F1、加权平均 Weighted avg五、混淆矩阵(Confusion Matrix)六、ROC 曲线和 AUC(Area Under the Curve,曲线下面积) 一、四个基本概念 TP、FP、TN、FN 真阳性:预测为正,实际为正。把正样本成功预测为正。 TP——True Posit

少年龙龙的博客 1万+

分类任务评价指标

评价指标 在分类的过程中我们需要通过一些指标来对我们的模型进行评价,下面的一些是经常用来评价模型好坏的一些指数:准确率、精确率、召回率、F1 Score、P-R曲线、ROC、AUC。 准确率、精确率、召回率、F1 Score 1. 准确率 Accuracy = (TP + TN) / (TP + FN + FP +TN) 这个指标主要是用来指示预测正确的样本数占总样本数的个数 2. 精确率(查准率) Precision = TP / (TP+FP) 精确率反应的是预测为正的样本里真的为正的样本所占的比例

qq_37701945的博客 5561

常用的Python分类算法评价指标

首先,我们需要准备一下数据。这个数据集包含了三种不同种类的鸢尾花(山鸢尾、变色鸢尾和维吉尼亚鸢尾)的测量数据,每种鸢尾花有 50 个示例,共 150 个示例。我们将使用前两个特征,即花萼长度和花萼宽度,来建立一个二元分类器。在机器学习中,分类算法是非常常见且重要的一种算法。分类算法的目标是预测数据点所属的类别。在分类算法中,评价指标是很重要的一个指标,这些指标可以帮助我们评估模型的性能。本文将介绍分类算法中常用的几个评价指标,并给出相应的 Python 代码实现。常用的Python分类算法评价指标。

与其临渊羡鱼,不如退而结网 299

【机器学习】分类指标 完全解读

【机器学习】评估指标

闻韶 4514

SVPWM原理与MCU/FPGA实现:从数学推导到工程实战

空间矢量调制(SVPWM)是实现高性能电机驱动控制的核心算法之一,其通过六个基本电压矢量与零矢量的伏秒平衡,在一个PWM周期内合成任意方向的旋转电压圆,相比传统SPWM可提升约15%的直流电压利用率。该技术不仅涉及扇区判断、作用时间计算、过调制限幅等数学原理,还在MCU与FPGA两种硬件平台上有不同的工程实现路径,包括中心对齐PWM配置、死区插入、定点数流水线设计等。在电动工具、无人机、机器人及车载执行器等电池供电场景中,SVPWM直接决定续航与扭矩表现。本文从数学原理出发,详细拆解MCU和FPGA实现细节

weixin_34265814的博客 300

AutoDock Vina 对接计算(大批量)

AutoDock Vina是一种用于计算生物分子之间相互作用的计算工具,主要用于蛋白质和小分子(通常是潜在药物分子)之间的对接研究。它可以用于虚拟筛选、药物设计和生物分子结合位点的预测等多个应用领域。

MurphyStar的博客 1万+

机器学习分类算法常用评价指标

目录 1. 准确率,召回率,精确率,F1-score,Fβ,ROC曲线,AUC值 2. 宏平均(Macro-averaging)和微平均(Micro-averaging) 3. Python3 sklearn实现分类评价指标 1. 准确率,召回率,精确率,F1-score,Fβ,ROC曲线,AUC值 为了评价模型以及在不同研究者之间进行性能比较,需要统一的评价标准。...

分享实践与思考 1万+

YOLOv8中Bottleneck模块详解

Bottleneck 模块在YOLOv8中的作用是进行特征提取和增强,是网络中的核心构建模块之一。它的主要功能是通过卷积操作来处理输入特征图,并在适当情况下应用残差连接,使得信息能够有效地通过网络层进行传播

zzzyyy8的博客 8059

【初中生讲机器学习】6. 分类算法中常用的模型评价指标有哪些?here!

【初中生讲机器学习】分类算法的评价指标记不住?搞不懂?一篇带你扫清!

weixin_46836893的博客 1954

当OTN网络遭遇LOS告警:5个运维老手才知道的故障定位技巧(含CA动作对照表)

本文深入解析OTN网络中LOS告警的实战定位技巧,涵盖光功率深度诊断、模块差异分析及核心的CA动作机制。通过逆向追踪告警流与对照速查表,帮助运维人员快速锁定故障段落,区分硬软故障,并掌握系统健康度评估方法,从而提升排障效率与网络稳定性。

weixin_29266007的博客 550

Power Switch与Tap Cell关系

tap cell可以选用一般类型的tap cell,无须secondary pg pin,因为此时switch cell的阱电位接到输入power net上了,switch cell可以正常上电,也可以给core内正常供电,tap cell的阱电位接switch cell输出的power,需要注意的是此时switch cell与core内其他cell的阱电位是不同的,所以为了避免drc问题,需要在switch上盖hard blockage或者keepout margin。2)自带阱偏置的switch。

m0_61544122的博客 2334

评价指标-分类算法中常用的评价指标

转自:https://www.cnblogs.com/CheeseZH/p/5241010.html 对于分类算法,常用的评价指标有: (1)Precision (2)Recall (3)F-score (4)Accuracy (5)ROC (6)AUC ps:不建议翻译成中文,尤其是Precision和Accuracy,容易引起歧义。 1.混淆矩阵 混淆矩阵是监督学习中的一种...

持续关注并分享目标检测、数据生成、视频驱动、跨模态、分割、关键点等领域前沿技术 2010

风控系统中的架构设计原型图分析与实践探讨

本文探讨了风控系统的架构设计原型图在风险管理中的重要性。通过分析多个案例,文章展示了如何利用架构设计原型图提升团队沟通效率,优化系统结构与功能。强调了良好的架构设计不仅有助于系统的可扩展性和可维护性,还能增强对风险的应对能力。最后,呼吁金融行业持续关注技术进步与市场需求变化,以不断提升风控系统的设计与实施效果。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 6万+

分类算法常用评价指标

原文链接:https://www.cnblogs.com/guoyaohua/p/classification-metrics.html 评价指标是针对将相同的数据,输入不同的算法模型,或者输入不同参数的同一种算法模型,而给出这个算法或者参数好坏的定量指标。 在模型评估过程中,往往需要使用多种不同的指标进行评估,在诸多的评价指标中,大部分指标只能片面的反应模型的一部分性能,如果不能合理的运用评估指标,不仅不能发现模型本身的问题,而且会得出错误的结论。 最近恰好在做文本分类的工作,所以把机器学习分类

qq_43703185的博客 519

YOLOv11涨点改进 | 全网独家下采样改进、细节涨点篇 | TGRS 2025 | 引入PWD参数化小波下采样模块,减少下采样过程中小目标的关键细节丢失,即插即用,助力高效涨点发论文

本文提出了一种改进YOLOv11小目标检测性能的参数化小波下采样(PWD)模块。PWD通过小波变换保留目标细节信息,增强频率域特征表达,有效解决了传统下采样导致的小目标信息丢失问题。该模块采用双分支设计,结合自适应频率选择和空间补偿机制,在红外图像和低光场景中表现出更强的抗干扰能力。实验表明,PWD能显著提升YOLOv11对弱纹理和低对比度目标的检测精度,同时保持计算效率。文章详细介绍了PWD的结构原理、实现代码及在YOLOv11中的集成方法,为小目标检测提供了有效的改进方案。

Ai缝合怪、助力小伙伴高效发论文 232

Unity与iOS原生交互实战指南

C#(DllImport) → C 接口(extern "C") → Objective‑C / SwiftObjective‑C → UnitySendMessage → C#(GameObject + public 方法)在写.mm文件;在里面写;C# 用声明;调用它,参数就是 string / 数值等;在.mm里做你想做的 iOS 原生操作。在 Unity 里准备一个常驻 GameObject,比如;上面挂一个脚本,写;在 iOS 插件中用;

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1357

分类算法中常用的评价指标

本文来自网络,属于对各评价指标的总结,如果看完之后,还不是很理解,可以针对每个评价指标再单独搜索一些学习资料。加油~! 对于分类算法,常用的评价指标有: (1)Precision (2)Recall (3)F-score (4)Accuracy (5)ROC (6)AUC ps:不建议翻译成中文,尤其是Precision和Accuracy,容易引起歧义。...

weixin_33802505的博客 229

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

常用分类算法的优缺点和相关评价指标

  算法 优点 缺点 Bayes 贝叶斯分类法 1)所需估计的参数少,对于缺失数据不敏感。2)有着坚实的数学基础,以及稳定的分类效率。 1)假设属性之间相互独立,这往往并不成立。(喜欢吃番茄、鸡蛋,却不喜欢吃番茄炒蛋)。2)需要知道先验概率。3)分类决策存在错误率。 Decision Tree决策树 1)不需要任何领域知识或参数假设。2)适合高维数据。3)简...

hellosc2的博客 3783

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【机器学习】常用评价指标(分类算法)

1、参考链接:https://www.cnblogs.com/guoyaohua/p/classification-metrics.htmlhttps://www.cnblogs.com/guoyaohua/p/classification-metrics.htmlhttps://hg95.github.io/sklearn-notes/Chapter2/https://hg95.github.io/sklearn-notes/Chapter2/2、官方文档:https://scikit-learn.org

c___ceeee的博客 2490

【机器学习】一文读懂分类算法常用评价指标

评价指标是针对将相同的数据,输入不同的算法模型,或者输入不同参数的同一种算法模型,而给出这个算法或者参数好坏的定量指标。 在模型评估过程中,往往需要使用多种不同的指标进行评估,在诸多的评价指标中,大部分指标只能片面的反应模型的一部分性能,如果不能合理的运用评估指标,不仅不能发现模型本身的问题,而且会得出错误的结论。 最近恰好在做文本分类的工作,所以把机器学习分类任务的评价指标又过了一遍。...

郭耀华's Blog | 人工智能领域技术博客 919
上一篇: 决策树常见的面试点整理
下一篇: LR和SVM的联系和区别
Manduner_TJU
博客等级 码龄9年 157粉丝 131原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值