Ir al contenido

Adquisición de Neptune y deprecación de SaaS

Neptune ha llegado a un acuerdo para ser adquirido por OpenAI y descontinuará su servicio alojado (SaaS) después de un período de transición que finalizará el 4 de marzo de 2026. Revise el anuncio oficial y planifique las migraciones o exportaciones en consecuencia.

Seguimiento de experimentos con Neptune

Neptune es un almacén de metadatos para MLOps, diseñado para equipos que ejecutan una gran cantidad de experimentos. Ofrece un único lugar para registrar, almacenar, visualizar, organizar, comparar y consultar todos los metadatos de construcción de sus modelos.

Ultralytics YOLO26 se integra con Neptune para optimizar el seguimiento de experimentos. Esta integración le permite registrar automáticamente métricas de entrenamiento, visualizar predicciones del modelo y almacenar artefactos del modelo sin escribir código de registro personalizado.

Visión General del Panel de Control de Neptune.ai

Características clave

  • Registro Automatizado: Registra automáticamente métricas clave de entrenamiento como la pérdida de caja (box loss), la pérdida de clasificación (classification loss) y el mAP.
  • Visualización de Imágenes: Visualice mosaicos de entrenamiento y predicciones de validación directamente en el panel de control de Neptune.
  • Puntos de Control del Modelo: Cargue y controle la versión de los pesos de su modelo entrenado (best.pt) automáticamente al final del entrenamiento.
  • Seguimiento de Hiperparámetros: Registre todos los parámetros de configuración para asegurar la reproducibilidad completa de sus experimentos.
  • Gráficos Interactivos: Visualice matrices de confusión y curvas de precisión-exhaustividad para analizar el rendimiento del modelo.

Instalación

Para usar Neptune con Ultralytics, deberá instalar el neptune paquete cliente junto con ultralytics.

Instalación

# Install the required packages
pip install ultralytics neptune

# Enable Neptune integration in Ultralytics settings
yolo settings neptune=True

Configuración

Antes de iniciar el entrenamiento, debe conectar su entorno local a su proyecto de Neptune. Necesitará su API Token y su Project Name desde su panel de control de Neptune.

1. Obtenga Sus Credenciales

  1. Inicie sesión en Neptune.ai.
  2. Cree un nuevo proyecto (o seleccione uno existente).
  3. Vaya a su menú de usuario y obtenga su API Token.

2. Configure Variables de Entorno

La forma más segura de manejar las credenciales es a través de variables de entorno. Tenga en cuenta que la función de callback de Ultralytics Neptune lee el argumento YOLO project y no utiliza NEPTUNE_PROJECT. Pase el slug completo de Neptune (por ejemplo, workspace/name) a través de project= en su comando de entrenamiento; de lo contrario, Neptune intentará usar el valor predeterminado literal "Ultralytics" y la ejecución fallará.

export NEPTUNE_API_TOKEN="your_long_api_token_here" # required
$Env:NEPTUNE_API_TOKEN = "your_long_api_token_here"  # required
import os

os.environ["NEPTUNE_API_TOKEN"] = "your_long_api_token_here"
os.environ["NEPTUNE_PROJECT"] = "your_workspace/your_project"

Uso

Una vez configurado, puede empezar a entrenar sus modelos YOLO26. La integración de Neptune funciona automáticamente cuando el neptune el paquete está instalado y la integración está habilitada en la configuración.

Ejemplo de Entrenamiento

Entrenar YOLO26 con registro de Neptune

from ultralytics import YOLO

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

# Train the model
# Pass the Neptune project slug as the 'project' argument (workspace/name)
results = model.train(data="coco8.yaml", epochs=10, project="my-workspace/my-project", name="experiment-1")
# Train via CLI
# project must be the Neptune slug (workspace/name); otherwise run creation will fail
yolo train data=coco8.yaml epochs=10 project=my-workspace/my-project name=experiment-1

Comprendiendo la Integración

El siguiente diagrama ilustra cómo la pipeline de entrenamiento de Ultralytics interactúa con Neptune para registrar diversos artefactos y métricas.

graph LR
    A[YOLO Training Loop] --> B{Neptune Callback}
    B -->|Log Scalars| C[Loss, mAP, LR]
    B -->|Log Images| D[Mosaics, Preds]
    B -->|Log Artifacts| E[Model Weights]
    B -->|Log Metadata| F[Hyperparameters]

    C --> G[Neptune Server]
    D --> G
    E --> G
    F --> G

    G --> H[Neptune Web Dashboard]

¿Qué se Registra?

Cuando ejecuta el comando de entrenamiento, la integración de Neptune captura automáticamente la siguiente estructura de datos en su ejecución:

  1. Configuración/Hiperparámetros: Todos los argumentos de entrenamiento (épocas, lr0, optimizador, etc.) se registran en la sección de Configuración.
  2. Configuración/Modelo: La arquitectura y definición del modelo.
  3. Métricas:
    • Entrenar: box_loss, cls_loss, dfl_loss, lr (tasa de aprendizaje).
    • Métricas: precision, recall, mAP50, mAP50-95.
  4. Imágenes:
    • Mosaic: Lotes de entrenamiento que muestran aumento de datos.
    • Validation: Etiquetas de verdad fundamental y predicciones del modelo sobre datos de validación.
    • Plots: Matrices de confusión, curvas de precisión-exhaustividad.
  5. Pesos: El modelo final entrenado (best.pt) se carga en la weights carpeta de la ejecución de Neptune.

Uso Avanzado

Organización de Ejecuciones

Puede utilizar los argumentos estándar de Ultralytics project y name para organizar sus ejecuciones en Neptune.

  • project: Debe ser el slug del proyecto de Neptune workspace/name; esto es lo que el callback pasa a neptune.init_run.
  • name: Actúa como identificador para la ejecución específica.

Registro Personalizado

Si necesita registrar métricas personalizadas adicionales junto con el registro automático, puede acceder a la instancia de ejecución de Neptune. Tenga en cuenta que deberá modificar la lógica del entrenador o crear un callback personalizado para acceder al objeto de ejecución específico, ya que la integración de Ultralytics gestiona el ciclo de vida de la ejecución internamente.

Preguntas frecuentes

¿Cómo desactivo el registro de Neptune?

Si ha instalado neptune pero desea deshabilitar el registro para una sesión específica o globalmente, puede modificar la configuración de YOLO.

# Disable Neptune integration
yolo settings neptune=False

Mis imágenes no se están cargando. ¿Qué sucede?

Asegúrese de que su red permite conexiones a los servidores de Neptune. Además, el registro de imágenes suele ocurrir en intervalos específicos (por ejemplo, al final de las épocas o al final del entrenamiento). Si interrumpe el entrenamiento antes de tiempo usando Ctrl+C, algunos artefactos finales como matrices de confusión o los mejores pesos del modelo podrían no ser cargados.

¿Puedo registrar en un ID de ejecución de Neptune específico?

La integración actual crea automáticamente una nueva ejecución (run) para cada sesión de entrenamiento. Para reanudar el registro en una ejecución existente, normalmente necesitaría manejar la inicialización de Neptune manualmente en código python, lo que queda fuera del alcance de la integración automática. Sin embargo, Ultralytics permite reanudar el entrenamiento localmente, lo que creará una nueva ejecución en Neptune para trackear las épocas reanudadas.

¿Dónde puedo encontrar los pesos del modelo en Neptune?

En su panel de control de Neptune, navegue hasta la sección de Artefactos o Todos los metadatos Encontrará una weights carpeta que contiene su best.pt archivo, que puede descargar para su despliegue.



📅 Creado hace 1 mes ✏️ Actualizado hace 4 días
glenn-jocher

Comentarios