【漫话机器学习系列】083.安斯库姆四重奏(Anscombe‘s Quartet)

news/2025/2/8 14:26:52 标签: 机器学习, 信息可视化, 人工智能

安斯库姆四重奏(Anscombe's Quartet)

1. 什么是安斯库姆四重奏?

安斯库姆四重奏(Anscombe's Quartet)是一组由统计学家弗朗西斯·安斯库姆(Francis Anscombe)1973 年 提出的 四组数据集。它们的均值、方差、回归直线、相关系数等统计量几乎相同,但当绘制成图表时却呈现出完全不同的分布形态

这个四重奏展示了数据可视化的重要性,表明仅凭统计数值不能全面反映数据的真实分布。


2. 数据集示例

安斯库姆的四个数据集如下,每个数据集包含 (x, y) 对

数据集xxx 值yyy 值
第一组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 58.04, 6.95, 7.58, 8.81, 8.33, 9.96, 7.24, 4.26, 10.84, 4.82, 5.68
第二组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 59.14, 8.14, 8.74, 8.77, 9.26, 8.10, 6.13, 3.10, 9.13, 7.26, 4.74
第三组10, 8, 13, 9, 11, 14, 6, 4, 12, 7, 57.46, 6.77, 12.74, 7.11, 7.81, 8.84, 6.08, 5.39, 8.15, 6.42, 5.73
第四组8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 86.58, 5.76, 7.71, 8.84, 8.47, 7.04, 5.25, 5.56, 7.91, 6.89, 6.11

尽管这些数据集的均值、方差、相关系数、回归直线 近似相同,但它们的实际分布却大不相同。


3. 统计量分析

对每个数据集计算以下统计量,我们发现它们几乎相等

  • 均值
  • 方差
  • 相关系数
  • 回归直线

尽管统计量相同,但它们的数据分布和图形表现却大相径庭


4. 数据可视化

如果只看统计量,可能会认为四个数据集的分布类似。但当我们绘制散点图时,会看到完全不同的形态:

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

# 加载 Anscombe's Quartet 数据集
anscombe = sns.load_dataset("anscombe")

# 创建 2x2 子图
fig, axes = plt.subplots(2, 2, figsize=(10, 8))
fig.suptitle("Anscombe's Quartet")

# 子集名称
datasets = ["I", "II", "III", "IV"]

# 遍历四个数据集并绘制散点图和回归直线
for i, ax in enumerate(axes.flatten()):
    data = anscombe[anscombe['dataset'] == datasets[i]]  # 修正筛选方式

    ax.scatter(data['x'], data['y'], label=f'Dataset {datasets[i]}', color='blue', edgecolor='k')
    ax.set_title(f"Dataset {datasets[i]}")

    # 计算回归直线
    m, b = np.polyfit(data['x'], data['y'], 1)
    ax.plot(data['x'], m * data['x'] + b, color='red', label="Regression Line")

plt.tight_layout()
plt.show()

运行结果

5. 观察四个数据集的不同

从图中可以看出:

  • 数据集 1:正常的线性回归数据分布。
  • 数据集 2:呈现非线性关系,回归直线并不能很好地描述数据趋势。
  • 数据集 3:大多数点与回归直线接近,但存在一个异常值(outlier)
  • 数据集 4:x 值恒定,数据呈现一条垂直线,回归模型毫无意义。

6. 重要性:统计数据 ≠ 数据特性

安斯库姆四重奏的核心思想是:

  1. 统计数值不能完全代表数据分布。必须配合数据可视化进行分析。
  2. 数据可视化可以揭示数据的模式,如线性关系、异常值、非线性分布等
  3. 异常值可能极大地影响回归分析,不能仅依赖统计量进行判断。

7. 结论

  • 仅依赖均值、方差、相关系数等统计数值,可能导致误导性的结论。
  • 进行数据分析时,应结合可视化手段(如散点图、直方图等),直观检查数据的分布。
  • 安斯库姆四重奏提醒我们,数据科学不只是数学统计,还包括数据探索与可视化。

8. 拓展:现代版安斯库姆四重奏

在 2017 年,Alberto Cairo 提出了“Datasaurus Dozen”,扩展了安斯库姆四重奏的思想。它展示了一组具有相同统计量但形态完全不同的数据集,其中包括:

  • 恐龙形状
  • 圆形分布
  • 星形分布
  • 水平线形分布

👉 核心思想仍然是:数据可视化远比仅依赖统计数值更重要。


9. 总结

主题说明
安斯库姆四重奏4 组数据集,统计特性相似但分布不同
均值、方差、相关系数统计量不能完全代表数据特征
可视化的重要性必须结合数据可视化(散点图等)
数据分布差异可能是非线性、异常值、特定形态
现代扩展“Datasaurus Dozen” 进一步说明数据可视化的重要性

🚀 数据分析不仅仅是计算统计量,数据可视化同样不可忽视!


http://www.niftyadmin.cn/n/5844961.html

相关文章

baigeiRSA

baigeiRSA 打开附件有两个: 1.import libnumfrom Crypto.Util import numberfrom secret import flag​size 128e 65537p number.getPrime(size)q number.getPrime(size)n p*q​m libnum.s2n(flag)c pow(m, e, n)​print(n %d % n)print(c %d % c)​​2.n…

使用Jenkins、K8S、Docker一键部署SpringCloud微服务

集成Jenkins、Kubernetes(K8S)和Docker,实现一键部署SpringCloud微服务。以下是具体的步骤: 步骤一:配置Jenkins 首先,我们需要安装并配置Jenkins。Jenkins是一个开源的持续集成/持续部署工具,…

为什么DeepSeek服务器繁忙?

致敬DeepSeek 用户层面 用户数量激增:DeepSeek 免费且功能强大,对普通用户和开发者都极具吸引力124。尤其是在新功能推出、新模型上线或相关热门活动期间,大量用户会在短时间内涌入9。例如春节期间,DeepSeek 的用户量达到四千万7。…

w~视觉~合集32

我自己的原文哦~ https://blog.51cto.com/whaosoft/13252266 #Hawkeye 又搬来了一个神器~~ 基于PyTorch、易上手,细粒度图像识别深度学习工具库 细粒度图像识别 [1] 是视觉感知学习的重要研究课题,在智能新经济和工业互联网等方面具有巨大应用价值…

react的antd表单校验,禁止输入空格并触发校验提示

首先需要用到form组件&#xff0c;在form.item内添加rules属性&#xff0c;写正则表达式 <Form.Itemlabel"员工姓名"name"name"rules{[{ required: true, message: 员工姓名 },{ pattern: /^(?!\s*$).$/, message: 不能全是空格 },]}> <Input p…

k8s网络插件及基础命令

一、k8s的cni网络插件 1.k8s的内部网络模式 pod内的容器与容器之间的通信。一个节点上的pod之间的通信&#xff0c;docker0网桥直接通信。不同节点上的pod之间的通信&#xff1a;通过物理网卡的ip地址和其他节点上的物理网卡的设备进行通信&#xff0c;然后把流量转发到指定的…

【AI】在Ubuntu中使用docker对DeepSeek的部署与使用

这篇文章前言是我基于部署好的deepseek-r1:8b模型跑出来的 关于部署DeepSeek的前言与介绍 在当今快速发展的技术环境中&#xff0c;有效地利用机器学习工具来解决问题变得越来越重要。今天&#xff0c;我将引入一个名为DeepSeek 的工具&#xff0c;它作为一种强大的搜索引擎&a…

使用MATLAB进行雷达数据采集可视化

本文使用轮趣科技N10雷达&#xff0c;需要源码可在后台私信或者资源自取 1. 项目概述 本项目旨在通过 MATLAB 读取 N10 激光雷达 的数据&#xff0c;并进行 实时 3D 点云可视化。数据通过 串口 传输&#xff0c;并经过解析后转换为 三维坐标点&#xff0c;最终使用 pcplayer 进…