Machine Learning Operations (MLOps)
Изучи основы MLOps для упрощения развертывания ИИ. Узнай, как управлять CI/CD, версионированием данных и мониторингом с помощью Ultralytics YOLO26 и нашей Platform.
Операции машинного обучения (MLOps) — это набор практик, принципов и технологий, упрощающих процесс перевода моделей машинного обучения (ML) от экспериментальной разработки к надежному развертыванию в рабочей среде. Объединяя исследовательский характер науки о данных со строгой дисциплиной DevOps, MLOps стремится унифицировать цикл выпуска приложений искусственного интеллекта (AI). В то время как традиционная разработка программного обеспечения в основном сосредоточена на версионировании кода, MLOps добавляет сложности, связанные с управлением большими объемами данных и изменением поведения моделей. Такой комплексный подход обеспечивает масштабируемость, точность и контролируемость систем AI на протяжении всего их жизненного цикла.
Основные составляющие MLOps#
Успешная реализация MLOps зависит от объединения трех самостоятельных дисциплин: инженерии данных, машинного обучения и DevOps.
- Непрерывная интеграция и доставка (CI/CD): Как и стандартное программное обеспечение использует конвейеры CI/CD для автоматизации тестирования и развертывания, конвейеры MLOps автоматизируют обучение и валидацию моделей. Это гарантирует, что изменения в коде или данных автоматически запускают этапы проверки производительности модели до того, как обновления попадут в рабочую среду.
- Версионирование данных и моделей: При традиционной разработке версионируется только исходный код. В MLOps команды должны использовать такие инструменты, как DVC (управление версиями данных), чтобы отслеживать изменения в данных для обучения вместе с гиперпараметрами модели. Это обеспечивает воспроизводимость, позволяя инженерам воссоздать любую конкретную версию модели по истории изменений.
- Непрерывный мониторинг: После развертывания качество моделей может ухудшаться из-за дрейфа концепции, при котором статистические свойства целевой переменной со временем изменяются. MLOps предполагает настройку систем наблюдаемости для отслеживания таких показателей, как задержка инференса и точность, с автоматическим оповещением команд о необходимости повторного обучения.
Практические применения#
MLOps — основа современного корпоративного AI, позволяющая компаниям надежно масштабироваться от одной модели до тысяч развернутых конечных точек.
-
Предиктивное обслуживание в производстве: На заводах используют компьютерное зрение для выявления дефектов на сборочных линиях. Конвейер MLOps гарантирует, что при запуске новых производственных линий модели обнаружения объектов будут переобучены на новых изображениях, версии моделей будут зафиксированы, а обновления автоматически развернуты на периферийных устройствах завода без простоев. Это обеспечивает стабильность контроля качества даже при изменении условий производства.
-
Умное управление запасами в розничной торговле: Ритейлеры устанавливают камеры для отслеживания наличия товаров на полках. Поскольку освещение в магазинах и упаковка товаров часто меняются, дрейф модели представляет постоянный риск. Системы MLOps отслеживают показатели уверенности; при их снижении система помечает изображения для аннотирования и запускает цикл повторного обучения в облаке, отправляя обновленную модель в магазины для поддержания автоматизированного управления запасами.
Реализация MLOps с Ultralytics#
Критически важный этап любого рабочего процесса MLOps — отслеживание экспериментов. Это гарантирует, что каждый запуск обучения будет зарегистрирован с определенной конфигурацией, позволяя командам воспроизводить результаты или при необходимости возвращаться к предыдущим версиям.
В следующем примере показано, как обучить модель YOLO26 — новейшую передовую модель от Ultralytics, рекомендованную для всех новых проектов, — с включенным отслеживанием проекта. Это автоматически создает артефакты, необходимые для рабочего конвейера.
from ultralytics import YOLO
# Load the YOLO26 model (recommended for superior speed and accuracy)
model = YOLO("yolo26n.pt")
# Train the model while specifying project and name for organized logging
# This creates a structured directory of artifacts (weights, charts, args)
# which is essential for reproducibility in MLOps pipelines.
results = model.train(data="coco8.yaml", epochs=10, project="mlops_experiments", name="run_v1")Организуя запуски обучения по отдельным проектам, команды могут легко интегрировать такие инструменты, как MLflow или TensorBoard, для визуализации показателей производительности во времени. По мере масштабирования организации часто переносят эти рабочие процессы на Ultralytics Platform, которая предоставляет единый интерфейс для управления наборами данных, удаленного обучения и развертывания моделей в различных форматах, например TensorRT, для оптимизации скорости инференса.
MLOps и смежные концепции#
Для эффективного внедрения этих практик важно отличать MLOps от связанных с ним терминов в экосистеме.
- MLOps и DevOps: DevOps сосредоточен на непрерывной доставке программных приложений. MLOps расширяет эти принципы, добавляя «данные» и «модель» в качестве полноправных компонентов. В DevOps изменение кода запускает сборку; в MLOps новую обработку конвейером также может запустить изменение распределения данных или падение точности.
- MLOps и обслуживание моделей: Обслуживание моделей относится непосредственно к инфраструктуре, используемой для размещения модели и обработки запросов на инференс. MLOps — это более широкое понятие, включающее обслуживание моделей, а также этапы обучения, управления и мониторинга.
- MLOps и AutoML: Автоматизированное машинное обучение (AutoML) сосредоточено на автоматизации процесса создания модели (например, выбора алгоритмов). MLOps управляет жизненным циклом этой модели после ее создания и вводит в эксплуатацию конвейер, запускающий инструменты AutoML.









