机器学习经典数据集解析:Fisher的鸢尾花数据集详解
2026-02-04 04:48:02作者:廉皓灿Ida
数据集概述
鸢尾花(Iris)数据集是机器学习领域最著名、最经典的数据集之一,由统计学家R.A. Fisher于1936年在其开创性论文中首次使用。该数据集包含三种鸢尾花(Setosa、Versicolour和Virginica)各50个样本,共150个样本,每个样本测量了4个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度。
数据集历史背景
- 创建者:R.A. Fisher,现代统计学奠基人之一
- 捐赠者:Michael M.
- 创建时间:1988年7月
Fisher在1936年的论文《The use of multiple measurements in taxonomic problems》中首次使用该数据集,这篇论文至今仍被广泛引用。数据集后来成为模式识别和机器学习领域的标准测试数据集。
数据集特点
基本统计信息
- 样本数量:150个(每类50个)
- 特征数量:4个数值型特征+1个类别标签
- 缺失值:无
特征描述
- 花萼长度(sepal length):单位厘米
- 花萼宽度(sepal width):单位厘米
- 花瓣长度(petal length):单位厘米
- 花瓣宽度(petal width):单位厘米
- 类别:
- Iris Setosa
- Iris Versicolour
- Iris Virginica
统计摘要
| 特征 | 最小值 | 最大值 | 均值 | 标准差 | 类别相关性 |
|---|---|---|---|---|---|
| 花萼长度 | 4.3 | 7.9 | 5.84 | 0.83 | 0.7826 |
| 花萼宽度 | 2.0 | 4.4 | 3.05 | 0.43 | -0.4194 |
| 花瓣长度 | 1.0 | 6.9 | 3.76 | 1.76 | 0.9490 (高) |
| 花瓣宽度 | 0.1 | 2.5 | 1.20 | 0.76 | 0.9565 (高) |
数据集在机器学习中的应用
鸢尾花数据集因其简单性和代表性,成为机器学习算法测试的理想选择:
-
分类问题:三类鸢尾花的分类
- Setosa类与其他两类是线性可分的
- Versicolour和Virginica两类之间是非线性可分的
-
算法测试:常用于测试以下算法:
- 线性判别分析(LDA)
- 逻辑回归
- 支持向量机(SVM)
- 决策树
- K近邻(KNN)等
-
教学示例:由于其简单直观,常被用于机器学习教学
数据集中的已知问题
原始数据集中存在少量测量错误,已被发现并修正:
- 第35个样本的第四个特征值应为0.2(原数据有误)
- 第38个样本的第二、三个特征值应为3.6和1.4(原数据有误)
数据集在机器学习教学中的价值
鸢尾花数据集是机器学习入门的绝佳选择,原因包括:
- 规模适中:150个样本足够展示算法特性,又不会过于复杂
- 特征明确:4个数值特征直观易懂
- 分类清晰:三类区分明确,适合演示分类算法
- 线性可分与不可分共存:可展示不同算法的优缺点
- 历史意义:作为经典数据集,有助于理解机器学习发展历程
总结
鸢尾花数据集作为机器学习领域的"Hello World",其简单性、代表性和历史意义使其成为算法测试和教学的首选。理解这个数据集的特点和应用,对机器学习初学者掌握基本概念和方法具有重要意义。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0186
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0112
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java03
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08
项目优选
收起
暂无描述
Dockerfile
759
4.94 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
853
1.91 K
deepin linux kernel
C
32
16
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
673
1.32 K
Ascend Extension for PyTorch
Python
716
866
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.77 K
186
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
454
436
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.07 K
1.09 K
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Python
990
598
暂无简介
Dart
1 K
259