Ultralytics YOLO27:

Dataset MNIST#

Il dataset MNIST (Istituto nazionale di standard e tecnologia modificato) è un benchmark di classificazione delle immagini composto da 70.000 immagini in scala di grigi di 28x28 pixel, raffiguranti cifre scritte a mano appartenenti a 10 classi — le cifre da 0 a 9. Include una suddivisione predefinita in 60.000 immagini di addestramento e 10.000 immagini di test e da tempo rappresenta il benchmark standard per valutare gli algoritmi di machine learning e visione artificiale. Per l'equivalente più impegnativo basato su immagini di abbigliamento, consulta il dataset Fashion-MNIST; per le immagini a colori, consulta CIFAR-10.

Esplora MNIST sulla piattaforma Ultralytics per visualizzare esempi, esaminare le statistiche del dataset e clonarlo per l'addestramento.

Funzionalità principali#

  • MNIST contiene 60.000 immagini di addestramento e 10.000 immagini di test raffiguranti cifre scritte a mano, per un totale di 70.000 immagini.
  • Ogni immagine è una figura in scala di grigi di 28x28 pixel raffigurante una singola cifra, normalizzata nelle dimensioni e con antialiasing per adattarsi a un riquadro di 20x20 e centrata nel riquadro di 28x28.
  • Le 10 classi comprendono le cifre da 0 a 9, con un numero approssimativamente bilanciato di immagini per classe.
  • Include una suddivisione predefinita tra addestramento e test, quindi non è necessario effettuare una suddivisione manuale o automatica.
  • MNIST è un benchmark standard per la ricerca sulla classificazione delle immagini e sul deep learning.

Struttura del dataset#

MNIST include una suddivisione ufficiale predefinita, quindi non è necessaria alcuna partizione automatica o manuale:

  • Classi: 10 (cifre scritte a mano da 0 a 9)
  • Immagini totali: 70.000 (28x28 in scala di grigi)
  • Set di addestramento: 60.000 immagini
  • Set di test: 10.000 immagini
Set di convalida

MNIST non dispone di una cartella di validazione separata, quindi durante l'addestramento Ultralytics usa per impostazione predefinita il set di test da 10.000 immagini come set di validazione.

Ogni immagine è etichettata con la cifra corrispondente (da 0 a 9), rendendo MNIST un dataset supervisionato ideale per le attività di classificazione.

Applicazioni#

MNIST è ampiamente usato per addestrare e valutare modelli di classificazione delle immagini, dalle classiche reti neurali convoluzionali (CNNs) e macchine a vettori di supporto (SVMs) fino alle architetture deep learning moderne. Le immagini in scala di grigi di piccole dimensioni e le 10 classi di cifre ne fanno un benchmark rapido e riproducibile per confrontare gli algoritmi e sperimentare con la visione artificiale.

Alcune applicazioni comuni includono:

  • Benchmarking di nuovi algoritmi di classificazione
  • Finalità didattiche per insegnare i concetti di machine learning
  • Prototipazione di sistemi di riconoscimento delle immagini
  • Test delle tecniche di ottimizzazione dei modelli

Utilizzo#

Addestra un modello di classificazione YOLO su MNIST per 100 epoche con immagini di dimensioni 28. Al primo utilizzo, il dataset viene scaricato e memorizzato automaticamente nella cache; se preferisci avere il pieno controllo sul pre-processing, gli archivi gzip originali sono disponibili anche nel database MNIST. Per l'elenco completo degli argomenti disponibili, consulta la pagina Training e la guida all'attività di classificazione delle immagini.

Esempio di addestramento
from ultralytics import YOLO

# Carica un modello
model = YOLO("yolo26n-cls.pt")  # carica un modello preaddestrato (consigliato per l'addestramento)

# Addestra il modello
results = model.train(data="mnist", epochs=100, imgsz=28)
Test rapidi con MNIST160

Ultralytics mette a disposizione anche data="mnist160", una porzione di 160 immagini che contiene le prime otto immagini di ogni cifra (da 0 a 9) sia dal set di addestramento sia da quello di test. Rispecchia la struttura delle directory MNIST, quindi puoi sostituire il dataset senza modificare gli altri argomenti: è ideale per le pipeline CI o per controlli di integrità prima di passare al dataset completo da 70.000 immagini.

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

Immagini di esempio e annotazioni#

Esempi di immagini del dataset MNIST:

Esempi del dataset MNIST di classificazione delle cifre scritte a mano

Gli esempi mostrano la varietà di stili di scrittura acquisita dal dataset nelle 10 classi di cifre.

Citazioni e ringraziamenti#

Se usi il dataset MNIST nelle tue attività di ricerca o sviluppo, cita il seguente articolo:

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, una risorsa preziosa per la comunità di ricerca nel machine learning e nella visione artificiale. Per maggiori informazioni sul dataset MNIST e sui suoi creatori, visita il sito web del dataset MNIST.

Domande frequenti#

  • Il dataset MNIST è un benchmark composto da 70.000 immagini in scala di grigi di 28x28 pixel, raffiguranti cifre scritte a mano, suddivise in 60.000 immagini di addestramento e 10.000 di test appartenenti alle 10 classi da 0 a 9. È il riferimento standard per valutare gli algoritmi di classificazione delle immagini: il formato uniforme e di piccole dimensioni consente a ricercatori e ingegneri di confrontare i metodi e monitorare i progressi con una configurazione minima, motivo per cui rimane un benchmark iniziale comune nel machine learning.

  • MNIST contiene 10 classi — le cifre scritte a mano da 0 a 9 — e un totale di 70.000 immagini in scala di grigi, ciascuna di 28x28 pixel. Include una suddivisione predefinita in 60.000 immagini di addestramento e 10.000 immagini di test, con un numero approssimativamente uniforme di esempi per cifra.

  • Per addestrare un modello Ultralytics YOLO su MNIST, usa gli snippet di codice qui sotto. Al primo utilizzo, il dataset viene scaricato automaticamente. Per un elenco dettagliato degli argomenti di addestramento disponibili, consulta la pagina Training.

    Esempio di addestramento
    from ultralytics import YOLO
    
    # Carica un modello
    model = YOLO("yolo26n-cls.pt")  # carica un modello preaddestrato (consigliato per l'addestramento)
    
    # Addestra il modello
    results = model.train(data="mnist", epochs=100, imgsz=28)
  • MNIST include una suddivisione predefinita in 60.000 immagini di addestramento e 10.000 immagini di test. A differenza dei dataset di classificazione basati su cartelle, che Ultralytics suddivide automaticamente, la partizione ufficiale di MNIST viene usata così com'è e, per impostazione predefinita, durante l'addestramento il set di test funge da set di validazione.

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

  • Sì. Ultralytics Platform ti consente di caricare dataset, addestrare modelli di classificazione delle immagini e distribuirli senza dover scrivere molto codice. È un modo pratico per eseguire esperimenti con MNIST nel cloud: consulta la panoramica dei dataset di classificazione per scoprire le opzioni correlate.

  • MNIST è più semplice di molti dataset moderni come CIFAR-10 o ImageNet, il che lo rende ideale per chi è alle prime armi e per la sperimentazione rapida. Sebbene i dataset più complessi offrano sfide maggiori grazie alle immagini a colori e alle diverse categorie di oggetti, MNIST rimane prezioso per la sua semplicità, le dimensioni ridotte dei file e il suo significato storico nello sviluppo degli algoritmi di machine learning. Per un'alternativa più impegnativa con la stessa struttura, consulta Fashion-MNIST, che contiene capi di abbigliamento invece di cifre.

Commenti