Seguimiento y visualización de experimentos de YOLO con Weights & Biases

Los modelos de detección de objetos como Ultralytics YOLO26 se han vuelto fundamentales para muchas aplicaciones de visión artificial. Sin embargo, entrenar, evaluar e implementar estos modelos complejos presenta varios desafíos. Realizar el seguimiento de métricas clave de entrenamiento, comparar variantes de modelos, analizar el comportamiento del modelo y detectar problemas requiere una instrumentación y una gestión de experimentos significativas.



Watch: How to use Ultralytics YOLO26 with Weights and Biases

Esta guía muestra la integración de Ultralytics YOLO26 con Weights & Biases para mejorar el seguimiento de experimentos, el registro de puntos de control (checkpoints) y la visualización del rendimiento del modelo. También incluye instrucciones para configurar la integración, entrenar, realizar ajustes (fine-tuning) y visualizar los resultados utilizando las funciones interactivas de Weights & Biases.

Weights & Biases

Weights and Biases experiment tracking

Weights & Biases es una plataforma de MLOps de vanguardia diseñada para realizar el seguimiento, la visualización y la gestión de experimentos de aprendizaje automático. Cuenta con registro automático de métricas de entrenamiento para una reproducibilidad total de los experimentos, una interfaz de usuario interactiva para un análisis de datos optimizado y herramientas eficientes de gestión de modelos para realizar implementaciones en diversos entornos.

Entrenamiento de YOLO26 con Weights & Biases

Puedes usar Weights & Biases para aportar eficiencia y automatización a tu proceso de entrenamiento de YOLO26. La integración te permite realizar el seguimiento de experimentos, comparar modelos y tomar decisiones basadas en datos para mejorar tus proyectos de visión artificial.

Instalación

Para instalar los paquetes necesarios, ejecuta:

Instalación
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb

# Enable W&B logging for Ultralytics
yolo settings wandb=True

Para obtener instrucciones detalladas y mejores prácticas relacionadas con el proceso de instalación, asegúrate de consultar nuestra guía de instalación de YOLO26. Si durante la instalación de los paquetes necesarios para YOLO26 encuentras alguna dificultad, consulta nuestra guía de problemas comunes para encontrar soluciones y consejos.

Configuración de Weights & Biases

Después de instalar los paquetes necesarios, el siguiente paso es configurar tu entorno de Weights & Biases. Esto incluye crear una cuenta en Weights & Biases y obtener la clave de API necesaria para una conexión fluida entre tu entorno de desarrollo y la plataforma de W&B.

Empieza inicializando el entorno de Weights & Biases en tu espacio de trabajo. Puedes hacerlo ejecutando el siguiente comando y siguiendo las instrucciones que aparecerán.

Configuración inicial del SDK
import wandb

# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")

Ve a la página de autorización de Weights & Biases para crear y recuperar tu clave de API. Usa esta clave cuando se te pida autenticar tu entorno con W&B.

Uso: Entrenamiento de YOLO26 con Weights & Biases

Antes de adentrarte en las instrucciones de uso para el entrenamiento de modelos YOLO26 con Weights & Biases, asegúrate de consultar la gama de modelos YOLO26 ofrecidos por Ultralytics. Esto te ayudará a elegir el modelo más apropiado para los requisitos de tu proyecto.

Uso: Entrenamiento de YOLO26 con Weights & Biases
from ultralytics import YOLO

# Load a YOLO model
model = YOLO("yolo26n.pt")

# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")

Argumentos de W&B

ArgumentoPredeterminadoDescripción
projectNoneEspecifica el nombre del proyecto registrado localmente y en W&B. De esta manera puedes agrupar varias ejecuciones.
nameNoneEl nombre de la ejecución de entrenamiento. Esto determina el nombre utilizado para crear subcarpetas y el nombre utilizado para el registro en W&B
Habilitar o deshabilitar Weights & Biases

Si deseas habilitar o deshabilitar el registro de Weights & Biases en Ultralytics, puedes usar el comando yolo settings. Por defecto, el registro de Weights & Biases está deshabilitado.

# Enable Weights & Biases logging
yolo settings wandb=True

# Disable Weights & Biases logging
yolo settings wandb=False

Comprender la salida

Al ejecutar el fragmento de código de uso anterior, puedes esperar los siguientes resultados clave:

  • La configuración de una nueva ejecución con su identificador único, lo que indica el inicio del proceso de entrenamiento.
  • Un resumen conciso de la estructura del modelo, incluyendo el número de capas y parámetros.
  • Actualizaciones periódicas sobre métricas importantes como la pérdida de cajas (box loss), pérdida de clase (cls loss), pérdida DFL (dfl loss), precisión, sensibilidad y puntuaciones mAP durante cada época de entrenamiento.
  • Al finalizar el entrenamiento, se muestran métricas detalladas, incluida la velocidad de inferencia del modelo y las métricas generales de exactitud.
  • Enlaces al panel de control de Weights & Biases para un análisis y visualización detallados del proceso de entrenamiento, junto con información sobre la ubicación de los archivos de registro locales.

Visualización del panel de control de Weights & Biases

Después de ejecutar el fragmento de código de uso, puedes acceder al panel de control de Weights & Biases (W&B) a través del enlace proporcionado en la salida. Este panel ofrece una vista integral del proceso de entrenamiento de tu modelo con YOLO26.

Características clave del panel de control de Weights & Biases

  • Seguimiento de métricas en tiempo real: Observa métricas como la pérdida, la exactitud y las puntuaciones de validación a medida que evolucionan durante el entrenamiento, lo que ofrece información inmediata para ajustar el modelo. Mira cómo se realiza el seguimiento de experimentos con Weights & Biases.

  • Optimización de hiperparámetros: Weights & Biases ayuda a ajustar parámetros críticos como la tasa de aprendizaje, el tamaño del lote y más, mejorando el rendimiento de YOLO26. Esto te ayuda a encontrar la configuración óptima para tu conjunto de datos y tarea específicos.

  • Análisis comparativo: La plataforma permite realizar comparaciones lado a lado de diferentes ejecuciones de entrenamiento, lo cual es esencial para evaluar el impacto de varias configuraciones del modelo y comprender qué cambios mejoran el rendimiento.

  • Visualización del progreso del entrenamiento: Las representaciones gráficas de las métricas clave proporcionan una comprensión intuitiva del rendimiento del modelo a lo largo de las épocas. Mira cómo Weights & Biases te ayuda a visualizar los resultados de validación.

  • Supervisión de recursos: Realiza un seguimiento del uso de CPU, GPU y memoria para optimizar la eficiencia del proceso de entrenamiento e identificar posibles cuellos de botella en tu flujo de trabajo.

  • Gestión de artefactos del modelo: Accede y comparte puntos de control del modelo, lo que facilita la implementación y la colaboración con los miembros del equipo en proyectos complejos.

  • Visualización de resultados de inferencia con superposición de imágenes: Visualiza los resultados de las predicciones sobre imágenes mediante superposiciones interactivas en Weights & Biases, proporcionando una vista clara y detallada del rendimiento del modelo en datos del mundo real. Para obtener información más detallada, consulta las capacidades de superposición de imágenes de Weights & Biases.

Al usar estas funciones, puedes realizar un seguimiento, analizar y optimizar eficazmente el entrenamiento de tu modelo YOLO26, garantizando el mejor rendimiento y eficiencia posibles para tus tareas de detección de objetos.

Resumen

Esta guía te ha ayudado a explorar la integración de Ultralytics YOLO con Weights & Biases. Ilustra la capacidad de esta integración para realizar un seguimiento y visualizar eficazmente los resultados de entrenamiento y predicción de modelos. Al aprovechar las potentes funciones de W&B, puedes optimizar tu flujo de trabajo de aprendizaje automático, tomar decisiones basadas en datos y mejorar el rendimiento de tu modelo.

Para más detalles sobre su uso, visita la documentación oficial de Weights & Biases o explora la presentación de Soumik Rakshit de YOLO VISION 2023 sobre esta integración.

Además, asegúrate de consultar la página de la guía de integración de Ultralytics para aprender más sobre otras integraciones interesantes como MLflow y Comet ML.

Preguntas frecuentes

¿Cómo integro Weights & Biases con Ultralytics YOLO26?

Para integrar Weights & Biases con Ultralytics YOLO26:

  1. Instala los paquetes necesarios:

    pip install -U ultralytics wandb
    yolo settings wandb=True
  2. Inicia sesión en tu cuenta de Weights & Biases:

    import wandb
    
    wandb.login(key="YOUR_API_KEY")
  3. Entrena tu modelo YOLO26 con el registro de W&B habilitado:

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")

Esto registrará automáticamente las métricas, los hiperparámetros y los artefactos del modelo en tu proyecto de W&B.

¿Cuáles son las características clave de la integración de Weights & Biases con YOLO26?

Las características clave incluyen:

  • Seguimiento de métricas en tiempo real durante el entrenamiento
  • Herramientas de optimización de hiperparámetros
  • Análisis comparativo de diferentes ejecuciones de entrenamiento
  • Visualización del progreso del entrenamiento a través de gráficos
  • Supervisión de recursos (uso de CPU, GPU y memoria)
  • Gestión y uso compartido de artefactos del modelo
  • Visualización de resultados de inferencia con superposiciones de imágenes

Estas funciones ayudan a realizar un seguimiento de los experimentos, optimizar los modelos y colaborar de manera más eficaz en proyectos de YOLO26.

¿Cómo puedo ver el panel de control de Weights & Biases para mi entrenamiento de YOLO26?

Después de ejecutar tu script de entrenamiento con la integración de W&B:

  1. Se proporcionará un enlace a tu panel de control de W&B en la salida de la consola.
  2. Haz clic en el enlace o ve a wandb.ai e inicia sesión en tu cuenta.
  3. Navega a tu proyecto para ver métricas detalladas, visualizaciones y datos de rendimiento del modelo.

El panel ofrece información sobre el proceso de entrenamiento de tu modelo, lo que te permite analizar y mejorar tus modelos YOLO26 de manera eficaz.

¿Puedo deshabilitar el registro de Weights & Biases para el entrenamiento de YOLO26?

Sí, puedes deshabilitar el registro de W&B usando el siguiente comando:

yolo settings wandb=False

Para volver a habilitar el registro, usa:

yolo settings wandb=True

Esto te permite controlar cuándo quieres usar el registro de W&B sin modificar tus scripts de entrenamiento.

¿Cómo ayuda Weights & Biases a optimizar los modelos YOLO26?

Weights & Biases ayuda a optimizar los modelos YOLO26 mediante:

  1. La provisión de visualizaciones detalladas de las métricas de entrenamiento
  2. La facilitación de una comparación sencilla entre diferentes versiones de modelos
  3. La oferta de herramientas para el ajuste de hiperparámetros
  4. La posibilidad de realizar un análisis colaborativo del rendimiento del modelo
  5. La facilitación del uso compartido sencillo de artefactos y resultados del modelo

Estas funciones ayudan a investigadores y desarrolladores a iterar más rápido y a tomar decisiones basadas en datos para mejorar sus modelos YOLO26.

Comentarios