数据分析和机器学习的11个高级可视化图表介绍
可视化是一种强大的工具,用于以直观和可理解的方式传达复杂的数据模式和关系。它们在数据分析中发挥着至关重要的作用,提供了通常难以从原始数据或传统数字表示中辨别出来的见解。
可视化对于理解复杂的数据模式和关系至关重要,我们将介绍11个最重要和必须知道的图表,这些图表有助于揭示数据中的信息,使复杂数据更加可理解和有意义。

1、KS Plot

KS Plot用来评估分布差异。其核心思想是测量两个分布的累积分布函数(CDF)之间的最大距离。最大距离越小,它们越有可能属于同一分布。所以它主要被解释为确定分布差异的“统计检验”,而不是“图”。
2、SHAP Plot

SHAP Plot通过考虑特征之间的相互作用/依赖关系来总结特征对模型预测的重要性。在确定一个特征的不同值(低或高)如何影响总体输出时很有用。
3、ROC Curve

ROC曲线描述了跨不同分类阈值的真阳性率(良好的性能)和假阳性率(糟糕的性能)之间的权衡。它展示了分类器在不同阈值下的灵敏度(True Positive Rate,TPR)和特异度(True Negative Rate,TNR)之间的权衡关系。
ROC曲线是一种常用的工具,特别适用于评估医学诊断测试、机器学习分类器、风险模型等领域的性能。通过分析ROC曲线和计算AUC,可以更好地理解分类器的性能,选择适当的阈值,以及比较不同模型之间的性能。
4、Precision-Recall Curve

Precision-Recall(精确度-召回率)曲线是用于评估分类模型性能的另一种重要工具,特别适用于不平衡类别分布的问题,其中正类别和负类别样本数量差异较大。这个曲线关注模型在正类别的预测准确性和能够找出所有真正正例的能力。它描述了不同分类阈值之间的精确率和召回率之间的权衡。
5、QQ Plot

QQ Plot(Quantile-Quantile Plot,分位数-分位数图)是一种用于比较两个数据集的分位数分布是否相似的数据可视化工具。它通常用于检查一个数据集是否符合某种特定的理论分布,如正态分布。
它评估观测数据与理论分布之间的分布相似性。绘制了两个分布的分位数。偏离直线表示偏离假定的分布。
QQ Plot是一种直观的工具,可用于检查数据的分布情况,尤其是在统计建模和数据分析中。通过观察QQ Plot上的点的位置,你可以了解数据是否符合某种理论分布,或者是否存在异常值或偏差。
6、Cumulative Explained Variance Plot

Cumulative Explained Variance Plot(累积解释方差图)是在主成分分析(PCA)等降维技术中常用的图表,用于帮助解释数据中包含的方差信息以及选择合适的维度来表示数据。
数据科学家和分析师会根据Cumulative Explained Variance Plot中的信息来选择适当数量的主成分,以便在降维后仍能够有效地表示数据的特征。这有助于减少数据维度,提高模型训练效率,并保留足够的信息来支持任务的成功完成。
7、Elbow Curve

Elbow Curve(肘部曲线)是一种用于帮助确定K-Means聚类中最佳簇数(聚类数目)的可视化工具。K-Means是一种常用的无监督学习算法,用于将数据点分为不同的簇或群组。Elbow Curve有助于找到合适的簇数,以最好地表示数据的结构。
Elbow Curve是一种常用的工具,用于帮助选择K-Means聚类中的最佳簇数,肘部的点表示理想的簇数。这样可以更好地捕获数据的内在结构和模式。
8、Silhouette Curve

Silhouette Curve(轮廓系数曲线)是一种用于评估聚类质量的可视化工具,通常用于帮助选择最佳聚类数。轮廓系数是一种度量,用于衡量聚类中簇内数据点的相似性和簇间数据点的分离程度。
Silhouette Curve是一种有力的工具,用于帮助选择最佳的聚类数,以确保聚类模型能够有效地捕获数据的内在结构和模式。在有很多簇时,肘部曲线通常是无效的。Silhouette Curve是一个更好的选择。
9、Gini-Impurity and Entropy

Gini Impurity(基尼不纯度)和Entropy(熵)是两种常用于决策树和随机森林等机器学习算法中的指标,用于评估数据的不纯度和选择最佳分裂属性。它们都用于衡量数据集中的混乱度,以帮助决策树选择如何划分数据。
它们用于测量决策树中节点或分裂的杂质或无序。上图比较了基尼不纯和熵在不同的分裂,这可以提供了对这些度量之间权衡的见解。
两者都是有效的指标,用于决策树等机器学习算法中的节点分裂选择,但选择哪个取决于具体的问题和数据特征。
10、Bias-Variance Tradeoff

Bias-Variance Tradeoff(偏差-方差权衡)是机器学习中一个重要的概念,用于解释模型的预测性能和泛化能力之间的平衡。
偏差和方差之间存在权衡关系。在训练机器学习模型时,增加模型的复杂性通常会降低偏差但增加方差,而降低模型复杂性则会降低方差但增加偏差。因此,存在一个权衡点,其中模型既能够捕获数据的模式(降低偏差),又能够对不同数据表现出稳定的预测(降低方差)。
理解偏差-方差权衡有助于机器学习从业者更好地构建和调整模型,以实现更好的性能和泛化能力。它强调了模型的复杂性和数据集大小之间的关系,以及如何避免欠拟合和过拟合。
11、Partial Dependency Plots:

Partial Dependency Plots(部分依赖图)是一种用于可视化和解释机器学习模型的工具,特别适用于了解单个特征对模型预测的影响。这些图形有助于揭示特征与目标变量之间的关系,以便更好地理解模型的行为和决策。
Partial Dependency Plots通常与解释性工具和技术一起使用,如SHAP值、LIME等,以帮助解释黑盒机器学习模型的预测。它们提供了一种可视化方式,使数据科学家和分析师更容易理解模型的决策和特征之间的关系。
总结
这些图表涉及了数据分析和机器学习领域中常用的可视化工具和概念,这些工具和概念有助于评估和解释模型性能、理解数据分布、选择最佳参数和模型复杂性,以及洞察特征对预测的影响。
https://avoid.overfit.cn/post/03779f17634e4962a753a706e1cdbc4c
相关文章:
数据分析和机器学习的11个高级可视化图表介绍
可视化是一种强大的工具,用于以直观和可理解的方式传达复杂的数据模式和关系。它们在数据分析中发挥着至关重要的作用,提供了通常难以从原始数据或传统数字表示中辨别出来的见解。 可视化对于理解复杂的数据模式和关系至关重要,我们将介绍11…...
祝所有的程序猿们2023年的1024节快乐~
许久没更新Bolg了,眼看就要到1024节,其实也是没有可以更新的东西,目前在PhD,发现很多东西都还需要慢慢沉淀,放一doctoral college 开学的时候ppt的老图。 越往深处研究会陷入泥潭,考虑的细节将会越来越多&…...
Win10/Win11系统bitlocker正在等待激活如何解决?
有同学升级Win10系统后,发现C盘与D盘分区盘符中出现了黄色的锁定感叹号,还显示“bitlocker正在等待激活”,这可能是用户开启了bitlocker加密所导致的。下面就来看看解决的办法吧。 一、bitlocker正在等待激活的解决方法 打开控制面板-系统和安…...
酷开科技 | 酷开系统,为居家生活打开更精彩的窗口
电视在我们的日常生活中扮演着重要的角色。虽然,作为客厅C位的扛把子——电视的娱乐作用深入人心,但是,它的涵义和影响力却因我们每个人的具体生活环境而存在着种种差异,而我们的生活环境又受到我们所处的社会及文化环境的影响。 …...
谷歌真的不喜欢 Node.js ?
有人在 Quora 上提问,为什么谷歌不喜欢 Node.js 呢,Google 的 UX 工程师和来自 Node.js 团队的开发者分别回答了他们对这个问题的看法,对于编程语言来说,每一门语言都有它自己的优势,重要的是如何用它去解决问题。 谷…...
前端项目如何找到所有未被引用的文件
要找到 React 项目中所有未被引用的文件,可以使用工具来进行静态代码分析。以下是一些方法: 使用静态代码分析工具unimported: 静态代码分析工具可以找到未被引用的 JSX 文件。一个常用的工具是 “unimported”。以下是使用它的步骤ÿ…...
CANoe-使用IG Ethernet Packet Builder实现IP包分片的若干问题
在文章《CANoe-Ethernet IG和Ethernet Packet Builder的使用和区别》中,我们讲过Packet Builder可以组装多种类型的以太网报文: 当我们想组装一条icmpv4 echo request报文,payload只有1个字节的数据FF时,选择ICMPv4 Packet,创建一条ICMPv4报文,把payload改为1个字节: 然…...
UE4逆向篇-2_各类数据的查找方式
写在前面 1.通过前面的文章,相信各位已经能够自己找到GNames并使用DUMP工具导出GNames了。 2.本篇文章将介绍各种所需数据的查找方法。 一、准备工作 1.CheatEngine,本篇以及后续篇幅的重要工具。 2.一个记事本,保证你能记录下关键信息。…...
JDBC-day07(Apache-DBUtils实现CRUD操作)
九:Apache-DBUtils实现CRUD操作 1 Apache-DBUtils简介 Apache-DbUtils 是 Apache 组织提供的开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用DbUtils能极大简化JDBC编码的工作量,同时也不会影响程序的…...
零代码编程:用ChatGPT多线程批量将PDF文档转换为word格式
pdf2docx是Python的一个库,可以很方便的将PDF文档转换为word格式,首先安装这个库。 然后在ChatGPT中输入提示词: 你是一个Python编程专家,要完成一个文档格式转换的任务,具体步骤如下: 打开F盘的Books文件…...
codeshell安装配置
codeshell安装配置 1 注意事项1.1 Python版本问题 2 codeshell环境搭建2.1 codeshell使用软件各版本2.2 软件下载2.3 codeshell使用环境安装2.3.1 python-3.10.9-amd64.exe安装2.3.2 Anaconda3-2022.10-Windows-x86_64.exe安装2.3.3 创建环境2.3.4 Pytorch安装2.3.5 transforme…...
mfc140u.dll丢失的详细解决方法,最详细修复mfc140u.dll丢失的办法分享
在计算机技术日益发展的今天,我们不可避免地会遇到各种各样的技术问题。其中,“MFC140U.DLL丢失”是一个常见的错误,它可能会影响我们的电脑性能和软件运行。本文将详细介绍四种解决“MFC140U.DLL丢失”问题的方法。 首先,我们需…...
CMake
文章目录 前言一、快速开始编译C/C代码1. 只有源码的项目2. 包含库的项目3. 编译成库给他人使用使用cmake的流程1. 生成构建系统2. 执行构建3. 执行测试4. 安装 && 打包 二、cmake 语法简介1 变量2 条件语句3 脚本命令**消息打印****if-else**:**list命令**:…...
互联网Java工程师面试题·Spring篇·第二弹
目录 3、Beans 3.1、什么是 spring bean? 3.2、spring 提供了哪些配置方式? 3.3、spring 支持集中 bean scope? 3.4、spring bean 容器的生命周期是什么样的? 3.5、什么是 spring 的内部 bean? 3.6、什么是 spri…...
AM@两种余项型泰勒公式的对比和总结@常用函数的麦克劳林公式
文章目录 abstract两种余项型泰勒公式的对比和总结Maclaurin公式常用函数的Maclaurin公式推导例求极限按幂展开 abstract 泰勒公式的两种余项型(Penao&Lagrange)泰勒公式的对比和总结常用的Maclaurin公式列举(Peano余项型为主) 两种余项型泰勒公式的对比和总结 Taylor公式…...
Django实现音乐网站 (22)
使用Python Django框架做一个音乐网站, 本篇音乐播放器功能完善:顺序播放、设置播放数、歌词滚动等功能。 目录 顺序播放 设置顺序播放 单曲播放数 添加路由 视图处理 模板处理 歌词滚动 视图内容返回修改 样式设置 模板内容 歌词滚动脚本 歌…...
pnpm ERR_PNPM_ADDING_TO_ROOT
ERR_PNPM_ADDING_TO_ROOT Running this command will add the dependency to the workspace root, which might not be what you want - if you really meant it, make it explicit by running this command again with the -w flag (or --workspace-root). If you don’t wa…...
统计学习方法 拉格朗日对偶性
文章目录 统计学习方法 拉格朗日对偶性原始问题对偶问题原始问题和对偶问题的关系 统计学习方法 拉格朗日对偶性 读李航的《统计学习方法》时,关于拉格朗日对偶性的笔记。 在许多统计学习的约束最优化问题中,例如最大熵模型和支持向量机,常…...
.rancher-pipeline.yml
一、注意点 其实下文二的image是基于这个镜像作为基础镜像在这个镜像中执行打包,shellScript 当前路径是你代码块与上图settings.xml,图中的settings.xml可以替换下你当前镜像的settings.xml 示例 二、.rancher-pipeline.yml ${CICD_GIT_BRANCH}这些从官…...
RK3588平台开发系列讲解(显示篇)MIPI DSI协议介绍之分层
🚀返回专栏总目录 文章目录 一、MIPI DSI 分层1.1、应用层1.2、协议层1.3、链路层1.4、物理层沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 DSI 全称是 Display Serial Interface,是主控和显示模组之间的串行连接接口。 MIPI DSI 接口分为数据线和时钟线,均为…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
【安全篇】金刚不坏之身:整合 Spring Security + JWT 实现无状态认证与授权
摘要 本文是《Spring Boot 实战派》系列的第四篇。我们将直面所有 Web 应用都无法回避的核心问题:安全。文章将详细阐述认证(Authentication) 与授权(Authorization的核心概念,对比传统 Session-Cookie 与现代 JWT(JS…...
2025年低延迟业务DDoS防护全攻略:高可用架构与实战方案
一、延迟敏感行业面临的DDoS攻击新挑战 2025年,金融交易、实时竞技游戏、工业物联网等低延迟业务成为DDoS攻击的首要目标。攻击呈现三大特征: AI驱动的自适应攻击:攻击流量模拟真实用户行为,差异率低至0.5%,传统规则引…...
深入浅出WebGL:在浏览器中解锁3D世界的魔法钥匙
WebGL:在浏览器中解锁3D世界的魔法钥匙 引言:网页的边界正在消失 在数字化浪潮的推动下,网页早已不再是静态信息的展示窗口。如今,我们可以在浏览器中体验逼真的3D游戏、交互式数据可视化、虚拟实验室,甚至沉浸式的V…...
【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法
使用 ROS1-Noetic 和 mavros v1.20.1, 携带经纬度海拔的话题主要有三个: /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码,来分析他们的发布过程。发现前两个话题都对应了同一…...
