机器学习:ROC曲线笔记

news2024/11/27 6:34:39

ROC曲线(Receiver Operating Characteristic Curve)是一种用于评估二分类模型性能的图形化工具,主要用于展示在不同阈值(Threshold)下模型的真阳性率(True Positive Rate,TPR)和假阳性率(False Positive Rate,FPR)之间的关系。

ROC曲线最早起源于二战期间,用于分析雷达信号检测敌方飞机的能力,随后逐渐扩展到其他领域,特别是医学诊断。自20世纪末,ROC已被广泛应用于机器学习,通过改变分类阈值,展示模型将正类与负类区分开来的能力,以此找到最佳的模型参数和决策阈值。


目录

基本概念

1.混淆矩阵(Confusion Matrix)

1.1 组成类别

1.2 评估指标

2. AUC(Area Under the Curve)

3.约登指数(Youden's index)

曲线组成



基本概念


1.混淆矩阵(Confusion Matrix)

也称为误差矩阵,用于展示实际类别与模型预测类别之间的关系,以此评估有监督学习中分类模型的性能。混淆矩阵对于二分类和多分类问题都适用,在流行病学研究中,它被应用于评估筛检试验真实性

预测实际
正例负例
正例真阳性(TP)假阳性(FP)
负例假阴性(FN)真阴性(TN)

(ROC曲线是多个混淆矩阵结果的组合)

1.1 组成类别

真阳性(True Positive,TP):模型正确地将正类预测为正类的数量。

假阴性(False Negative,FN):模型错误地将正类预测为负类的数量。

假阳性(False Positive,FP):模型错误地将负类预测为正类的数量。

真阴性(True Negative,TN):模型正确地将负类预测为负类的数量。

1.2 评估指标

通过混淆矩阵,我们可以计算出多种评估指标,从不同角度评估模型性能:

准确率(Accuracy):模型正确预测的总体比例,计算公式为:Accuracy = \frac{TP + TN}{TP + TN + FP + FN}

精确度(Precision):模型预测为正类中实际为正类的比例,计算公式为:Precision = \frac{TP}{TP + FP}

召回率(Recall)或灵敏度(Sensitivity):实际为正类中模型预测为正类的比例,计算公式为:Recall = \frac{TP}{TP + FN}

特异度(Specificity):实际为负类中模型预测为负类的比例,计算公式为:Specificity = \frac{TN}{TN + FP}

F1分数(F1 Score):精确度和召回率的调和平均数,计算公式为:F1 Score = \frac{2 \times (Precision \times Recall)}{Precision + Recall}

2. AUC(Area Under the Curve)

曲线下面积,用于综合评价模型在各种不同阈值下的表现。AUC的取值范围在0~1,常用于量化比较不同分类器的性能,AUC值越高,表示模型性能越好。

AUC = 1.0 :完美分类器,模型没有任何的分类错误;

AUC > 0.5 :模型具有将正类和负类区分开来的能力,且性能超过了随机猜测;

AUC < 0.5 :模型的表现还不如随机猜测,表明模型存在严重问题。

3.约登指数(Youden's index)

也称为正确指数,常用于确定最佳阈值,即约登指数最大的时候,模型分类能力最佳。计算方式为:约登指数 = 灵敏度 + 特异度 − 1



曲线组成

1.真阳性率:也称为灵敏度、召回率或命中率,作为纵坐标;

2.假阳性率:是在所有实际负例中,被错误地判断为正例的比例,作为横坐标;

3.阈值:是界定正类和负类的分界线。通过调整阈值,模型预测正类的标准更高或更低,从而影响到TPR和FPR的值。ROC曲线上的每一个点都对应一个特定的决策阈值。

4.AUC:ROC曲线与坐标轴对角线组成的面积。

曲线绘制:在一个坐标图上,将FPR作为横轴(X轴),TPR作为纵轴(Y轴)。对于一个二分类模型,通过改变决策阈值,我们可以得到一系列的(FPR, TPR)点,将这些点连线就形成了ROC曲线。理想情况下,最好的预测模型的ROC曲线会尽可能地靠近左上角,意味着具有更高的TPR和更低的FPR。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1448784.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

洛谷C++简单题小练习day11—字母转换,分可乐两个小程序

day11--字母转换--2.14 习题概述 题目描述 输入一个小写字母&#xff0c;输出其对应的大写字母。例如输入 q[回车] 时&#xff0c;会输出 Q。 代码部分 #include<bits/stdc.h> using namespace std; int main() { char n;cin>>n;cout<<char(n-32)<…

STM32 7-8

目录 ADC AD单通道 AD多通道 DMA DMA转运数据 DMAAD多通道 ADC AD单通道 AD.c #include "stm32f10x.h" // Device header/*** brief 初始化AD所需要的所有设备* param 无* retval 无*/ void AD_Init(void) {RCC_APB2PeriphClockCmd(RCC_AP…

视觉slam十四讲学习笔记(四)相机与图像

理解理解针孔相机的模型、内参与径向畸变参数。理解一个空间点是如何投影到相机成像平面的。掌握OpenCV的图像存储与表达方式。学会基本的摄像头标定方法。 目录 前言 一、相机模型 1 针孔相机模型 2 畸变 单目相机的成像过程 3 双目相机模型 4 RGB-D 相机模型 二、图像…

【数据结构】链表OJ面试题4《返回链表入环的第一个结点》(题库+解析)

1.前言 前五题在这http://t.csdnimg.cn/UeggB 后三题在这http://t.csdnimg.cn/gbohQ 给定一个链表&#xff0c;判断链表中是否有环。http://t.csdnimg.cn/Rcdyc 记录每天的刷题&#xff0c;继续坚持&#xff01; 2.OJ题目训练 10. 给定一个链表&#xff0c;返回链表开始…

[缓存] - 1.缓存共性问题

1. 缓存的作用 为什么需要缓存呢&#xff1f;缓存主要解决两个问题&#xff0c;一个是提高应用程序的性能&#xff0c;降低请求响应的延时&#xff1b;一个是提高应用程序的并发性。 1.1 高并发 一般来说&#xff0c; 如果 10Wqps&#xff0c;或者20Wqps &#xff0c;可使用分布…

【JavaEE】_HTTP请求与响应

目录 1. HTTP协议 1.1 HTTP简介 1.2 Fiddler 2. HTTP请求 2.1 首行 2.2 请求头&#xff08;header&#xff09; 2.3 空行 2.4 正文&#xff08;body&#xff09; 3. HTTP响应 3.1 首行 3.2 响应头&#xff08;header&#xff09; 3.3 空行 3.4 正文&#xff08;bo…

如何在Django中使用分布式定时任务并结合消息队列

如何在Django中使用分布式定时任务并结合消息队列 如何在Django中使用分布式定时任务并结合消息队列项目背景与意义实现步骤1. 安装Celery和Django-celery-beat2. 配置Celery3. 配置Django-celery-beat4. 定义定时任务5. 启动Celery worker 和 beat6. Celery 指令7. 对接消息队…

精读Relational Embedding for Few-Shot Classification (ICCV 2021)

Relational Embedding for Few-Shot Classification (ICCV 2021) 一、摘要 该研究提出了一种针对少样本分类问题的新方法&#xff0c;通过元学习策略来学习“观察什么”和“在哪里关注”。这种方法依赖于两个关键模块&#xff1a;自相关表示&#xff08;SCR&#xff09;和交叉…

HDFS的超级用户

一. 解释原因 HDFS(Hadoop Distributed File System)和linux文件系统管理一样&#xff0c;也是存在权限控制的。 但是很不一样的是&#xff0c; 在Linux文件系统中&#xff0c;超级用户Superuser是root而在HDFS中&#xff0c;超级用户Superuser是启动了namenode的用户&#x…

软考 系统分析师系列知识点之信息系统战略规划方法(10)

接前一篇文章&#xff1a;软考 系统分析师系列知识点之信息系统战略规划方法&#xff08;9&#xff09; 所属章节&#xff1a; 第7章. 企业信息化战略与实施 第4节. 信息系统战略规划方法 7.4.6 战略栅格法 战略栅格&#xff08;Strategic Grid&#xff0c;SG&#xff09;法是…

【QT+QGIS跨平台编译】之四十:【gsl+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

文章目录 一、GSL介绍二、GSL下载三、文件分析四、pro文件五、编译实践一、GSL介绍 GSL(GNU Scientific Library)是一个开源的数值计算库,用于提供一系列常用的数学函数和算法。它为科学计算和数据分析提供了高效、可靠的工具。 GSL库提供了丰富的功能,包括数值积分、数值…

NLP_GPT到ChatGPT

文章目录 介绍小结 介绍 从初代 GPT 到GPT-3&#xff0c;主要经历了下面几个关键时刻。 GPT&#xff1a;2018 年&#xff0c;OpenAl发布了这款基于Transformer架构的预训练语言模型&#xff0c;其参数数量为1.17亿(117M)。GPT运用单向自回归方法生成文本&#xff0c;先预训练大…

qt“五彩斑斓“ opengl

本篇文章我们来描述一下opengl相关知识 我们先看一下opengl渲染的效果 很漂亮&#xff1f; 那下面就来介绍一下这么漂亮的opengl OpenGL&#xff08;Open Graphics Library&#xff09;是一个跨平台的图形编程接口&#xff0c;用于渲染2D和3D图形。它提供了一系列函数和数据结…

Hive——动态分区导致的小文件问题

目录 0 问题现象 1 问题解决 解决方案一&#xff1a;调整动态分区数 方案一弊端&#xff1a;小文件剧增 解决方案二&#xff1a;distribute by 方案二弊端&#xff1a;数据倾斜 解决方案三&#xff1a;distribute by命令 2 思考 3 小结 0 问题现象 现象&#xff1a;…

【教学类-19-05】20240214《ABAB式-规律黏贴18格-手工纸15*15CM》(中班)

背景需求 利用15*15CM手工纸制作AB色块手环&#xff08;手工纸自带色彩&#xff09; 素材准备 代码展示 作者&#xff1a;阿夏 时间&#xff1a;2024年2月14日 名称&#xff1a;正方形数字卡片AB图案 _ 华光彩云_CNKI A的位置有图案 18格 import xlwt import xlrd import os …

kali无线渗透之wps加密模式和破解12

WPS(Wi-Fi Protected Setup&#xff0c;Wi-Fi保护设置)是由Wi-Fi联盟推出的全新Wi-Fi安全防护设定标准。该标准推出的主要原因是为了解决长久以来无线网络加密认证设定的步骤过于繁杂之弊病&#xff0c;使用者往往会因为步骤太过麻烦&#xff0c;以致干脆不做任何加密安全设定&…

CTFshow web(php文件上传155-158)

web155 老样子&#xff0c;还是那个后端检测。 知识点&#xff1a; auto_append_file 是 PHP 配置选项之一&#xff0c;在 PHP 脚本执行结束后自动追加执行指定的文件。 当 auto_append_file 配置被设置为一个文件路径时&#xff0c;PHP 将在执行完脚本文件的所有代码后&…

python分离字符串 2022年12月青少年电子学会等级考试 中小学生python编程等级考试二级真题答案解析

目录 python分离字符串 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序代码 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python分离字符串 2022年12月 python编程等级考试级编程题 一、题目要…

华为机考入门python3--(14)牛客14-字符串排序

分类&#xff1a;列表、排序 知识点&#xff1a; 字典序排序 sorted(my_list) 题目来自【牛客】 def sort_strings_by_lex_order(strings): # 使用内置的sorted函数进行排序&#xff0c;默认是按照字典序排序 sorted_strings sorted(strings) # 返回排序后的字符串列…

Imgui(2) | macOS 绘制 CPU 占用率曲线

Imgui(2) | macOS 绘制 CPU 占用率曲线 文章目录 Imgui(2) | macOS 绘制 CPU 占用率曲线0. 简介1. 绘制曲线 - 以正弦函数为例1.1 基于 sf::RectangleShape 的渲染 - 不好看&#xff0c;效率低1.2 基于 sf::VertexArray 的绘制 2. 获取和绘制所有 CPU 的占用率2.1 测试程序 - 用…