Ultralytics YOLO27:

Dataset ImageNette#

Il dataset ImageNette è un sottoinsieme di ImageNet con 10 classi facilmente distinguibili, creato da fast.ai per fornire una versione di ImageNet più rapida e facile da usare per lo sviluppo software e la formazione. Contiene 13.394 immagini a colori — 9.469 per l'addestramento e 3.925 per la convalida — che comprendono classi come tinca, springer inglese, lettore di cassette e corno francese, consentendo ai modelli di classificazione delle immagini di addestrarsi in pochi minuti invece che nelle ore richieste da ImageNet completo, con 1.000 classi.

Funzionalità principali#

  • ImageNette contiene 13.394 immagini suddivise in 10 classi: tinca, springer inglese, lettore di cassette, motosega, chiesa, corno francese, camion della spazzatura, pompa di benzina, pallina da golf e paracadute.
  • Viene fornito con una suddivisione predefinita di 9.469 immagini a colori per l'addestramento e 3.925 per la convalida, con dimensioni variabili.
  • Le 10 classi ben distinte rendono ImageNette rapido da addestrare e facile da analizzare, perciò viene ampiamente utilizzato per la prototipazione e l'insegnamento della classificazione delle immagini.

Struttura del dataset#

ImageNette viene fornito con una suddivisione predefinita tra addestramento e convalida, con ogni classe memorizzata nella propria cartella:

SuddivisioneImmaginiClassi
Addestramento9,46910
Convalida3,92510

Il numero esatto di immagini varia a seconda della classe, fornendo una distribuzione realistica per l'addestramento rapido e il benchmarking senza le dimensioni del dataset ImageNet completo.

Applicazioni#

Il dataset ImageNette è ampiamente utilizzato per addestrare e valutare modelli di deep learning in attività di classificazione delle immagini, come le reti neurali convoluzionali (CNNs) e altri algoritmi di machine learning. Il suo formato intuitivo e le classi selezionate con cura lo rendono una risorsa utile sia per chi è alle prime armi sia per i professionisti esperti nel campo del machine learning e della computer vision.

Utilizzo#

Per addestrare un modello sul dataset ImageNette per 100 epoche con una dimensione standard delle immagini di 224x224, puoi utilizzare i seguenti frammenti di codice. Per un elenco completo degli argomenti disponibili, consulta la pagina Addestramento del modello.

Esempio di addestramento
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="imagenette", epochs=100, imgsz=224)

Immagini ed esempi di annotazioni#

Il dataset ImageNette contiene immagini a colori di vari oggetti e scenari, fornendo un dataset diversificato per le attività di classificazione delle immagini. Ecco alcuni esempi di immagini del dataset:

Immagini di esempio del dataset di classificazione ImageNette

L'esempio mostra la varietà e la complessità delle immagini nel dataset ImageNette, evidenziando l'importanza di un dataset diversificato per addestrare modelli robusti di classificazione delle immagini.

ImageNette160 e ImageNette320#

Per una prototipazione e un addestramento più rapidi, ImageNette è disponibile anche in due dimensioni ridotte: ImageNette160 e ImageNette320. Questi dataset mantengono le stesse classi e la stessa struttura di ImageNette completo, ma le immagini vengono ridimensionate a una lunghezza massima del bordo inferiore. Sono particolarmente utili per i test preliminari dei modelli o quando le risorse computazionali sono limitate.

Per utilizzare questi dataset, sostituisci semplicemente imagenette con imagenette160 o imagenette320 nel comando di addestramento. I seguenti frammenti di codice lo illustrano:

Esempio di addestramento con ImageNette160
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
Esempio di addestramento con ImageNette320
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)

Queste versioni più piccole del dataset consentono iterazioni rapide durante lo sviluppo, fornendo al contempo attività realistiche di classificazione delle immagini. Puoi anche gestire i dataset di classificazione ed eseguire l'addestramento nel cloud con Ultralytics Platform.

Citazioni e ringraziamenti#

Se utilizzi il dataset ImageNette nel tuo lavoro di ricerca o sviluppo, cita correttamente la fonte. Per ulteriori informazioni su ImageNette, visita la pagina GitHub del dataset ImageNette.

Desideriamo ringraziare il team di fast.ai per aver creato e mantenuto ImageNette come risorsa preziosa per la comunità di ricerca nel campo del machine learning e della computer vision.

FAQ#

  • Il dataset ImageNette è un sottoinsieme semplificato di ImageNet con 10 classi facilmente distinguibili, tra cui tinca, springer inglese e corno francese. Contiene 13.394 immagini (9.469 per l'addestramento e 3.925 per la convalida) ed è stato creato da fast.ai per offrire un dataset più gestibile, adatto all'addestramento e alla valutazione efficienti dei modelli di classificazione delle immagini. Questo lo rende particolarmente utile per lo sviluppo rapido di software e per la formazione nel campo del machine learning e della computer vision.

  • ImageNette contiene complessivamente 13.394 immagini — 9.469 per l'addestramento e 3.925 per la convalida — suddivise in 10 classi: tinca, springer inglese, lettore di cassette, motosega, chiesa, corno francese, camion della spazzatura, pompa di benzina, pallina da golf e paracadute. Ogni classe è memorizzata nella propria cartella, seguendo il layout standard di classificazione previsto da Ultralytics.

  • Per addestrare un modello YOLO su ImageNette per 100 epoche, utilizza i seguenti comandi. Assicurati di aver configurato l'ambiente Ultralytics YOLO.

    Esempio di addestramento
    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="imagenette", epochs=100, imgsz=224)

    Per ulteriori dettagli, consulta la pagina della documentazione relativa all'addestramento.

  • Il dataset ImageNette offre diversi vantaggi:

    • Rapido e semplice: con sole 10 classi e circa 13.000 immagini, è molto meno complesso e richiede meno tempo per l'addestramento rispetto a ImageNet completo.
    • Uso didattico: ideale per imparare e insegnare i concetti fondamentali della classificazione delle immagini, poiché richiede meno potenza di calcolo e meno tempo.
    • Versatilità: ampiamente utilizzato per addestrare ed eseguire il benchmarking di modelli di classificazione delle immagini, in particolare reti neurali convoluzionali (CNNs).

    Per ulteriori dettagli sull'addestramento dei modelli e sulla gestione dei dataset, consulta la sezione Struttura del dataset.

  • Sì, ImageNette è disponibile anche in due versioni ridimensionate, ImageNette160 e ImageNette320, le cui immagini vengono ridimensionate a lunghezze massime del bordo inferiori. Queste versioni consentono una prototipazione più rapida e sono particolarmente utili quando le risorse computazionali sono limitate.

    Esempio di addestramento con ImageNette160
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")
    
    # Train the model with ImageNette160
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    Per ulteriori informazioni, consulta Addestramento con ImageNette160 e ImageNette320.

  • Il dataset ImageNette viene ampiamente utilizzato in:

    • Contesti didattici: per insegnare ai principianti i fondamenti del machine learning e della computer vision.
    • Sviluppo software: per la prototipazione rapida e lo sviluppo di modelli di classificazione delle immagini.
    • Ricerca nel deep learning: per valutare ed eseguire il benchmarking delle prestazioni di vari modelli di deep learning, in particolare delle reti neurali convoluzionali (CNNs).

    Esplora la sezione Applicazioni per conoscere casi d'uso dettagliati.

Commenti