Saltar al contenido

Conjunto de datos ImageNette

El conjunto de datos ImageNette es un subconjunto del conjunto de datos más amplio Imagenet, pero sólo incluye 10 clases fácilmente distinguibles. Se creó para proporcionar una versión de Imagenet más rápida y fácil de usar para el desarrollo de software y la educación.

Características principales

  • ImageNette contiene imágenes de 10 clases diferentes, como tenca, English springer, reproductor de casetes, motosierra, iglesia, trompa, camión de la basura, bomba de gasolina, pelota de golf, paracaídas.
  • El conjunto de datos consta de imágenes en color de distintas dimensiones.
  • ImageNette se utiliza ampliamente para entrenar y probar en el campo del aprendizaje automático, especialmente para tareas de clasificación de imágenes.

Estructura del conjunto de datos

El conjunto de datos ImageNette se divide en dos subconjuntos:

  1. Conjunto de entrenamiento: Este subconjunto contiene varios miles de imágenes utilizadas para entrenar modelos de aprendizaje automático. El número exacto varía según la clase.
  2. Conjunto de validación: Este subconjunto consta de varios cientos de imágenes utilizadas para validar y comparar los modelos entrenados. De nuevo, el número exacto varía según la clase.

Aplicaciones

El conjunto de datos ImageNette se utiliza ampliamente para entrenar y evaluar modelos de aprendizaje profundo en tareas de clasificación de imágenes, como las redes neuronales convolucionales (CNN) y otros algoritmos de aprendizaje automático. El formato sencillo del conjunto de datos y las clases bien elegidas lo convierten en un recurso práctico tanto para principiantes como para profesionales experimentados en el campo del aprendizaje automático y la visión por ordenador.

Utilización

Para entrenar un modelo en el conjunto de datos ImageNette durante 100 épocas con un tamaño de imagen estándar de 224x224, puedes utilizar los siguientes fragmentos de código. Para obtener una lista completa de los argumentos disponibles, consulta la página Entrenamiento del modelo.

Ejemplo de tren

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-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 detect train data=imagenette model=yolov8n-cls.pt epochs=100 imgsz=224

Ejemplos de imágenes y anotaciones

El conjunto de datos ImageNette contiene imágenes en color de diversos objetos y escenas, lo que proporciona un conjunto de datos diverso para tareas de clasificación de imágenes. Aquí tienes algunos ejemplos de imágenes del conjunto de datos:

Imagen de muestra del conjunto de datos

El ejemplo muestra la variedad y complejidad de las imágenes del conjunto de datos ImageNette, lo que pone de relieve la importancia de un conjunto de datos diverso para entrenar modelos robustos de clasificación de imágenes.

ImagenNette160 e ImagenNette320

Para una creación de prototipos y un entrenamiento más rápidos, el conjunto de datos ImageNette también está disponible en dos tamaños reducidos: ImageNette160 e ImageNette320. Estos conjuntos de datos mantienen las mismas clases y estructura que el conjunto de datos ImageNette completo, pero las imágenes se redimensionan a un tamaño más pequeño. Por ello, estas versiones del conjunto de datos son especialmente útiles para probar modelos preliminares, o cuando los recursos informáticos son limitados.

Para utilizar estos conjuntos de datos, sólo tienes que sustituir "imagenette" por "imagenette160" o "imagenette320" en el comando de entrenamiento. Los siguientes fragmentos de código lo ilustran:

Ejemplo de tren con ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-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 detect train data=imagenette160 model=yolov8n-cls.pt epochs=100 imgsz=160

Ejemplo de tren con ImageNette320

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n-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 detect train data=imagenette320 model=yolov8n-cls.pt epochs=100 imgsz=320

Estas versiones más pequeñas del conjunto de datos permiten iteraciones rápidas durante el proceso de desarrollo, al tiempo que siguen proporcionando tareas de clasificación de imágenes valiosas y realistas.

Citas y agradecimientos

Si utilizas el conjunto de datos ImageNette en tu trabajo de investigación o desarrollo, por favor, menciónalo adecuadamente. Para más información sobre el conjunto de datos ImageNette, visita la página GitHub del conjunto de datos ImageNette.



Creado 2023-11-12, Actualizado 2024-01-12
Autores: glenn-jocher (3)

Comentarios