跳转至内容

提升 YOLO26 训练:使用 Comet 简化您的日志记录流程

记录关键的训练细节,例如参数、指标、图像预测和模型检查点,在 机器学习 中至关重要——它可以使您的项目保持透明,您的进度可衡量,并且您的结果可重复。



观看: 如何使用 Comet 进行 Ultralytics YOLO 模型训练日志和指标记录 🚀

Ultralytics YOLO26 与 Comet(前身为 Comet ML)无缝集成,高效捕获和优化 YOLO26 目标检测模型训练过程的各个方面。在本指南中,我们将涵盖安装过程、Comet 设置、实时洞察、自定义日志记录和离线使用,确保您的 YOLO26 训练得到充分记录和精细调整,以获得卓越成果。

Comet

Comet 实验追踪仪表盘

Comet 是一个用于跟踪、比较、解释和优化机器学习模型及实验的平台。它允许您在模型训练期间记录指标、参数、媒体等,并通过美观的网页界面监控您的实验。Comet 帮助数据科学家更快地迭代,增强透明度和可复现性,并助力生产模型的开发。

发挥 YOLO26 和 Comet 的力量

通过将 Ultralytics YOLO26 与 Comet 结合,您将解锁一系列优势。这些优势包括简化的实验管理、用于快速调整的实时洞察、灵活且量身定制的日志记录选项,以及在互联网访问受限时离线记录实验的能力。这种集成使您能够做出数据驱动的决策、分析性能指标并取得卓越成果。

安装

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

安装

# Install the required packages for YOLO26 and Comet
pip install ultralytics comet_ml torch torchvision

配置 Comet

安装所需的软件包后,您需要注册、获取 Comet API 密钥 并进行配置。

配置 Comet

# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEY

然后,您可以初始化您的 Comet 项目。Comet 将自动检测 API 密钥并继续进行设置。

初始化 Comet 项目

import comet_ml

comet_ml.login(project_name="comet-example-yolo26-coco128")

如果您使用的是 Google Colab notebook,上面的代码将提示您输入 API 密钥以进行初始化。

用法

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

用法

from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")

# Train the model
results = model.train(
    data="coco8.yaml",
    project="comet-example-yolo26-coco128",
    batch=32,
    save_period=1,
    save_json=True,
    epochs=3,
)

运行训练代码后,Comet 将在您的 Comet 工作区中创建一个实验,以自动跟踪运行。然后,您将获得一个链接,用于查看 YOLO26 模型训练过程的详细日志记录。

Comet 无需额外配置即可自动记录以下数据:mAP 和损失等指标、超参数、模型检查点、交互式混淆矩阵以及图像 边界框 预测。

使用 Comet 可视化理解模型性能

让我们深入了解一旦您的 YOLO26 模型开始训练,您将在 Comet 控制面板上看到什么。控制面板是所有操作发生的地方,通过视觉效果和统计数据呈现各种自动记录的信息。以下是快速浏览:

实验面板

Comet 仪表板的实验面板部分组织并呈现不同的运行及其指标,例如 segment mask 损失、类别损失、精度和 平均 AP

Comet 实验追踪仪表盘

指标

在指标部分,您还可以选择以表格格式检查指标,该表格格式显示在专用窗格中,如此处所示。

Comet 实验追踪仪表盘

交互式 混淆矩阵

混淆矩阵位于“Confusion Matrix”选项卡中,提供了一种交互式方法来评估模型的分类准确性。它详细说明了正确和不正确的预测,使您能够了解模型的优势和劣势。

Comet 实验追踪仪表盘

系统指标

Comet 记录系统指标以帮助识别训练过程中的任何瓶颈。它包括 GPU 利用率、GPU 内存使用量、CPU 利用率和 RAM 使用量等指标。这些对于监控模型训练期间的资源使用效率至关重要。

Comet 实验追踪仪表盘

自定义 Comet 日志记录

Comet 通过设置环境变量提供了自定义其日志记录行为的灵活性。这些配置允许您根据您的特定需求和偏好定制 Comet。以下是一些有用的自定义选项:

记录图像预测

您可以控制 Comet 在实验期间记录的图像预测数量。默认情况下,Comet 会记录验证集中 100 个图像预测。但是,您可以更改此数量以更好地满足您的要求。例如,要记录 200 个图像预测,请使用以下代码:

import os

os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"

批次日志记录间隔

Comet 允许您指定图像预测批次记录的频率。 COMET_EVAL_BATCH_LOGGING_INTERVAL 环境变量控制此频率。 默认设置为 1,它记录来自每个验证批次的预测。 您可以调整此值以按不同的间隔记录预测。 例如,将其设置为 4 将记录来自每四个批次的预测。

import os

os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"

禁用混淆矩阵日志记录

在某些情况下,您可能不希望在每次验证集之后都记录混淆矩阵 epoch。您可以通过设置以下参数来禁用此功能 COMET_EVAL_LOG_CONFUSION_MATRIX 环境变量设置为“false”。 混淆矩阵将仅在训练完成后记录一次。

import os

os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"

离线日志记录

如果您发现自己处于互联网访问受限的情况,Comet 提供离线日志记录选项。您可以设置 COMET_MODE 环境变量为“offline”以启用此功能。您的实验数据将本地保存在一个目录中,您可以在互联网连接可用时将其上传到 Comet。

import os

os.environ["COMET_MODE"] = "offline"

总结

本指南已引导您将 Comet 与 Ultralytics 的 YOLO26 集成。从安装到自定义,您已学会如何简化实验管理、获取实时洞察,并根据项目需求调整日志记录。

探索 Comet 官方的 YOLOv8 集成文档,该文档也适用于 YOLO26 项目。

此外,如果您希望深入了解 YOLO26 的实际应用,特别是针对 图像分割 任务,这份关于 使用 Comet 微调 YOLO26 的详细指南提供了宝贵的见解和分步说明,以提升您的模型性能。

此外,要探索 Ultralytics 的其他令人兴奋的集成,请查看集成指南页面,该页面提供了丰富的资源和信息。

常见问题

如何将 Comet 与 Ultralytics YOLO26 集成以进行训练?

要将 Comet 与 Ultralytics YOLO26 集成,请遵循以下步骤:

  1. 安装所需软件包

    pip install ultralytics comet_ml torch torchvision
    
  2. 设置您的 Comet API 密钥:

    export COMET_API_KEY=YOUR_API_KEY
    
  3. 在您的 Python 代码中初始化您的 Comet 项目:

    import comet_ml
    
    comet_ml.login(project_name="comet-example-yolo26-coco128")
    
  4. 训练您的 YOLO26 模型并记录指标

    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    results = model.train(
        data="coco8.yaml",
        project="comet-example-yolo26-coco128",
        batch=32,
        save_period=1,
        save_json=True,
        epochs=3,
    )
    

有关更详细的说明,请参阅 Comet 配置部分

将 Comet 与 YOLO26 结合使用的优势是什么?

通过将 Ultralytics YOLO26 与 Comet 集成,您可以:

  • 监控实时洞察: 获得有关训练结果的即时反馈,从而可以快速进行调整。
  • 记录丰富的指标: 自动捕获mAP、损失、超参数和模型检查点等基本指标。
  • 离线跟踪实验: 在无法访问互联网时,在本地记录您的训练运行。
  • 比较不同的训练运行:使用交互式 Comet 仪表板分析和比较多个实验。

通过利用这些功能,您可以优化您的机器学习工作流程,以获得更好的性能和可复现性。欲了解更多信息,请访问Comet集成指南

如何在 YOLO26 训练期间自定义 Comet 的日志记录行为?

Comet允许通过使用环境变量对其日志记录行为进行广泛自定义:

  • 更改记录的图像预测数量:

    import os
    
    os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
    
  • 调整批处理日志记录间隔:

    import os
    
    os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    
  • 禁用混淆矩阵日志记录:

    import os
    
    os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    

有关更多自定义选项,请参阅自定义Comet日志记录部分。

如何在 Comet 上查看 YOLO26 训练的详细指标和可视化?

一旦您的 YOLO26 模型开始训练,您就可以在 Comet 控制面板上访问各种指标和可视化内容。主要功能包括:

  • 实验面板:查看不同的运行及其指标,包括segment mask损失、类别损失和平均精度
  • 指标: 以表格格式检查指标以进行详细分析。
  • 交互式混淆矩阵:使用交互式混淆矩阵评估分类准确率。
  • 系统指标: 监控 GPU 和 CPU 的利用率、内存使用情况以及其他系统指标。

有关这些功能的详细概述,请访问通过Comet可视化了解模型性能部分。

在训练 YOLO26 模型时,我可以使用 Comet 进行离线日志记录吗?

是的,您可以通过设置以下参数在Comet中启用离线日志记录: COMET_MODE 将环境变量设置为“offline”:

import os

os.environ["COMET_MODE"] = "offline"

此功能允许您在本地记录实验数据,当有互联网连接时,这些数据可以稍后上传到Comet。这在互联网访问受限的环境中尤其有用。有关更多详细信息,请参阅离线日志记录部分。



📅 创建于 2 年前 ✏️ 更新于 5 天前
glenn-jocherRizwanMunawarUltralyticsAssistantjshakesjk4eMatthewNoyceAyushExel

评论