Dataset MNIST

Il dataset MNIST (Modified National Institute of Standards and Technology) è un ampio database di cifre scritte a mano comunemente usato per addestrare vari sistemi di elaborazione delle immagini e modelli di machine learning. È stato creato "ricombinando" i campioni dai dataset originali del NIST ed è diventato un punto di riferimento per valutare le prestazioni degli algoritmi di classificazione delle immagini.

Caratteristiche principali

  • MNIST contiene 60.000 immagini di addestramento e 10.000 immagini di test di cifre scritte a mano.
  • Il dataset comprende immagini in scala di grigi di dimensioni 28×28 pixel.
  • Le immagini sono normalizzate per adattarsi a un bounding box di 28×28 pixel e anti-aliased, introducendo livelli di scala di grigi.
  • MNIST è ampiamente utilizzato per l'addestramento e il test nel campo del machine learning, specialmente per compiti di classificazione delle immagini.

Struttura del dataset

Il dataset MNIST è diviso in due sottoinsiemi:

  1. Training Set: questo sottoinsieme contiene 60.000 immagini di cifre scritte a mano utilizzate per addestrare modelli di machine learning.
  2. Testing Set: Questo sottoinsieme consiste in 10.000 immagini utilizzate per testare e valutare i modelli addestrati.

Accesso al dataset

  • File originali: scarica gli archivi gzip dal database originale MNIST se desideri un controllo diretto sulla pre-elaborazione.
  • Caricatore Ultralytics: usa data="mnist" (o data="mnist160" per il sottoinsieme di seguito) nel tuo comando e il dataset verrà scaricato, convertito in PNG e memorizzato nella cache automaticamente.

Ogni immagine nel dataset è etichettata con la cifra corrispondente (0-9), rendendolo un dataset di apprendimento supervisionato ideale per compiti di classificazione.

Extended MNIST (EMNIST)

Extended MNIST (EMNIST) è un dataset più recente sviluppato e rilasciato dal NIST per essere il successore di MNIST. Mentre MNIST includeva solo immagini di cifre scritte a mano, EMNIST include tutte le immagini del NIST Special Database 19, un ampio database di lettere maiuscole e minuscole scritte a mano, oltre alle cifre. Le immagini in EMNIST sono state convertite nello stesso formato 28×28 pixel, tramite lo stesso processo delle immagini MNIST. Di conseguenza, gli strumenti che funzionano con il dataset MNIST, più vecchio e più piccolo, probabilmente funzioneranno senza modifiche con EMNIST.

Applicazioni

Il dataset MNIST è ampiamente utilizzato per addestrare e valutare modelli di deep learning in compiti di classificazione delle immagini, come Convolutional Neural Networks (CNN), Support Vector Machines (SVM) e vari altri algoritmi di machine learning. Il formato semplice e ben strutturato del dataset lo rende una risorsa essenziale per ricercatori e professionisti nel campo del machine learning e della computer vision.

Alcune applicazioni comuni includono:

  • Benchmarking di nuovi algoritmi di classificazione
  • Scopi educativi per insegnare concetti di machine learning
  • Prototipazione di sistemi di riconoscimento immagini
  • Test di tecniche di ottimizzazione dei modelli

Utilizzo

Per addestrare un modello CNN sul dataset MNIST per 100 epochs con una dimensione dell'immagine di 28×28, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, consulta la pagina Training del modello.

Esempio di training
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)

Immagini campione e annotazioni

Il dataset MNIST contiene immagini in scala di grigi di cifre scritte a mano, fornendo un dataset ben strutturato per compiti di classificazione delle immagini. Ecco alcuni esempi di immagini dal dataset:

Campioni del dataset di classificazione di cifre scritte a mano MNIST

L'esempio mostra la varietà e la complessità delle cifre scritte a mano nel dataset MNIST, evidenziando l'importanza di un dataset diversificato per l'addestramento di modelli di classificazione delle immagini robusti.

Citazioni e ringraziamenti

Se utilizzi il dataset MNIST nel tuo lavoro di ricerca o sviluppo, ti preghiamo di citare il seguente documento:

Citazione
@article{lecun2010mnist,
         title={MNIST handwritten digit database},
         author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
         journal={ATT Labs [Online]},
         volume={2},
         year={2010}
}

Desideriamo ringraziare Yann LeCun, Corinna Cortes e Christopher J.C. Burges per aver creato e mantenuto il dataset MNIST come una risorsa preziosa per la comunità di ricerca di machine learning e computer vision. Per ulteriori informazioni sul dataset MNIST e i suoi creatori, visita il sito web del dataset MNIST.

Test rapidi con MNIST160

Hai bisogno di un test di regressione fulmineo? Ultralytics espone anche data="mnist160", una fetta di 160 immagini che contiene i primi otto campioni da ogni classe di cifre. Rispecchia la struttura delle directory di MNIST, quindi puoi scambiare i dataset senza modificare altri argomenti:

Esempio di training con MNIST160
yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28

Usa questo sottoinsieme per pipeline CI o controlli di integrità prima di passare al dataset completo da 70.000 immagini.

FAQ

Cos'è il dataset MNIST e perché è importante nel machine learning?

Il dataset MNIST, o dataset Modified National Institute of Standards and Technology, è una raccolta ampiamente utilizzata di cifre scritte a mano progettata per addestrare e testare sistemi di classificazione delle immagini. Include 60.000 immagini di addestramento e 10.000 immagini di test, tutte in scala di grigi e di dimensioni 28×28 pixel. L'importanza del dataset risiede nel suo ruolo di benchmark standard per la valutazione di algoritmi di classificazione delle immagini, aiutando ricercatori e ingegneri a confrontare metodi e monitorare i progressi nel campo.

Come posso usare Ultralytics YOLO per addestrare un modello sul dataset MNIST?

Per addestrare un modello sul dataset MNIST usando Ultralytics YOLO, puoi seguire questi passaggi:

Esempio di training
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)

Per un elenco dettagliato degli argomenti di training disponibili, consulta la pagina Training.

Qual è la differenza tra i dataset MNIST ed EMNIST?

Il dataset MNIST contiene solo cifre scritte a mano, mentre il dataset Extended MNIST (EMNIST) include sia cifre che lettere maiuscole e minuscole. EMNIST è stato sviluppato come successore di MNIST e utilizza lo stesso formato 28×28 pixel per le immagini, rendendolo compatibile con strumenti e modelli progettati per il dataset MNIST originale. Questa gamma più ampia di caratteri in EMNIST lo rende utile per una maggiore varietà di applicazioni di machine learning.

Posso usare Ultralytics Platform per addestrare modelli su dataset personalizzati come MNIST?

Sì, puoi usare Ultralytics Platform per addestrare modelli su dataset personalizzati come MNIST. Ultralytics Platform offre un'interfaccia intuitiva per caricare dataset, addestrare modelli e gestire progetti senza bisogno di ampie conoscenze di programmazione. Per maggiori dettagli su come iniziare, dai un'occhiata alla pagina Ultralytics Platform Quickstart.

Come si confronta MNIST con altri dataset di classificazione delle immagini?

MNIST è più semplice di molti dataset moderni come CIFAR-10 o ImageNet, rendendolo ideale per principianti e per sperimentazioni rapide. Sebbene dataset più complessi offrano sfide maggiori con immagini a colori e diverse categorie di oggetti, MNIST rimane prezioso per la sua semplicità, le dimensioni ridotte dei file e il suo significato storico nello sviluppo di algoritmi di machine learning. Per compiti di classificazione più avanzati, prendi in considerazione l'utilizzo di Fashion-MNIST, che mantiene la stessa struttura ma presenta articoli di abbigliamento invece di cifre.

Commenti