跳至内容

通过以下方式获得视觉见解 YOLOv8与 TensorBoard 的集成

当您仔细观察Ultralytics' YOLOv8 等计算机视觉模型的训练过程时,就能更直观地理解和微调这些模型。模型训练可视化有助于深入了解模型的学习模式、性能指标和整体行为。 YOLOv8与 TensorBoard 的集成使可视化和分析过程变得更简单,并能对模型进行更高效、更明智的调整。

本指南介绍如何通过YOLOv8 使用 TensorBoard。您将了解从跟踪指标到分析模型图的各种可视化方法。这些工具将帮助您更好地了解YOLOv8 模型的性能。

张量板

张量板概述

TensorFlow 的可视化工具包TensorBoard 对机器学习实验至关重要。TensorBoard 拥有一系列可视化工具,对于监控机器学习模型至关重要。这些工具包括跟踪损失和准确率等关键指标、可视化模型图和查看weights and biases 随时间变化的直方图。它还提供了将嵌入投影到低维空间和显示多媒体数据的功能。

YOLOv8 使用 TensorBoard 进行训练

在训练YOLOv8 模型时使用 TensorBoard 非常简单,而且优势显著。

安装

要安装所需的软件包,请运行

安装

# Install the required package for YOLOv8 and Tensorboard
pip install ultralytics

TensorBoard 预装了YOLOv8 ,无需为可视化目的进行额外设置,非常方便。

有关安装过程的详细说明和最佳实践,请务必查看我们的YOLOv8 安装指南。在安装YOLOv8 所需的软件包时,如果遇到任何困难,请查阅我们的常见问题指南,了解解决方案和技巧。

为Google Colab 配置 TensorBoard

在使用Google Colab 时,重要的是在开始训练代码前设置好 TensorBoard:

为Google Colab 配置 TensorBoard

%load_ext tensorboard
%tensorboard --logdir path/to/runs

使用方法

在了解使用说明之前,请务必查看 Ultralytics 提供的一系列YOLOv8 型号。这将有助于您根据项目要求选择最合适的型号。

使用方法

rom ultralytics import YOLO

 Load a pre-trained model
odel = YOLO('yolov8n.pt')

 Train the model
esults = model.train(data='coco8.yaml', epochs=100, imgsz=640)
``

ning the usage code snippet above, you can expect the following output:

text
ard: Start with 'tensorboard --logdir path_to_your_tensorboard_logs', view at http://localhost:6006/

表示 TensorBoard 正在主动监控您的YOLOv8 训练会话。您可以访问提供的 URL (http://localhost:6006/) 访问 TensorBoard 面板,查看实时训练指标和模型性能。对于在Google Colab 中工作的用户,TensorBoard 将显示在您执行 TensorBoard 配置命令的同一单元格中。

有关模型训练过程的信息,请务必查看我们的YOLOv8 模型训练指南。如果您想了解更多关于日志、检查点、绘图和文件管理的信息,请阅读我们的配置使用指南

将张量板用于YOLOv8 培训

YOLOv8 培训的背景下了解 TensorBoard 的各种功能和组件。TensorBoard 的三个关键部分是时间序列、标量和图形。

系列

YOLOv8 模型的各种训练指标。它重点关注各训练历元指标的进展和趋势。以下是您可以看到的示例。

(https://github.com/ultralytics/ultralytics/assets/25847604/20b3e038-0356-465e-a37e-1ea232c68354)

TensorBoard 中的时间序列特征

标签和固定卡片**:该功能允许用户过滤特定指标,并将卡片固定下来,以便快速比较和访问。这对于关注培训过程的特定方面特别有用。

指标卡**:时间序列将指标分为不同的类别,如学习率(lr)、训练(train)和验证(val)指标,每个指标都由单独的卡片表示。

时间序列显示**:时间序列 "部分的每张卡片都显示培训过程中特定指标的详细图表。这种可视化显示有助于识别培训过程中的趋势、模式或异常情况。

深度分析**:时间序列可对每个指标进行深入分析。例如,显示不同的学习率分段,以深入了解学习率的调整如何影响模型的学习曲线。

时间序列在YOLOv8 培训中的重要性

系列部分对于全面分析YOLOv8 模型的培训进度至关重要。您可以通过它实时跟踪指标,及时发现并解决问题。它还提供了每个指标进展的详细视图,这对微调模型和提高其性能至关重要。

在YOLOv8 模型的训练过程中,TensorBoard 中的 "Loss"(损失)和 "Accuracy"(准确率)等简单指标的绘制和分析至关重要。它们可以清晰简明地显示这些指标是如何随着每个训练历元的变化而变化的,从而帮助我们深入了解模型的学习效果和稳定性。以下是您可以看到的示例。

(https://github.com/ultralytics/ultralytics/assets/25847604/f9228193-13e9-4768-9edf-8fa15ecd24fa)

TensorBoard 中的标量特征

学习率 (lr) 标签**:这些标签显示了不同细分市场中学习率的变化(例如、 pg0, pg1, pg2).这有助于我们理解学习率调整对训练过程的影响。

电子标签**:标准包括以下绩效指标

AP50 (B)`:50%交集大于联合(IoU)时的平均精度,是评估物体检测精度的关键。

AP50-95 (B)`:在一系列 IoU 阈值下计算的平均精度,提供更全面的精度评估。

recision (B)`:表示正确预测正观测值的比率,是了解预测准确性的关键。

ecall (B)`:该指标衡量检测所有相关实例的能力,对于漏检现象严重的模型非常重要。

如需了解不同指标的更多信息,请阅读我们的绩效指标指南。

ing和验证标签 (train, val)**:这些标签专门显示训练数据集和验证数据集的指标,以便对不同数据集的模型性能进行比较分析。

监测尺度的重要性

标量指标对于微调YOLOv8 模型至关重要。这些指标的变化,如损失图中的尖峰或不规则模式,可以突出显示潜在的问题,如过拟合、欠拟合或学习率设置不当。通过密切监控这些标量,您可以做出明智的决策来优化训练过程,确保模型有效学习并达到预期性能。

标量与时间序列的区别

TensorBoard 中的标量和时间序列用于跟踪指标,但它们的用途略有不同。标量侧重于将损失和准确率等简单指标绘制成标量值。它们提供了这些指标如何随每个训练历元变化的高级概览。而 TensorBoard 的时间序列部分提供了各种指标更详细的时间轴视图。它对于监控指标随时间变化的进展和趋势特别有用,可以更深入地了解训练过程的具体情况。

hs

TensorBoard 的 hs 部分可视化YOLOv8 模型的计算图,显示操作和数据如何在模型内流动。它是了解模型结构、确保各层正确连接以及识别数据流中任何潜在瓶颈的有力工具。以下是您可以看到的示例。

(https://github.com/ultralytics/ultralytics/assets/25847604/039028e0-4ab3-4170-bfa8-f93ce483f615)

对于调试模型特别有用,尤其是对于深度学习模型中典型的复杂架构,如YOLOv8 。它们有助于验证层连接和模型的整体设计。

ry

本书旨在帮助您使用 TensorBoard 和YOLOv8 对机器学习模型训练进行可视化和分析。它重点解释了 TensorBoard 的关键功能如何在YOLOv8 训练过程中深入了解训练指标和模型性能。

要详细了解这些功能和有效的使用策略,可以参考TensorFlow 的TensorBoard官方文档和他们的GitHub 存储库

进一步了解Ultralytics 的各种集成功能?查看Ultralytics 集成指南页面,了解还有哪些令人兴奋的功能等待您去发现!

常见问题

我可以将YOLOv8 与 TensorBoard 集成以实现实时可视化吗?

使用YOLOv8 和 TensorBoard 可以在模型训练过程中获得实时可视化洞察。首先,安装必要的软件包:

ple "安装"

"CLI"

# Install the required package for YOLOv8 and Tensorboard
pip install ultralytics

接下来,配置 TensorBoard 以记录训练运行,然后启动 TensorBoard:

为Google Colab 配置 TensorBoard

%load_ext tensorboard
%tensorboard --logdir path/to/runs

最后,在训练过程中,YOLOv8 会自动将损失和准确率等指标记录到 TensorBoard 上。您可以访问http://localhost:6006/ 来监控这些指标。

有关综合指南,请参阅我们的YOLOv8 型号培训指南

使用YOLOv8 的 TensorBoard 有什么好处?

将 TensorBoard 与YOLOv8 结合使用,可提供高效模型训练所需的多种可视化工具:

  • 实时指标跟踪:实时跟踪损失、准确度、精确度和召回率等关键指标。
  • 模型图可视化:通过可视化计算图了解和调试模型架构。
  • 嵌入可视化:将嵌入投影到低维空间,以获得更好的洞察力。

通过这些工具,您可以做出明智的调整,以提高YOLOv8 模型的性能。有关 TensorBoard 功能的更多详情,请查阅TensorFlow TensorBoard指南

在训练YOLOv8 模型时,如何使用 TensorBoard 监控训练指标?

要在使用 TensorBoard 训练YOLOv8 模型时监控训练指标,请按照以下步骤操作:

  1. 安装 TensorBoard 和YOLOv8 : 运行 pip install ultralytics 其中包括 TensorBoard。
  2. 配置 TensorBoard 日志:在训练过程中,YOLOv8 会将指标记录到指定的日志目录中。
  3. 启动 TensorBoard: 使用以下命令启动 TensorBoard tensorboard --logdir path/to/your/tensorboard/logs.

通过http://localhost:6006/ 访问 TensorBoard 面板,可以实时了解各种训练指标。要深入了解培训配置,请访问我们的YOLOv8 配置指南

在训练YOLOv8 模型时,我可以用 TensorBoard 可视化哪些指标?

在训练YOLOv8 模型时,TensorBoard 可让您可视化一系列重要指标,包括

  • 损失(训练和验证):表示模型在训练和验证过程中的表现。
  • 准确度/精确度/召回:评估检测准确性的关键性能指标。
  • 学习率:跟踪学习率的变化,了解其对培训动态的影响。
  • mAP(平均精度):用于全面评估不同 IoU 阈值下的物体检测精度。

这些可视化对于跟踪模型性能和进行必要的优化至关重要。有关这些指标的更多信息,请参阅我们的性能指标指南

我能否在Google Colab 环境中使用 TensorBoard 进行培训YOLOv8 ?

是的,您可以在Google Colab 环境中使用 TensorBoard 训练YOLOv8 模型。下面是一个快速设置:

为Google Colab 配置 TensorBoard

%load_ext tensorboard
%tensorboard --logdir path/to/runs

然后,运行YOLOv8 培训脚本:

from ultralytics import YOLO

# Load a pre-trained model
model = YOLO("yolov8n.pt")

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

TensorBoard 将可视化 Colab 中的训练进度,提供损失和准确性等指标的实时见解。有关配置YOLOv8 培训的更多详情,请参阅我们详细的YOLOv8 安装指南



创建于 2024-01-01,更新于 2024-07-05
作者:glenn-jocher(6)、abirami-vina(1)

评论