机器学习分类模型中的评价指标介绍:准确率、精确率、召回率、ROC曲线

机器学习中准确率、精确率、召回率、误报率、漏报率、F1-Score、AP&mAP、AUC、MAE、MAPE、MSE、RMSE、R-Squared等指标的定义和说明 在机器学习和深度学习用于异常检测(Anomaly detection)、电子商务(E-commerce)、信息检索(Information retrieval, IR)等领域任务(Task)中,有很多的指标来判断机器学习和深度学习效果的好坏。这些指标有相互权衡的,有相互背向的,所以往往需要根据实际的任务和场景来选择衡量指标。本篇博文对这些指标进行一个梳理。 阅读详情

文章来源:https://blog.youkuaiyun.com/wf592523813/article/details/95202448


1 二分类评价指标

准确率,精确率,召回率,F1-Score, AUC, ROC, P-R曲线

1.1 准确率(Accuracy)

评价分类问题的性能指标一般是分类准确率,即对于给定的数据,分类正确的样本数占总样本数的比例。
注意:准确率这一指标在Unbalanced数据集上的表现很差,因为如果我们的正负样本数目差别很大,比如正样本100个,负样本9900个,那么直接把所有的样本都预测为负, 准确率为99%,但是此分类模型实际性能是非常差的,因为它把所有正样本都分错了。

1.2 精确率(Precision)

对于二分类问题常用的评价指标是精确率和召回率。通常以关注的类为正类,其他类为负类,分类器在数据集上的预测或者正确或者不正确,我们有4中情况:

  • TP:True Positive, 把正类预测为正类;
  • FP:False Positive,把负类预测为正类;
  • TN:True Negative, 把负类预测为负类;
  • FN:False Negative,把正类预测为负类

在混淆矩阵中表示如下:
在这里插入图片描述
精确率是指在预测为正类的样本中真正类所占的比例,直观上来解释精确率就是说
我现在有了这么的预测为正的样本,那么这些样本中有多少是真的为正呢?

  P = TP/(TP+FP)

1.3 查全率(召回率 Recall)

召回率是指在所有的正类中被预测为正类的比例,直观上来说召回率表示我现在预测为正的这些值中,占了所有的为正的样本的多大比例呢?

R = TP/(TP+FN)

不同的分类问题,对精确率和召回率的要求也不同。
例如:假币预测,就需要很高的精确率,我需要你给我的预测数据具有很高的准确性。
肿瘤预测就需要很高的召回率。“宁可错杀三千,不可放过一个”。

1.4 F1-Score

F1-Score: 精确率和召回率的调和平均。 即:

2/F1 = 1/P + 1/R
F1=2P*R/(P+R)

因为Precision和Recall是一对相互矛盾的量,当P高时,R往往相对较低,当R高时, P往往相对较低,所以为了更好的评价分类器的性能,一般使用F1-Score作为评价标准来衡量分类器的综合性能。

1.5 ROC曲线和AUC

TPR:True Positive Rate,真正率, TPR代表能将正例分对的概率

TPR=TP/TP+FN

FPR: False Positive Rate, 假正率, FPR代表将负例错分为正例的概率

FPR=FP/FP+TN

使用FPR作为横坐标,TPR作为纵坐标得到ROC曲线如下
在这里插入图片描述
ROC曲线中的四个点和一条线

  • (0,1): FN = 0, FP = 0, 表示所有样本都正确分类,这是一个完美的分类器;

  • (1,0):TN = 0, TP = 0, 表示所有样本都分类错误,这是一个最糟糕的分类器;

  • (0, 0): FP = 0, TP = 0, 表示所有样本都分类为负

  • (1,1): TN = 0, FN = 0, 表示左右样本都分类为正

经过以上分析,ROC曲线越靠近左上角,该分类器的性能越好。
上图虚线与 y = x,该对角线实际上表示一个随机猜测的分类器的结果。

ROC曲线画法:在二分类问题中,我们最终得到的数据是对每一个样本估计其为正的概率值(Score),我们根据每个样本为正的概率大小从大到小排序,然后按照概率从高到低,一次将“Score”值作为阈值threshold,当测试样本的概率大于或等于这个threshold时,我们认为它为正样本,否则为负样本。每次选取一个不同的threshold,就可以得到一组FPR和TPR,即ROC曲线上的一点。

AUC:(Area Under roc CurveROC)曲线下的面积,引入AUC的原因是量化评价指标。
AUC的面积越大,分类效果越好。AUC小于1,另一方面,正常的分类器你应该比随机猜测效果要好吧?所以 0.5 <= AUC <= 1

AUC表征了分类器把正样本排在负样本前边的能力。这里的意思其实是指数据按照其为正的概率从大到小排序之后,正样本排在负样本前边的能力。AUC越大,就有越多的正样本排在负样本前边。极端来看,如果ROC的(0, 1)点,所有的正样本都排在负样本的前边。

1.6 ROC 与 P, R对比

**ROC曲线特性:当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。**在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。)
下图是ROC曲线和Precision-Recall曲线的对比:
在这里插入图片描述
a,c为ROC曲线,b,d为P-R曲线;
a,b 为在原始测试集(balanced)上的结果,c,d为把原始数据集的负样本增加10倍后的结果。很明显,ROC曲线基本保持不变,P-R曲线变化较大。

为什么取AUC较好?因为一个二分类问题,如果你取P或R的话,那么你的评价结果和你阈值的选取关系很大,但是我这个一个分类器定了,我希望评价指标是和你取得阈值无关的,也就是需要做与阈值无关的处理。所以AUC较P-R好

from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score
acc = accuracy_score(y_true, y_pred)

2 多分类评价指标

对于二分类问题,我们有很多评价指标,因为只有正类和负类两种,往往我们只关心正类的准确率和召回率。但是对于多分类问题,有些二分类的评价标准就不怎么适用了。最近实习涉及到多分类,在模型评价指标选取费了不少时间,对于常用的多分类评价指标进行整理以便日后使用。一种方法是将多分类问题转化为多个2vs2问题进行讨论,步骤比较复杂。还有一种是直接定义的多分类指标。

2.1 多分类转化为2vs2问题来评价

准确率:与二分类相同,预测正确的样本占总样本的比例。
精确率: ‘macro’, 对于每个标签,分别计算Precision,然后取不加权平均
查全率: ‘macro’,对于每个标签,分别计算Recall,然后取不加权平均
F1-Score:‘macro’, 对于每个标签,分别计算发,然后取不加权平均
‘micro’, 将n个二分类评价的TP,FP,FN对应相加,计算P和R,然后求得F1
一般macro-f1和micro-f1都高的分类器性能好

2.2 直接定义的多分类指标

2.2.1Kappa系数

kappa系数是用在统计学中评估一致性的一种方法,取值范围是[-1,1],实际应用中,一般是[0,1],与ROC曲线中一般不会出现下凸形曲线的原理类似。这个系数的值越高,则代表模型实现的分类准确度越高。
在这里插入图片描述

  • 0表示总体分类精度
  • Pe表示SUM(第i类真实样本数*第i类预测出来的样本数)/样本总数平方
    在这里插入图片描述
from sklearn.metrics import cohen_kappa_score
kappa = cohen_kappa_score(y_true,y_pred,label=None) #(label除非是你想计算其中的分类子集的kappa系数,否则不需要设置)

2.2.2. 海明距离

海明距离也适用于多分类的问题,简单来说就是衡量预测标签与真实标签之间的距离,取值在0~1之间。距离为0说明预测结果与真实结果完全相同,距离为1就说明模型与我们想要的结果完全就是背道而驰。

from sklearn.metrics import hamming_loss
ham_distance = hamming_loss(y_true,y_pred)

2.2.3.杰卡德相似系数

它与海明距离的不同之处在于分母。当预测结果与实际情况完全相符时,系数为1;当预测结果与实际情况完全不符时,系数为0;当预测结果是实际情况的真子集或真超集时,距离介于0到1之间。
我们可以通过对所有样本的预测情况求平均得到算法在测试集上的总体表现情况。

from sklearn.metrics import jaccard_similarity_score
jaccrd_score = jaccrd_similarity_score(y_true,y_pred,normalize = default)

#normalize默认为true,这是计算的是多个类别的相似系数的平均值,normalize = false时分别计算各个类别的相似系数

2.2.4.铰链损失

铰链损失(Hinge loss)一般用来使“边缘最大化”(maximal margin)。损失取值在0~1之间,当取值为0,表示多分类模型分类完全准确,取值为1表明完全不起作用。

from sklearn.metrics import hinge_loss
hinger = hinger_loss(y_true,y_pred)

 

 

参考文档:https://www.cnblogs.com/futurehau/p/6109772.html
https://www.jianshu.com/p/573ba75aec94

模型评估(一)—— 准确率(Accuracy),精确率(Precision),召回率(Recall),F1-Score的总结 True Positive(TP):实际为正,预测也为正 True Negative(TN):实际为负,预测也为负 False Positive(FP):实际为负,预测为正 False Negative(FN):实际为正,预测为负 在二分类问题中可以用以下的Confusion Matrix来表示: 准确率(Accuracy),是预测正确的样本占全部样本的比例。 精确率(Precision),也叫... 阅读详情

相关推荐

模型评估方法以及评估指标——准确率、精确率、召回率以及P-R曲线和ROC曲线介绍

模型评估方法以及评估指标介绍前言一、准确率、精确率、召回率1.1 准确率(Accuracy)1.2 精确率(Precision)1.3 召回率(Recall)二、P-R曲线和ROC曲线2.1 P-R曲线2.2 ROC曲线三、模型评估验证方法3.1 Holdout检验3.2 交叉检验3.3 自助法 前言 ”没有测量,就没有科学“ 在机器学习中,只有选择与问题相匹配的评估方法,才能快速地发现模型选择或训练过程中出现的问题,迭代地对模型进行优化。模型评估主要是离线评估和在线评估两个阶段,本文整理了常见的模

qq_42600675的博客 1万+

机器学习:分类模型评估指标(准确率、精准率、召回率、F1、ROC曲线、AUC曲线)

机器学习模型需要有量化的评估指标来评估哪些模型的效果更好。 本文将用通俗易懂的方式讲解分类问题的混淆矩阵和各种评估指标的计算公式。将要给大家介绍的评估指标有:准确率、精准率、召回率、F1、ROC曲线、AUC曲线。 机器学习评估指标大全 所有事情都需要评估好坏,尤其是量化的评估指标。 高考成绩用来评估学生的学习能力 杠铃的重量用来评估肌肉的力量 跑分用来评估手机的综合性能 机器学习有很多评估的指标。有了这些指标我们就横向的比较哪些模型的表现更好。我们先从整体上来看看主流的评估指标都有哪些:

Vermont_的博客 5万+

【深度学习】模型评价指标

一、分类任务 分类任务一般有二分类、多分类和多标签分类。 多分类: 表示分类任务中有多个类别,但是对于每个样本有且仅有一个标签,例如一张动物图片,它只可能是猫,狗,虎等中的一种标签(二分类特指分类任务中只有两个类别) 多标签: 一个样本可以有多个标签。例如文本分类中,一个文本可以是宗教相关,也可以是新闻相关,所以它就可以有两个标签。 常见的评价指标有:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1 score、ROC曲线(Receiver Operating

chen1234520nnn的博客 2万+

二类分类问题中的精确率(precision)与召回率(recall)

   评价分类器的一般指标是分类准确率(accuracy),其定义是:对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。但对于二类分类问题,尤其是当我们对二类分类中的占少数的一方感兴趣时,准确率基本就会失去其作为评判标准的意义。    举例来说,当我们做一个癌症检测的分类器时,假设有100个样本,其中99个为正类(无癌症),一个反类(有癌症)。假设我们用一个判定结果永远是正面的模型来进...

lvch0501的博客 1万+

个人总结:机器学习分类模型评估指标 准确率、精确率、召回率、F1等以及关联规则支持度、置信度

机器学习分类中的常用指标,这几个指标最大的特点,其实是容易看完就忘。。 英文 TP true positive, 前面的字母代表预测是否正确,后面的字母代表预测的类型,TP是预测正确的正例,预测为1实际也为1 TN true negative预测正确的负例,预测为0实际也为0 FP false positive预测错误,预测为正例,实际为负例,所以是预测错误的负例,预测为1实际为0 FN...

yyhhlancelot的博客 9691

机器学习的评价指标:准确率(Precision)、召回率(Recall)、F值(F-Measure)、ROC曲线等

在介绍指标前必须先了解“混淆矩阵”: 混淆矩阵 True Positive(真正,TP):将正类预测为正类数 True Negative(真负,TN):将负类预测为负类数 False Positive(假正,FP):将负类预测为正类数误报 (Type I error) False Negative(假负,FN):将正类预测为负类数→漏报 (Type II error) 1、准确...

Never-Giveup的博客 1万+

机器学习分类模型评价指标总结(准确率、精确率、召回率、Fmax、TPR、FPR、ROC曲线、PR曲线,AUC,AUPR)

TP、FP、TN、FN 准确率、精确率(查准率)、召回率(查全率) 真阳性率TPR、伪阳性率FPR F1-score=2TP/(2*TP+FP+FN) 最大响应分数Fmax为F1-score的最大值(在最佳阈值的前提下)

crosnken的博客 1607

机器学习模型的常用评价指标

文章目录分类模型的评价指标回归模型的评价指标 分类模型的评价指标 首先区分几个基本概念: TP(True Positives):预测为正样本,实际上也为正样本的样本数; FP(False Positives):预测为正样本,实际上为负样本的样本数; TN(True Negatives):预测为负样本,实际上也为负样本的样本数; FN(False Negatives):预测为负样本,实际上为正...

Stephen的博客 866

从准确率到AUC:一文读懂机器学习模型评价指标

机器学习模型评价需科学衡量泛化能力和实际价值,尤其在医疗、金融等关键领域。本文系统解析了分类任务的评价指标: 基础指标 准确率易受类别不平衡影响 精确率与召回率反映业务权衡,F1分数综合二者 核心指标AUC 通过ROC曲线绘制模型在所有阈值下的表现 本质衡量正样本得分高于负样本的概率 三大优势:抗类别不平衡、兼顾精确率/召回率、适用于排序任务 指标选择原则 需结合业务目标(漏报/误报成本)和数据特点(类别平衡性),AUC因其全局性和稳健性成为二分类任务的重要评价标准。

qq_45464126的博客 1185

【机器学习】关于分类和回归模型,几种常见的模型好坏评价标准

关于分类和回归模型,几种常见的模型好坏评价标准 查准率,查全率,F1值,ROC 平均绝对误差,均方误差,R2

weixin_46249565的博客 3494

机器学习的评价方法 Recall Metric ROC

分类问题 1.1 混淆矩阵(Confusion Matrix) 矩阵中的每一行代表实例的预测类别,每一列代表实例的真实类别。 真正(True Positive , TP):被模型预测为正的正样本。 假正(False Positive , FP):被模型预测为正的负样本。 假负(False Negative , FN):被模型预测为负的正样本。 真负(True Negative , TN):被模型...

qq_38844711的博客 1347

机器学习评价指标【准确率、精确率、召回率、F1值、ROC、AUC】

准确率(precision) 在被判定为正样本的数据中,实际为正样本的个数 精确率(accuracy) 在所有数据中,正负样本判断正确的个数 召回率(recall) 在实际为正样本的数据中,被判定为正样本的个数 F1值 F1值是精确率和召回率的调和均值,相当于精确率和召回率的综合评价指标 ROC 接收者操作特征曲线(receiver operating characteristic curve),是反映敏感性和特异性连续变量的综合指标,ROC曲线上每个点反映着对同一信号刺激的感受性 横坐

真心乖宝宝的博客 2056

【机器学习Q&A】准确率、精确率、召回率、ROC和AUC

评价指标的局限性问题1:准确率的局限性问题2:精确率与召回率的权衡问题3:平方根误差的“意外”参考资料 评价指标是针对将相同的数据,输入不同的算法模型,或者输入不同参数的同一种算法模型,而给出这个算法或者参数好坏的定量指标。 在模型评估过程中,往往需要使用多种不同的指标进行评估,在诸多的评价指标中,大部分指标只能片面的反应模型的一部分性能,如果不能合理的运用评估指标,不仅不能发现模型本身的问题,而且会得出错误的结论。 本文将详细介绍机器学习分类任务的常用评价指标:准确率(Accuracy)、精确率(Prec

小哲的博客 1641

二分类和多分类问题的评价指标总结:机器学习分类模型中的评价指标介绍:准确率、精确率、召回率、ROC曲线

二分类和多分类问题的评价指标总结_wf592523813的博客-优快云博客_多分类评价指标

huaishitou的专栏 668

【ZYNQ驱动双AD9361实战】(一)从官方参考设计到自定义移植

本文详细介绍了如何将ADI官方的单AD9361参考设计移植到ZYNQ平台以驱动双AD9361射频板卡。内容涵盖从环境搭建、官方工程架构解析,到硬件HDL工程修改(包括顶层设计、引脚分配及TCL脚本适配)以及Linux设备树软件配置的全流程实战指南,帮助开发者实现自定义双通道射频收发系统。

weixin_29170327的博客 362

事件相机数据处理实战:从原始事件流到视觉表征的三种核心方法

本文深入探讨了事件相机数据处理的核心环节,即如何将异步、稀疏的原始事件流转换为深度学习模型可处理的视觉表征。文章重点解析了三种核心方法:逐通道累积、体素网格双线性插值和对称累积事件表示,详细阐述了其原理、代码实现、可视化效果及各自的适用场景,为事件相机在目标识别、光流估计等视觉任务中的高效应用提供了实战指南。

read5的博客 438

机器学习分类器模型评价指标

分类器评价指标主要有: 1,Accuracy 2,Precision 3,Recall 4,F1 score 5,ROC 曲线 6,AUC 7,PR 曲线混淆矩阵混淆矩阵是监督学习中的一种可视化工具,主要用于比较分类结果和实例的真实信息。矩阵中的每一行代表实例的预测类别,每一列代表实例的真实类别。真正(True Positive , TP):被模型预测为正的正样本。 假正(Fal

login_sonata的博客 1万+

Abel逆变换及其求解方法

Abel逆变换常应用在轴对称的、光学薄的火焰、羽流或等离子体重建。

weixin_49783507的博客 8371

【机器学习】分类问题指标总结

转载出处:https://blog.youkuaiyun.com/wf592523813/article/details/95202448 目录 1、二分类评价指标 1.1 准确率(Accuracy) 1.2 精确率(Precision) 1.3 查全率(召回率 Recall) 1.4 F1-Score 1.5 ROC曲线和AUC 1.6 ROC 与 P, R对比 2、多分类评价指标 ...

YYIverson的博客 971

Adams与Matlab联合仿真入门:从零搭建你的第一个动力学模型

本文为Adams与Matlab联合仿真新手提供了一份详尽的入门指南。文章从软件环境配置、版本兼容性检查讲起,逐步演示了如何在Adams中构建单摆动力学模型并定义输入输出接口,以及在Matlab/Simulink中搭建控制回路。通过一个完整的受控单摆实例,手把手教你完成从模型导出、模块生成到执行联合仿真的全流程,帮助你快速搭建并运行第一个联合仿真模型,实现动力学与控制系统的协同验证。

g5h6i7j的博客 699

告别卡顿!用AVPro Video在Unity 2022.3里流畅播放4K视频的保姆级配置流程

本文详细介绍了如何在Unity 2022.3中使用AVPro Video插件实现4K视频的流畅播放。从环境配置、插件选型到核心性能优化技巧,包括解码器设置、内存管理策略和多平台适配方案,帮助开发者彻底解决卡顿问题,提升视频播放体验。

weixin_32349561的博客 318

深度学习1:模型评价指标

在深度学习和机器学习领域,模型评价指标用于衡量训练得到的模型在处理数据时的性能和效果。准确率是最直观和常用的评价指标之一,表示分类正确的样本数占总样本数的比例。然而,在不平衡数据集中,准确率可能会产生误导。精确率和召回率是用于衡量二分类模型性能的指标。精确率指分类为正类别的样本中真正为正类别的比例,召回率指所有正类别样本中被正确识别为正类别的比例。这两者往往需要进行权衡。F1分数是精确率和召回率的调和平均数,可以综合衡量分类模型的性能。在精确率和召回率都重要时,F1分数是一个有用的指标。

qq_34717531的博客 5160

使用Qt Creator自带的Qt Designer构造UI界面流程总结

在本文中,我们将总结使用Qt Creator自带的Qt Designer构造UI界面的流程。在对话框中,您可以选择一个控件的信号,然后将其连接到另一个控件的槽。例如,您可以将按钮的点击信号连接到一个槽函数,以响应按钮的点击事件。右键单击窗口设计器中的空白区域,选择适当的布局管理器,如水平布局、垂直布局或网格布局。在Qt Designer中,您可以使用各种预定义的UI控件来设计应用程序的界面。现在,您可以在应用程序的源代码中使用生成的UI界面。在您的源文件中,包含相应的头文件,然后创建一个UI界面的实例。

cl6789的博客 1394

二分类模型的性能评价指标

准确率是模型整体预测正确的比例:精确率衡量模型预测为正类的样本中,实际为正类的比例:召回率衡量实际正类样本中,模型正确预测为正类的比例:特异性衡量实际负类样本中,模型正确预测为负类的比例:F1 分数是精确率和召回率的调和平均值,用于平衡两者:平衡准确率是正类和负类的平均识别率:

m0_53605808的博客 1466

DO-297标准详解:IMA系统开发与认证指南

DO-297的前言部分为读者提供了本指南的概述,说明了该标准的编写背景、主要目标、目标受众以及该文件在开发和认证集成模块化航空电子(IMA,Integrated Modular Avionics)系统中的作用。作为现代航空电子架构的重要组成部分,IMA系统大幅度简化了航空电子系统的硬件配置,增加了灵活性并降低了成本。因此,DO-297成为确保IMA系统开发、集成和认证符合适航标准的核心文件。在现代航空领域,系统复杂性逐渐增加,传统上各子系统独立运行的方式已经不适应多任务、多功能的需求。

qq_41854911的博客 1584

滑模观测器与锁相环结合应用:让电机“无感”也能精准旋转的奥秘

本文介绍了永磁同步电机无传感器控制中的滑模观测器(SMO)结合锁相环(PLL)技术。SMO通过创建虚拟电机模型,利用电流误差产生控制信号来估计反电动势;PLL则从反电动势中解码转子位置和速度信息。该组合方案兼具SMO的鲁棒性和PLL的高精度,计算量小且硬件要求低。文章详细阐述了原理、数学模型、参数整定方法及实际实现技巧,包括离散化处理、符号函数替代等优化手段,并分析了低速性能限制、抖振问题等常见挑战及解决方案。最后指出该技术未来将与人工智能、多观测器融合等方向结合发展。

汽车软件开发 195
上一篇: Pandas数据可视化工具:图表工具-Seaborn
下一篇: ORA-01114: 将块写入文件 35 时出现 IO 错误
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值