ImageNet es una base de datos visual a gran escala diseñada para su uso en la investigación de software de reconocimiento de objetos visuales. Contiene más de 14 millones de imágenes anotadas manualmente que indican qué objetos aparecen en ellas, con al menos un millón de imágenes que también proporcionan cuadros delimitadores. La base de datos abarca más de 20,000 categorías, cada una de las cuales suele constar de varios cientos de imágenes. Desde 2010, el proyecto ImageNet ha organizado un concurso anual de software, el ImageNet Large Scale Visual Recognition Challenge (ILSVRC), donde los programas compiten para clasificar y detectar correctamente objetos y escenas. El desafío utiliza una lista recortada de mil clases no superpuestas.
El proyecto fue concebido por la investigadora de IA Fei-Fei Li, quien comenzó a trabajar en la idea en 2006. En una época en la que la mayor parte de la investigación en IA se centraba en modelos y algoritmos, Li buscaba ampliar y mejorar los datos disponibles para entrenar algoritmos de IA. En 2007, se reunió con la profesora de Princeton Christiane Fellbaum, una de las creadoras de WordNet, para discutir el proyecto. Esto llevó a construir ImageNet a partir de los aproximadamente 22,000 sustantivos de WordNet y utilizando muchas de sus características. Li también se inspiró en una estimación de 1987 de que la persona promedio reconoce alrededor de 30,000 tipos diferentes de objetos.
Historia y Construcción
Como profesora asistente en Princeton, Li reunió a un equipo de investigadores para trabajar en el proyecto ImageNet. Utilizaron Amazon Mechanical Turk para ayudar en la clasificación de imágenes. El etiquetado comenzó en julio de 2008 y terminó en abril de 2010. Se necesitaron 49,000 trabajadores de 167 países para filtrar y etiquetar más de 160 millones de imágenes candidatas. El presupuesto permitió que cada una de las 14 millones de imágenes fuera etiquetada tres veces.
El plan original requería 10,000 imágenes por categoría, para 40,000 categorías con 400 millones de imágenes, cada una verificada tres veces. Sin embargo, los humanos pueden clasificar como máximo dos imágenes por segundo, y a este ritmo se estimó que tomaría 19 años-hombre de trabajo (sin descanso). El equipo presentó la base de datos por primera vez como un póster en la Conferencia sobre Visión por Computador y Reconocimiento de Patrones (CVPR) de 2009 en Florida, titulado "ImageNet: A Preview of a Large-scale Hierarchical Dataset". El póster se reutilizó en Vision Sciences Society 2009.
En 2009, Alex Berg sugirió añadir la localización de objetos como tarea. Li se acercó al concurso PASCAL Visual Object Classes en 2009 para una colaboración, lo que resultó en el posterior ImageNet Large Scale Visual Recognition Challenge que comenzó en 2010. El desafío presentaba 1000 clases y localización de objetos, en comparación con PASCAL VOC que tenía solo 20 clases y 19,737 imágenes en 2010.
Importancia para el Aprendizaje Profundo
El 30 de septiembre de 2012, una red neuronal convolucional (CNN) llamada AlexNet logró un error top-5 del 15.3% en el ImageNet 2012 Challenge, más de 10.8 puntos porcentuales por debajo del subcampeón. El uso de CNN fue factible gracias al uso de unidades de procesamiento gráfico (GPU) durante el entrenamiento, un ingrediente esencial de la revolución del aprendizaje profundo. Según The Economist, "De repente, la gente empezó a prestar atención, no solo dentro de la comunidad de IA, sino en toda la industria tecnológica en su conjunto".
En 2015, AlexNet fue superada por la CNN muy profunda de Microsoft con más de 100 capas, que ganó el concurso ImageNet 2015 con un error del 3.57% en el conjunto de prueba. Andrej Karpathy estimó en 2014 que con un esfuerzo concentrado, podría alcanzar una tasa de error del 5.1%, y alrededor de 10 personas de su laboratorio alcanzaron aproximadamente un 12-13% con menos esfuerzo. Se estimó que con el máximo esfuerzo, un humano podría alcanzar un error del 2.4%.
Estructura del Conjunto de Datos
ImageNet externaliza su proceso de anotación. Las anotaciones a nivel de imagen indican la presencia o ausencia de una clase de objeto en una imagen, como "hay tigres en esta imagen" o "no hay tigres en esta imagen". Las anotaciones a nivel de objeto proporcionan un cuadro delimitador alrededor de la parte visible del objeto indicado. ImageNet utiliza una variante del esquema amplio de WordNet para categorizar objetos, aumentado con 120 categorías de razas de perros para mostrar la clasificación de grano fino.
En 2012, ImageNet era el mayor usuario académico de Mechanical Turk en el mundo, con el trabajador promedio identificando 50 imágenes por minuto. El plan original para el ImageNet completo habría tenido aproximadamente 50 millones de imágenes limpias, diversas y de resolución completa distribuidas en aproximadamente 50,000 synsets, pero esto no se logró.
A partir del 30 de abril de 2010, las estadísticas resumidas eran: número total de synsets no vacíos: 21,841; número total de imágenes: 14,197,122; número de imágenes con anotaciones de cuadros delimitadores: 1,034,908; número de synsets con características SIFT: 1,000; número de imágenes con características SIFT: 1.2 millones.
Categorías
Las categorías de ImageNet se filtraron a partir de los conceptos de WordNet. Cada concepto, dado que puede contener múltiples sinónimos (por ejemplo, "kitty" y "young cat"), se denomina "conjunto de sinónimos" o "synset". Había más de 100,000 synsets en WordNet 3.0, siendo la mayoría sustantivos (más de 80,000). El conjunto de datos de ImageNet los filtró a 21,841 synsets que son sustantivos contables que pueden ilustrarse visualmente.
Cada synset en WordNet 3.0 tiene un "ID de WordNet" (wnid), que es una concatenación de la parte del discurso y un "offset" (un número identificador único). Cada wnid comienza con "n" porque ImageNet solo incluye sustantivos. Por ejemplo, el wnid del synset "dog, domestic dog, Canis familiaris" es "n02084071". Las categorías se dividen en 9 niveles, desde el nivel 1 (como "mamífero") hasta el nivel 9 (como "pastor alemán").
Formato de Imagen
Las imágenes se extrajeron de motores de búsqueda de imágenes en línea (Google, Picsearch, MSN, Yahoo, Flickr, etc.) utilizando sinónimos en múltiples idiomas. Por ejemplo, para pastor alemán: perro policía alemán, alsaciano, ovejero alemán, pastore tedesco, 德国牧羊犬. ImageNet consiste en imágenes en formato RGB con resoluciones variables. Por ejemplo, en la categoría "pez" de ImageNet 2012, la resolución varía de 4288 x 2848 a 75 x 56. En el aprendizaje automático, estas se preprocesan típicamente a una resolución constante estándar y se blanquean antes de un procesamiento adicional por redes neuronales.
Por ejemplo, en PyTorch, las imágenes de ImageNet se normalizan por defecto dividiendo los valores de píxeles para que caigan entre 0 y 1, luego restando [0.485, 0.456, 0.406] y dividiendo por [0.229, 0.224, 0.225]. Estos son las medias y desviaciones estándar de ImageNet, por lo que esto blanquea los datos de entrada.
Etiquetas y Anotaciones
Cada imagen está etiquetada con exactamente un wnid. Las características SIFT densas (descriptores SIFT crudos, palabras de código cuantizadas y coordenadas de cada descriptor/palabra de código) para ImageNet-1K estaban disponibles para descargar, diseñadas para bolsa de palabras visuales. Los cuadros delimitadores de objetos estaban disponibles para aproximadamente 3,000 synsets populares con un promedio de 150 imágenes en cada synset. Además, algunas imágenes tienen anotaciones de atributos, aunque los detalles son limitados.
Legado e Impacto
ImageNet se ha convertido en un punto de referencia para la investigación en aprendizaje automático y visión por computador, impulsando el progreso en inteligencia artificial. Su desafío anual ha estimulado innovaciones en redes neuronales convolucionales y otras arquitecturas, influyendo en el campo más amplio del aprendizaje profundo. La escala y estructura del conjunto de datos también han informado proyectos de datos a gran escala posteriores y el desarrollo de técnicas de aumento de datos.