Link to this sectionMNIST 数据集#
MNIST(修改后的国家标准与技术研究院)数据集是一个庞大的手写数字数据库,通常用于训练各种图像处理系统和机器学习模型。它通过“重新混合” NIST 原始数据集中的样本而创建,现已成为评估图像分类算法性能的基准。
Link to this section主要特性#
- MNIST 包含 60,000 张用于训练的手写数字图像和 10,000 张用于测试的图像。
- 该数据集由 28×28 像素的灰度图像组成。
- 这些图像被归一化以适应 28×28 像素的边界框并经过抗锯齿处理,从而引入了灰度级别。
- MNIST 在机器学习领域被广泛用于训练和测试,特别是针对图像分类任务。
Link to this section数据集结构#
MNIST 数据集被分为两个子集:
- 训练集:该子集包含 60,000 张用于训练机器学习模型的手写数字图像。
- 测试集:该子集包含 10,000 张用于测试和基准评估已训练模型的图像。
Link to this section数据集访问#
- 原始文件:如果你想直接控制预处理,请从原始 MNIST 档案中下载 gzip 压缩包。
- Ultralytics 加载器:在你的命令中使用
data="mnist"(或使用下方的子集data="mnist160"),数据集将自动下载、转换为 PNG 并进行缓存。
数据集中的每张图像都标有相应的数字(0-9),这使其成为非常适合分类任务的监督学习数据集。
Link to this section扩展 MNIST (EMNIST)#
扩展 MNIST (EMNIST) 是由 NIST 开发和发布的一种较新的数据集,旨在作为 MNIST 的继任者。虽然 MNIST 仅包含手写数字图像,但 EMNIST 包含了 NIST Special Database 19 中的所有图像,这是一个包含手写大小写字母和数字的大型数据库。EMNIST 中的图像通过与 MNIST 图像相同的过程转换成了相同的 28×28 像素格式。因此,适用于旧版、较小的 MNIST 数据集的工具很可能可以直接用于 EMNIST,无需修改。
Link to this section应用#
MNIST 数据集被广泛用于训练和评估图像分类任务中的深度学习模型,例如卷积神经网络 (CNN)、支持向量机 (SVM) 以及各种其他机器学习算法。该数据集简单且结构良好的格式使其成为机器学习和计算机视觉领域研究人员和从业者的重要资源。
一些常见的应用包括:
- 基准测试新的分类算法
- 用于教授机器学习概念的教育目的
- 原型设计图像识别系统
- 测试模型优化技术
Link to this section用法#
要在 MNIST 数据集上训练 CNN 模型 100 个周期,图像尺寸为 28×28,你可以使用以下代码片段。有关可用参数的完整列表,请参考模型训练页面。
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 section样本图像和标注#
MNIST 数据集包含手写数字的灰度图像,为图像分类任务提供了一个结构良好的数据集。以下是来自该数据集的图像示例:

该示例展示了 MNIST 数据集中手写数字的多样性和复杂性,强调了多样化数据集对于训练稳健的图像分类模型的重要性。
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 sectionMNIST160 快速测试#
需要进行闪电般的回归测试吗?Ultralytics 还提供了 data="mnist160",这是一个包含 160 张图像的切片,包含来自训练集和测试集的前八张数字(0-9)图像。它映射了 MNIST 目录结构,因此你可以在不更改任何其他参数的情况下更换数据集:
yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28在提交完整 70,000 张图像的数据集之前,请使用此子集进行 CI 管道测试或完整性检查。
Link to this section常见问题解答#
Link to this section什么是 MNIST 数据集,为什么它在机器学习中很重要?#
MNIST 数据集,即修改后的国家标准与技术研究院数据集,是一个广泛使用的手写数字集合,旨在用于训练和测试图像分类系统。它包括 60,000 张训练图像和 10,000 张测试图像,均为 28×28 像素的灰度图像。该数据集的重要性在于它作为评估图像分类算法的标准基准,帮助研究人员和工程师比较方法并跟踪领域进展。
Link to this section我该如何使用 Ultralytics YOLO 在 MNIST 数据集上训练模型?#
要使用 Ultralytics YOLO 在 MNIST 数据集上训练模型,你可以按照以下步骤操作:
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 和 EMNIST 数据集之间有什么区别?#
MNIST 数据集仅包含手写数字,而扩展 MNIST (EMNIST) 数据集既包含数字,也包含大小写字母。EMNIST 是作为 MNIST 的继任者开发的,并利用相同的 28×28 像素图像格式,使其与为原始 MNIST 数据集设计的工具和模型兼容。EMNIST 中更广泛的字符范围使其适用于更多种类的机器学习应用。
Link to this section我可以使用 Ultralytics Platform 在像 MNIST 这样的自定义数据集上训练模型吗?#
是的,你可以使用 Ultralytics Platform 在像 MNIST 这样的自定义数据集上训练模型。Ultralytics Platform 提供了一个用户友好的界面,用于上传数据集、训练模型和管理项目,而无需深厚的编码知识。有关如何开始的更多详细信息,请查看 Ultralytics Platform 快速入门页面。
Link to this sectionMNIST 与其他图像分类数据集相比如何?#
MNIST 比 CIFAR-10 或 ImageNet 等许多现代数据集更简单,非常适合初学者和快速实验。虽然更复杂的数据集在彩色图像和多样化的物体类别方面提出了更大的挑战,但 MNIST 因其简单性、较小的文件大小以及在机器学习算法发展中的历史意义而仍然具有价值。对于更高级的分类任务,请考虑使用 Fashion-MNIST,它保持了相同的结构,但包含了服装项目而不是数字。