YOLO Vision 2026:

Conjunto de datos ImageNette#

El conjunto de datos ImageNette es un subconjunto de ImageNet con 10 clases fáciles de distinguir, creado por fast.ai para ofrecer una versión de ImageNet más rápida y fácil de usar para el desarrollo de software y la educación. Contiene 13,394 imágenes en color (9,469 para entrenamiento y 3,925 para validación) que abarcan clases como tenca, springer spaniel inglés, reproductor de casetes y trompa francesa, de modo que los modelos de clasificación de imágenes se entrenan en minutos en lugar de las horas que requiere el ImageNet completo de 1,000 clases.

Características clave#

  • ImageNette contiene 13.394 imágenes repartidas en 10 clases: tenca, springer inglés, reproductor de casetes, motosierra, iglesia, trompa, camión de basura, surtidor de gasolina, pelota de golf y paracaídas.
  • Incluye una división predefinida de 9.469 imágenes en color para entrenamiento y 3.925 para validación de dimensiones variables.
  • Las 10 clases bien diferenciadas hacen que ImageNette sea rápido de entrenar y fácil de comprender, por lo que se utiliza ampliamente para la creación de prototipos y la enseñanza de la clasificación de imágenes.

Estructura del dataset#

ImageNette se entrega con una división predefinida de entrenamiento/validación, con cada clase almacenada en su propia carpeta:

SplitImágenesClases
Entrenar9,46910
Validación3,92510

El número exacto de imágenes varía según la clase, lo que proporciona una distribución realista para un entrenamiento y una evaluación rápidos sin la escala del conjunto de datos completo de ImageNet.

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 Redes Neuronales Convolucionales (CNN) y otros algoritmos de aprendizaje automático. Su formato sencillo y sus clases bien elegidas lo convierten en un recurso útil tanto para principiantes como para profesionales experimentados en aprendizaje automático y visión artificial.

Uso#

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 de Entrenamiento del modelo.

Ejemplo de entrenamiento
from ultralytics import YOLO

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

# Train the model
results = model.train(data="imagenette", epochs=100, imgsz=224)

Muestras de imágenes y anotaciones#

El conjunto de datos ImageNette contiene imágenes en color de varios 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:

Imágenes de ejemplo del conjunto de datos de clasificación ImageNette

El ejemplo muestra la variedad y complejidad de las imágenes en el conjunto de datos ImageNette, resaltando la importancia de contar con un conjunto de datos diverso para entrenar modelos de clasificación de imágenes robustos.

ImageNette160 e ImageNette320#

Para un prototipado y entrenamiento más rápidos, ImageNette también está disponible en dos tamaños reducidos: ImageNette160 y ImageNette320. Estos conjuntos de datos conservan las mismas clases y estructura que el ImageNette completo, pero las imágenes se redimensionan a una longitud de borde máxima menor. Son especialmente útiles para pruebas de modelos preliminares o cuando los recursos computacionales son limitados.

Para usar estos conjuntos de datos, simplemente reemplaza imagenette con imagenette160 o imagenette320 en el comando de entrenamiento. Los siguientes fragmentos de código ilustran esto:

Ejemplo de entrenamiento con ImageNette160
from ultralytics import YOLO

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

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
Ejemplo de entrenamiento con ImageNette320
from ultralytics import YOLO

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

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)

Estas versiones más pequeñas del conjunto de datos permiten iteraciones rápidas durante el desarrollo al tiempo que ofrecen tareas de clasificación de imágenes realistas. También puedes gestionar conjuntos de datos de clasificación y ejecutar entrenamientos en la nube con Ultralytics Platform.

Citas y agradecimientos#

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

Nos gustaría agradecer al equipo de fast.ai por crear y mantener ImageNette como un recurso valioso para la comunidad de investigación de aprendizaje automático y visión artificial.

FAQ#

  • El conjunto de datos ImageNette es un subconjunto simplificado de ImageNet con 10 clases fáciles de distinguir como tenca, springer spaniel inglés y trompa francesa. Contiene 13,394 imágenes (9,469 de entrenamiento y 3,925 de validación) y fue creado por fast.ai para ofrecer un conjunto de datos más manejable para el entrenamiento eficiente y la evaluación de modelos de clasificación de imágenes. Esto lo hace especialmente útil para el desarrollo rápido de software y fines educativos en aprendizaje automático y visión artificial.

  • ImageNette contiene 13.394 imágenes en total — 9.469 para entrenamiento y 3.925 para validación — repartidas en 10 clases: tenca, springer inglés, reproductor de casetes, motosierra, iglesia, trompa, camión de basura, surtidor de gasolina, pelota de golf y paracaídas. Cada clase se almacena en su propia carpeta, siguiendo el diseño de clasificación estándar que espera Ultralytics.

  • Para entrenar un modelo YOLO en ImageNette durante 100 épocas, utiliza los siguientes comandos. Asegúrate de tener configurado el entorno de Ultralytics YOLO.

    Ejemplo de entrenamiento
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="imagenette", epochs=100, imgsz=224)

    Para obtener más detalles, consulta la página de documentación de Entrenamiento.

  • El conjunto de datos ImageNette es ventajoso por varias razones:

    • Rápido y sencillo: Con solo 10 clases y unas 13.000 imágenes, es mucho menos complejo y consume menos tiempo de entrenamiento que el ImageNet completo.
    • Uso educativo: Ideal para aprender y enseñar los fundamentos de la clasificación de imágenes, ya que requiere menos potencia computacional y tiempo.
    • Versatilidad: Ampliamente utilizado para entrenar y evaluar modelos de clasificación de imágenes, especialmente Redes Neuronales Convolucionales (CNN).

    Para más detalles sobre el entrenamiento de modelos y la gestión de conjuntos de datos, explora la sección Estructura del conjunto de datos.

  • Sí, ImageNette también está disponible en dos versiones redimensionadas, ImageNette160 e ImageNette320, cuyas imágenes se redimensionan a longitudes de borde máximas más pequeñas. Estas versiones ayudan a una creación de prototipos más rápida y son especialmente útiles cuando los recursos computacionales son limitados.

    Ejemplo de entrenamiento con ImageNette160
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")
    
    # Train the model with ImageNette160
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    Para obtener más información, consulta Entrenamiento con ImageNette160 e ImageNette320.

  • El conjunto de datos ImageNette se utiliza ampliamente en:

    • Entornos educativos: Para enseñar a los principiantes los fundamentos del aprendizaje automático y la visión artificial.
    • Desarrollo de software: Para la creación rápida de prototipos y el desarrollo de modelos de clasificación de imágenes.
    • Investigación en aprendizaje profundo: Para evaluar y comparar el rendimiento de varios modelos de aprendizaje profundo, especialmente Redes Neuronales Convolucionales (CNN).

    Explora la sección de Aplicaciones para ver casos de uso detallados.

Comentarios