深圳尤洛视觉
深圳
立即加入

探索 Ultralytics YOLOv8 的 ML 实验跟踪集成

Abirami Vina

4 分钟阅读

2024年8月30日

了解更多关于跟踪和监控 YOLOv8 模型训练实验的各种选项。比较各种工具,找到最适合您需求的工具。

收集数据、对其进行标注以及训练模型(如Ultralytics YOLOv8模型)是任何计算机视觉项目的核心。通常,您需要使用不同的参数多次训练您的自定义模型,以创建最佳模型。使用工具来跟踪您的训练实验可以使管理您的计算机视觉项目变得更容易。实验跟踪是记录每次训练运行的详细信息的过程,例如您使用的参数、您获得的结果以及您所做的任何更改。 

__wf_reserved_inherit
图 1. 展示实验跟踪如何融入计算机视觉项目的图像。 

记录这些细节有助于您重现结果,了解哪些有效,哪些无效,并更有效地微调您的模型。对于组织而言,它有助于保持团队之间的一致性,促进协作并提供清晰的审计跟踪。对于个人而言,这是为了维护清晰且有组织的文档,让您能够改进方法并随着时间的推移获得更好的结果。 

在本文中,我们将向您介绍可用于管理和监控 YOLOv8 实验的不同训练集成。无论您是独立工作还是作为大型团队的一员,理解和使用正确的跟踪工具都可以对 YOLOv8 项目 的成功产生真正的影响。

使用 MLflow 进行机器学习实验跟踪

MLflow 是由 Databricks 开发的开源平台,旨在简化整个机器学习生命周期的管理。MLflow Tracking 是 MLflow 的一个重要组成部分,它提供了一个 API 和用户界面,帮助数据科学家和工程师记录和可视化他们的机器学习实验。它支持多种语言和接口,包括 Python、REST、Java 和 R API。 

MLflow Tracking 可以与 YOLOv8 无缝集成,您可以直接从模型中记录重要指标,如精确率、召回率和损失。使用 YOLOv8 设置 MLflow 非常简单,并且有灵活的选项:您可以使用默认的 localhost 设置,连接到各种数据存储,或者启动远程 MLflow Tracking 服务器以保持一切井井有条。

__wf_reserved_inherit
图 2. MLflow 跟踪环境的常见设置。图片来源:MLflow tracking。

以下是一些输入,可帮助您确定 MLflow 是否适合您的项目:

  • 可扩展性:无论您是在单台机器上工作还是在大型集群上部署,MLflow 都能很好地根据您的需求进行扩展。如果您的项目涉及从开发到生产的扩展,MLflow 可以支持这种增长。
  • 项目复杂性: MLflow 非常适合需要全面跟踪、模型管理和部署功能的复杂项目。如果您的项目需要这些全面的功能,MLflow 可以简化您的工作流程。
  • 设置和维护: 尽管 MLflow 功能强大,但它确实存在学习曲线和设置开销。 

使用 Weights & Biases (W&B) 进行计算机视觉模型跟踪

Weights & Biases 是一个用于跟踪、可视化和管理机器学习实验的 MLOps 平台。通过将 W&B 与 YOLOv8 结合使用,您可以在训练和微调模型时监控模型的性能。W&B 的交互式仪表板提供了这些指标的清晰实时视图,并使在训练过程中更容易发现趋势、比较模型变体和解决问题

W&B 自动记录训练指标和模型检查点,您甚至可以使用它来微调超参数,例如学习率和批量大小。 该平台支持各种设置选项,从跟踪本地计算机上的运行到管理具有云存储的大型项目。

__wf_reserved_inherit
图 3. Weights & Biases 的实验跟踪仪表板示例。图片来源:Weights & Biases 跟踪实验。

以下是一些输入,可帮助您确定 Weights & Biases 是否适合您的项目:

  • 增强可视化和跟踪:W&B 提供了一个直观的仪表板,可以实时可视化训练指标和模型性能。
  • 定价模式: 定价基于跟踪的小时数,这对于预算有限或涉及长时间训练的项目来说可能并不理想。

使用 ClearML 进行 MLOps 实验跟踪

ClearML 是一个开源 MLOps 平台,旨在自动化、监控和编排机器学习工作流程。它支持流行的机器学习框架,如 PyTorch、TensorFlow 和 Keras,并且可以轻松地与您现有的流程集成。ClearML 还支持在本地机器或云端进行分布式计算,并且可以监控 CPU 和 GPU 的使用情况。

YOLOv8 与 ClearML 的集成 提供了用于实验跟踪、模型管理和资源监控的工具。该平台直观的 Web UI 允许您可视化数据、比较实验,并实时跟踪关键指标,如损失、准确性和验证分数。该集成还支持高级功能,如远程执行、超参数调整和模型检查点。

__wf_reserved_inherit
图 4. ClearML 实验跟踪可视化示例。图片来源:Clear ML Tracking Experiments and Visualizing Results。

以下是一些输入,可帮助您确定 ClearML 是否适合您的项目:

  • 高级实验跟踪的需求: ClearML 提供强大的实验跟踪功能,包括与 Git 的自动集成。
  • 灵活部署:ClearML 可以在本地、云端或 Kubernetes 集群上使用,使其能够适应不同的设置。

使用 Comet ML 跟踪训练实验

Comet ML 是一个用户友好的平台,可帮助管理和跟踪机器学习实验。YOLOv8 与 Comet ML 的集成使您可以记录实验并查看随时间推移的结果。这种集成使发现趋势和比较不同运行变得更加容易。 

Comet ML 可以在云端、虚拟私有云 (VPC) 甚至本地部署中使用,使其能够适应不同的设置和需求。此工具专为团队合作而设计。您可以共享项目、标记队友和留下评论,以便每个人都可以保持同步并准确地重现实验。

以下是一些输入,可帮助您确定 Comet ML 是否适合您的项目:

  • 支持多种框架和语言: Comet ML 适用于 Python、JavaScript、Java、R 等,无论您的项目使用什么工具或语言,它都是一个通用的选择。
  • 可定制的仪表板和报告: Comet ML 的界面是高度可定制的,因此您可以创建对您的项目最有意义的报告和仪表板。
  • 成本: Comet ML 是一个商业平台,其某些高级功能需要付费订阅。

TensorBoard 可以帮助实现可视化

TensorBoard 是一款强大的可视化工具,专为 TensorFlow 实验而设计,但它也是跟踪和可视化各种机器学习项目指标的绝佳工具。TensorBoard 以其简单性和速度而闻名,用户可以轻松跟踪关键指标,并可视化模型图、嵌入和其他数据类型。

将 TensorBoard 与 YOLOv8 结合使用的一个主要优势是它方便地预先安装,无需额外的设置。另一个好处是 TensorBoard 能够在完全本地运行。这对于具有严格数据隐私要求的项目或那些无法选择云上传的环境尤其重要。

__wf_reserved_inherit
图 5. 使用 TensorBoard 监控 YOLOv8 模型训练。

以下是一些输入,可帮助您确定 TensorBoard 是否适合您的项目:

  • 使用 What-If Tool (WIT) 实现可解释性:TensorBoard 包含 What-If Tool,它提供了一个易于使用的界面,用于探索和理解 ML 模型。对于那些希望深入了解黑盒模型并提高可解释性的人来说,它非常有价值。
  • 简单的实验跟踪: TensorBoard 非常适合基本跟踪需求,但实验比较有限,并且缺乏强大的团队协作功能、版本控制和隐私管理。

使用 DVCLive (Data Version Control Live) 跟踪 ML 实验

YOLOv8 与 DVCLive 的集成 提供了一种简化的方式来跟踪和管理实验,通过对数据集、模型和代码进行版本控制,而无需在 Git 中存储大型文件。它使用类似于 Git 的命令,并将跟踪的指标存储在纯文本文件中,以便于版本控制。DVCLive 记录关键指标、可视化结果并干净地管理实验,而不会使您的存储库混乱。它支持各种存储提供商,并且可以在本地或云端工作。对于希望在没有额外基础设施或云依赖项的情况下简化实验跟踪的团队来说,DVCLive 是一个完美的选择。

使用 Ultralytics HUB 管理 Ultralytics 模型和工作流程

Ultralytics HUB 是一个内部一体化平台,旨在简化 Ultralytics YOLO 模型(如 YOLOv5YOLOv8)的 训练部署 和管理。与外部集成不同,Ultralytics HUB 提供了专为 YOLO 用户创建的无缝原生体验。它简化了整个过程,让您可以轻松上传数据集、选择预训练模型,并使用云资源只需点击几下即可开始训练——所有这些都在 HUB 易于使用的界面 中完成。UltralyticsHUB 还支持实验跟踪,从而可以轻松监控训练进度、比较结果和微调模型。

__wf_reserved_inherit
图 7. 使用 Ultralytics HUB 监控 YOLOv8 模型训练。

主要要点

选择合适的工具来跟踪您的机器学习实验会产生很大的影响。我们讨论的所有工具都可以帮助跟踪 YOLOv8 训练实验,但权衡每个工具的优缺点以找到最适合您项目的工具非常重要。合适的工具将使您保持井井有条,并有助于提高 YOLOv8 模型的性能! 

集成可以简化在创新项目中使用 YOLOv8 的过程,并加快您的进度。要了解更多令人兴奋的 YOLOv8 集成,请查看我们的文档

通过浏览我们的 GitHub 仓库 并加入 我们的社区,了解更多关于 AI 的信息。查看我们的解决方案页面,了解关于 AI 在 制造业医疗保健 领域的详细见解。🚀

让我们一起构建人工智能的未来!

开启您的机器学习未来之旅

免费开始
链接已复制到剪贴板