ImageNet est une base de données visuelle à grande échelle conçue pour la recherche en logiciels de reconnaissance d'objets visuels. Elle contient plus de 14 millions d'images annotées manuellement indiquant quels objets sont représentés, avec au moins un million d'images fournissant également des boîtes englobantes. La base de données couvre plus de 20 000 catégories, chacune comprenant généralement plusieurs centaines d'images. Depuis 2010, le projet ImageNet organise un concours logiciel annuel, le ImageNet Large Scale Visual Recognition Challenge (ILSVRC), où des programmes informatiques s'affrontent pour classer et détecter correctement des objets et des scènes. Le défi utilise une liste réduite de mille classes non chevauchantes.
Le projet a été conçu par la chercheuse en IA Fei-Fei Li, qui a commencé à travailler sur l'idée en 2006. À une époque où la plupart des recherches en IA se concentraient sur les modèles et les algorithmes, Li visait à élargir et améliorer les données disponibles pour l'entraînement des algorithmes d'IA. En 2007, elle a rencontré Christiane Fellbaum, professeure à Princeton et l'une des créatrices de WordNet, pour discuter du projet. Cela a conduit à la construction d'ImageNet à partir des quelque 22 000 noms de WordNet et en utilisant de nombreuses de ses fonctionnalités. Li a également été inspirée par une estimation de 1987 selon laquelle une personne moyenne reconnaît environ 30 000 types d'objets différents.
Histoire et construction
En tant que professeure adjointe à Princeton, Li a réuni une équipe de chercheurs pour travailler sur le projet ImageNet. Ils ont utilisé Amazon Mechanical Turk pour aider à la classification des images. L'étiquetage a commencé en juillet 2008 et s'est terminé en avril 2010. Il a fallu 49 000 travailleurs de 167 pays pour filtrer et étiqueter plus de 160 millions d'images candidates. Le budget permettait que chacune des 14 millions d'images soit étiquetée trois fois.
Le plan initial prévoyait 10 000 images par catégorie, pour 40 000 catégories, soit 400 millions d'images, chacune vérifiée trois fois. Cependant, les humains peuvent classer au maximum deux images par seconde, et à ce rythme, il était estimé que cela prendrait 19 années-humaines de travail (sans repos). L'équipe a présenté la base de données pour la première fois sous forme de poster à la Conférence sur la vision par ordinateur et la reconnaissance de formes (CVPR) de 2009 en Floride, intitulé « ImageNet: A Preview of a Large-scale Hierarchical Dataset ». Le poster a été réutilisé à la Vision Sciences Society 2009.
En 2009, Alex Berg a suggéré d'ajouter la localisation d'objets comme tâche. Li a approché le concours PASCAL Visual Object Classes en 2009 pour une collaboration, ce qui a abouti au lancement du ImageNet Large Scale Visual Recognition Challenge en 2010. Le défi comportait 1000 classes et la localisation d'objets, par rapport au PASCAL VOC qui n'avait que 20 classes et 19 737 images en 2010.
Importance pour l'apprentissage profond
Le 30 septembre 2012, un réseau de neurones convolutif (CNN) appelé AlexNet a atteint une erreur top-5 de 15,3 % lors du défi ImageNet 2012, soit plus de 10,8 points de pourcentage de moins que le deuxième. L'utilisation de CNN était rendue possible grâce à l'utilisation de processeurs graphiques (GPU) pendant l'entraînement, un ingrédient essentiel de la révolution de l'apprentissage profond. Selon The Economist, « Soudainement, les gens ont commencé à prêter attention, non seulement au sein de la communauté de l'IA, mais dans toute l'industrie technologique ».
En 2015, AlexNet a été surpassé par le CNN très profond de Microsoft avec plus de 100 couches, qui a remporté le concours ImageNet 2015 avec une erreur de 3,57 % sur l'ensemble de test. Andrej Karpathy a estimé en 2014 qu'avec un effort concentré, il pourrait atteindre un taux d'erreur de 5,1 %, et environ 10 personnes de son laboratoire ont atteint environ 12-13 % avec moins d'effort. Il a été estimé qu'avec un effort maximal, un humain pourrait atteindre une erreur de 2,4 %.
Structure de la base de données
ImageNet externalise son processus d'annotation. Les annotations au niveau de l'image indiquent la présence ou l'absence d'une classe d'objets dans une image, comme « il y a des tigres dans cette image » ou « il n'y a pas de tigres dans cette image ». Les annotations au niveau de l'objet fournissent une boîte englobante autour de la partie visible de l'objet indiqué. ImageNet utilise une variante du schéma large de WordNet pour catégoriser les objets, augmenté de 120 catégories de races de chiens pour mettre en valeur la classification fine.
En 2012, ImageNet était le plus grand utilisateur académique de Mechanical Turk au monde, avec un travailleur moyen identifiant 50 images par minute. Le plan original pour l'ImageNet complet aurait environ 50 millions d'images propres, diverses et en pleine résolution réparties sur environ 50 000 synsets, mais cela n'a pas été réalisé.
Au 30 avril 2010, les statistiques récapitulatives étaient : nombre total de synsets non vides : 21 841 ; nombre total d'images : 14 197 122 ; nombre d'images avec annotations de boîtes englobantes : 1 034 908 ; nombre de synsets avec caractéristiques SIFT : 1 000 ; nombre d'images avec caractéristiques SIFT : 1,2 million.
Catégories
Les catégories d'ImageNet ont été filtrées à partir des concepts de WordNet. Chaque concept, puisqu'il peut contenir plusieurs synonymes (par exemple, « kitty » et « young cat »), est appelé un « ensemble de synonymes » ou « synset ». Il y avait plus de 100 000 synsets dans WordNet 3.0, la majorité étant des noms (plus de 80 000). La base de données ImageNet a filtré ces synsets pour obtenir 21 841 synsets qui sont des noms comptables pouvant être illustrés visuellement.
Chaque synset de WordNet 3.0 a un « identifiant WordNet » (wnid), qui est une concaténation de la partie du discours et d'un « offset » (un numéro d'identification unique). Chaque wnid commence par « n » car ImageNet n'inclut que des noms. Par exemple, le wnid du synset « chien, chien domestique, Canis familiaris » est « n02084071 ». Les catégories se répartissent en 9 niveaux, du niveau 1 (comme « mammifère ») au niveau 9 (comme « berger allemand »).
Format des images
Les images ont été extraites de moteurs de recherche d'images en ligne (Google, Picsearch, MSN, Yahoo, Flickr, etc.) en utilisant des synonymes dans plusieurs langues. Par exemple, pour le berger allemand : chien de police allemand, alsacien, ovejero alemán, pastore tedesco, 德国牧羊犬. ImageNet se compose d'images au format RVB avec des résolutions variables. Par exemple, dans la catégorie « poisson » d'ImageNet 2012, la résolution varie de 4288 x 2848 à 75 x 56. En apprentissage automatique, celles-ci sont généralement prétraitées en une résolution constante standard et blanchies avant un traitement ultérieur par des réseaux de neurones.
Par exemple, dans PyTorch, les images ImageNet sont par défaut normalisées en divisant les valeurs des pixels pour qu'elles se situent entre 0 et 1, puis en soustrayant [0,485, 0,456, 0,406] et en divisant par [0,229, 0,224, 0,225]. Ce sont les moyennes et écarts types pour ImageNet, ce qui blanchit les données d'entrée.
Étiquettes et annotations
Chaque image est étiquetée avec exactement un wnid. Les caractéristiques SIFT denses (descripteurs SIFT bruts, mots de code quantifiés et coordonnées de chaque descripteur/mot de code) pour ImageNet-1K étaient disponibles en téléchargement, conçues pour le sac de mots visuels. Les boîtes englobantes des objets étaient disponibles pour environ 3 000 synsets populaires avec une moyenne de 150 images dans chaque synset. De plus, certaines images ont des annotations d'attributs, bien que les détails soient limités.
Héritage et impact
ImageNet est devenu une référence pour la recherche en apprentissage automatique et en vision par ordinateur, stimulant les progrès en intelligence artificielle. Son défi annuel a stimulé des innovations dans les réseaux de neurones convolutifs et d'autres architectures, influençant le domaine plus large de l'apprentissage profond. L'échelle et la structure de la base de données ont également informé les projets de données à grande échelle ultérieurs et le développement de techniques d'augmentation de données.