Ultralytics YOLO27:

MNIST 数据集#

MNIST(修改后的国家标准与技术研究院)数据集是一个图像分类基准,包含 70,000 张 28x28 的手写数字灰度图像,涵盖 10 个类别,即数字 0 到 9。该数据集提供预定义的数据划分,包括 60,000 张训练图像和 10,000 张测试图像,并长期作为评估机器学习计算机视觉算法的标准基准。对于更具挑战性的服装图像替代数据集,请参阅相关的 Fashion-MNIST 数据集;对于彩色图像,请参阅 CIFAR-10

探索 Ultralytics Platform 上的 MNIST,预览样本、查看数据集统计信息,并克隆数据集用于训练。

主要特性#

  • MNIST 包含 60,000 张手写数字训练图像和 10,000 张测试图像,总计 70,000 张。
  • 每张图像都是一张 28x28 的单数字灰度图像,经过归一化和抗锯齿处理,并置于固定的 28x28 边界框中。
  • 10 个类别涵盖数字 0–9,每个类别的图像数量大致均衡。
  • 数据集提供预定义的训练集/测试集划分,因此无需手动或自动进行划分。
  • MNIST 是图像分类深度学习研究中的标准基准。

数据集结构#

MNIST 提供官方的预定义划分,因此无需自动或手动进行分区:

  • 类别:10 个(手写数字 0–9)
  • 图像总数:70,000(28x28 灰度图像)
  • 训练集:60,000 张图像
  • 测试集:10,000 张图像
验证集划分

MNIST 没有单独的验证文件夹,因此在训练期间,Ultralytics 默认使用包含 10,000 张图像的测试集作为验证集划分。

每张图像都标注了对应的数字(0–9),因此 MNIST 是一个适用于分类任务的监督学习数据集。

应用#

MNIST 被广泛用于训练和评估图像分类模型,涵盖经典的卷积神经网络(CNNs)和支持向量机(SVMs),以及现代深度架构。其小尺寸灰度图像和 10 个数字类别使其成为用于算法比较和计算机视觉实验的快速、可复现基准。

一些常见应用包括:

  • 对新的分类算法进行基准测试
  • 用于讲授机器学习概念的教育用途
  • 对图像识别系统进行原型设计
  • 测试模型优化技术

使用方法#

在 MNIST 上训练 YOLO 分类模型,训练 100 个周期,图像尺寸为 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)
使用 MNIST160 进行快速测试

Ultralytics 还提供 data="mnist160",这是一个包含 160 张图像的数据切片,其中包含训练集和测试集中每个数字(0–9)的前 8 张图像。它与 MNIST 的目录结构一致,因此你无需更改任何其他参数即可替换数据集,非常适合 CI 流水线或在使用完整的 70,000 张图像数据集之前进行健全性检查。

yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28

示例图像和标注#

MNIST 数据集中的示例图像:

MNIST 手写数字图像分类数据集示例

这些样本展示了该数据集在 10 个数字类别中涵盖的各种手写风格。

引用和致谢#

如果你在研究或开发工作中使用 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 数据集网站

常见问题#

  • MNIST 数据集是一个基准数据集,包含 70,000 张 28x28 的手写数字灰度图像,分为 10 个类别(0–9),其中 60,000 张用于训练,10,000 张用于测试。它是评估图像分类算法的标准参考,其小尺寸、统一格式让研究人员和工程师能够以极少的配置比较方法并跟踪进展,因此至今仍是机器学习中常用的首个基准。

  • MNIST 有 10 个类别,即手写数字 0 到 9;总计 70,000 张灰度图像,每张图像为 28x28 像素。数据集提供预定义的划分,包括 60,000 张训练图像和 10,000 张测试图像,每个数字的样本数量大致相同。

  • 要在 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)
  • MNIST 提供预定义的划分,包括 60,000 张训练图像和 10,000 张测试图像。与由 Ultralytics 自动划分的基于文件夹的分类数据集不同,MNIST 的官方分区会原样使用,训练期间默认将测试集作为验证集划分。

  • MNIST 数据集仅包含手写数字,而扩展 MNIST(EMNIST)数据集同时包含数字以及大写和小写字母。EMNIST 作为 MNIST 的后继数据集开发,采用相同的 28x28 像素格式,因此与为原始 MNIST 数据集设计的工具和模型兼容。更广泛的字符范围使 EMNIST 适用于更多种类的机器学习应用。

  • 可以。Ultralytics Platform 允许你上传数据集、训练图像分类模型,并在无需大量编码的情况下部署模型。它是在云端运行 MNIST 实验的便捷方式——有关相关选项,请参阅分类数据集概览

  • MNIST 比许多现代数据集更简单,例如 CIFAR-10ImageNet,因此非常适合初学者和快速实验。更复杂的数据集在彩色图像和多样化目标类别方面带来更大的挑战,但 MNIST 凭借其简单性、小文件大小以及在机器学习算法发展中的历史意义,仍然具有重要价值。对于结构相同但更具挑战性的直接替代数据集,请参阅 Fashion-MNIST,它包含服装物品而不是数字。

评论