Skip to content

Ensemble de données ImageNette

L'ensemble de données ImageNette est un sous-ensemble de l'ensemble de données Imagenet, mais il ne comprend que 10 classes faciles à distinguer. Il a été créé pour fournir une version plus rapide et plus facile à utiliser d'Imagenet pour le développement de logiciels et l'éducation.

Caractéristiques principales

  • ImageNette contient des images de 10 classes différentes telles que tanche, English springer, lecteur de cassettes, tronçonneuse, église, cor, camion à ordures, pompe à essence, balle de golf, parachute.
  • L'ensemble de données comprend des images colorées de différentes dimensions.
  • ImageNette est largement utilisé pour la formation et les tests dans le domaine de l'apprentissage automatique, en particulier pour les tâches de classification d'images.

Structure de l'ensemble de données

L'ensemble de données ImageNette est divisé en deux sous-ensembles :

  1. Ensemble d'entraînement: Ce sous-ensemble contient plusieurs milliers d'images utilisées pour l'entraînement des modèles d'apprentissage automatique. Le nombre exact varie selon les classes.
  2. Ensemble de validation: Ce sous-ensemble se compose de plusieurs centaines d'images utilisées pour valider et comparer les modèles formés. Là encore, le nombre exact varie selon les classes.

Applications

L'ensemble de données ImageNette est largement utilisé pour la formation et l'évaluation de modèles d'apprentissage profond dans les tâches de classification d'images, tels que les réseaux neuronaux convolutifs (CNN) et divers autres algorithmes d'apprentissage automatique. Le format simple de l'ensemble de données et les classes bien choisies en font une ressource pratique pour les praticiens débutants et expérimentés dans le domaine de l'apprentissage automatique et de la vision par ordinateur.

Utilisation

Pour entraîner un modèle sur l'ensemble de données ImageNette pour 100 époques avec une taille d'image standard de 224x224, vous pouvez utiliser les extraits de code suivants. Pour une liste complète des arguments disponibles, reportez-vous à la page d'entraînement du modèle.

Exemple de train

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="imagenette", epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

Exemples d'images et d'annotations

L'ensemble de données ImageNette contient des images colorées de divers objets et scènes, ce qui constitue un ensemble de données varié pour les tâches de classification d'images. Voici quelques exemples d'images tirées de l'ensemble de données :

Image de l'échantillon de l'ensemble de données

L'exemple montre la variété et la complexité des images de l'ensemble de données ImageNette, soulignant l'importance d'un ensemble de données diversifié pour l'apprentissage de modèles de classification d'images robustes.

ImageNette160 et ImageNette320

Pour un prototypage et une formation plus rapides, l'ensemble de données ImageNette est également disponible en deux tailles réduites : ImageNette160 et ImageNette320. Ces ensembles de données conservent les mêmes classes et la même structure que l'ensemble de données ImageNette, mais les images sont redimensionnées. Ces versions de l'ensemble de données sont donc particulièrement utiles pour tester des modèles préliminaires ou lorsque les ressources informatiques sont limitées.

Pour utiliser ces ensembles de données, il suffit de remplacer "imagenette" par "imagenette160" ou "imagenette320" dans la commande d'apprentissage. Les extraits de code suivants l'illustrent :

Exemple de formation avec ImageNette160

from ultralytics import YOLO

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

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
# Start training from a pretrained *.pt model with ImageNette160
yolo classify train data=imagenette160 model=yolo11n-cls.pt epochs=100 imgsz=160

Exemple de train avec ImageNette320

from ultralytics import YOLO

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

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)
# Start training from a pretrained *.pt model with ImageNette320
yolo classify train data=imagenette320 model=yolo11n-cls.pt epochs=100 imgsz=320

Ces versions réduites de l'ensemble de données permettent des itérations rapides au cours du processus de développement, tout en fournissant des tâches de classification d'images valables et réalistes.

Citations et remerciements

Si vous utilisez le jeu de données ImageNette dans le cadre de vos travaux de recherche ou de développement, veuillez le mentionner de manière appropriée. Pour plus d'informations sur le jeu de données ImageNette, visitez la page GitHub du jeu de données ImageNette.

FAQ

Qu'est-ce que l'ensemble de données ImageNette ?

L'ensemble de données ImageNette est un sous-ensemble simplifié de l'ensemble de données ImageNet, qui ne comprend que 10 classes faciles à distinguer, telles que la tanche, le springer English et le cor. Il a été créé pour offrir un ensemble de données plus facile à gérer afin de permettre une formation et une évaluation efficaces des modèles de classification d'images. Cet ensemble de données est particulièrement utile pour le développement rapide de logiciels et à des fins éducatives dans le domaine de l'apprentissage automatique et de la vision par ordinateur.

Comment puis-je utiliser l'ensemble de données ImageNette pour entraîner un modèle YOLO ?

Pour entraîner un modèle YOLO sur l'ensemble de données ImageNette pour 100 époques, vous pouvez utiliser les commandes suivantes. Assurez-vous que l'environnement Ultralytics YOLO est configuré.

Exemple de train

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="imagenette", epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

Pour plus de détails, voir la page de documentation sur la formation.

Pourquoi utiliser ImageNette pour des tâches de classification d'images ?

L'ensemble de données d'ImageNette est avantageux pour plusieurs raisons :

  • Rapide et simple: Il ne contient que 10 classes, ce qui le rend moins complexe et moins chronophage que des ensembles de données plus importants.
  • Utilisation pédagogique: idéale pour apprendre et enseigner les bases de la classification des images, car elle nécessite moins de puissance de calcul et de temps.
  • Polyvalence: Largement utilisé pour former et évaluer divers modèles d'apprentissage automatique, en particulier pour la classification d'images.

Pour plus de détails sur la formation des modèles et la gestion des ensembles de données, consultez la section Structure des ensembles de données.

Le jeu de données ImageNette peut-il être utilisé avec différentes tailles d'images ?

Oui, le jeu de données ImageNette est également disponible en deux versions redimensionnées : ImageNette160 et ImageNette320. Ces versions permettent un prototypage plus rapide et sont particulièrement utiles lorsque les ressources informatiques sont limitées.

Exemple de formation avec ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-cls.pt")

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
# Start training from a pretrained *.pt model with ImageNette160
yolo detect train data=imagenette160 model=yolo11n-cls.pt epochs=100 imgsz=160

Pour plus d'informations, reportez-vous à la section Formation avec ImageNette160 et ImageNette320.

Quelles sont les applications pratiques du jeu de données ImageNette ?

L'ensemble de données ImageNette est largement utilisé dans :

  • Paramètres pédagogiques: Former les débutants à l'apprentissage automatique et à la vision par ordinateur.
  • Développement de logiciels: Pour le prototypage et le développement rapides de modèles de classification d'images.
  • Recherche sur l'apprentissage profond: Évaluer et comparer les performances de divers modèles d'apprentissage profond, en particulier les réseaux neuronaux convolutifs (CNN).

La section Applications présente des cas d'utilisation détaillés.

📅C réé il y a 1 an ✏️ Mis à jour il y a 2 mois

Commentaires