Skip to content

使用 Weights & Biases 增强 YOLO11 实验跟踪和可视化

目标检测模型,如 Ultralytics YOLO11,已成为许多计算机视觉应用的核心部分。然而,训练、评估和部署这些复杂的模型带来了诸多挑战。跟踪关键训练指标、比较模型变体、分析模型行为和检测问题需要大量的仪器和实验管理。



观看: 如何使用 Ultralytics YOLO11 与 Weights and Biases

本指南展示了 Ultralytics YOLO11 与 Weights & Biases 的集成,以增强实验跟踪、模型检查点和模型性能的可视化。还包括设置集成、训练、微调和使用 Weights & Biases 的交互功能可视化结果的说明。

Weights & Biases

Weights & Biases 概览

Weights & Biases 是一个尖端的 MLOps 平台,专为跟踪、可视化和机器学习实验管理而设计。它具有自动记录训练指标以实现完全实验可重复性、用于简化数据分析的交互式 UI 以及用于在各种环境中部署的高效模型管理工具。

使用 Weights & Biases 训练 YOLO11

您可以使用 Weights & Biases 将效率和自动化引入您的 YOLO11 训练过程。

安装

要安装所需的包,请运行:

安装

# 安装 Ultralytics YOLO 和 Weights & Biases 所需的包
pip install -U ultralytics wandb

有关安装过程的详细说明和最佳实践,请务必查看我们的 YOLO11 安装指南。在安装 YOLO11 所需的包时,如果遇到任何困难,请参阅我们的 常见问题指南 以获取解决方案和提示。

配置 Weights & Biases

安装必要的包后,下一步是设置您的 Weights & Biases 环境。这包括创建一个 Weights & Biases 账户并获取必要的 API 密钥,以确保您的开发环境与 W&B 平台之间的顺畅连接。

首先在您的开发环境中初始化 Weights & Biases 环境。您可以通过运行以下命令并按照提示的说明来完成此操作。

初始 SDK 设置

import wandb

# 初始化您的 Weights & Biases 环境
wandb.login(key="<API_KEY>")
# 初始化您的 Weights & Biases 环境
wandb login <API_KEY>

导航到 Weights & Biases 授权页面以创建并获取您的 API 密钥。使用此密钥来验证您的环境与 W&B 的连接。

使用:使用 Weights & Biases 训练 YOLO11

在深入了解使用 Weights & Biases 训练 YOLO11 模型的说明之前,请务必查看 Ultralytics 提供的 YOLO11 模型范围。这将帮助您为项目需求选择最合适的模型。

使用:使用 Weights & Biases 训练 YOLO11

from ultralytics import YOLO

# 加载一个 YOLO 模型
model = YOLO("yolo11n.pt")

# 训练和微调模型
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
# 使用 Weights & Biases 训练 YOLO11 模型
yolo train data=coco8.yaml epochs=5 project=ultralytics name=yolo11n

W&B 参数

参数 默认值 描述
project None 指定在本地和W&B中记录的项目名称。这样可以将多个运行分组在一起。
name None 训练运行的名称。这将决定用于创建子文件夹的名称以及用于W&B记录的名称。

启用或禁用Weights & Biases

如果你想启用或禁用Weights & Biases记录,可以使用wandb命令。默认情况下,Weights & Biases记录是启用的。

# 启用Weights & Biases记录
wandb enabled

# 禁用Weights & Biases记录
wandb disabled

理解输出

在运行上述使用代码片段后,你可以预期以下关键输出:

  • 一个新的运行及其唯一ID的设置,表明训练过程的开始。
  • 模型结构的简要总结,包括层数和参数数量。
  • 在每个训练epoch期间,关于重要指标(如框损失、cls损失、dfl损失、精度召回率和mAP分数)的定期更新。
  • 训练结束时,包括模型推理速度和总体准确度指标在内的详细指标显示。
  • 链接到Weights & Biases仪表板,以进行深入分析和训练过程的可视化,以及本地日志文件位置的信息。

查看Weights & Biases仪表板

在运行使用代码片段后,你可以通过输出中提供的链接访问Weights & Biases (W&B)仪表板。该仪表板提供了使用YOLO11的模型训练过程的全面视图。

Weights & Biases仪表板的关键功能

  • 实时指标跟踪:观察损失、准确度和验证分数等指标在训练过程中如何演变,为模型调优提供即时洞察。查看如何使用Weights & Biases跟踪实验

  • 超参数优化:Weights & Biases有助于微调关键参数,如学习率批量大小等,提升YOLO11的性能。

  • 比较分析:平台允许并排比较不同的训练运行,这对于评估各种模型配置的影响至关重要。

  • 训练进度可视化:关键指标的图形表示提供了模型在各epoch中性能的直观理解。查看Weights & Biases如何帮助你可视化验证结果

  • 资源监控:跟踪CPU、GPU和内存使用情况,以优化训练过程的效率。

  • 模型工件管理:访问和共享模型检查点,便于部署和协作。

  • 使用图像叠加查看推理结果:在Weights & Biases中使用交互式叠加可视化图像上的预测结果,提供模型在真实数据上性能的清晰详细视图。有关Weights & Biases图像叠加功能的更多详细信息,请查看此链接查看Weights & Biases的图像叠加如何帮助可视化模型推断

通过使用这些功能,你可以有效地跟踪、分析和优化YOLO11模型的训练,确保最佳的性能和效率。

总结

本指南帮助你探索了Ultralytics YOLO与Weights & Biases的集成。它展示了这种集成能够高效地跟踪和可视化模型训练和预测结果的能力。

有关更多使用细节,请访问Weights & Biases的官方文档

此外,请务必查看Ultralytics集成指南页面,了解更多不同的激动人心的集成。

常见问题

如何将Weights & Biases与Ultralytics YOLO11集成?

要将Weights & Biases与Ultralytics YOLO11集成:

  1. 安装所需的包:
pip install -U ultralytics wandb
  1. 登录到你的Weights & Biases账户:
import wandb

wandb.login(key="<API_KEY>")
  1. 启用W&B记录训练你的YOLO11模型:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
这将自动记录指标、超参数和模型工件到您的 W&B 项目中。

Weights & Biases 与 YOLO11 集成的关键功能是什么?

关键功能包括:

  • 训练期间的实时指标跟踪
  • 超参数优化工具
  • 不同训练运行的比较分析
  • 通过图表可视化训练进度
  • 资源监控(CPU、GPU、内存使用情况)
  • 模型工件管理和共享
  • 通过图像叠加查看推理结果

这些功能有助于跟踪实验、优化模型,并在 YOLO11 项目中更有效地协作。

如何查看我的 YOLO11 训练的 Weights & Biases 仪表板?

在运行了集成了 W&B 的训练脚本后:

  1. 控制台输出中将提供指向您的 W&B 仪表板的链接。
  2. 点击链接或前往 wandb.ai 并登录您的账户。
  3. 导航到您的项目以查看详细的指标、可视化和模型性能数据。

该仪表板提供了对模型训练过程的洞察,使您能够有效地分析和改进您的 YOLO11 模型。

我可以禁用 YOLO11 训练的 Weights & Biases 日志记录吗?

是的,您可以使用以下命令禁用 W&B 日志记录:

wandb disabled

要重新启用日志记录,请使用:

wandb enabled

这使您能够在不修改训练脚本的情况下控制何时使用 W&B 日志记录。

Weights & Biases 如何帮助优化 YOLO11 模型?

Weights & Biases 通过以下方式帮助优化 YOLO11 模型:

  1. 提供训练指标的详细可视化
  2. 便于不同模型版本之间的轻松比较
  3. 提供 超参数调优 工具
  4. 允许对模型性能进行协作分析
  5. 便于模型工件和结果的轻松共享

这些功能帮助研究人员和开发者更快地迭代,并基于数据做出决策以改进他们的 YOLO11 模型。


📅 Created 9 months ago ✏️ Updated 5 days ago

Comments