使用 Weights & Biases 进行 YOLO 实验跟踪与可视化#
目标检测模型(如 Ultralytics YOLO26)已成为许多计算机视觉应用不可或缺的一部分。然而,训练、评估和部署这些复杂模型会带来诸多挑战。跟踪关键训练指标、比较模型变体、分析模型行为以及检测问题,都需要大量的检测埋点和实验管理工作。
Watch: How to use Ultralytics YOLO26 with Weights and Biases
本指南介绍了 Ultralytics YOLO26 与 Weights & Biases 的集成,用于增强实验跟踪、模型检查点管理和模型性能可视化。其中还包括设置集成、训练模型以及使用 Weights & Biases 交互式功能可视化结果的说明。
Weights & Biases#
Weights & Biases 是一个先进的 MLOps 平台,用于跟踪、可视化和管理机器学习实验。它支持自动记录训练指标,以实现完整的实验可复现性;提供交互式 UI,以简化数据分析;还提供高效的模型管理工具,用于在各种环境中部署模型。
使用 Weights & Biases 训练 YOLO26#
你可以使用 Weights & Biases 为 YOLO26 训练流程带来更高的效率和自动化程度。该集成支持你跟踪实验、比较模型,并基于数据做出决策,从而改进你的计算机视觉项目。
安装#
要安装所需的软件包,请运行:
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb
# Enable W&B logging for Ultralytics
yolo settings wandb=True有关安装流程的详细说明和最佳实践,请务必查看我们的 YOLO26 安装指南。安装 YOLO26 所需软件包时,如果遇到任何困难,请参阅我们的常见问题指南以获取解决方案和提示。
配置 Weights & Biases#
安装必要的软件包后,下一步是设置 Weights & Biases 环境。这包括创建 Weights & Biases 账户并获取必要的 API 密钥,以便在你的开发环境与 W&B 平台之间建立顺畅连接。
首先在你的工作区中初始化 Weights & Biases 环境。你可以运行以下命令,并按照提示操作。
import wandb
# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")前往 Weights & Biases 授权页面创建并获取 API 密钥。出现提示时,使用此密钥对你的环境进行身份验证并连接到 W&B。
用法:使用 Weights & Biases 训练 YOLO26#
在开始阅读使用 Weights & Biases 训练 YOLO26 模型的说明前,请务必查看 Ultralytics 提供的 YOLO26 模型。这将帮助你根据项目需求选择最合适的模型。
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo26n.pt")
# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")W&B 参数#
| 参数 | 默认值 | 描述 |
|---|---|---|
| project | None | 指定在本地和 W&B 中记录的项目名称。这样你就可以将多次运行归为一组。 |
| name | None | 训练运行的名称。它决定了用于创建子文件夹的名称,以及用于 W&B 记录的名称 |
| save | True | 决定是否将最佳检查点上传为 W&B 模型制品。 |
如果你想在 Ultralytics 中启用或禁用 Weights & Biases 记录,可以使用 yolo settings 命令。默认情况下,Weights & Biases 记录处于禁用状态。
# Enable Weights & Biases logging
yolo settings wandb=True
# Disable Weights & Biases logging
yolo settings wandb=False理解输出#
运行上面的用法代码片段后,你可以看到以下主要输出:
- 设置一个新的运行及其唯一 ID,表示训练过程开始。
- 模型结构的简要摘要,包括层数和参数数量。
- 在每个训练周期期间,定期更新 box loss、cls loss、box-distance loss、精确率、召回率和 mAP 指标等重要指标。
- 训练结束时,会显示包括模型推理速度和总体准确率指标在内的详细指标。
- 提供指向 Weights & Biases 面板的链接,以便深入分析和可视化训练过程,同时还会显示本地日志文件的位置。
查看 Weights & Biases 面板#
运行用法代码片段后,你可以通过输出中提供的链接访问 Weights & Biases(W&B)面板。该面板全面展示了你的 YOLO26 模型训练过程。
Weights & Biases 面板的主要功能#
-
实时指标跟踪:观察 loss、准确率和验证指标等指标在训练过程中的变化,立即获取用于模型调优的洞见。了解如何使用 Weights & Biases 跟踪实验。
-
超参数优化:Weights & Biases 可帮助你微调学习率、批量大小等关键参数,从而提升 YOLO26 的性能。这有助于你为特定数据集和任务找到最优配置。
-
对比分析:该平台支持并排比较不同的训练运行,这对于评估各种模型配置的影响,以及了解哪些更改能够提升性能至关重要。
-
训练进度可视化:关键指标的图形表示让你能够直观了解模型在各个训练周期中的性能。了解 Weights & Biases 如何帮助你可视化验证结果。
-
资源监控:跟踪 CPU、GPU 和内存使用情况,以优化训练流程的效率,并识别工作流中潜在的瓶颈。
-
模型制品管理:访问和共享模型检查点,便于部署,并促进团队成员在复杂项目上的协作。
使用这些功能,你可以有效跟踪、分析和优化 YOLO26 模型的训练,确保模型在目标检测任务中实现尽可能出色的性能和效率。
总结#
本指南帮助你了解了 Ultralytics YOLO 与 Weights & Biases 的集成,展示了该集成高效跟踪和可视化模型训练与预测结果的能力。借助 W&B 的强大功能,你可以简化机器学习工作流,基于数据做出决策,并提升模型性能。
如需了解更多用法详情,请访问 Weights & Biases 官方文档,或查看 Soumik Rakshit 在 YOLO VISION 2023 上关于此集成的演示文稿。
此外,请务必查看 Ultralytics 集成指南页面,详细了解其他精彩集成,例如 MLflow 和 Comet ML。
常见问题#
要将 Weights & Biases 与 Ultralytics YOLO26 集成:
-
安装所需的软件包:
pip install -U ultralytics wandb yolo settings wandb=True -
登录你的 Weights & Biases 账户:
import wandb wandb.login(key="YOUR_API_KEY") -
启用 W&B 记录来训练你的 YOLO26 模型:
from ultralytics import YOLO model = YOLO("yolo26n.pt") model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")
这会自动将指标、超参数和模型制品记录到你的 W&B 项目中。
-
主要功能包括:
- 训练期间的实时指标跟踪
- 超参数优化工具
- 不同训练运行的对比分析
- 通过图表可视化训练进度
- 资源监控(CPU、GPU、内存使用情况)
- 模型制品管理与共享
这些功能有助于跟踪实验、优化模型,并更高效地协作完成 YOLO26 项目。
使用 W&B 集成运行训练脚本后:
- 控制台输出中会提供指向你的 W&B 面板的链接。
- 点击该链接,或前往 wandb.ai 并登录你的账户。
- 进入你的项目,查看详细的指标、可视化结果和模型性能数据。
该面板能够深入展示模型的训练过程,让你有效分析和改进 YOLO26 模型。
可以,你可以使用以下命令禁用 W&B 记录:
yolo settings wandb=False要重新启用记录,请使用:
yolo settings wandb=True这样你就可以控制何时使用 W&B 记录,而无需修改训练脚本。
Weights & Biases 通过以下方式帮助优化 YOLO26 模型:
- 提供训练指标的详细可视化结果
- 支持轻松比较不同模型版本
- 提供超参数调优工具
- 支持协作分析模型性能
- 便于共享模型制品和结果
这些功能帮助研究人员和开发者更快迭代,并基于数据做出决策,从而改进 YOLO26 模型。