Weights & Biases Logging 🆕
内容
Weights & Biases Logging 🆕¶
📚 This guide explains how to use Weights & Biases (W&B) with YOLOv5 🚀.
About Weights & Biases¶
Think of W&B like GitHub for machine learning models. With a few lines of code, save everything you need to debug, compare and reproduce your models — architecture, hyperparameters, git commits, model weights, GPU usage, and even datasets and predictions.
W&B’s lightweight integrations work with any Python script, and you can sign up for a free account and start tracking and visualizing models in 5 minutes.
Used by top researchers including teams at OpenAI, Lyft, Github, and MILA, W&B is part of the new standard of best practices for machine learning. How W&B can help you optimize your machine learning workflows:
Debug model performance in real time
GPU usage, visualized automatically
Custom charts for powerful, extensible visualization
Share insights interactively with collaborators
Optimize hyperparameters efficiently
Track datasets, pipelines, and production models
Before You Start¶
Clone this repo and install requirements.txt dependencies, including Python>=3.8 and PyTorch>=1.7. Also install the W&B pip package wandb
.
$ git clone https://github.com/ultralytics/yolov5 # clone repo
$ cd yolov5
$ pip install -r requirements.txt wandb # install
First-Time Setup¶
When you first train, W&B will prompt you to create a new account and will generate an API key for you. If you are an existing user you can retrieve your key from https://wandb.ai/authorize. This key is used to tell W&B where to log your data. You only need to supply your key once, and then it is remembered on the same device.
W&B will create a cloud project (default is ‘YOLOv5’) for your training runs, and each new training run will be provided a unique run name within that project as project/name. You can also manually set your project and run name as:
$ python train.py --project ... --name ...
Viewing Runs¶
Run information streams from your environment to the W&B cloud console as you train. This allows you to monitor and even cancel runs in realtime. All important information is logged:
Training losses
Validation losses
Metrics: Precision, Recall, mAP@0.5, mAP@0.5:0.95
Learning Rate over time
GPU: Type, GPU Utilization, power, temperature, CUDA memory usage
System: Disk I/0, CPU utilization, RAM memory usage
Environment: OS and Python types, Git repository and state, training command
Reports¶
W&B Reports can be created from your saved runs for sharing online. Once a report is created you will receive a link you can use to publically share your results. Here is an example report created from the COCO128 tutorial trainings of all four YOLOv5 models (link).
Environments¶
YOLOv5 may be run in any of the following up-to-date verified environments (with all dependencies including CUDA/CUDNN, Python and PyTorch preinstalled):
Google Cloud Deep Learning VM. See GCP Quickstart Guide
Amazon Deep Learning AMI. See AWS Quickstart Guide
Docker Image. See Docker Quickstart Guide
Status¶
If this badge is green, all YOLOv5 GitHub Actions Continuous Integration (CI) tests are currently passing. CI tests verify correct operation of YOLOv5 training (train.py), testing (test.py), inference (detect.py) and export (export.py) on MacOS, Windows, and Ubuntu every 24 hours and on every commit.