馃摎 This guide explains how to use **Weights & Biases** (W&B) with YOLOv5 馃殌. UPDATED 29 September 2021.
* [About Weights & Biases](#about-weights-&-biases)
* [First-Time Setup](#first-time-setup)
* [Viewing runs](#viewing-runs)
* [Advanced Usage: Dataset Versioning and Evaluation](#advanced-usage)
* [Reports: Share your work with the world!](#reports)
## About Weights & Biases
Think of [W&B](https://wandb.ai/site?utm_campaign=repo_yolo_wandbtutorial) 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.
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](https://wandb.ai/wandb/getting-started/reports/Visualize-Debug-Machine-Learning-Models--VmlldzoyNzY5MDk#Free-2) model performance in real time
* [GPU usage](https://wandb.ai/wandb/getting-started/reports/Visualize-Debug-Machine-Learning-Models--VmlldzoyNzY5MDk#System-4) visualized automatically
* [Custom charts](https://wandb.ai/wandb/customizable-charts/reports/Powerful-Custom-Charts-To-Debug-Model-Peformance--VmlldzoyNzY4ODI) for powerful, extensible visualization
* [Share insights](https://wandb.ai/wandb/getting-started/reports/Visualize-Debug-Machine-Learning-Models--VmlldzoyNzY5MDk#Share-8) interactively with collaborators
* [Optimize hyperparameters](https://docs.wandb.com/sweeps) efficiently
* [Track](https://docs.wandb.com/artifacts) datasets, pipelines, and production models
## First-Time Setup
<details open>
<summary> Toggle Details </summary>
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:
```shell
$ python train.py --project ... --name ...
```
YOLOv5 notebook example: <a href="https://colab.research.google.com/github/ultralytics/yolov5/blob/master/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"></a> <a href="https://www.kaggle.com/ultralytics/yolov5"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open In Kaggle"></a>
<img width="960" alt="Screen Shot 2021-09-29 at 10 23 13 PM" src="https://user-images.githubusercontent.com/26833433/135392431-1ab7920a-c49d-450a-b0b0-0c86ec86100e.png">
</details>
## Viewing Runs
<details open>
<summary> Toggle Details </summary>
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 <b>realtime</b> . All important information is logged:
* Training & Validation losses
* Metrics: Precision, Recall, mAP@0.5, mAP@0.5:0.95
* Learning Rate over time
* A bounding box debugging panel, showing the training progress over time
* GPU: Type, **GPU Utilization**, power, temperature, **CUDA memory usage**
* System: Disk I/0, CPU utilization, RAM memory usage
* Your trained model as W&B Artifact
* Environment: OS and Python types, Git repository and state, **training command**
<p align="center"><img width="900" alt="Weights & Biases dashboard" src="https://user-images.githubusercontent.com/26833433/135390767-c28b050f-8455-4004-adb0-3b730386e2b2.png"></p>
</details>
## Advanced Usage
You can leverage W&B artifacts and Tables integration to easily visualize and manage your datasets, models and training evaluations. Here are some quick examples to get you started.
<details open>
<h3>1. Visualize and Version Datasets</h3>
Log, visualize, dynamically query, and understand your data with <a href='https://docs.wandb.ai/guides/data-vis/tables'>W&B Tables</a>. You can use the following command to log your dataset as a W&B Table. This will generate a <code>{dataset}_wandb.yaml</code> file which can be used to train from dataset artifact.
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python utils/logger/wandb/log_dataset.py --project ... --name ... --data .. </code>
![Screenshot (64)](https://user-images.githubusercontent.com/15766192/128486078-d8433890-98a3-4d12-8986-b6c0e3fc64b9.png)
</details>
<h3> 2: Train and Log Evaluation simultaneousy </h3>
This is an extension of the previous section, but it'll also training after uploading the dataset. <b> This also evaluation Table</b>
Evaluation table compares your predictions and ground truths across the validation set for each epoch. It uses the references to the already uploaded datasets,
so no images will be uploaded from your system more than once.
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python utils/logger/wandb/log_dataset.py --data .. --upload_data </code>
![Screenshot (72)](https://user-images.githubusercontent.com/15766192/128979739-4cf63aeb-a76f-483f-8861-1c0100b938a5.png)
</details>
<h3> 3: Train using dataset artifact </h3>
When you upload a dataset as described in the first section, you get a new config file with an added `_wandb` to its name. This file contains the information that
can be used to train a model directly from the dataset artifact. <b> This also logs evaluation </b>
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python utils/logger/wandb/log_dataset.py --data {data}_wandb.yaml </code>
![Screenshot (72)](https://user-images.githubusercontent.com/15766192/128979739-4cf63aeb-a76f-483f-8861-1c0100b938a5.png)
</details>
<h3> 4: Save model checkpoints as artifacts </h3>
To enable saving and versioning checkpoints of your experiment, pass `--save_period n` with the base cammand, where `n` represents checkpoint interval.
You can also log both the dataset and model checkpoints simultaneously. If not passed, only the final model will be logged
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python train.py --save_period 1 </code>
![Screenshot (68)](https://user-images.githubusercontent.com/15766192/128726138-ec6c1f60-639d-437d-b4ee-3acd9de47ef3.png)
</details>
</details>
<h3> 5: Resume runs from checkpoint artifacts. </h3>
Any run can be resumed using artifacts if the <code>--resume</code> argument starts with聽<code>wandb-artifact://</code>聽prefix followed by the run path, i.e,聽<code>wandb-artifact://username/project/runid </code>. This doesn't require the model checkpoint to be present on the local system.
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python train.py --resume wandb-artifact://{run_path} </code>
![Screenshot (70)](https://user-images.githubusercontent.com/15766192/128728988-4e84b355-6c87-41ae-a591-14aecf45343e.png)
</details>
<h3> 6: Resume runs from dataset artifact & checkpoint artifacts. </h3>
<b> Local dataset or model checkpoints are not required. This can be used to resume runs directly on a different device </b>
The syntax is same as the previous section, but you'll need to lof both the dataset and model checkpoints as artifacts, i.e, set bot <code>--upload_dataset</code> or
train from <code>_wandb.yaml</code> file and set <code>--save_period</code>
<details>
<summary> <b>Usage</b> </summary>
<b>Code</b> <code> $ python train.py --resume wandb-artifact://{run_path} </code>
![Screenshot (70)](https://user-images.githubusercontent.com/15766192/128728988-4e84b355-6c87-41ae-a591-14aecf45343e.png)
</details>
</details>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【资源说明】 添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
添加注意力机制的YOLOv5算法源码(支持yoloX和小型网络添加).zip (114个子文件)
Dockerfile 2KB
Dockerfile 821B
bus.jpg 476KB
zidane.jpg 165KB
README.md 10KB
CONTRIBUTING.md 5KB
README.md 2KB
README.md 256B
yolox.py 52KB
common.py 44KB
datasets.py 43KB
general.py 33KB
train.py 32KB
wandb_utils.py 25KB
tf.py 20KB
plots.py 19KB
val.py 17KB
export.py 16KB
metrics.py 16KB
yolo.py 15KB
loss.py 15KB
detect.py 15KB
torch_utils.py 14KB
augmentations.py 11KB
autoanchor.py 7KB
__init__.py 7KB
hubconf.py 6KB
downloads.py 6KB
detect_single.py 5KB
experimental.py 4KB
activations.py 4KB
callbacks.py 2KB
resume.py 1KB
restapi.py 1KB
sweep.py 989B
log_dataset.py 891B
example_request.py 299B
__init__.py 0B
__init__.py 0B
__init__.py 0B
__init__.py 0B
datasets.cpython-38.pyc 34KB
common.cpython-38.pyc 32KB
general.cpython-38.pyc 29KB
yolox.cpython-38.pyc 25KB
wandb_utils.cpython-38.pyc 19KB
plots.cpython-38.pyc 17KB
yolo.cpython-38.pyc 13KB
torch_utils.cpython-38.pyc 12KB
metrics.cpython-38.pyc 12KB
loss.cpython-38.pyc 11KB
augmentations.cpython-38.pyc 9KB
__init__.cpython-38.pyc 6KB
autoanchor.cpython-38.pyc 6KB
experimental.cpython-38.pyc 5KB
downloads.cpython-38.pyc 4KB
callbacks.cpython-38.pyc 2KB
__init__.cpython-38.pyc 165B
__init__.cpython-38.pyc 152B
__init__.cpython-38.pyc 151B
userdata.sh 1KB
get_coco.sh 900B
mime.sh 780B
get_coco128.sh 615B
download_weights.sh 443B
requirements.txt 892B
additional_requirements.txt 105B
Objects365.yaml 7KB
xView.yaml 5KB
VOC.yaml 3KB
anchors.yaml 3KB
VisDrone.yaml 3KB
Argoverse.yaml 3KB
sweep.yaml 2KB
SKU-110K.yaml 2KB
coco.yaml 2KB
yolov5-p7.yaml 2KB
yolov5_Mobilenetv3.yaml 2KB
GlobalWheat2020.yaml 2KB
yolov5_Mobilenetv2.yaml 2KB
yoloxs.yaml 2KB
yolox_nano.yaml 2KB
yolov5x6.yaml 2KB
yolov5s6.yaml 2KB
yolov5n6.yaml 2KB
yolov5m6.yaml 2KB
yolov5l6.yaml 2KB
coco128.yaml 2KB
hyp.scratch-low.yaml 2KB
hyp.scratch-high.yaml 2KB
hyp.scratch.yolox.yaml 2KB
hyp.scratch.yaml 2KB
yolov5-p6.yaml 2KB
yolov5-p2.yaml 2KB
yolov3-spp.yaml 2KB
yolov3.yaml 2KB
yolov5-panet.yaml 1KB
yolov5s_CBAM.yaml 1KB
yolov5s-ghost.yaml 1KB
yolov5_Shffule.yaml 1KB
共 114 条
- 1
- 2
资源评论
onnxrun
- 粉丝: 8983
- 资源: 4603
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 面享答题练习 面享答题主要面向在校学生找工作的笔试、面试的练习,其中需要一个后台系统作为此应用的支撑,于是开发了此后台管理系统
- 2023-4-8-笔记-第一阶段-第2节-分支循环语句- 4.goto语句 5.本章完 -2024.10.10
- 考虑分布式光伏储能系统的优化配置方法 完全复现截图文献模型 采用双层模型求解 上层决策储能系统配置容量用遗传 粒子群算法求解 下
- java管理系统源码.zip
- 逆变器光伏逆变器,3.6kw储能逆变器全套资料 STM32储能逆变器 BOOST 全桥 基于STM32F103设计,具有并网充
- Python管理系统(python+mysql)代码.zip
- 数据库课程设计.txt
- MATLAB软件的水果草莓检测系统【GUI界面版本】.zip
- MATLAB软件的数字图像处理系统【GUI界面版本】.zip
- python二叉树教程.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功