MNIST-Datensatz
Der MNIST-Datensatz (Modified National Institute of Standards and Technology) ist eine große Datenbank mit handgeschriebenen Ziffern, die häufig zum Trainieren verschiedener Bildverarbeitungssysteme und Modelle des maschinellen Lernens verwendet wird. Er wurde durch das "Neu-Mischen" der Stichproben aus den Originaldatensätzen des NIST erstellt und hat sich zu einem Benchmark für die Bewertung der Leistung von Bildklassifizierungsalgorithmen entwickelt.
Hauptmerkmale
- MNIST enthält 60.000 Trainingsbilder und 10.000 Testbilder von handgeschriebenen Ziffern.
- Der Datensatz umfasst Graustufenbilder der Größe 28×28 Pixel.
- Die Bilder werden normalisiert, um in einen 28×28-Pixel-Bounding Box zu passen, und Anti-Aliasing wird angewendet, wodurch Graustufen eingeführt werden.
- MNIST wird häufig für das Training und Testen im Bereich des maschinellen Lernens verwendet, insbesondere für Bildklassifizierungsaufgaben.
Dataset-Struktur
Der MNIST-Datensatz ist in zwei Teilmengen unterteilt:
- Trainingsdatensatz: Diese Teilmenge enthält 60.000 Bilder von handgeschriebenen Ziffern, die zum Trainieren von Modellen des maschinellen Lernens verwendet werden.
- Testdatensatz: Diese Teilmenge besteht aus 10.000 Bildern, die zum Testen und Benchmarking der trainierten Modelle verwendet werden.
Jedes Bild im Datensatz ist mit der entsprechenden Ziffer (0-9) beschriftet, was es zu einem überwachten Lerndatensatz macht, der ideal für Klassifizierungsaufgaben ist.
Erweiterter MNIST (EMNIST)
Extended MNIST (EMNIST) ist ein neuerer Datensatz, der von NIST entwickelt und veröffentlicht wurde, um der Nachfolger von MNIST zu sein. Während MNIST nur Bilder von handgeschriebenen Ziffern enthielt, enthält EMNIST alle Bilder aus der NIST Special Database 19, einer großen Datenbank mit handgeschriebenen Groß- und Kleinbuchstaben sowie Ziffern. Die Bilder in EMNIST wurden durch den gleichen Prozess in das gleiche 28×28-Pixel-Format konvertiert wie die MNIST-Bilder. Dementsprechend funktionieren Tools, die mit dem älteren, kleineren MNIST-Datensatz arbeiten, wahrscheinlich unverändert mit EMNIST.
Anwendungen
Der MNIST-Datensatz wird häufig zum Trainieren und Evaluieren von Deep-Learning-Modellen in Bildklassifizierungsaufgaben verwendet, wie z. B. Convolutional Neural Networks (CNNs), Support Vector Machines (SVMs) und verschiedene andere Algorithmen für maschinelles Lernen. Das einfache und gut strukturierte Format des Datensatzes macht ihn zu einer unverzichtbaren Ressource für Forscher und Praktiker auf dem Gebiet des maschinellen Lernens und der Computer Vision.
Einige gängige Anwendungen sind:
- Benchmarking neuer Klassifizierungsalgorithmen
- Bildungszwecke zum Lehren von Konzepten des maschinellen Lernens
- Prototyping von Bilderkennungssystemen
- Testen von Modelloptimierungstechniken
Nutzung
Um ein CNN-Modell auf dem MNIST-Datensatz für 100 Epochen mit einer Bildgröße von 32×32 zu trainieren, können Sie die folgenden Code-Snippets verwenden. Eine umfassende Liste der verfügbaren Argumente finden Sie auf der Trainings-Seite des Modells.
Trainingsbeispiel
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-cls.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="mnist", epochs=100, imgsz=32)
# Start training from a pretrained *.pt model
yolo classify train data=mnist model=yolo11n-cls.pt epochs=100 imgsz=28
sample_images und Anmerkungen
Der MNIST-Datensatz enthält Graustufenbilder von handgeschriebenen Ziffern und bietet einen gut strukturierten Datensatz für Bildklassifizierungsaufgaben. Hier sind einige Beispiele für Bilder aus dem Datensatz:
Das Beispiel zeigt die Vielfalt und Komplexität der handgeschriebenen Ziffern im MNIST-Datensatz und unterstreicht die Bedeutung eines vielfältigen Datensatzes für das Training robuster Bildklassifizierungsmodelle.
Zitate und Danksagungen
Wenn Sie den MNIST-Datensatz in Ihrer Forschungs- oder Entwicklungsarbeit verwenden, zitieren Sie bitte das folgende Paper:
@article{lecun2010mnist,
title={MNIST handwritten digit database},
author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
journal={ATT Labs [Online]. Available: http://yann.lecun.com/exdb/mnist},
volume={2},
year={2010}
}
Wir möchten Yann LeCun, Corinna Cortes und Christopher J.C. Burges dafür anerkennen, dass sie den MNIST-Datensatz als wertvolle Ressource für die Machine-Learning- und Computer-Vision-Forschungsgemeinschaft erstellt und pflegen. Weitere Informationen über den MNIST-Datensatz und seine Urheber finden Sie auf der MNIST-Datensatz-Website.
FAQ
Was ist der MNIST-Datensatz und warum ist er im Bereich des maschinellen Lernens von Bedeutung?
Der MNIST-Datensatz, oder Modified National Institute of Standards and Technology-Datensatz, ist eine weit verbreitete Sammlung von handgeschriebenen Ziffern, die für das Training und Testen von Bildklassifizierungssystemen entwickelt wurde. Er enthält 60.000 Trainingsbilder und 10.000 Testbilder, die alle Graustufenbilder mit einer Größe von 28x28 Pixeln sind. Die Bedeutung des Datensatzes liegt in seiner Rolle als Standard-Benchmark für die Bewertung von Bildklassifizierungsalgorithmen, der Forschern und Ingenieuren hilft, Methoden zu vergleichen und Fortschritte in diesem Bereich zu verfolgen.
Wie kann ich Ultralytics YOLO verwenden, um ein Modell auf dem MNIST-Datensatz zu trainieren?
Um ein Modell auf dem MNIST-Datensatz mit Ultralytics YOLO zu trainieren, können Sie die folgenden Schritte ausführen:
Trainingsbeispiel
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n-cls.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="mnist", epochs=100, imgsz=32)
# Start training from a pretrained *.pt model
yolo classify train data=mnist model=yolo11n-cls.pt epochs=100 imgsz=28
Eine detaillierte Liste der verfügbaren Trainingsargumente finden Sie auf der Seite Training.
Was ist der Unterschied zwischen den Datensätzen MNIST und EMNIST?
Der MNIST-Datensatz enthält nur handgeschriebene Ziffern, während der Extended MNIST (EMNIST)-Datensatz sowohl Ziffern als auch Groß- und Kleinbuchstaben enthält. EMNIST wurde als Nachfolger von MNIST entwickelt und verwendet das gleiche 28×28-Pixel-Format für die Bilder, wodurch er mit Tools und Modellen kompatibel ist, die für den ursprünglichen MNIST-Datensatz entwickelt wurden. Diese größere Bandbreite an Zeichen in EMNIST macht ihn für eine größere Vielfalt von Anwendungen des maschinellen Lernens nützlich.
Kann ich Ultralytics HUB verwenden, um Modelle auf benutzerdefinierten Datensätzen wie MNIST zu trainieren?
Ja, Sie können Ultralytics HUB verwenden, um Modelle auf benutzerdefinierten Datensätzen wie MNIST zu trainieren. Ultralytics HUB bietet eine benutzerfreundliche Oberfläche zum Hochladen von Datensätzen, zum Trainieren von Modellen und zum Verwalten von Projekten, ohne dass umfangreiche Programmierkenntnisse erforderlich sind. Weitere Informationen zu den ersten Schritten finden Sie auf der Seite Ultralytics HUB Quickstart.
Wie schneidet MNIST im Vergleich zu anderen Bildklassifizierungsdatensätzen ab?
MNIST ist einfacher als viele moderne Datensätze wie CIFAR-10 oder ImageNet, was ihn ideal für Anfänger und schnelle Experimente macht. Während komplexere Datensätze größere Herausforderungen mit Farbbildern und verschiedenen Objektkategorien bieten, bleibt MNIST aufgrund seiner Einfachheit, geringen Dateigröße und historischen Bedeutung bei der Entwicklung von Algorithmen für maschinelles Lernen wertvoll. Für fortgeschrittenere Klassifizierungsaufgaben sollten Sie Fashion-MNIST verwenden, das die gleiche Struktur beibehält, aber Kleidungsstücke anstelle von Ziffern enthält.