Ultralytics YOLO27:

Mejora el entrenamiento de YOLO26: simplifica tu proceso de registro con Comet#

Registrar detalles clave del entrenamiento, como parámetros, métricas, predicciones de imágenes y puntos de control del modelo, es esencial en el aprendizaje automático: mantiene tu proyecto transparente, tus progresos medibles y tus resultados reproducibles.



Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀

Ultralytics YOLO26 se integra perfectamente con Comet (anteriormente Comet ML), capturando y optimizando de forma eficiente todos los aspectos del proceso de entrenamiento de tu modelo de detección de objetos YOLO26. En esta guía cubriremos la instalación, la configuración de Comet, la información en tiempo real, el registro personalizado y el uso sin conexión, para garantizar que tu entrenamiento de YOLO26 quede completamente documentado y optimizado para obtener resultados excepcionales.

Comet#

Comet ML experiment tracking dashboard

Comet es una plataforma para realizar el seguimiento, comparar, explicar y optimizar modelos y experimentos de aprendizaje automático. Te permite registrar métricas, parámetros, contenido multimedia y mucho más durante el entrenamiento de tu modelo, así como supervisar tus experimentos mediante una interfaz web atractiva. Comet ayuda a los científicos de datos a iterar más rápidamente, mejora la transparencia y la reproducibilidad y contribuye al desarrollo de modelos para producción.

Aprovecha el potencial de YOLO26 y Comet#

Al combinar Ultralytics YOLO26 con Comet, desbloqueas numerosas ventajas. Entre ellas se incluyen una gestión de experimentos simplificada, información en tiempo real para realizar ajustes rápidos, opciones de registro flexibles y adaptadas a tus necesidades y la posibilidad de registrar experimentos sin conexión cuando el acceso a Internet es limitado. Esta integración te permite tomar decisiones basadas en datos, analizar métricas de rendimiento y obtener resultados excepcionales.

Instalación#

Para instalar los paquetes necesarios, ejecuta:

Instalación
# Install YOLO26 and Comet
pip install ultralytics comet_ml

Configuración de Comet#

Después de instalar los paquetes necesarios, tendrás que registrarte, obtener una clave de API de Comet y configurarla.

Configuración de Comet
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEY

A continuación, autentícate con Comet. La llamada de retorno de Ultralytics crea el experimento y utiliza el argumento de entrenamiento de YOLO project como nombre del proyecto de Comet.

Inicializa el proyecto de Comet
import comet_ml

comet_ml.login()

Si utilizas un cuaderno de Google Colab, el código anterior te pedirá que introduzcas tu clave de API para la inicialización.

Uso#

Antes de consultar las instrucciones de uso, no olvides revisar la variedad de modelos YOLO26 que ofrece Ultralytics. Esto te ayudará a elegir el modelo más adecuado para los requisitos de tu proyecto.

Uso
from ultralytics import YOLO

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

# Train the model
results = model.train(
    data="coco8.yaml",
    project="comet-example-yolo26-coco128",
    batch=32,
    save_period=1,
    save_json=True,
    epochs=3,
)

Después de ejecutar el código de entrenamiento, Comet creará automáticamente un experimento en tu espacio de trabajo de Comet para realizar el seguimiento de la ejecución. A continuación, recibirás un enlace para consultar el registro detallado del proceso de entrenamiento de tu modelo YOLO26.

Comet registra automáticamente los siguientes datos sin configuración adicional: métricas como mAP y la pérdida, hiperparámetros, puntos de control del modelo, matriz de confusión interactiva y predicciones de cajas delimitadoras de imágenes.

Comprende el rendimiento de tu modelo con las visualizaciones de Comet#

Veamos qué encontrarás en el panel de Comet cuando tu modelo YOLO26 empiece a entrenarse. El panel es el centro de actividad: presenta mediante elementos visuales y estadísticas una gran variedad de información registrada automáticamente. Este es un breve recorrido:

Paneles de experimentos

La sección de paneles de experimentos del panel de Comet organiza y presenta las distintas ejecuciones y sus métricas, como la pérdida de la máscara de segmentación, la pérdida de clase, la precisión y la precisión media promedio.

Comet ML experiment tracking dashboard

Métricas

En la sección de métricas también puedes examinarlas en formato tabular, que se muestra en un panel específico, como se ilustra aquí.

Comet ML experiment tracking dashboard

Matriz de confusión interactiva

La matriz de confusión, disponible en la pestaña Confusion Matrix, ofrece una forma interactiva de evaluar la exactitud de clasificación del modelo. Detalla las predicciones correctas e incorrectas, lo que te permite comprender los puntos fuertes y débiles del modelo.

Comet ML experiment tracking dashboard

Métricas del sistema

Comet registra las métricas del sistema para ayudar a identificar posibles cuellos de botella en el proceso de entrenamiento. Incluye métricas como el uso de la GPU, el uso de la memoria de la GPU, el uso de la CPU y el uso de la RAM. Son esenciales para supervisar la eficiencia del uso de los recursos durante el entrenamiento del modelo.

Comet ML experiment tracking dashboard

Personalización del registro de Comet#

Comet ofrece flexibilidad para personalizar su comportamiento de registro mediante variables de entorno. Estas configuraciones te permiten adaptar Comet a tus necesidades y preferencias específicas. La llamada de retorno de Ultralytics lee las siguientes variables de entorno (configúralas antes de que comience el entrenamiento):

Variable de entornoPredeterminadoDescripción
COMET_START_ONLINE1Ejecuta el experimento en modo en línea (1) o sin conexión (0).
COMET_PROJECT_NAMEargs.projectProyecto del espacio de trabajo de Comet. Si no se establece, utiliza el argumento de entrenamiento de YOLO project.
COMET_MODEL_NAMEUltralyticsNombre registrado para el artefacto del modelo registrado.
COMET_MAX_IMAGE_PREDICTIONS100Número total de predicciones de imágenes de validación que se registrarán por ejecución.
COMET_EVAL_BATCH_LOGGING_INTERVAL1Registra las predicciones de imágenes cada N lotes de validación.
COMET_EVAL_LOG_IMAGE_PREDICTIONStrueActiva (true) o desactiva (false) el registro de predicciones de imágenes.
COMET_EVAL_LOG_CONFUSION_MATRIXfalseRegistra una matriz de confusión en cada época de validación. Siempre se registra una matriz final al terminar el entrenamiento.
COMET_MAX_CONFIDENCE_SCORE100.0Multiplicador aplicado a las puntuaciones de confianza de detección antes del registro (la interfaz de Comet espera una escala porcentual).
COMET_MODE (obsoleto)onlineAlias heredado de COMET_START_ONLINE ("online"1, "offline"0). Emite una advertencia de obsolescencia.

Para los conmutadores booleanos (COMET_EVAL_LOG_IMAGE_PREDICTIONS y COMET_EVAL_LOG_CONFUSION_MATRIX), los valores 1, true, yes, on, y y t se interpretan como True (sin distinguir entre mayúsculas y minúsculas). Cualquier otro valor es False.

Registro de predicciones de imágenes#

Puedes controlar el número de predicciones de imágenes que Comet registra durante tus experimentos. De forma predeterminada, Comet registra 100 predicciones de imágenes del conjunto de validación. Sin embargo, puedes cambiar este número para adaptarlo mejor a tus necesidades. Por ejemplo, para registrar 200 predicciones de imágenes, utiliza el siguiente código:

import os

os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"

Para desactivar por completo el registro de predicciones de imágenes (por ejemplo, para reducir el volumen de carga en conexiones lentas), establece COMET_EVAL_LOG_IMAGE_PREDICTIONS en "false":

import os

os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"

Intervalo de registro de lotes#

Comet te permite especificar con qué frecuencia se registran los lotes de predicciones de imágenes. La variable de entorno COMET_EVAL_BATCH_LOGGING_INTERVAL controla esta frecuencia. El valor predeterminado es 1, que registra las predicciones de cada lote de validación. Puedes ajustar este valor para registrar las predicciones con otro intervalo. Por ejemplo, si lo estableces en 4, se registrarán las predicciones de uno de cada cuatro lotes.

import os

os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"

Desactivación del registro de la matriz de confusión#

En algunos casos, puede que no quieras registrar la matriz de confusión de tu conjunto de validación después de cada época. Puedes desactivar esta función estableciendo la variable de entorno COMET_EVAL_LOG_CONFUSION_MATRIX en "false". La matriz de confusión solo se registrará una vez, cuando termine el entrenamiento.

import os

os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"

Modo en línea y sin conexión#

De forma predeterminada, Comet se ejecuta en modo en línea y transmite los datos del experimento a los servidores de Comet. Si necesitas entrenar sin acceso a Internet, establece COMET_START_ONLINE=0 antes de que comience el entrenamiento. Los datos del experimento se guardan localmente y puedes cargarlos más tarde con la CLI comet upload.

import os

os.environ["COMET_START_ONLINE"] = "0"  # 1 (default) = online, 0 = offline
`COMET_MODE` está obsoleto

Las versiones anteriores utilizaban COMET_MODE="offline" para este fin. La variable se sigue aceptando por compatibilidad con versiones anteriores, pero emite una advertencia de obsolescencia. A partir de ahora, utiliza COMET_START_ONLINE.

Nombre del proyecto#

De forma predeterminada, la llamada de retorno de Comet pasa a Comet el argumento de entrenamiento de YOLO project (o None cuando el argumento no está establecido, en cuyo caso Comet utiliza el valor predeterminado de tu espacio de trabajo). Sobrescribe este comportamiento con COMET_PROJECT_NAME para enviar todos los experimentos a un proyecto específico del espacio de trabajo de Comet, independientemente del argumento de entrenamiento de YOLO:

import os

os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"

Nombre del artefacto del modelo#

COMET_MODEL_NAME establece el nombre con el que Comet registra el artefacto del modelo registrado (por defecto, Ultralytics). Utilízalo para diferenciar variantes del modelo en un espacio de trabajo compartido:

import os

os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"

Escalado de la puntuación de confianza#

Las puntuaciones de confianza de detección se emiten en el intervalo [0, 1], pero la interfaz de Comet las muestra de forma predeterminada en una escala porcentual. La llamada de retorno multiplica cada puntuación por COMET_MAX_CONFIDENCE_SCORE (por defecto, 100.0) antes de registrarla. Ajusta este valor si prefieres probabilidades sin modificar u otra escala:

import os

os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0"  # log raw [0, 1] scores

Resumen#

En esta guía has aprendido a integrar Comet con YOLO26 de Ultralytics. Desde la instalación hasta la personalización, has aprendido a simplificar la gestión de experimentos, obtener información en tiempo real y adaptar el registro a las necesidades de tu proyecto.

Consulta la documentación oficial de integración de YOLOv8 con Comet, que también se aplica a proyectos de YOLO26.

Además, si quieres profundizar en las aplicaciones prácticas de YOLO26, concretamente en tareas de segmentación de imágenes, esta guía detallada sobre el ajuste fino de YOLO26 con Comet ofrece información valiosa e instrucciones paso a paso para mejorar el rendimiento de tu modelo.

Asimismo, para explorar otras integraciones interesantes con Ultralytics, consulta la página de la guía de integraciones, que ofrece numerosos recursos e información.

Preguntas frecuentes#

  • Para integrar Comet con Ultralytics YOLO26, sigue estos pasos:

    1. Instala los paquetes necesarios:

      pip install ultralytics comet_ml
    2. Configura tu clave de API de Comet:

      export COMET_API_KEY=YOUR_API_KEY
    3. Autentícate con Comet en tu código de Python:

      import comet_ml
      
      comet_ml.login()
    4. Entrena tu modelo YOLO26 y registra las métricas:

      from ultralytics import YOLO
      
      model = YOLO("yolo26n.pt")
      results = model.train(
          data="coco8.yaml",
          project="comet-example-yolo26-coco128",
          batch=32,
          save_period=1,
          save_json=True,
          epochs=3,
      )

    Para obtener instrucciones más detalladas, consulta la sección de configuración de Comet.

  • Al integrar Ultralytics YOLO26 con Comet, puedes:

    • Supervisar información en tiempo real: obtén comentarios instantáneos sobre los resultados de tu entrenamiento para poder realizar ajustes rápidos.
    • Registrar numerosas métricas: captura automáticamente métricas esenciales como mAP, la pérdida, los hiperparámetros y los puntos de control del modelo.
    • Realizar el seguimiento de experimentos sin conexión: registra localmente tus ejecuciones de entrenamiento cuando no haya acceso a Internet.
    • Comparar distintas ejecuciones de entrenamiento: utiliza el panel interactivo de Comet para analizar y comparar varios experimentos.

    Al aprovechar estas funciones, puedes optimizar tus flujos de trabajo de aprendizaje automático para mejorar el rendimiento y la reproducibilidad. Para obtener más información, visita la guía de integración de Comet.

  • Comet permite personalizar ampliamente su comportamiento de registro mediante variables de entorno:

    • Cambia el número de predicciones de imágenes registradas:

      import os
      
      os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    • Ajusta el intervalo de registro de lotes:

      import os
      
      os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    • Desactiva el registro de la matriz de confusión:

      import os
      
      os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    • Establece el nombre del proyecto de Comet:

      import os
      
      os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"
    • Establece el nombre del artefacto del modelo registrado:

      import os
      
      os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"

    Consulta la sección Personalización del registro de Comet para ver la lista completa, incluidos los conmutadores de predicciones de imágenes, el escalado de las puntuaciones de confianza y el modo en línea/sin conexión.

  • Cuando tu modelo YOLO26 empiece a entrenarse, podrás acceder a una amplia variedad de métricas y visualizaciones en el panel de Comet. Entre las funciones principales se incluyen:

    • Paneles de experimentos: consulta distintas ejecuciones y sus métricas, incluida la pérdida de la máscara de segmentación, la pérdida de clase y la precisión media promedio.
    • Métricas: examina las métricas en formato tabular para realizar un análisis detallado.
    • Matriz de confusión interactiva: evalúa la exactitud de clasificación con una matriz de confusión interactiva.
    • Métricas del sistema: supervisa el uso de la GPU y la CPU, el uso de la memoria y otras métricas del sistema.

    Para obtener una descripción detallada de estas funciones, visita la sección Comprende el rendimiento de tu modelo con las visualizaciones de Comet.

  • Sí. Establece COMET_START_ONLINE=0 antes de que comience el entrenamiento para registrar los datos localmente:

    import os
    
    os.environ["COMET_START_ONLINE"] = "0"

    Los datos del experimento se guardan en el disco y pueden cargarse posteriormente en Comet con la CLI comet upload cuando haya conexión. La variable anterior COMET_MODE="offline" sigue funcionando, pero emite una advertencia de obsolescencia. Para obtener más información, consulta la sección Modo en línea y sin conexión.

Comentarios