Dataset MNIST#
Dataset MNIST (Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ được cải tiến) là một benchmark phân loại ảnh gồm 70.000 ảnh thang độ xám kích thước 28x28 về chữ số viết tay, thuộc 10 lớp — các chữ số từ 0 đến 9. Dataset đi kèm với phân chia định sẵn gồm 60.000 ảnh huấn luyện và 10.000 ảnh kiểm tra, từ lâu đã là benchmark tiêu chuẩn để đánh giá các thuật toán machine learning và thị giác máy tính. Với phiên bản tương đương khó hơn gồm ảnh quần áo, hãy xem dataset Fashion-MNIST liên quan; với ảnh màu, hãy xem CIFAR-10.
Khám phá MNIST trên Ultralytics Platform để xem trước các mẫu, kiểm tra thống kê dataset và sao chép dataset để huấn luyện.
Tính năng chính#
- MNIST có 60.000 ảnh huấn luyện và 10.000 ảnh kiểm tra về chữ số viết tay, tổng cộng 70.000 ảnh.
- Mỗi ảnh là hình chữ số đơn sắc kích thước 28x28, được chuẩn hóa kích thước và khử răng cưa để vừa với khung 20x20 rồi căn giữa trong khung 28x28.
- 10 lớp bao gồm các chữ số từ 0–9, với số lượng ảnh mỗi lớp tương đối cân bằng.
- Dataset đi kèm với phân chia train/test định sẵn, nên không cần phân chia thủ công hay tự động.
- MNIST là benchmark tiêu chuẩn cho nghiên cứu phân loại ảnh và deep learning.
Cấu trúc dataset#
MNIST đi kèm với phân chia chính thức, định sẵn, nên không cần phân vùng tự động hay thủ công:
- Các lớp: 10 (chữ số viết tay từ 0–9)
- Tổng số ảnh: 70.000 (ảnh xám 28x28)
- Tập huấn luyện: 60.000 ảnh
- Tập kiểm tra: 10.000 ảnh
MNIST không có thư mục xác thực riêng, vì vậy theo mặc định, Ultralytics sử dụng tập kiểm tra gồm 10.000 ảnh làm tập xác thực trong quá trình huấn luyện.
Mỗi ảnh được gán nhãn bằng chữ số tương ứng (0–9), khiến MNIST trở thành dataset có giám sát lý tưởng cho các tác vụ phân loại.
Ứng dụng#
MNIST được sử dụng rộng rãi để huấn luyện và đánh giá các model phân loại ảnh, từ mạng nơ-ron tích chập (CNNs) và máy vector hỗ trợ (SVMs) cổ điển đến các kiến trúc deep learning hiện đại. Ảnh thang độ xám nhỏ và 10 lớp chữ số giúp MNIST trở thành benchmark nhanh, có thể tái lập để so sánh thuật toán và thử nghiệm thị giác máy tính.
Một số ứng dụng phổ biến gồm:
- Benchmark các thuật toán phân loại mới
- Mục đích giáo dục, giảng dạy các khái niệm machine learning
- Tạo nguyên mẫu cho các hệ thống nhận dạng ảnh
- Kiểm thử các kỹ thuật tối ưu hóa model
Cách sử dụng#
Huấn luyện model phân loại YOLO trên MNIST trong 100 epoch với kích thước ảnh 28. Dataset sẽ tự động tải xuống và lưu vào bộ nhớ đệm khi sử dụng lần đầu; nếu muốn kiểm soát hoàn toàn quá trình tiền xử lý, bạn cũng có thể tải các kho lưu trữ gzip gốc từ cơ sở dữ liệu MNIST. Để xem danh sách đầy đủ các tham số hiện có, hãy xem trang Huấn luyện và hướng dẫn tác vụ phân loại ảnh.
from ultralytics import YOLO
# Tải model
model = YOLO("yolo26n-cls.pt") # tải model đã huấn luyện trước (được khuyến nghị khi huấn luyện)
# Huấn luyện model
results = model.train(data="mnist", epochs=100, imgsz=28)Ultralytics cũng cung cấp data="mnist160", một lát cắt gồm 160 ảnh, lấy tám ảnh đầu tiên của mỗi chữ số (0–9) từ cả tập train lẫn test. Lát cắt này phản ánh cấu trúc thư mục MNIST, vì vậy bạn có thể đổi dataset mà không cần thay đổi bất kỳ tham số nào khác — lý tưởng cho pipeline CI hoặc kiểm tra nhanh trước khi bắt đầu với dataset đầy đủ gồm 70.000 ảnh.
yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28Hình ảnh mẫu và annotation#
Ảnh mẫu từ dataset MNIST:

Các mẫu thể hiện sự đa dạng về kiểu chữ viết tay mà dataset ghi nhận trong 10 lớp chữ số.
Trích dẫn và lời cảm ơn#
Nếu sử dụng dataset MNIST trong nghiên cứu hoặc phát triển, vui lòng trích dẫn bài báo sau:
@article{lecun2010mnist,
title={MNIST handwritten digit database},
author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
journal={ATT Labs [Online]},
volume={2},
year={2010}
}Chúng tôi xin ghi nhận công lao của Yann LeCun, Corinna Cortes và Christopher J.C. Burges trong việc tạo và duy trì dataset MNIST, một tài nguyên quý giá cho cộng đồng nghiên cứu machine learning và thị giác máy tính. Để biết thêm thông tin về dataset MNIST và những người tạo ra dataset, hãy truy cập trang web dataset MNIST.
Câu hỏi thường gặp#
Dataset MNIST là benchmark gồm 70.000 ảnh thang độ xám kích thước 28x28 về chữ số viết tay, được chia thành 60.000 ảnh huấn luyện và 10.000 ảnh kiểm tra thuộc 10 lớp từ 0–9. Đây là tham chiếu tiêu chuẩn để đánh giá các thuật toán phân loại ảnh — định dạng nhỏ gọn, đồng nhất giúp nhà nghiên cứu và kỹ sư so sánh phương pháp cũng như theo dõi tiến độ với mức thiết lập tối thiểu, đó là lý do MNIST vẫn là benchmark đầu tiên phổ biến trong machine learning.
MNIST có 10 lớp — các chữ số viết tay từ 0 đến 9 — và tổng cộng 70.000 ảnh thang độ xám, mỗi ảnh có kích thước 28x28 pixel. Dataset đi kèm với phân chia định sẵn gồm 60.000 ảnh huấn luyện và 10.000 ảnh kiểm tra, với số lượng mẫu cho mỗi chữ số tương đối đồng đều.
Để huấn luyện model Ultralytics YOLO trên MNIST, hãy dùng các đoạn code bên dưới. Dataset sẽ tự động tải xuống khi sử dụng lần đầu. Để xem danh sách chi tiết các tham số huấn luyện hiện có, hãy tham khảo trang Huấn luyện.
Ví dụ huấn luyệnfrom ultralytics import YOLO # Tải model model = YOLO("yolo26n-cls.pt") # tải model đã huấn luyện trước (được khuyến nghị khi huấn luyện) # Huấn luyện model results = model.train(data="mnist", epochs=100, imgsz=28)MNIST đi kèm với phân chia định sẵn gồm 60.000 ảnh huấn luyện và 10.000 ảnh kiểm tra. Không giống các dataset phân loại dựa trên thư mục được Ultralytics tự động phân chia, phân vùng chính thức của MNIST được giữ nguyên và theo mặc định, tập kiểm tra được dùng làm tập xác thực trong quá trình huấn luyện.
Dataset MNIST chỉ chứa chữ số viết tay, trong khi dataset MNIST mở rộng (EMNIST) bao gồm cả chữ số, chữ cái viết hoa và viết thường. EMNIST được phát triển như phiên bản kế nhiệm MNIST và sử dụng cùng định dạng pixel 28x28, nhờ đó tương thích với các công cụ và model được thiết kế cho dataset MNIST gốc. Phạm vi ký tự rộng hơn này giúp EMNIST hữu ích cho nhiều ứng dụng machine learning hơn.
Có. Ultralytics Platform cho phép bạn tải dataset lên, huấn luyện model phân loại ảnh và triển khai chúng mà không cần viết nhiều code. Đây là cách thuận tiện để chạy thử nghiệm MNIST trên cloud — xem tổng quan về các dataset phân loại để biết thêm các lựa chọn liên quan.
MNIST đơn giản hơn nhiều dataset hiện đại như CIFAR-10 hoặc ImageNet, nên rất phù hợp cho người mới bắt đầu và thử nghiệm nhanh. Dù các dataset phức tạp hơn tạo ra thách thức lớn hơn với ảnh màu và nhiều loại đối tượng đa dạng, MNIST vẫn có giá trị nhờ sự đơn giản, dung lượng nhỏ và ý nghĩa lịch sử trong quá trình phát triển các thuật toán machine learning. Để có một phương án thay thế khó hơn nhưng giữ nguyên cấu trúc, hãy xem Fashion-MNIST, dataset có các mặt hàng quần áo thay vì chữ số.



