跳转至内容

使用 DVCLive 进行高级 YOLO11 实验跟踪

机器学习 中的实验跟踪对于模型开发和评估至关重要。它涉及记录和分析来自大量训练运行的各种参数、指标和结果。此过程对于理解模型性能以及做出数据驱动的决策以改进和优化模型至关重要。

将 DVCLive 与 Ultralytics YOLO11 集成,改变了实验跟踪和管理的方式。这种集成提供了一个无缝的解决方案,可以自动记录关键实验细节,比较不同运行的结果,并可视化数据以进行深入分析。在本指南中,我们将了解如何使用 DVCLive 来简化流程。

DVCLive

DVCLive 概述

DVCLive 由 DVC 开发,是一种创新的开源工具,用于机器学习中的实验跟踪。通过与 Git 和 DVC 的无缝集成,它可以自动记录关键的实验数据,如模型参数和训练指标。DVCLive 专为简化而设计,可以轻松比较和分析多个运行,并通过直观的 数据可视化 和分析工具提高机器学习项目的效率。

使用 DVCLive 进行 YOLO11 训练

使用 DVCLive 可以有效地监控 YOLO11 训练会话。此外,DVC 提供了可视化这些实验的集成功能,包括生成一份报告,该报告能够比较所有被跟踪实验的指标图,从而提供训练过程的全面视图。

安装

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

安装

# Install the required packages for YOLO11 and DVCLive
pip install ultralytics dvclive

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

配置 DVCLive

安装必要的软件包后,下一步是使用所需的凭据设置和配置您的环境。此设置可确保DVCLive与您现有工作流程的无缝集成。

首先初始化一个 Git 仓库,因为 Git 在代码和 DVCLive 配置的版本控制中起着至关重要的作用。

初始环境设置

# Initialize a Git repository
git init -q

# Configure Git with your details
git config --local user.email "you@example.com"
git config --local user.name "Your Name"

# Initialize DVCLive in your project
dvc init -q

# Commit the DVCLive setup to your Git repository
git commit -m "DVC init"

在这些命令中,请确保将“you@example.com”替换为与您的Git账户关联的电子邮件地址,并将“Your Name”替换为您的Git账户用户名。

用法

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

使用 DVCLive 训练 YOLO11 模型

首先,运行您的 YOLO11 训练会话。您可以使用不同的模型配置和训练参数来满足您的项目需求。例如:

# Example training commands for YOLO11 with varying configurations
yolo train model=yolo11n.pt data=coco8.yaml epochs=5 imgsz=512
yolo train model=yolo11n.pt data=coco8.yaml epochs=5 imgsz=640

根据您的具体要求调整模型、数据、epochs 和 imgsz 参数。 有关模型训练过程和最佳实践的详细了解,请参阅我们的 YOLO11 模型训练指南

使用 DVCLive 监控实验

DVCLive 通过启用关键指标的跟踪和可视化来增强训练过程。安装后,Ultralytics YOLO11 会自动与 DVCLive 集成以进行实验跟踪,您可以在以后对其进行分析以获得性能见解。要全面了解训练期间使用的特定性能指标,请务必查阅我们关于性能指标的详细指南

分析结果

在您的 YOLO11 训练会话完成后,您可以利用 DVCLive 强大的可视化工具来深入分析结果。DVCLive 的集成确保所有训练指标都被系统地记录,从而有助于全面评估模型的性能。

要开始分析,您可以使用 DVC 的 API 提取实验数据,并使用 Pandas 进行处理,以便于操作和可视化:

import dvc.api
import pandas as pd

# Define the columns of interest
columns = ["Experiment", "epochs", "imgsz", "model", "metrics.mAP50-95(B)"]

# Retrieve experiment data
df = pd.DataFrame(dvc.api.exp_show(), columns=columns)

# Clean the data
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)

# Display the DataFrame
print(df)

上述代码片段的输出提供了使用 YOLO11 模型进行的各种实验的清晰表格视图。每一行代表一次不同的训练运行,详细说明了实验名称、迭代周期数、图像尺寸 (imgsz)、所使用的具体模型以及 mAP50-95(B) 指标。该指标对于评估模型的accuracy至关重要,值越高表示性能越好。

使用 Plotly 可视化结果

为了对您的实验结果进行更具互动性和可视化的分析,您可以使用 Plotly 的平行坐标图。这种类型的图对于理解不同参数和指标之间的关系和权衡特别有用。

from plotly.express import parallel_coordinates

# Create a parallel coordinates plot
fig = parallel_coordinates(df, columns, color="metrics.mAP50-95(B)")

# Display the plot
fig.show()

上述代码片段的输出会生成一个图表,直观地表示迭代周期、图像尺寸、模型类型及其对应的 mAP50-95(B) 分数之间的关系,使您能够发现实验数据中的趋势和模式。

使用 DVC 生成比较可视化

DVC 提供了一个有用的命令,可以为您的实验生成比较图。这对于比较不同模型在各种训练运行中的性能尤其有帮助。

# Generate DVC comparative plots
dvc plots diff $(dvc exp list --names-only)

执行此命令后,DVC 会生成比较不同实验指标的图表,并将其保存为 HTML 文件。下面是一个示例图像,展示了此过程生成的典型图表。该图像展示了各种图表,包括表示 mAP、召回率精确率、损失值等的图表,提供了关键性能指标的视觉概览:

DVCLive 图表

正在显示 DVC 图表

如果您使用的是 Jupyter Notebook 并且想要显示生成的 DVC 图,您可以使用 IPython 显示功能。

from IPython.display import HTML

# Display the DVC plots as HTML
HTML(filename="./dvc_plots/index.html")

此代码将直接在您的Jupyter Notebook中呈现包含DVC图表的HTML文件,从而提供了一种简便的方式来分析可视化的实验数据。

做出数据驱动的决策

利用从这些可视化中获得的见解,对模型优化、超参数调整和其他修改做出明智的决策,以提高模型的性能。

实验迭代

根据您的分析,迭代您的实验。调整模型配置、训练参数,甚至数据输入,并重复训练和分析过程。这种迭代方法是优化您的模型以获得最佳性能的关键。

总结

本指南引导您完成了将 DVCLive 与 Ultralytics 的 YOLO11 集成的过程。您已经学会了如何利用 DVCLive 的强大功能,在机器学习工作中进行详细的实验监控、有效的可视化和深入的分析。

有关使用详情,请访问DVCLive官方文档

此外,通过访问Ultralytics集成指南页面,探索Ultralytics的更多集成和功能,这是一个优秀的资源和见解的集合。

常见问题

如何将 DVCLive 与 Ultralytics YOLO11 集成以进行实验跟踪?

将 DVCLive 与 Ultralytics YOLO11 集成非常简单。首先,安装必要的软件包:

安装

pip install ultralytics dvclive

接下来,初始化一个 Git 仓库并在你的项目中配置 DVCLive:

初始环境设置

git init -q
git config --local user.email "you@example.com"
git config --local user.name "Your Name"
dvc init -q
git commit -m "DVC init"

请按照我们的YOLO11 安装指南获取详细的设置说明。

我为什么要使用 DVCLive 来跟踪 YOLO11 实验?

将 DVCLive 与 YOLO11 结合使用具有以下几个优点,例如:

  • 自动日志记录: DVCLive 自动记录关键实验细节,例如模型参数和指标。
  • 轻松比较:有助于比较不同运行的结果。
  • 可视化工具: 利用 DVCLive 强大的数据可视化功能进行深入分析。

有关更多详细信息,请参阅我们的YOLO11 模型训练YOLO 性能指标指南,以最大限度地提高实验跟踪效率。

DVCLive 如何改进 YOLO11 训练会话的结果分析?

完成 YOLO11 训练后,DVCLive 有助于有效地可视化和分析结果。加载和显示实验数据的示例代码:

import dvc.api
import pandas as pd

# Define columns of interest
columns = ["Experiment", "epochs", "imgsz", "model", "metrics.mAP50-95(B)"]

# Retrieve experiment data
df = pd.DataFrame(dvc.api.exp_show(), columns=columns)

# Clean data
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)

# Display DataFrame
print(df)

要以交互方式可视化结果,请使用 Plotly 的平行坐标图:

from plotly.express import parallel_coordinates

fig = parallel_coordinates(df, columns, color="metrics.mAP50-95(B)")
fig.show()

有关更多示例和最佳实践,请参阅我们的使用 DVCLive 进行 YOLO11 训练指南。

如何配置我的环境以进行 DVCLive 和 YOLO11 集成?

要配置您的环境以实现 DVCLive 和 YOLO11 的顺利集成,请按照以下步骤操作:

  1. 安装必需的包:使用 pip install ultralytics dvclive.
  2. 初始化 Git 仓库:运行 git init -q.
  3. 配置 DVCLive:执行 dvc init -q.
  4. 提交到 Git:使用 git commit -m "DVC init".

这些步骤确保了实验跟踪的正确版本控制和设置。有关深入的配置详细信息,请访问我们的配置指南

如何使用 DVCLive 可视化 YOLO11 实验结果?

DVCLive 提供了强大的工具来可视化 YOLO11 实验的结果。以下是如何生成比较图:

生成比较图

dvc plots diff $(dvc exp list --names-only)

要在 Jupyter Notebook 中显示这些图,请使用:

from IPython.display import HTML

# Display plots as HTML
HTML(filename="./dvc_plots/index.html")

这些可视化有助于识别趋势并优化模型性能。请查看我们关于YOLO11实验分析的详细指南,其中包含全面的步骤和示例。



📅 2 年前创建 ✏️ 23 天前更新
glenn-jocherUltralyticsAssistantMatthewNoyceRizwanMunawarambitious-octopusabirami-vina

评论