Link to this sectionMNIST 数据集#
MNIST(Modified National Institute of Standards and Technology,美国国家标准与技术研究院修改版)数据集是一个图像分类基准测试,包含 70,000 张 28x28 的手写数字灰度图像,共分为 10 个类别——即数字 0 到 9。它自带预设好的 60,000 张训练图像和 10,000 张测试图像,长期以来一直作为评估机器学习和计算机视觉算法的标准基准。对于难度更高的服装图像等效数据集,请参阅相关的 Fashion-MNIST 数据集;若是彩色图像,请参阅 CIFAR-10。
Link to this section主要特性#
- MNIST 包含 60,000 张手写数字训练图像和 10,000 张测试图像,总计 70,000 张。
- 每张图像都是一张 28x28 的单数字灰度图片,并经过归一化和抗锯齿处理,放入固定的 28x28 边界框内。
- 这 10 个类别涵盖了 0-9 的数字,且每类的图像数量大致均衡。
- 它自带预设的训练/测试集划分,因此无需进行手动或自动划分。
- MNIST 是图像分类和深度学习研究的标准基准。
Link to this section数据集结构#
MNIST 自带官方预设的划分,因此无需任何自动或手动分区:
- 类别:10(手写数字 0–9)
- 总图像数: 70,000 (28x28 灰度)
- 训练集:60,000 张图像
- 测试集:10,000 张图像
MNIST 没有单独的验证文件夹,因此 Ultralytics 默认在训练期间使用 10,000 张图像的测试集作为验证集。
每张图像都标有对应的数字(0–9),这使 MNIST 成为非常适合分类任务的监督学习数据集。
Link to this section应用#
MNIST 被广泛用于训练和评估图像分类模型,从经典的卷积神经网络 (CNN) 和支持向量机 (SVM) 到现代深度架构。其小型灰度图像和 10 个数字类别使其成为一种快速、可复现的基准,用于算法比较和计算机视觉实验。
一些常见的应用包括:
- 基准测试新的分类算法
- 用于教授机器学习概念的教育目的
- 原型设计图像识别系统
- 测试模型优化技术
Link to this section用法#
使用 YOLO 分类模型在 MNIST 上进行 100 个 epoch 的训练,图像大小设为 28。该数据集在首次使用时会自动下载并缓存;如果你希望完全控制预处理,也可以从 MNIST 数据库获取原始 gzip 压缩包。如需获取可用参数的完整列表,请参阅训练页面和图像分类任务指南。
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-cls.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="mnist", epochs=100, imgsz=28)Ultralytics 还提供了 data="mnist160",这是一个包含 160 张图像的切片,涵盖了训练集和测试集中每个数字(0–9)的前八张图像。它映射了 MNIST 的目录结构,因此你无需更改任何其他参数即可交换数据集——非常适合 CI 流水线或在提交完整 70,000 张图像的数据集之前进行冒烟测试。
yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28Link to this section样本图像和标注#
来自 MNIST 数据集的示例图像:

这些样本展示了该数据集在 10 个数字类别中捕捉到的各种书写风格。
Link to this section引用与致谢#
如果你在研究或开发工作中使用了 MNIST 数据集,请引用以下论文:
@article{lecun2010mnist,
title={MNIST handwritten digit database},
author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
journal={ATT Labs [Online]},
volume={2},
year={2010}
}我们要感谢 Yann LeCun、Corinna Cortes 和 Christopher J.C. Burges 创建并维护了 MNIST 数据集,将其作为机器学习和计算机视觉研究社区的宝贵资源。关于 MNIST 数据集及其创建者的更多信息,请访问 MNIST 数据集网站。
Link to this section常见问题解答#
Link to this section什么是 MNIST 数据集,为什么它在机器学习中很重要?#
MNIST 数据集是一个包含 70,000 张 28x28 灰度手写数字图像的基准测试,分为 60,000 张训练图像和 10,000 张测试图像,涵盖 10 个类别(0–9)。它是评估图像分类算法的标准参考——其小型且统一的格式让研究人员和工程师能够以最小的设置成本比较方法并追踪进展,这也是它为何依然是机器学习领域常用首选基准的原因。
Link to this sectionMNIST 数据集有多少类别和图像?#
MNIST 有 10 个类别(手写数字 0 到 9),总共 70,000 张灰度图像,每张大小为 28x28 像素。它自带预设的 60,000 张训练图像和 10,000 张测试图像,每个数字的样本数量大致相等。
Link to this section我该如何使用 Ultralytics YOLO 在 MNIST 数据集上训练模型?#
若要在 MNIST 上训练 Ultralytics YOLO 模型,请使用下面的代码片段。数据集会在首次使用时自动下载。有关可用训练参数的详细列表,请参阅训练页面。
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-cls.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="mnist", epochs=100, imgsz=28)Link to this sectionMNIST 数据集是如何划分为训练集和测试集的?#
MNIST 自带预设的 60,000 张训练图像和 10,000 张测试图像划分。与 Ultralytics 会自动拆分的基于文件夹的分类数据集不同,MNIST 的官方分区按原样使用,测试集在训练期间默认作为验证集。
Link to this sectionMNIST 和 EMNIST 数据集之间有什么区别?#
MNIST 数据集仅包含手写数字,而扩展 MNIST (EMNIST) 数据集则包含了数字以及大写和小写字母。EMNIST 是作为 MNIST 的继任者开发的,并使用相同的 28x28 像素格式,使其与专为原始 MNIST 设计的工具和模型兼容。这种更广泛的字符范围使得 EMNIST 可用于更多种类的机器学习应用。
Link to this section我可以使用 Ultralytics Platform 在像 MNIST 这样的数据集上训练模型吗?#
可以。Ultralytics Platform 让你无需大量编程即可上传数据集、训练图像分类模型并进行部署。这是在云端运行 MNIST 实验的便捷方式——相关选项请参阅分类数据集概览。
Link to this sectionMNIST 与其他图像分类数据集相比如何?#
MNIST 比 CIFAR-10 或 ImageNet 等现代数据集更简单,使其成为初学者和快速实验的理想选择。虽然更复杂的数据集在彩色图像和多样化对象类别方面带来了更大的挑战,但 MNIST 因其简洁、文件体积小以及在机器学习算法发展中的历史意义而依然具有价值。若需要一个结构相同但难度更高的直接替代方案,请参阅 Fashion-MNIST,它以服装类项目取代了数字。