Перейти к содержанию

Обучение YOLO11 с ClearML: оптимизация вашего рабочего процесса MLOps

MLOps устраняет разрыв между созданием и развертыванием моделей машинного обучения в реальных условиях. Он фокусируется на эффективном развертывании, масштабируемости и постоянном управлении, чтобы обеспечить хорошую работу моделей в практических приложениях.

Ultralytics YOLO11 легко интегрируется с ClearML, оптимизируя и улучшая обучение и управление вашей моделью обнаружения объектов. Это руководство проведет вас через процесс интеграции, подробно описывая, как настроить ClearML, управлять экспериментами, автоматизировать управление моделями и эффективно сотрудничать.

ClearML

Обзор ClearML

ClearML — это инновационная платформа MLOps с открытым исходным кодом, искусно разработанная для автоматизации, мониторинга и организации рабочих процессов машинного обучения. Ее ключевые особенности включают автоматизированное ведение журнала всех данных обучения и логического вывода для полной воспроизводимости экспериментов, интуитивно понятный веб-интерфейс для легкой визуализации данных и анализа, расширенные алгоритмы оптимизации гиперпараметров и надежное управление моделями для эффективного развертывания на различных платформах.

Обучение YOLO11 с помощью ClearML

Вы можете автоматизировать и повысить эффективность своего рабочего процесса машинного обучения, улучшив процесс обучения путем интеграции YOLO11 с ClearML.

Установка

Чтобы установить необходимые пакеты, выполните команду:

Установка

# Install the required packages for YOLO11 and ClearML
pip install ultralytics clearml

Для получения подробных инструкций и рекомендаций, связанных с процессом установки, обязательно ознакомьтесь с нашим руководством по установке YOLO11. Если при установке необходимых пакетов для YOLO11 у вас возникнут какие-либо трудности, обратитесь к нашему руководству по распространенным проблемам для поиска решений и советов.

Настройка ClearML

После установки необходимых пакетов следующим шагом будет инициализация и настройка вашего ClearML SDK. Это включает в себя настройку вашей учетной записи ClearML и получение необходимых учетных данных для беспрепятственного соединения между вашей средой разработки и сервером ClearML.

Начните с инициализации ClearML SDK в вашей среде. Команда 'clearml-init' запускает процесс настройки и запрашивает у вас необходимые учетные данные.

Начальная настройка SDK

# Initialize your ClearML SDK setup process
clearml-init

После выполнения этой команды посетите страницу настроек ClearML. Перейдите в верхний правый угол и выберите «Settings». Перейдите в раздел «Workspace» и нажмите «Create new credentials». Используйте учетные данные, указанные во всплывающем окне «Create Credentials», чтобы завершить настройку в соответствии с инструкциями, в зависимости от того, настраиваете ли вы ClearML в Jupyter Notebook или в локальной среде python.

Использование

Прежде чем углубляться в инструкции по использованию, обязательно ознакомьтесь с ассортиментом моделей YOLO11, предлагаемых Ultralytics. Это поможет вам выбрать наиболее подходящую модель для требований вашего проекта.

Использование

from clearml import Task

from ultralytics import YOLO

# Step 1: Creating a ClearML Task
task = Task.init(project_name="my_project", task_name="my_yolov8_task")

# Step 2: Selecting the YOLO11 Model
model_variant = "yolo11n"
task.set_parameter("model_variant", model_variant)

# Step 3: Loading the YOLO11 Model
model = YOLO(f"{model_variant}.pt")

# Step 4: Setting Up Training Arguments
args = dict(data="coco8.yaml", epochs=16)
task.connect(args)

# Step 5: Initiating Model Training
results = model.train(**args)

Объяснение кода

Давайте разберем шаги, показанные в приведенном выше фрагменте кода.

Шаг 1. Создание задачи ClearML: в ClearML инициализируется новая задача с указанием имени вашего проекта и задачи. Эта задача будет отслеживать и управлять обучением вашей модели.

Шаг 2. Выбор модели YOLO11: Переменная model_variant устанавливается в значение 'yolo11n', одну из моделей YOLO11. Этот вариант затем регистрируется в ClearML для отслеживания.

Шаг 3. Загрузка модели YOLO11: выбранная модель YOLO11 загружается с использованием класса YOLO от Ultralytics, подготавливая ее к обучению.

Шаг 4. Настройка аргументов обучения: Ключевые аргументы обучения, такие как набор данных (coco8.yaml) и количество эпох (16) организованы в словарь и связаны с задачей ClearML. Это позволяет отслеживать и потенциально изменять их через пользовательский интерфейс ClearML. Для детального понимания процесса обучения модели и лучших практик обратитесь к нашему руководству по обучению модели YOLO11.

Шаг 5: Запуск обучения модели: Обучение модели запускается с указанными аргументами. Результаты процесса обучения фиксируются в переменной results .

Понимание выходных данных

После запуска приведенного выше фрагмента кода можно ожидать следующий вывод:

  • Сообщение с подтверждением создания новой задачи ClearML, а также ее уникальный идентификатор.
  • Информационное сообщение о сохранении кода скрипта, указывающее на то, что выполнение кода отслеживается ClearML.
  • URL-ссылка на страницу результатов ClearML, где можно отслеживать ход обучения и просматривать подробные журналы.
  • Прогресс загрузки модели YOLO11 и указанного набора данных, за которым следует сводка архитектуры модели и конфигурации обучения.
  • Сообщения инициализации для различных компонентов обучения, таких как TensorBoard, Automatic Mixed Precision (AMP) и подготовка набора данных.
  • Наконец, начинается процесс обучения с обновлениями прогресса по мере обучения модели на указанном наборе данных. Для углубленного понимания метрик производительности, используемых во время обучения, ознакомьтесь с нашим руководством по метрикам производительности.

Просмотр страницы результатов ClearML

Щелкнув URL-ссылку на страницу результатов ClearML в выходных данных фрагмента кода, вы можете получить доступ к полному обзору процесса обучения вашей модели.

Основные функции страницы результатов ClearML

  • Отслеживание метрик в реальном времени

    • Отслеживайте критические метрики, такие как потери, точность и оценки валидации, по мере их возникновения.
    • Обеспечивает немедленную обратную связь для своевременной корректировки производительности модели.
  • Сравнение экспериментов

  • Подробные журналы и выходные данные

    • Получите доступ к подробным журналам, графическим представлениям метрик и выводам консоли.
    • Получите более глубокое понимание поведения модели и решения проблем.
  • Мониторинг использования ресурсов

    • Контролируйте использование вычислительных ресурсов, включая CPU, GPU и память.
    • Ключ к оптимизации эффективности обучения и затрат.
  • Управление артефактами модели

    • Просматривайте, скачивайте и делитесь артефактами модели, такими как обученные модели и контрольные точки.
    • Улучшает взаимодействие и оптимизирует развертывание моделей и обмен ими.

Чтобы визуально ознакомиться с тем, как выглядит страница результатов ClearML, посмотрите видео ниже:



Смотреть: Интеграция MLOps YOLO11 с использованием ClearML

Расширенные функции в ClearML

ClearML предлагает несколько расширенных функций для улучшения вашего опыта MLOps.

Удаленное выполнение

Функция удаленного выполнения ClearML облегчает воспроизведение и манипулирование экспериментами на разных машинах. Она регистрирует важные детали, такие как установленные пакеты и незафиксированные изменения. Когда задача ставится в очередь, агент ClearML извлекает ее, воссоздает среду и запускает эксперимент, сообщая подробные результаты.

Развертывание ClearML Agent не представляет сложности и может быть выполнено на различных машинах с помощью следующей команды:

clearml-agent daemon --queue QUEUES_TO_LISTEN_TO [--docker]

Эта настройка применима к облачным виртуальным машинам, локальным GPU или ноутбукам. ClearML Autoscalers помогают управлять облачными рабочими нагрузками на таких платформах, как AWS, GCP и Azure, автоматизируя развертывание агентов и корректируя ресурсы в зависимости от вашего бюджета ресурсов.

Клонирование, редактирование и постановка в очередь

Удобный интерфейс ClearML позволяет легко клонировать, редактировать и ставить задачи в очередь. Пользователи могут клонировать существующий эксперимент, настраивать параметры или другие детали через пользовательский интерфейс и ставить задачу в очередь для выполнения. Этот оптимизированный процесс гарантирует, что ClearML Agent, выполняющий задачу, использует обновленные конфигурации, что делает его идеальным для итеративных экспериментов и тонкой настройки модели.


Клонирование, редактирование и постановка в очередь с помощью ClearML

Управление версиями набора данных

ClearML также предлагает мощные возможности управления версиями наборов данных, которые легко интегрируются с рабочими процессами обучения YOLO11. Эта функция позволяет вам:

  • Версионируйте свои наборы данных отдельно от кода
  • Отслеживайте, какая версия набора данных использовалась для каждого эксперимента
  • Легкий доступ и загрузка последней версии набора данных

Чтобы подготовить набор данных для ClearML, выполните следующие действия:

  1. Организуйте свой набор данных со стандартной структурой YOLO (изображения, метки и т. д.)
  2. Скопируйте соответствующий YAML-файл в корень папки вашего набора данных.
  3. Загрузите свой набор данных с помощью инструмента ClearML Data:

    cd your_dataset_folder
    clearml-data sync --project YOLOv11 --name your_dataset_name --folder .
    

Эта команда создаст набор данных с указанием версии в ClearML, на который можно ссылаться в ваших скриптах обучения, обеспечивая воспроизводимость и легкий доступ к вашим данным.

Обзор

Это руководство провело вас через процесс интеграции ClearML с Ultralytics YOLO11. Охватывая все, от начальной настройки до расширенного управления моделями, вы узнали, как использовать ClearML для эффективного обучения, отслеживания экспериментов и оптимизации рабочих процессов в ваших проектах машинного обучения.

Для получения более подробной информации об использовании посетите официальную документацию ClearML.

Кроме того, изучите другие интеграции и возможности Ultralytics, посетив страницу руководства по интеграции Ultralytics, которая является сокровищницей ресурсов и идей.

Часто задаваемые вопросы

Как интегрировать Ultralytics YOLO11 с ClearML?

Интеграция Ultralytics YOLO11 с ClearML включает в себя ряд шагов для оптимизации вашего рабочего процесса MLOps. Сначала установите необходимые пакеты:

pip install ultralytics clearml

Затем инициализируйте ClearML SDK в своей среде, используя:

clearml-init

Затем вы настраиваете ClearML со своими учетными данными со страницы настроек ClearML. Подробные инструкции по всему процессу настройки, включая выбор модели и конфигурации обучения, можно найти в нашем руководстве по обучению модели YOLO11.

Зачем использовать ClearML с Ultralytics YOLO11 для моих проектов машинного обучения?

Использование ClearML с Ultralytics YOLO11 улучшает ваши проекты машинного обучения за счет автоматизации отслеживания экспериментов, оптимизации рабочих процессов и обеспечения надежного управления моделями. ClearML предлагает отслеживание метрик в реальном времени, мониторинг использования ресурсов и удобный интерфейс для сравнения экспериментов. Эти функции помогают оптимизировать производительность вашей модели и сделать процесс разработки более эффективным. Узнайте больше о преимуществах и процедурах в нашем руководстве по интеграции MLOps.

Как устранить распространенные проблемы при интеграции YOLO11 и ClearML?

Если у вас возникнут проблемы во время интеграции YOLO11 с ClearML, обратитесь к нашему руководству по распространенным проблемам для получения решений и советов. Типичные проблемы могут включать ошибки установки пакетов, настройку учетных данных или проблемы с конфигурацией. Это руководство содержит пошаговые инструкции по устранению этих распространенных проблем.

Как настроить задачу ClearML для обучения модели YOLO11?

Настройка задачи ClearML для обучения YOLO11 включает в себя инициализацию задачи, выбор варианта модели, загрузку модели, настройку аргументов обучения и, наконец, запуск обучения модели. Вот упрощенный пример:

from clearml import Task

from ultralytics import YOLO

# Step 1: Creating a ClearML Task
task = Task.init(project_name="my_project", task_name="my_yolov8_task")

# Step 2: Selecting the YOLO11 Model
model_variant = "yolo11n"
task.set_parameter("model_variant", model_variant)

# Step 3: Loading the YOLO11 Model
model = YOLO(f"{model_variant}.pt")

# Step 4: Setting Up Training Arguments
args = dict(data="coco8.yaml", epochs=16)
task.connect(args)

# Step 5: Initiating Model Training
results = model.train(**args)

Обратитесь к нашему руководству по использованию для получения подробной информации об этих шагах.

Где я могу просмотреть результаты обучения моей YOLO11 в ClearML?

После запуска скрипта обучения YOLO11 с ClearML вы можете просмотреть результаты на странице результатов ClearML. Вывод будет включать ссылку URL на панель управления ClearML, где вы можете отслеживать метрики, сравнивать эксперименты и отслеживать использование ресурсов. Для получения более подробной информации о том, как просматривать и интерпретировать результаты, ознакомьтесь с нашим разделом Просмотр страницы результатов ClearML.



📅 Создано 1 год назад ✏️ Обновлено 2 месяца назад

Комментарии