全部文章

常用数据集了解


​泰坦尼克号数据集(Titanic Dataset)简介​

​1. 背景​

泰坦尼克号数据集记录了1912年泰坦尼克号沉船事件中乘客的个人信息及生存情况,是机器学习领域经典的二分类任务数据集,常用于预测乘客生存概率。


​2. 数据内容​

  • ​样本数量​​:共 ​​891 条​​乘客数据(训练集)。
  • ​特征字段​​:包含 ​​12 个特征​​,其中 ​​8 个核心特征​​如下:
​字段名​ ​说明​ ​类型​
PassengerId 乘客ID(唯一标识) 数值
Survived 是否幸存(目标变量,0=否,1=是) 二分类
Pclass 舱位等级(1=头等舱,2=二等舱,3=三等舱) 有序分类
Name 乘客姓名 文本
Sex 性别(male/female) 二分类
Age 年龄(存在缺失值) 数值
SibSp 同船兄弟姐妹/配偶数量 数值
Parch 同船父母/子女数量 数值
Ticket 船票编号 文本
Fare 票价 数值
Cabin 客舱号(存在大量缺失值) 文本
Embarked 登船港口(C=Cherbourg, Q=Queenstown, S=Southampton) 无序分类

​3. 数据特点​

  • ​缺失值​​:
    • Age 缺失约 ​​19.9%​​(需插值处理)。
    • Cabin 缺失约 ​​77.1%​​(通常直接删除或标记为缺失类别)。
    • Embarked 缺失 ​​2 条​​。
  • ​类别分布​​:
    • 幸存率 ​​38.2%​​(342人幸存,549人遇难)。
    • 性别比例:男性 ​​64.8%​​,女性 ​​35.2%​​。

​4. 应用场景​

  • ​分类任务​​:预测乘客是否幸存(Survived 为目标变量)。
  • ​特征分析​​:探索性别、舱位、年龄等因素对生存率的影响。
  • ​数据清洗练习​​:处理缺失值、文本特征(如 NameCabin)编码。

​5. 关键洞察​

  • ​性别影响​​:女性幸存率(74.2%)显著高于男性(18.9%)。
  • ​舱位影响​​:头等舱幸存率(63%)远高于三等舱(24.2%)。
  • ​年龄分布​​:儿童(<10岁)幸存率较高(58.1%)。

​6. 数据获取​

​加载方式​​(Python示例):

import seaborn as sns
titanic = sns.load_dataset('titanic')  # 直接加载已清洗的版本
  • 原始数据​​:可通过 Kaggle 获取完整数据集(含训练集和测试集)。


​7. 预处理建议​

  • ​缺失值处理​​:
    • Age:用均值或中位数填充。
    • Embarked:用众数填充。
    • Cabin:删除或创建新特征(如是否有客舱 HasCabin)。
  • ​特征工程​​:
    • 从 Name 提取称呼(如 Mr, Mrs, Miss)。
    • 合并 SibSp 和 Parch 为 FamilySize(家庭人数)。
    • 离散化 Age(分段处理)。

​8. 可视化示例​

import seaborn as sns
import matplotlib.pyplot as plt

# 绘制舱位与生存率关系
sns.barplot(x='pclass', y='survived', data=titanic)
plt.title('Survival Rate by Passenger Class')
plt.show()

 

总结​

泰坦尼克号数据集是入门机器学习的理想选择,涵盖数据清洗、特征工程、分类模型训练等全流程,适合用于逻辑回归、决策树、随机森林等算法的实践。其真实的历史背景和明确的问题定义,使其成为教学和竞赛的热门数据集。

MNIST

MNIST(Modified National Institute of Standards and Technology)是一个经典的机器学习数据集,主要用于手写数字识别任务,包含60,000张训练图像和10,000张测试图像,每张图像为28×28像素的灰度图,对应数字0-9的类别标签。

数据集概述

MNIST由美国国家标准技术研究所(NIST)原始数据集改进而来,是深度学习领域的入门级基准数据集。其核心特点包括:‌‌

  1. 标准化结构:图像经归一化处理,尺寸统一为28×28像素,灰度值范围0-255,标签为0-9的数字类别。‌‌‌‌
  2. 均衡分布:训练集(60,000张)与测试集(10,000张)的类别样本数量大致均衡。‌‌‌‌

应用场景

MNIST的典型用途包括:

  1. 图像分类:训练卷积神经网络(CNN)等模型,实现高准确率(常达99%以上)的分类任务。‌‌
  2. 算法验证:作为基准测试工具,快速验证新算法的性能。‌‌
  3. 教学工具:因其简单性,成为机器学习课程和教材的标配案例。‌‌

技术实现

主流深度学习框架(如TensorFlow、PyTorch)均提供MNIST的便捷加载接口:

  1. TensorFlow:通过tensorflow.keras.datasets.mnist.load_data()直接获取。‌‌
  2. PyTorch:使用torchvision.datasets.MNIST模块加载。‌‌

当前趋势显示,研究者正转向更复杂的数据集(如Fashion-MNIST、CIFAR-10),但MNIST仍作为教学工具广泛使用。‌‌

Fashion-MNIST参照:
 
 
 
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2025-04-30 10:33  指尖下的世界  阅读(121)  评论(0)    收藏  举报