Ultralytics YOLO27 :

Jeu de données ImageNette#

Le jeu de données ImageNette est un sous-ensemble d’ImageNet composé de 10 classes faciles à distinguer, créé par fast.ai pour proposer une version d’ImageNet plus rapide et plus facile à utiliser pour le développement logiciel et l’enseignement. Il contient 13 394 images couleur — 9 469 pour l’entraînement et 3 925 pour la validation — réparties entre des classes telles que la tanche, le springer anglais, le lecteur de cassettes et le cor français. Ainsi, les modèles de classification d’images s’entraînent en quelques minutes au lieu des heures nécessaires avec les 1 000 classes d’ImageNet complet.

Fonctionnalités clés#

  • ImageNette contient 13 394 images réparties entre 10 classes : tanche, springer anglais, lecteur de cassettes, tronçonneuse, église, cor français, camion à ordures, pompe à essence, balle de golf et parachute.
  • Il est fourni avec une répartition prédéfinie de 9 469 images couleur pour l’entraînement et 3 925 pour la validation, de dimensions variées.
  • Ses 10 classes bien distinctes rendent ImageNette rapide à entraîner et facile à comprendre ; il est donc largement utilisé pour le prototypage et l’enseignement de la classification d’images.

Structure du jeu de données#

ImageNette est fourni avec une répartition prédéfinie entre entraînement et validation, chaque classe étant stockée dans son propre dossier :

PartitionImagesClasses
Entraînement9,46910
Validation3,92510

Le nombre exact d’images varie selon la classe, ce qui offre une distribution réaliste pour l’entraînement et l’évaluation rapides, sans atteindre l’échelle du jeu de données ImageNet complet.

Applications#

Le jeu de données ImageNette est largement utilisé pour entraîner et évaluer des modèles d’apprentissage profond dans des tâches de classification d’images, notamment des réseaux neuronaux convolutifs (CNN) et d’autres algorithmes d’apprentissage automatique. Son format simple et ses classes bien choisies en font une ressource pratique, aussi bien pour les débutants que pour les personnes expérimentées en apprentissage automatique et en vision par ordinateur.

Utilisation#

Pour entraîner un modèle sur le jeu de données ImageNette pendant 100 époques, avec une taille d’image standard de 224x224 pixels, utilise les extraits de code suivants. Pour consulter la liste complète des arguments disponibles, reporte-toi à la page Entraînement du modèle.

Exemple d’entraînement
from ultralytics import YOLO

# Charger un modèle
model = YOLO("yolo26n-cls.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)

# Entraîner le modèle
results = model.train(data="imagenette", epochs=100, imgsz=224)

Exemples d’images et annotations#

Le jeu de données ImageNette contient des images couleur de divers objets et scènes, offrant un ensemble varié pour les tâches de classification d’images. Voici quelques exemples d’images du jeu de données :

Exemples d’images du jeu de données de classification ImageNette

Cet exemple illustre la variété et la complexité des images du jeu de données ImageNette, et souligne l’importance d’un jeu de données varié pour entraîner des modèles de classification d’images robustes.

ImageNette160 et ImageNette320#

Pour accélérer le prototypage et l’entraînement, ImageNette est également disponible en deux tailles réduites : ImageNette160 et ImageNette320. Ces jeux de données conservent les mêmes classes et la même structure qu’ImageNette complet, mais leurs images sont redimensionnées selon une longueur maximale de bord plus petite. Ils sont particulièrement utiles pour les premiers tests de modèles ou lorsque les ressources de calcul sont limitées.

Pour utiliser ces jeux de données, remplace simplement imagenette par imagenette160 ou imagenette320 dans la commande d’entraînement. Les extraits de code suivants en donnent un exemple :

Exemple d’entraînement avec ImageNette160
from ultralytics import YOLO

# Charger un modèle
model = YOLO("yolo26n-cls.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)

# Entraîner le modèle avec ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
Exemple d’entraînement avec ImageNette320
from ultralytics import YOLO

# Charger un modèle
model = YOLO("yolo26n-cls.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)

# Entraîner le modèle avec ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)

Ces versions réduites du jeu de données permettent d’itérer rapidement pendant le développement tout en proposant des tâches réalistes de classification d’images. Tu peux également gérer des jeux de données de classification et lancer des entraînements dans le cloud avec Ultralytics Platform.

Citations et remerciements#

Si tu utilises le jeu de données ImageNette dans tes travaux de recherche ou de développement, pense à le mentionner comme il se doit. Pour en savoir plus sur ImageNette, consulte la page GitHub du jeu de données ImageNette.

Nous tenons à remercier l’équipe fast.ai d’avoir créé et maintenu ImageNette, une ressource précieuse pour la communauté de l’apprentissage automatique et de la recherche en vision par ordinateur.

FAQ#

  • Le jeu de données ImageNette est un sous-ensemble simplifié d’ImageNet, composé de 10 classes faciles à distinguer, comme la tanche, le springer anglais et le cor français. Il contient 13 394 images (9 469 pour l’entraînement et 3 925 pour la validation) et a été créé par fast.ai pour offrir un jeu de données plus facile à gérer, permettant d’entraîner et d’évaluer efficacement des modèles de classification d’images. Il est donc particulièrement utile pour le développement logiciel rapide et l’enseignement de l’apprentissage automatique et de la vision par ordinateur.

  • ImageNette contient 13 394 images au total — 9 469 pour l’entraînement et 3 925 pour la validation — réparties entre 10 classes : tanche, springer anglais, lecteur de cassettes, tronçonneuse, église, cor français, camion à ordures, pompe à essence, balle de golf et parachute. Chaque classe est stockée dans son propre dossier, conformément à l’organisation standard des jeux de données de classification attendue par Ultralytics.

  • Pour entraîner un modèle YOLO sur ImageNette pendant 100 époques, utilise les commandes suivantes. Vérifie que ton environnement Ultralytics YOLO est configuré.

    Exemple d’entraînement
    from ultralytics import YOLO
    
    # Charger un modèle
    model = YOLO("yolo26n-cls.pt")  # charger un modèle préentraîné (recommandé pour l’entraînement)
    
    # Entraîner le modèle
    results = model.train(data="imagenette", epochs=100, imgsz=224)

    Pour plus de détails, consulte la page de documentation sur l’entraînement.

  • Le jeu de données ImageNette présente plusieurs avantages :

    • Rapide et simple : avec seulement 10 classes et environ 13 000 images, son entraînement est bien moins complexe et chronophage que celui du jeu de données ImageNet complet.
    • Usage pédagogique : idéal pour apprendre et enseigner les bases de la classification d’images, car il nécessite moins de puissance de calcul et de temps.
    • Polyvalence : largement utilisé pour entraîner et évaluer des modèles de classification d’images, en particulier les réseaux neuronaux convolutifs (CNN).

    Pour plus de détails sur l’entraînement des modèles et la gestion des jeux de données, consulte la section Structure des jeux de données.

  • Oui, ImageNette est également disponible en deux versions redimensionnées, ImageNette160 et ImageNette320, dont les images ont une longueur maximale de bord plus petite. Ces versions accélèrent le prototypage et sont particulièrement utiles lorsque les ressources de calcul sont limitées.

    Exemple d’entraînement avec ImageNette160
    from ultralytics import YOLO
    
    # Charger un modèle
    model = YOLO("yolo26n-cls.pt")
    
    # Entraîner le modèle avec ImageNette160
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    Pour en savoir plus, consulte Entraînement avec ImageNette160 et ImageNette320.

  • Le jeu de données ImageNette est largement utilisé dans les domaines suivants :

    • Enseignement : pour enseigner aux débutants les principes fondamentaux de l’apprentissage automatique et de la vision par ordinateur.
    • Développement logiciel : pour le prototypage rapide et le développement de modèles de classification d’images.
    • Recherche en apprentissage profond : pour évaluer et comparer les performances de différents modèles d’apprentissage profond, en particulier les réseaux neuronaux convolutifs (CNN).

    Consulte la section Applications pour découvrir des cas d’utilisation détaillés.

Commentaires