Imagenette est un sous-ensemble organisé du jeu de données ImageNet, contenant 10 classes facilement distinguables. Il a été créé pour offrir une alternative plus petite, plus rapide à télécharger et plus rapide à entraîner au jeu de données ImageNet complet, qui contient plus de 14 millions d'images réparties dans 20 000 catégories. Imagenette est largement utilisé dans les communautés de apprentissage automatique et de apprentissage profond pour le prototypage, le débogage et à des fins pédagogiques.
Le jeu de données a été introduit par Jeremy Howard, une figure éminente de la communauté d'apprentissage profond fast.ai, en 2019. Il a été conçu pour répondre aux défis pratiques liés au travail avec ImageNet, tels que sa taille massive et le besoin de ressources informatiques importantes. En réduisant le nombre de classes à 10 et en limitant le nombre total d'images, Imagenette permet aux chercheurs et aux praticiens d'itérer rapidement sur les architectures de modèles, les hyperparamètres et les techniques d'entraînement sans la surcharge du traitement de données à grande échelle.
Composition du jeu de données
Imagenette se compose de 10 classes délibérément choisies pour être visuellement distinctes, ce qui rend les tâches de classification relativement simples. Les classes incluent : la tanche (un type de poisson), l'épagneul springer anglais, le lecteur de cassettes, la tronçonneuse, l'église, le cor français, le camion à ordures, la pompe à essence, la balle de golf et le parachute. Chaque classe contient environ 1 000 images, ce qui donne un total d'environ 10 000 images. Les images proviennent du jeu de données ImageNet original et sont fournies en deux résolutions : 160 pixels (pour des expériences rapides) et 320 pixels (pour une fidélité supérieure). Le jeu de données est disponible en deux ensembles, un pour l'entraînement et un pour la validation, l'ensemble de validation contenant 10 % des images.
Objectif et cas d'utilisation
Imagenette sert de référence pour tester de nouvelles idées dans la recherche en intelligence artificielle et en réseaux de neurones. Sa petite taille le rend idéal pour vérifier qu'une architecture de modèle ou un pipeline d'entraînement fonctionne correctement avant de passer à des jeux de données plus grands comme ImageNet. Les cas d'utilisation courants incluent :
- Prototypage d'algorithmes : Les chercheurs peuvent tester rapidement de nouvelles fonctions de perte, des optimiseurs ou des techniques de régularisation.
- Démonstrations pédagogiques : Les instructeurs utilisent Imagenette pour enseigner les concepts de apprentissage profond sans nécessiter de ressources informatiques étendues.
- Réglage des hyperparamètres : Les praticiens peuvent expérimenter avec des programmes de taux d'apprentissage, la normalisation par lots et d'autres paramètres pour trouver des configurations optimales.
- Débogage : La simplicité du jeu de données aide à isoler les problèmes dans le chargement des données, l'implémentation du modèle ou les boucles d'entraînement.
Relation avec ImageNet
Imagenette est un sous-ensemble d'ImageNet, qui est une base de données visuelle à grande échelle conçue pour la recherche en reconnaissance d'objets visuels. ImageNet contient plus de 14 millions d'images annotées manuellement, et son concours annuel (ImageNet Large Scale Visual Recognition Challenge, ILSVRC) a été un moteur dans l'avancement de la vision par ordinateur et du apprentissage profond depuis 2010. Imagenette conserve le contenu et les étiquettes d'image d'origine mais réduit l'échelle, ce qui le rend plus accessible pour l'expérimentation. Il est souvent utilisé comme un test de cohérence avant de lancer des expériences sur ImageNet complet, qui nécessite des ressources GPU substantielles et du temps.
Considérations pratiques
Lors de l'utilisation d'Imagenette, les praticiens doivent être conscients de ses limites. Le jeu de données n'est pas représentatif de la complexité complète d'ImageNet, donc les résultats obtenus sur Imagenette peuvent ne pas se transférer directement à des problèmes à plus grande échelle. Cependant, il reste un outil précieux pour les tests initiaux et pour comparer les performances relatives de différentes approches. Le jeu de données est disponible en téléchargement sur le site web de fast.ai et peut être facilement intégré à des frameworks d'apprentissage profond populaires tels que PyTorch et TensorFlow. Sa petite taille le rend également adapté à une utilisation dans des environnements avec un stockage ou une bande passante limités, comme les notebooks basés sur le cloud ou les appareils de périphérie.