Saltar al contenido

Conjunto de datos ImageWoof

El conjunto de datos ImageWoof es un subconjunto de ImageNet formado por 10 clases difíciles de clasificar, ya que todas son razas de perros. Se creó como una tarea más difícil de resolver para los algoritmos de clasificación de imágenes, con el objetivo de fomentar el desarrollo de modelos más avanzados.

Características principales

  • ImageWoof contiene imágenes de 10 razas de perro diferentes: Terrier australiano, Border terrier, Samoyedo, Beagle, Shih-Tzu, English foxhound, Rhodesian ridgeback, Dingo, Golden retriever y Old English sheepdog.
  • El conjunto de datos proporciona imágenes a varias resoluciones (tamaño completo, 320px, 160px), que se adaptan a diferentes capacidades computacionales y necesidades de investigación.
  • También incluye una versión con etiquetas ruidosas, que proporciona un escenario más realista en el que las etiquetas no siempre son fiables.

Estructura del conjunto de datos

La estructura del conjunto de datos ImageWoof se basa en las clases de razas caninas, y cada raza tiene su propio directorio de imágenes.

Aplicaciones

El conjunto de datos ImageWoof se utiliza ampliamente para entrenar y evaluar modelos de aprendizaje profundo en tareas de clasificación de imágenes, especialmente cuando se trata de clases más complejas y similares. El reto del conjunto de datos radica en las sutiles diferencias entre las razas de perros, que empujan los límites del rendimiento y la generalización del modelo.

Utilización

Para entrenar un modelo CNN en el conjunto de datos ImageWoof durante 100 épocas con un tamaño de imagen 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="imagewoof", epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo detect train data=imagewoof model=yolov8n-cls.pt epochs=100 imgsz=224

Variantes del conjunto de datos

El conjunto de datos ImageWoof se presenta en tres tamaños diferentes para adaptarse a diversas necesidades de investigación y capacidades computacionales:

  1. Tamaño completo (imagewoof): Ésta es la versión original del conjunto de datos ImageWoof. Contiene imágenes a tamaño completo y es ideal para el entrenamiento final y la evaluación comparativa del rendimiento.

  2. Tamaño medio (imagewoof320): Esta versión contiene imágenes redimensionadas para tener una longitud de borde máxima de 320 píxeles. Es adecuada para un entrenamiento más rápido sin sacrificar significativamente el rendimiento del modelo.

  3. Tamaño pequeño (imagewoof160): Esta versión contiene imágenes redimensionadas para tener una longitud de borde máxima de 160 píxeles. Está diseñada para la creación rápida de prototipos y la experimentación, donde la velocidad de entrenamiento es una prioridad.

Para utilizar estas variantes en tu entrenamiento, sólo tienes que sustituir "imagewoof" en el argumento del conjunto de datos por "imagewoof320" o "imagewoof160". Por ejemplo

from ultralytics import YOLO

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

# For medium-sized dataset
model.train(data="imagewoof320", epochs=100, imgsz=224)

# For small-sized dataset
model.train(data="imagewoof160", epochs=100, imgsz=224)

Es importante tener en cuenta que el uso de imágenes más pequeñas probablemente producirá un menor rendimiento en términos de precisión de la clasificación. Sin embargo, es una forma excelente de iterar rápidamente en las primeras fases del desarrollo del modelo y la creación de prototipos.

Ejemplos de imágenes y anotaciones

El conjunto de datos ImageWoof contiene imágenes coloridas de varias razas de perros, lo que supone un reto para las 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 las sutiles diferencias y similitudes entre las distintas razas de perros del conjunto de datos ImageWoof, poniendo de relieve la complejidad y dificultad de la tarea de clasificación.

Citas y agradecimientos

Si utilizas el conjunto de datos ImageWoof en tu trabajo de investigación o desarrollo, asegúrate de reconocer a los creadores del conjunto de datos mediante un enlace al repositorio oficial del conjunto de datos.

Queremos dar las gracias al equipo de FastAI por crear y mantener el conjunto de datos ImageWoof como un valioso recurso para la comunidad investigadora del aprendizaje automático y la visión por ordenador. Para más información sobre el conjunto de datos ImageWoof, visita el repositorio de conjuntos de datos ImageWoof.

PREGUNTAS FRECUENTES

¿Qué es el conjunto de datos ImageWoof en Ultralytics?

El conjunto de datos ImageWoof es un desafiante subconjunto de ImageNet centrado en 10 razas de perro concretas. Creado para superar los límites de los modelos de clasificación de imágenes, incluye razas como Beagle, Shih-Tzu y Golden Retriever. El conjunto de datos incluye imágenes a varias resoluciones (tamaño completo, 320px, 160px) e incluso etiquetas ruidosas para escenarios de entrenamiento más realistas. Esta complejidad hace que ImageWoof sea ideal para desarrollar modelos de aprendizaje profundo más avanzados.

¿Cómo puedo entrenar un modelo utilizando el conjunto de datos ImageWoof con Ultralytics YOLO ?

Para entrenar un modelo de Red Neuronal Convolucional (CNN) en el conjunto de datos ImageWoof utilizando Ultralytics YOLO durante 100 épocas con un tamaño de imagen de 224x224, puedes utilizar el siguiente código:

Ejemplo de tren

from ultralytics import YOLO

model = YOLO("yolov8n-cls.pt")  # Load a pretrained model
results = model.train(data="imagewoof", epochs=100, imgsz=224)
yolo detect train data=imagewoof model=yolov8n-cls.pt epochs=100 imgsz=224

Para más detalles sobre los argumentos de formación disponibles, consulta la página de Formación.

¿Qué versiones del conjunto de datos ImageWoof están disponibles?

El conjunto de datos ImageWoof está disponible en tres tamaños:

  1. Tamaño completo (imagewoof): Ideal para el entrenamiento final y la evaluación comparativa, contiene imágenes a tamaño completo.
  2. Tamaño medio (imagewoof320): Imágenes redimensionadas con una longitud de borde máxima de 320 píxeles, adecuadas para un entrenamiento más rápido.
  3. Tamaño pequeño (imagewoof160): Imágenes redimensionadas con una longitud de borde máxima de 160 píxeles, perfectas para la creación rápida de prototipos.

Utiliza estas versiones sustituyendo "imagewoof" en el argumento del conjunto de datos según corresponda. Ten en cuenta, sin embargo, que las imágenes más pequeñas pueden producir una precisión de clasificación menor, pero pueden ser útiles para iteraciones más rápidas.

¿Cómo benefician al entrenamiento las etiquetas ruidosas del conjunto de datos ImageWoof?

Las etiquetas ruidosas del conjunto de datos ImageWoof simulan las condiciones del mundo real, donde las etiquetas pueden no ser siempre precisas. Entrenar modelos con estos datos ayuda a desarrollar la robustez y la generalización en las tareas de clasificación de imágenes. Esto prepara a los modelos para manejar eficazmente datos ambiguos o mal etiquetados, que suelen encontrarse en aplicaciones prácticas.

¿Cuáles son los principales retos de la utilización del conjunto de datos ImageWoof?

El principal reto del conjunto de datos ImageWoof reside en las sutiles diferencias entre las razas caninas que incluye. Dado que se centra en 10 razas estrechamente relacionadas, distinguir entre ellas requiere modelos de clasificación de imágenes más avanzados y afinados. Esto convierte a ImageWoof en un excelente punto de referencia para probar las capacidades y mejoras de los modelos de aprendizaje profundo.



Creado 2023-11-12, Actualizado 2024-07-04
Autores: glenn-jocher (6)

Comentarios