Отслеживание и визуализация экспериментов YOLO с помощью Weights & Biases
Модели обнаружения объектов, такие как Ultralytics YOLO11, стали неотъемлемой частью многих приложений компьютерного зрения. Однако обучение, оценка и развертывание этих сложных моделей сопряжены с рядом проблем. Отслеживание ключевых метрик обучения, сравнение вариантов моделей, анализ поведения моделей и выявление проблем требуют значительного оснащения и управления экспериментами.
Смотреть: Как использовать Ultralytics YOLO11 с Weights and Biases
В этом руководстве демонстрируется интеграция Ultralytics YOLO11 с Weights & Biases для расширенного отслеживания экспериментов, сохранения контрольных точек моделей и визуализации производительности моделей. Он также содержит инструкции по настройке интеграции, обучению, тонкой настройке и визуализации результатов с использованием интерактивных функций Weights & Biases.
Weights & Biases
Weights & Biases — это передовая платформа MLOps, предназначенная для отслеживания, визуализации и управления экспериментами машинного обучения. Она включает автоматическое ведение журнала метрик обучения для полной воспроизводимости экспериментов, интерактивный пользовательский интерфейс для оптимизированного анализа данных и эффективные инструменты управления моделями для развертывания в различных средах.
Обучение YOLO11 с Weights & Biases
Вы можете использовать Weights & Biases, чтобы повысить эффективность и автоматизацию процесса обучения YOLO11. Интеграция позволяет отслеживать эксперименты, сравнивать модели и принимать решения на основе данных для улучшения ваших проектов в области компьютерного зрения.
Установка
Чтобы установить необходимые пакеты, выполните команду:
Установка
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb
# Enable W&B logging for Ultralytics
yolo settings wandb=True
Для получения подробных инструкций и рекомендаций, связанных с процессом установки, обязательно ознакомьтесь с нашим руководством по установке YOLO11. Если при установке необходимых пакетов для YOLO11 у вас возникнут какие-либо трудности, обратитесь к нашему руководству по распространенным проблемам для поиска решений и советов.
Настройка Weights & Biases
После установки необходимых пакетов следующим шагом будет настройка вашей среды Weights & Biases. Это включает в себя создание учетной записи Weights & Biases и получение необходимого ключа API для обеспечения бесперебойной связи между вашей средой разработки и платформой W&B.
Начните с инициализации среды Weights & Biases в вашей рабочей области. Это можно сделать, выполнив следующую команду и следуя инструкциям.
Начальная настройка SDK
import wandb
# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")
# Initialize your Weights & Biases environment
wandb login YOUR_API_KEY
Перейдите на страницу авторизации Weights & Biases, чтобы создать и получить свой API-ключ. Используйте этот ключ для аутентификации вашей среды в W&B.
Использование: Обучение YOLO11 с Weights & Biases
Прежде чем приступить к инструкциям по использованию для обучения модели YOLO11 с помощью Weights & Biases, обязательно ознакомьтесь с ассортиментом моделей YOLO11, предлагаемых Ultralytics. Это поможет вам выбрать наиболее подходящую модель для требований вашего проекта.
Использование: Обучение YOLO11 с Weights & Biases
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo11n.pt")
# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo11n")
# Train a YOLO11 model with Weights & Biases
yolo train data=coco8.yaml epochs=5 project=ultralytics name=yolo11n
Аргументы W&B
Аргумент | По умолчанию | Описание |
---|---|---|
project | None |
Указывает имя проекта, регистрируемого локально и в Weights & Biases. Это позволяет группировать несколько запусков вместе. |
name | None |
Имя тренировочного запуска. Оно определяет имя, используемое для создания подпапок, и имя, используемое для логирования в Weights & Biases. |
Включить или отключить Weights & Biases
Если вы хотите включить или отключить ведение журнала Weights & Biases в Ultralytics, вы можете использовать yolo settings
команда. По умолчанию ведение журнала Weights & Biases отключено.
# Enable Weights & Biases logging
yolo settings wandb=True
# Disable Weights & Biases logging
yolo settings wandb=False
Понимание выходных данных
После запуска приведенного выше фрагмента кода, можно ожидать следующие ключевые результаты:
- Настройка нового запуска с его уникальным ID, указывающим на начало процесса обучения.
- Краткое описание структуры модели, включая количество слоев и параметров.
- Регулярные обновления по важным метрикам, таким как box loss, cls loss, dfl loss, точность, полнота и показатели mAP во время каждой эпохи обучения.
- В конце обучения отображаются подробные метрики, включая скорость инференса модели и общие метрики точности.
- Ссылки на панель управления Weights & Biases для углубленного анализа и визуализации процесса обучения, а также информация о местоположении локальных файлов журналов.
Просмотр панели управления Weights & Biases
После запуска фрагмента кода, вы можете получить доступ к панели управления Weights & Biases (W&B) по предоставленной в выводе ссылке. Эта панель предлагает всестороннее представление о процессе обучения вашей модели с YOLO11.
Ключевые особенности панели управления Weights & Biases
-
Отслеживание метрик в реальном времени: Наблюдайте за метриками, такими как loss, accuracy и scores валидации, по мере их развития во время обучения, предлагая немедленные идеи для настройки модели. Узнайте, как отслеживаются эксперименты с помощью Weights & Biases.
-
Оптимизация гиперпараметров: Weights & Biases помогает в точной настройке критических параметров, таких как скорость обучения, размер пакета и многое другое, повышая производительность YOLO11. Это поможет вам найти оптимальную конфигурацию для вашего конкретного набора данных и задачи.
-
Сравнительный анализ: Платформа позволяет проводить параллельное сравнение различных прогонов обучения, что необходимо для оценки влияния различных конфигураций моделей и понимания того, какие изменения улучшают производительность.
-
Визуализация прогресса обучения: Графическое представление ключевых метрик обеспечивает интуитивное понимание производительности модели по эпохам. Узнайте, как Weights & Biases помогает визуализировать результаты валидации.
-
Мониторинг ресурсов: Отслеживайте использование CPU, GPU и памяти, чтобы оптимизировать эффективность процесса обучения и выявлять потенциальные узкие места в вашем рабочем процессе.
-
Управление артефактами модели: Получайте доступ к контрольным точкам модели и делитесь ими, что упрощает развертывание и сотрудничество с членами команды в сложных проектах.
-
Просмотр результатов инференса с наложением изображений: Визуализируйте результаты прогнозирования на изображениях с помощью интерактивных наложений в Weights & Biases, обеспечивая четкое и подробное представление о производительности модели на реальных данных. Для получения более подробной информации см. возможности наложения изображений Weights & Biases.
Используя эти функции, вы можете эффективно отслеживать, анализировать и оптимизировать обучение вашей модели YOLO11, обеспечивая наилучшую производительность и эффективность для ваших задач обнаружения объектов.
Обзор
Это руководство помогло вам изучить интеграцию Ultralytics YOLO с Weights & Biases. Оно иллюстрирует возможность этой интеграции эффективно отслеживать и визуализировать результаты обучения и прогнозирования моделей. Используя мощные функции W&B, вы можете оптимизировать свой рабочий процесс машинного обучения, принимать решения на основе данных и повышать производительность своей модели.
Для получения более подробной информации об использовании посетите официальную документацию Weights & Biases или ознакомьтесь с презентацией Soumik Rakshit с YOLO VISION 2023 об этой интеграции.
Также обязательно ознакомьтесь со страницей руководства по интеграции Ultralytics, чтобы узнать больше о различных интересных интеграциях, таких как MLflow и Comet ML.
Часто задаваемые вопросы
Как интегрировать Weights & Biases с Ultralytics YOLO11?
Для интеграции Weights & Biases с Ultralytics YOLO11:
-
Установите необходимые пакеты:
pip install -U ultralytics wandb yolo settings wandb=True
-
Войдите в свою учетную запись Weights & Biases:
import wandb wandb.login(key="YOUR_API_KEY")
-
Обучите свою модель YOLO11 с включенным логированием W&B:
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.
Как я могу просмотреть панель управления Weights & Biases для моей тренировки YOLO11?
После запуска скрипта обучения с интеграцией W&B:
- Ссылка на вашу панель управления W&B будет предоставлена в выводе консоли.
- Нажмите на ссылку или перейдите на wandb.ai и войдите в свою учетную запись.
- Перейдите к своему проекту, чтобы просмотреть подробные метрики, визуализации и данные о производительности модели.
Панель управления предлагает аналитику процесса обучения вашей модели, позволяя эффективно анализировать и улучшать ваши модели YOLO11.
Могу ли я отключить ведение журнала Weights & Biases для обучения YOLO11?
Да, вы можете отключить логирование W&B, используя следующую команду:
yolo settings wandb=False
Чтобы снова включить логирование, используйте:
yolo settings wandb=True
Это позволяет вам контролировать, когда вы хотите использовать логирование W&B, не изменяя свои скрипты обучения.
Как Weights & Biases помогает в оптимизации моделей YOLO11?
Weights & Biases помогает оптимизировать модели YOLO11 посредством:
- Предоставления подробных визуализаций метрик обучения
- Обеспечения простого сравнения различных версий моделей
- Предлагая инструменты для настройки гиперпараметров
- Обеспечение возможности совместного анализа производительности модели
- Облегчение простого обмена артефактами и результатами модели
Эти функции помогают исследователям и разработчикам быстрее выполнять итерации и принимать решения на основе данных для улучшения своих моделей YOLO11.