Журналируй эксперименты Ultralytics YOLO с помощью интеграции MLflow
Узнай, как интеграция и журналирование в MLflow могут улучшить твои эксперименты с Ultralytics YOLO, обеспечивая более эффективное отслеживание приложений для компьютерного зрения.

Проект в области компьютерного зрения можно представить как головоломку. По сути, ты учишь машины понимать визуальные данные, собирая воедино такие элементы, как подготовка набора данных, обучение модели и её развёртывание. Когда всё складывается, ты получаешь систему, которая эффективно анализирует изображения и видео и извлекает из них смысл.
Но, как и в настоящей головоломке, не каждый этап проекта в области компьютерного зрения прост. Такие задачи, как отслеживание экспериментов (ведение записей о настройках, конфигурациях и данных) и логирование (сбор результатов и метрик производительности), могут требовать много времени и усилий. Хотя эти этапы важны для улучшения и доработки моделей компьютерного зрения, иногда они становятся узким местом.
Именно здесь на помощь приходят модели Ultralytics YOLO и их интеграция с MLflow. Такие модели, как Ultralytics YOLO11, поддерживают широкий спектр задач компьютерного зрения, включая обнаружение объектов, сегментацию экземпляров и классификацию изображений. Эти возможности позволяют создавать впечатляющие приложения компьютерного зрения. Благодаря интеграциям, таким как интеграция с MLflow, инженеры по компьютерному зрению могут сосредоточиться на самой модели, а не на деталях реализации.
В частности, интеграция с MLflow упрощает процесс, логируя различные метрики, параметры и артефакты на протяжении всего обучения. В этой статье мы рассмотрим, как работает интеграция с MLflow, в чём её преимущества и как использовать её для оптимизации рабочих процессов Ultralytics YOLO.
Что такое MLflow?#
MLflow — это платформа с открытым исходным кодом (разработанная Databricks), предназначенная для упрощения и управления всем жизненным циклом машинного обучения. Она охватывает разработку, развёртывание и обслуживание моделей машинного обучения.
MLflow включает следующие ключевые компоненты:
- Отслеживание экспериментов: этот компонент предназначен для записи важных сведений, таких как настройки модели, результаты и файлы, для каждого запуска обучения модели. Он помогает сравнивать модели, оценивать влияние изменений на производительность и находить лучший вариант.
- Реестр моделей: это своего рода хранилище моделей, где можно отслеживать разные версии и распределять их по этапам, таким как тестирование, подготовка и промышленная эксплуатация.
- Упаковка проектов: MLflow упрощает объединение проектов машинного обучения, включая код, настройки и необходимые инструменты, чтобы ими можно было делиться и единообразно использовать в разных командах и окружениях.
- Развёртывание моделей: MLflow предоставляет инструменты для быстрого развёртывания обученных моделей в таких средах, как рабочие станции или облачные платформы AWS и Azure, подготавливая их к практическому использованию.

Рис. 1. Компоненты MLflow.
Компоненты MLflow упрощают управление процессом машинного обучения и делают его эффективнее. Благодаря этой интеграции Ultralytics позволяет использовать функцию отслеживания экспериментов MLflow для логирования параметров, метрик и артефактов во время обучения моделей YOLO. Это упрощает отслеживание и сравнение разных версий моделей YOLO.
Интеграция с MLflow оптимизирует процесс обучения#
Теперь, когда мы разобрались, что такое MLflow, давай подробнее рассмотрим интеграцию с MLflow и доступные в ней функции.
Интеграция с MLflow призвана сделать процесс обучения эффективнее и организованнее, автоматически отслеживая и логируя важные аспекты экспериментов в области компьютерного зрения. Она поддерживает три основных типа логирования: метрики, параметры и артефакты.
Рассмотрим подробнее каждый тип логирования:
- Логирование метрик: метрики — это количественные значения, измеряющие производительность модели во время обучения. Например, такие метрики, как точность, precision, полнота или функция потерь, отслеживаются в конце каждой эпохи (одного полного прохода по набору данных).
- Логирование параметров: параметры — это настройки, которые ты задаёшь до начала обучения модели, например скорость обучения, размер пакета (количество образцов, обрабатываемых за один шаг обучения) и количество эпох. Эти параметры существенно влияют на поведение и производительность модели.
- Логирование артефактов: артефакты — это результаты или файлы, создаваемые во время обучения. К ним относятся такие важные файлы, как веса модели (числовые значения, которым модель обучается во время обучения), файлы конфигурации (хранящие настройки обучения) и другие релевантные данные.

Рис. 2. Ключевые функции логирования интеграции с MLflow. Изображение автора.
Как работает интеграция с MLflow#
В документации Ultralytics ты найдёшь пошаговые инструкции по включению интеграции с MLflow. После настройки интеграция автоматически отслеживает и логирует ключевые сведения об экспериментах обучения, о которых говорилось выше. Это избавляет от необходимости вести записи вручную и помогает сосредоточиться на улучшении моделей.
Благодаря интеграции с MLflow все запуски обучения хранятся в одном месте, что упрощает сравнение результатов и оценку разных конфигураций. Сравнивая залогированные результаты, ты можешь определить конфигурации с лучшей производительностью и использовать эти выводы для улучшения моделей. Это делает рабочий процесс эффективнее, лучше документированным и воспроизводимым.
В частности, каждый сеанс обучения организуется в эксперимент, который служит контейнером для нескольких запусков. В рамках эксперимента можно просматривать все связанные запуски, сравнивать их производительность бок о бок и анализировать тенденции для разных конфигураций.
Например, если ты тестируешь различные значения скорости обучения или размера пакета с Ultralytics YOLOv8, все связанные запуски группируются в одном эксперименте для удобного сравнения и анализа, как показано ниже.

Рис. 3. Просмотр экспериментов с помощью интеграции с MLflow.
На уровне отдельного запуска MLflow предоставляет подробную информацию о конкретном сеансе обучения. Ты можешь просматривать такие метрики, как точность, функция потерь и precision, по эпохам, проверять использованные параметры обучения (например, размер пакета и скорость обучения), а также получать доступ к созданным артефактам, таким как веса модели и файлы конфигурации. Эти сведения хранятся в организованном формате, поэтому любой запуск легко повторно просмотреть или воспроизвести.
Выбор интеграции с MLflow: чем она выделяется#
Изучая документацию Ultralytics и доступные интеграции, ты можешь спросить себя: чем интеграция с MLflow отличается от других и почему стоит выбрать её для своего рабочего процесса?
Наряду с такими интеграциями, как TensorBoard, которые также предоставляют инструменты для отслеживания метрик и визуализации результатов, важно понимать уникальные особенности интеграции с MLflow, выделяющие её среди других решений.
Вот почему MLflow может стать идеальным выбором для твоих проектов YOLO:
- Удобный интерфейс: панель управления MLflow упрощает просмотр экспериментов, сравнение запусков и анализ результатов, помогая быстро находить конфигурации с лучшей производительностью.
- Логирование пользовательских метрик: инженеры по компьютерному зрению могут логировать пользовательские метрики в дополнение к стандартным, выполняя более глубокий анализ с учётом потребностей конкретного проекта.
- Поддержка многоязычных рабочих процессов: MLflow совместим с несколькими языками программирования, включая Python, R и Java, что упрощает интеграцию в разнообразные конвейеры машинного обучения.
Практическое применение Ultralytics YOLO11 и интеграции с MLflow#
Чтобы лучше понять, когда можно использовать интеграцию с MLflow, рассмотрим приложение AI в здравоохранении, в котором необходимо обучить Ultralytics YOLO11 обнаруживать опухоли на рентгеновских снимках или изображениях компьютерной томографии.
В таком сценарии набор данных состоял бы из размеченных медицинских изображений. Для достижения оптимальной точности тебе пришлось бы экспериментировать с различными конфигурациями, например изменять скорость обучения, размеры пакетов и методы предварительной обработки изображений. Поскольку в здравоохранении цена ошибки высока, а точность и надёжность критически важны, ручное отслеживание каждого эксперимента быстро стало бы неуправляемым.

Рис. 4. Обнаружение опухолей с помощью Ultralytics YOLO11.
Интеграция с MLflow решает эту проблему, автоматически логируя параметры, метрики и артефакты каждого эксперимента. Например, если ты изменишь скорость обучения или применишь новую стратегию аугментации, MLflow запишет эти изменения вместе с метриками производительности. Кроме того, MLflow сохраняет веса и конфигурации обученной модели, благодаря чему успешные модели можно легко воспроизвести и развернуть.
Это лишь один пример того, как интеграция с MLflow улучшает управление экспериментами в приложениях vision AI. Те же функции применимы и к другим приложениям компьютерного зрения, включая:
- Автономное вождение: Ultralytics YOLO11 можно использовать для обнаружения и классификации пешеходов, транспортных средств и дорожных знаков в реальном времени, повышая безопасность и эффективность беспилотных систем.
- Аналитика в розничной торговле: модели обнаружения объектов могут отслеживать поведение покупателей, размещение товаров и оптимизировать запасы, анализируя активность в магазине по видеопотокам.
- Безопасность и видеонаблюдение: модели можно обучить обнаруживать аномалии или отслеживать активность в реальном времени в зонах, требующих повышенной безопасности.
Преимущества интеграции с MLflow#
Интеграция с MLflow и моделями YOLO упрощает и делает эффективнее управление экспериментами машинного обучения. Автоматизируя ключевые задачи и поддерживая порядок, она позволяет сосредоточиться на создании и улучшении моделей. Рассмотрим основные преимущества:
- Масштабируется для крупных проектов: платформа эффективно обрабатывает множество экспериментов и моделей, поэтому подходит для больших команд и сложных рабочих процессов.
- Подробная история экспериментов: платформа хранит полную историю экспериментов, позволяя возвращаться к прошлым запускам, анализировать предыдущие конфигурации и учиться на прежних результатах.
- Отключение и сброс настроек: логирование MLflow можно легко отключить, когда оно не требуется, а настройки — сбросить до значений по умолчанию, что обеспечивает гибкость при адаптации к разным требованиям рабочего процесса.
Основные выводы#
Интеграция с MLflow упрощает управление и оптимизацию экспериментов Ultralytics YOLO и делает их эффективнее. Автоматически отслеживая такие ключевые сведения, как параметры, метрики и артефакты, она упрощает процесс и избавляет от трудоёмкого ручного управления экспериментами.
Работаешь ли ты над решениями для здравоохранения, например обнаружением опухолей, совершенствуешь системы автономного вождения или развиваешь аналитику в розничной торговле — эта интеграция помогает поддерживать порядок и воспроизводимость. Благодаря интуитивно понятному интерфейсу и гибкости MLflow позволяет разработчикам сосредоточиться на создании более эффективных моделей и развитии инноваций в приложениях vision AI.
Присоединяйся к нашему сообществу и загляни в наш репозиторий GitHub, чтобы узнать больше об AI. Также изучи другие применения компьютерного зрения в производстве или AI в беспилотных автомобилях на наших страницах решений.









