Seguimiento y visualización de experimentos de YOLO con Weights & Biases#
Los modelos de detección de objetos, como Ultralytics YOLO26, se han convertido en elementos esenciales de muchas aplicaciones de visión artificial. Sin embargo, entrenar, evaluar e implementar estos complejos modelos plantea varios retos. El seguimiento de las métricas clave de entrenamiento, la comparación de variantes del modelo, el análisis de su comportamiento y la detección de problemas requieren una instrumentación y una gestión de experimentos considerables.
Ver: Cómo usar Ultralytics YOLO26 con Weights and Biases
Esta guía muestra cómo integrar Ultralytics YOLO26 con Weights & Biases para el seguimiento de experimentos, los artefactos de los mejores modelos y la visualización del rendimiento del modelo. También incluye instrucciones para configurar la integración, entrenar y visualizar resultados con las funciones interactivas de Weights & Biases.
¿Ya tienes puntos de control YOLO registrados en W&B? Importa sus proyectos a Ultralytics Platform desde Settings > Integrations > Weights & Biases.
Weights & Biases#
Weights & Biases es una plataforma MLOps diseñada para realizar el seguimiento, visualizar y gestionar experimentos de aprendizaje automático. Incluye el registro automático de métricas de entrenamiento para reproducir experimentos por completo, una interfaz interactiva que agiliza el análisis de datos y herramientas eficaces de gestión de modelos para desplegarlos en distintos entornos.
Entrenamiento de YOLO26 con Weights & Biases#
Puedes usar Weights & Biases para hacer más eficiente y automatizar tu proceso de entrenamiento de YOLO26. La integración te permite realizar un seguimiento de los 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:
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb
# Enable W&B logging for Ultralytics
yolo settings wandb=TruePara obtener instrucciones detalladas y buenas prácticas sobre el proceso de instalación, consulta la guía de instalación de YOLO26. Si tienes dificultades al instalar los paquetes necesarios para YOLO26, consulta la guía de problemas frecuentes, donde encontrarás 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. Para ello, debes crear una cuenta de Weights & Biases y obtener la clave API necesaria para conectar sin problemas tu entorno de desarrollo con la plataforma W&B.
Empieza por inicializar el entorno de Weights & Biases en tu espacio de trabajo. Para ello, ejecuta el siguiente comando y sigue las instrucciones.
import wandb
# Inicializa tu entorno de Weights & Biases (solicita la clave de API o lee WANDB_API_KEY)
wandb.login()Ve a la página de autorización de Weights & Biases para crear y obtener tu clave API. Cuando se te solicite, utiliza esta clave para autenticar tu entorno con W&B.
Uso: entrenamiento de YOLO26 con Weights & Biases#
from ultralytics import YOLO
# Cargar un modelo YOLO
model = YOLO("yolo26n.pt")
# Entrena y ajusta el modelo
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")Las ejecuciones que crea Ultralytics muestran en un gráfico las métricas de entrenamiento frente a epoch. Si inicias una ejecución con wandb.init() antes de entrenar, Ultralytics registra los datos en esa ejecución, con un valor de epoch en cada fila, y la deja abierta para que puedas seguir registrando datos en ella y llamar por tu cuenta a wandb.finish(). Los argumentos de entrenamiento se añaden a la configuración de esa ejecución, y cualquier clave cuyo valor ya hayas establecido tú o haya establecido un barrido de W&B conserva ese valor.
Argumentos de W&B#
| Argumento | Predeterminado | Descripción |
|---|---|---|
| proyecto | None | Especifica el nombre del proyecto, que se registra localmente y en W&B, y agrupa varias ejecuciones. Si no se especifica, las ejecuciones de W&B se registran en el proyecto Ultralytics. |
| nombre | None | El nombre de la ejecución de entrenamiento. Determina el nombre de las subcarpetas que se crean y el que se utiliza para el registro en W&B. |
| guardar | True | Determina si se carga el mejor punto de control como artefacto de modelo de W&B. |
Si quieres activar o desactivar el registro de Weights & Biases en Ultralytics, puedes utilizar el comando yolo settings. De forma predeterminada, el registro de Weights & Biases está desactivado.
# Enable Weights & Biases logging
yolo settings wandb=True
# Disable Weights & Biases logging
yolo settings wandb=FalseConfigura WANDB_MODE=offline para registrar sin conexión de red y, después, sube la ejecución con wandb sync <save_dir>/wandb/offline-run-*. Reanudar el entrenamiento con resume=True continúa la misma ejecución de W&B, tanto en línea como sin conexión y en todos los sistemas operativos, leyendo el ID de ejecución de la carpeta de ejecución más reciente en el directorio wandb/ del directorio de guardado original; así que mantén ese directorio en su sitio.
Cómo entender 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 un ID único, que indica el inicio del proceso de entrenamiento.
- Un resumen conciso de la estructura del modelo, que incluye el número de capas y parámetros.
- Actualizaciones periódicas de métricas importantes, como las pérdidas de entrenamiento, la precisión, la exhaustividad y las puntuaciones de mAP durante cada época de entrenamiento.
- Al finalizar el entrenamiento, se muestran métricas detalladas, como la velocidad de inferencia del modelo y las métricas generales de exactitud.
- Enlaces al panel de Weights & Biases para analizar y visualizar en profundidad el proceso de entrenamiento, junto con información sobre las ubicaciones de los archivos de registro locales.
Visualización del panel de Weights & Biases#
Después de ejecutar el fragmento de código de uso, puedes acceder al panel de Weights & Biases (W&B) mediante el enlace que aparece en la salida. El panel ofrece una visión completa del proceso de entrenamiento de tu modelo con YOLO26.
Funciones clave del panel de Weights & Biases#
-
Seguimiento de métricas en tiempo real: Observa cómo evolucionan durante el entrenamiento métricas como la pérdida, la exactitud y los resultados de validación para obtener información inmediata que te ayude a ajustar el modelo. Descubre cómo se hace el seguimiento de los experimentos con Weights & Biases.
-
Comparación de hiperparámetros: Cada ejecución registra sus argumentos de entrenamiento, como la tasa de aprendizaje y el tamaño del lote, para que puedas comparar configuraciones entre ejecuciones. Para realizar búsquedas automatizadas con el registro de W&B, usa Ray Tune.
-
Análisis comparativo: La plataforma permite comparar lado a lado distintas ejecuciones de entrenamiento, algo esencial para evaluar el impacto de diversas configuraciones del modelo y entender qué cambios mejoran el rendimiento.
-
Visualización del progreso del entrenamiento: Las representaciones gráficas de las métricas clave permiten entender de forma intuitiva el rendimiento del modelo a lo largo de las épocas. Descubre cómo Weights & Biases te ayuda a visualizar los resultados de validación.
-
Supervisión de recursos: Controla el uso de la CPU, la GPU y la 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 al mejor punto de control del modelo y compártelo; se sube como artefacto de W&B al final del entrenamiento, lo que facilita la implementación y la colaboración con los miembros del equipo en proyectos complejos.
Con estas funciones, puedes hacer un seguimiento del entrenamiento de tu modelo YOLO26, analizarlo y optimizarlo para tus tareas de detección de objetos.
Resumen#
En esta guía hemos explicado la integración de Ultralytics YOLO con Weights & Biases, que permite realizar un seguimiento de los resultados del entrenamiento del modelo y visualizarlos. Con W&B, puedes agilizar tu flujo de trabajo de aprendizaje automático, tomar decisiones basadas en datos y mejorar el rendimiento de tu modelo.
Para obtener más información, consulta la presentación de Soumik Rakshit sobre esta integración, presentada en YOLO VISION 2023.
Preguntas frecuentes#
Para integrar Weights & Biases con Ultralytics YOLO26:
-
Instala los paquetes necesarios:
pip install -U ultralytics wandb yolo settings wandb=True -
Inicia sesión en tu cuenta de Weights & Biases:
wandb login -
Entrena tu modelo YOLO26 con el registro de W&B activado:
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.
-
Entre las funciones clave se incluyen:
- Seguimiento de métricas en tiempo real durante el entrenamiento
- Comparación de hiperparámetros entre ejecuciones
- Análisis comparativo de distintas ejecuciones de entrenamiento
- Visualización gráfica del progreso del entrenamiento
- Supervisión de recursos (uso de CPU, GPU y memoria)
- Gestión y uso compartido de artefactos del modelo
Estas funciones ayudan a hacer un seguimiento de los experimentos, optimizar los modelos y colaborar de forma más eficaz en proyectos de YOLO26.
Después de ejecutar el script de entrenamiento con la integración de W&B:
- En la salida de la consola aparecerá un enlace a tu panel de W&B.
- Haz clic en el enlace o ve a wandb.ai e inicia sesión en tu cuenta.
- Ve a tu proyecto para consultar métricas detalladas, visualizaciones y datos sobre el 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 forma eficaz.
Sí, puedes desactivar el registro de W&B con el siguiente comando:
yolo settings wandb=FalsePara volver a activar el registro, utiliza:
yolo settings wandb=TrueEsto te permite controlar cuándo quieres utilizar el registro de W&B sin modificar tus scripts de entrenamiento.
Weights & Biases ayuda a optimizar los modelos YOLO26:
- Proporciona visualizaciones detalladas de las métricas de entrenamiento
- Permite comparar fácilmente distintas versiones del modelo
- Registro de los argumentos de entrenamiento de cada ejecución para comparar el ajuste de hiperparámetros
- Permite analizar de forma colaborativa el rendimiento del modelo
- Facilita el intercambio de artefactos y resultados del modelo
Estas funciones ayudan a investigadores y desarrolladores a iterar más rápido y tomar decisiones basadas en datos para mejorar sus modelos YOLO26.
Comentarios25
Haz una pregunta, comparte tus resultados o ayuda a otra persona.
TJdeWet
Hi there,
I would like to know how (if possible) to log more than just these standard metrics for a yolov8 or v11 model during HP tuning logged with wandb: train/loss, val/loss, metrics/accuracy_top1, metrics_accuracy_top5.
This is what the code looks like:
!pip install -U ultralytics wandb !yolo settings wandb=True import wandb from ultralytics import YOLO wandb.login(key="...")
sweep_config = { 'method': "bayes", 'metric': { 'name': 'val/loss', 'goal': 'minimize', }, 'parameters': { .... } }
sweep_id = ...
def train(): run = wandb.init() model = YOLO('yolo11n-cls.pt')
results = model.train( data='...', batch=wandb.config.batch, lr0=wandb.config.lr0, epochs=..., optimizer=..., momentum=..., patience=..., save_period=..., imgsz=..., cache=False, save=True )wandb.agent(sweep_id, train, count=...)
Glenn JocherUltralytics@TJdeWet for custom metric logging beyond default training metrics in YOLO11 with W&B, you can access the complete results dictionary during training and log additional metrics manually through W&B's API. The automatically logged metrics vary by task type (detection/classification), but you can extend them using a callback. For implementation details, refer to the Weights & Biases integration documentation.
marcory-hub
Integration of Weights & Biases with YOLO11 in Google Colab
Is it currently possible to integrate Weights & Biases (W&B) with Ultralytics YOLO11 in Google Colab? If yes, where can I find the correct and up-to-date information to set this up properly?
My Issue
With YOLOv10, I was able to track all my training metrics in W&B seamlessly. However, when trying to replicate this with YOLO11, only GPU and system-related data are logged to the W&B platform. None of the training metrics or results appear.
Summary of things I've Tried
- Following the YouTube tutorial linked at the top of this page.
- Using the Try on Colab button on W&B's site
WARNING: Did not find branch or tag 'feat/ultralytics', assuming revision or ref. error: subprocess-exited-with-error × git checkout -q feat/ultralytics did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip. error: subprocess-exited-with-error × git checkout -q feat/ultralytics did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip. Note: The Ultralytcs integration will be soon available as a fully supported feature on Weights & Biases once this pull request is merged.This is because the branch https://github.com/wandb/wandb@feat/ultralytics does not exist. To resolve this, I tried various fixes, including following older tutorials and experimenting with suggestions from forums and community discussions.
I’m particularly keen to switch to YOLO11 because it shows significant improvements in wildlife detection when compared to YOLOv10.
Any guidance, updates, or resources on enabling this integration would be greatly appreciated!
Glenn JocherUltralytics@marcory-hub yes, you can integrate Weights & Biases (W&B) with YOLO11 in Google Colab. Please ensure the latest
ultralyticsandwandbpackages are installed usingpip install -U ultralytics wandb. If training metrics are not being logged, ensure your W&B environment is authenticated (wandb.login(key="<API_KEY>")) and thatprojectandnameparameters are correctly specified inmodel.train(). Detailed setup instructions are available in our documentation: https://docs.ultralytics.com/integrations/weights-biases/. Let us know if further assistance is needed!marcory-hub
Thanks for the suggestions, @glenn-jocker ! I tried starting from scratch with W&B with YOLO11 but unfortunately, only system information showed up in W&B.
On top of that, it seems like my Colab runtime might be banned due to a potential issue with a compromised package. Hopefully, they'll restore access soon for everyone affected.
marcory-hub
Good news! My initial code now works for YOLO11. All metrics are automatically saved to W&B, and training is significantly faster than last week without maxing out Colab's RAM.
I'm not sure why it's significantly faster today, but I suspect the previous slowness prevented training from progressing beyond the warmup epochs, resulting in only system information being sent to W&B.
Glenn JocherUltralytics@marcory-hub glad to hear it's working well now, and thank you for sharing your experience! The faster training could indeed be related to runtime or hardware optimizations in Colab. Feel free to explore additional tips and resources in the YOLO11 W&B integration guide to further enhance your workflow. Let us know if you run into any other issues!
Pushtogithub23
I used this code, but it only logs system logs; no training metrics, media, or validation metrics are being logged as shown in the video. How can I log all the training metrics and media as demonstrated in the video? Can anyone help me with this?
from ultralytics import YOLO from wandb.integration.ultralytics import add_wandb_callback wandb.login() wandb.init(project = 'Hand-Gestures-Detection', name = 'yolov8n_5', job_type='training') model = YOLO("yolov8n.pt") add_wandb_callback(model, enable_model_checkpointing=True) model.train(data="HAND-GESTURE-DETECTION-1/data.yaml", epochs=5, imgsz = 640, project = "Hand-Gestures-Detection", name = 'yolov8n_5' )
Glenn JocherUltralytics@Pushtogithub23 to log all training metrics and media with Weights & Biases, ensure you have the latest versions of
ultralyticsandwandbinstalled. Also, verify that your Weights & Biases account is properly authenticated. For detailed setup instructions, visit the Weights & Biases integration guide.
TJdeWet
Hi!
I am using wandb to do hyperparameter tuning. Is it possible to maximise validation mAP50? This seems to be maximising the training mAP50 if I am not mistaken?
metric: name: mAP50 goal: maximise
Otherwise should I do hyperparameter using something like this instead:
metric: name: val/box_loss goal: minimize
Thanks!
Glenn JocherUltralytics(editado)Hi there!
For your hyperparameter tuning in Weights & Biases, if you're aiming to maximize validation mAP50 specifically, I recommend adjusting your metric settings accordingly. To focus on validation mAP50, your metric configuration might look something like this:
metric: name: metrics/mAP50(B) goal: maximizeThis setup ensures you're targeting the maximization of mAP50 on the validation data directly.
Using
val/box_losswith the goal to minimize can also be effective, especially if you prefer to focus on reducing the box prediction errors during validation:metric: name: val/box_loss goal: minimizeBoth approaches are valid and can be chosen based on your specific model performance goals. Hope this helps! If you have more questions, feel free to ask. 😊
TJdeWet
Hi Glenn,
Thanks for getting back to me. I just tried it, and it doesn't seem that tuning to maximize val/mAP50 is working - the only metrics I see that are being logged are: cls, box, and dfl loss (both train and val), and metrics/mAP50(B), metrics/mAP50-75(B), metrics/Recall(B), and metrics/Precision(B), which I believe are the training metrics? I would like to log those same metrics for validation, and tune based on val/mAP50. Is there a way I can do this?
Thanks!
Glenn JocherUltralytics(editado)Hi there!
In the Ultralytics W&B integration, validation metrics are logged automatically under names such as
metrics/mAP50(B)andmetrics/mAP50-95(B)(notval/mAP50; theval/prefix is used for validation losses likeval/box_loss). Use that name in your sweep config:metric: name: metrics/mAP50(B) goal: maximizeEnable the integration with
yolo settings wandb=True; no manualwandb.log()call is needed.
JiyongBoo
Is it possible to train RT-DETR model with wandb? In add_wandb_callback() function, there are nothing about rt-detr. I tried replacing yolov8 with rt-detr in the example code. In the result, I confirmed that runs.summary["Validation-Table"] and runs.summary["Train-Table"] did not appear. How do I solve this problem?
Paula DerrengerUltralytics(editado)@JiyongBoo hi there! 😊 RT-DETR trains with the same built-in Weights & Biases integration as other Ultralytics models, so you don't need
add_wandb_callback()or manualwandb.log()calls. Enable it withyolo settings wandb=True, then train as usual:from ultralytics import RTDETR model = RTDETR("rtdetr-l.pt") model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="rtdetr-l")See the Weights & Biases integration guide for details.
DungHD-1997
from ultralytics import YOLO from wandb.integration.ultralytics import add_wandb_callback import wandb def train(): wandb.login() project_name = "test_ai" # Step 1: Initialize a Weights & Biases run wandb.init(project=project_name, job_type="training",name="old_data")
# Step 2: Define the YOLOv8 Model and Dataset model_name = "yolov8x" dataset_name = "C://Users//Administrator//project//yolov5_train_data//data//slant_2024.yaml" model = YOLO(f"{model_name}.pt") # Step 3: Add W&B Callback for Ultralytics add_wandb_callback(model, enable_model_checkpointing=True) model_name = "train_01" # Step 4: Train and Fine-Tune the Model model.train(project=project_name,name=model_name, data=dataset_name, epochs=100, imgsz=640, batch = 8) # Step 5: Validate the Model model.val() # Step 6: Perform Inference and Log Results #model(["path/to/image1", "path/to/image2"]) # Step 7: Finalize the W&B Run wandb.finish()if name == "main": train() I used the above code to train custom data, but when using wandb, the GPU memory continuously increases over epochs until an out of memory error appears. program has been stopped. Error message: torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 20.00 MiB. GPU 0 has a total capacity of 15.88 GiB of which 7.62 MiB is free. Of the allocated memory 14.53 GiB is allocated by PyTorch, and 103.44 MiB is reserved by PyTorch but unallocated. If reserved but unallocated memory is large try setting PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True to avoid fragmentation. See documentation for Memory Management (https://pytorch.org/docs/stable/notes/cuda.html#environment-variables)
DungHD-1997
If I don't use wandb, the GPU memory hardly changes over each epoch. Is there something wrong with my code?
Glenn JocherUltralytics(editado)Hey there! It looks like you're encountering a memory issue related to using Weights & Biases (W&B) with YOLOv8, specifically the GPU running out of memory during training. This can happen for a few reasons, including excessive memory allocation by PyTorch or W&B logging mechanisms. Here are a couple of suggestions that might help:
-
Reduce Batch Size: Lowering the batch size can significantly reduce memory usage. Although this might increase training time, it can help avoid out-of-memory errors.
model.train(batch=4) # Try reducing the batch size -
Clear CUDA Cache: Manually clearing the CUDA cache after each epoch might help release unused memory.
import torch torch.cuda.empty_cache() -
Optimize Model and DataLoader: Ensure that your DataLoader is not the source of the memory leak, and try to optimize your model's memory usage.
-
Disable W&B to isolate the cause: Run
yolo settings wandb=Falseand train again; if the out-of-memory error persists, W&B is not the cause.
Finally, consider profiling your code to identify specific lines or operations that cause the memory spike. PyTorch and W&B offer tools and documentation on best practices to optimize memory usage. 📘
Hope this helps! If the issue persists, feel free to reach out with more details or check the W&B and YOLOv8 docs for more insights.
-
danielst4
Hey there, I am trying to make a sweep using WandB but cant quite put together where to insert what into the YOLO call, to use different hyperparameters and track them. Even though I found a site where one has done this he too doesnt describe what he had to do. I am not sure if it is more complicated than I think and if I really have to insert stuff into the training function or if there is an easy way to achieve this. I would be really greatful for help to know what exactly is necessary to make a WandB hyperparameter sweep with YOLO Thanks Daniel
Paula DerrengerUltralytics(editado)Hey Daniel 👋,
Great to hear you're exploring hyperparameter sweeps with WandB and YOLO! It's simpler than it might seem at first. Here's a quick guide to get you started:
- Initialize WandB: Before starting your training, make sure to log in to WandB in your script or notebook using:
import wandb wandb.login() - Set Up the Sweep: Define your sweep configuration in WandB, using Ultralytics training argument names for the hyperparameters. For example:
method: random metric: name: val/box_loss goal: minimize parameters: lr0: min: 0.0001 max: 0.001 batch: values: [16, 32, 64] - Integrate Sweep with YOLO: Enable the built-in integration with
yolo settings wandb=True. If a W&B run is already active (as in a sweep agent), Ultralytics logs into it and keeps any config values the sweep already set.import wandb from ultralytics import YOLO def train(): wandb.init(project="your_project_name") model = YOLO("yolov8n.pt") model.train(data="coco128.yaml", epochs=5, imgsz=640, lr0=wandb.config.lr0, batch=wandb.config.batch) - Start the Sweep: Once everything is set up, you can start the sweep in WandB. This will iterate over the defined hyperparameter space, automatically logging each experiment's results.
Remember, the key parts are enabling the W&B setting and making sure your sweep parameter names match Ultralytics training arguments.
Hope this helps! If you have any more questions or run into issues, feel free to ask. Happy sweeping! 🚀
- Initialize WandB: Before starting your training, make sure to log in to WandB in your script or notebook using:
danielst4
Thank you Paula, this helped a lot! I can make a sweep now but I noticed that the values of the parameters which are given from the sweep to the script dont match the parameters used. Even though the command looks like this:
wandb.wandb_agent - INFO - About to run command: /usr/bin/env python training_rtdetr.py --batch=8 --epochs=6 --imgsz=1280 --learning_rate=0.0007013348811086657where "training_rtdetr.py" is a script with the code you gave me. (I am working with the RTDETR but it shouldnt make a difference as the metrics and calls are the same if I understand correctly?) But then after engine/trainer it says its using epochs=100 and it also uses that number for training. So just to be sure about a few things, I already logged in to WandB, I wrote a script with the code from your 3., I went to wandb, created a sweep there with the code from 2. + the lineprogram: training_rtdetr.pyand in a terminal I used the resulting callwandb agent [sweepid]Also I am kinda confused because you used "learning_rate" and "batch_size" but as far as I can tell these are not the parameters I can give for the training and they should be called "lr0" and "batch" respectively (which I both tried but they didnt work) I hope I provided all the necessary information otherwise just tell me what you need to know
Paula DerrengerUltralytics@danielst4 hey Daniel,
It sounds like you're on the right track with setting up your WandB sweep with YOLOv8! Regarding the mismatch in parameter values, it seems like there might be a discrepancy between the parameter names expected by your script and those defined in your WandB sweep configuration.
For YOLOv8, the correct parameter names for learning rate and batch size are indeed
lr0andbatch, respectively. If you're using these parameters in yourtraining_rtdetr.pyscript, ensure they're correctly parsed from the command line arguments. Here's a quick Python snippet usingargparsefor reference:import argparse # Parse command line arguments parser = argparse.ArgumentParser() parser.add_argument('--batch', type=int, help='batch size') parser.add_argument('--epochs', type=int, help='number of epochs') parser.add_argument('--imgsz', type=int, help='image size') parser.add_argument('--learning_rate', type=float, help='learning rate') args = parser.parse_args() # Now you can use args.batch, args.epochs, etc., in your scriptMake sure your WandB sweep configuration uses the same parameter names as those your script expects. For example:
program: training_rtdetr.py method: bayes metric: name: val/box_loss goal: minimize parameters: learning_rate: min: 0.0001 max: 0.001 batch: values: [8, 16, 32] epochs: value: 6 imgsz: value: 1280If you've already done this and the issue persists, it might be helpful to double-check how your script handles these parameters and ensure they're being correctly applied to your YOLOv8 model configuration.
Feel free to share more details if you're still encountering issues. We're here to help! 🚀
J0ELh
Is it possible to remove logging and only log progress in the command line? For my training process yolov8 seems to automatically connect with my wandb account and start logging. This process is very time-consuming so I'd like to know whether there's a flag like
log = Falseor something like that.J0ELh
^ this is because I'm done experimenting and need quick retraining options now.
Glenn JocherUltralytics(editado)Hey there! 👋 If you're looking to disable automatic logging to Weights & Biases (W&B) during your YOLOv8 training to speed things up, you can do so by setting the
wandbargument toFalsewhen initiating your training command. Here's how you can do it:yolo settings wandb=FalseThis is a global Ultralytics setting, not a train argument, and it stops YOLOv8 from connecting to your W&B account and logging training progress there. Happy training! 🚀