Операции машинного обучения (MLOps)
Откройте для себя возможности MLOps: оптимизируйте развертывание моделей машинного обучения, автоматизируйте рабочие процессы, обеспечьте надежность и эффективно масштабируйте успех ИИ.
Машинное обучение (MLOps) — это набор практик, принципов и технологий, которые оптимизируют процесс
перехода моделей машинного обучения (ML) от
экспериментальной разработки к надежному внедрению в производство. Объединяя исследовательский характер науки о данных с
строгой дисциплиной DevOps, MLOps стремится унифицировать цикл выпуска
приложений искусственного интеллекта (ИИ).
В то время как традиционная разработка программного обеспечения сосредоточена в основном на версионировании кода, MLOps вводит
дополнительные сложности управления крупномасштабными данными и развивающимся поведением моделей. Этот целостный подход гарантирует, что
системы ИИ остаются масштабируемыми, точными и управляемыми на протяжении всего их жизненного цикла.
The Pillars of MLOps
Successful MLOps implementations rely on bridging the gap between three distinct disciplines: data engineering,
machine learning, and DevOps.
-
Continuous Integration and Delivery (CI/CD): Just as standard software uses
CI/CD pipelines to automate testing and
deployment, MLOps pipelines automate model training and validation. This ensures that changes to the code or data
automatically trigger steps to verify
model performance before updates reach
production.
-
Data and Model Versioning: In traditional coding, you only version the source code. In MLOps, teams
must use tools like DVC (Data Version Control) to track changes in
training data alongside the model hyperparameters.
This guarantees
reproducibility,
allowing engineers to recreate any specific model version from history.
-
Continuous Monitoring: Once deployed, models can degrade due to
concept drift, where the statistical properties of the
target variable change over time. MLOps involves setting up
observability systems to track metrics like
inference latency and accuracy, automatically
alerting teams when retraining is necessary.
Применение в реальном мире
MLOps — это основа современного корпоративного ИИ, позволяющая компаниям надежно масштабировать от одной модели до тысяч
развернутых конечных точек.
-
Профилактическое обслуживание в производстве: заводы используют
компьютерное зрение для выявления дефектов на
сборочных линиях. Конвейер MLOps гарантирует, что при внедрении новых линеек продуктов
модели обнаружения объектов переобучаются с использованием новых
изображений, версионируются и автоматически развертываются на периферийных устройствах завода без простоев. Это гарантирует, что
контроль качества
остается стабильным даже при изменении условий производства.
-
Интеллектуальный розничный инвентарь: розничные продавцы устанавливают камеры для track запасов track . Поскольку освещение в магазинах и
упаковка продуктов часто меняются, смещение модели является
постоянным риском. Системы 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 , которая предоставляет унифицированный интерфейс для управления
наборами данных, удаленного обучения и развертывания моделей в различных форматах, таких как
TensorRT для оптимизации скорости вывода.
MLOps в сравнении со смежными понятиями
Для эффективного внедрения этих практик важно отличать MLOps от смежных терминов в экосистеме.
-
MLOps против DevOps: DevOps фокусируется на
непрерывной доставке программных приложений. MLOps расширяет эти принципы, добавляя «данные» и
«модель» в качестве первостепенных элементов. В DevOps изменение кода запускает сборку; в MLOps изменение распределения данных
или снижение точности также может запустить
выполнение нового конвейера.
-
MLOps и обслуживание моделей:
Обслуживание моделей относится конкретно к
инфраструктуре, используемой для хостинга модели и обработки
запросов на вывод. MLOps — это более широкий
термин, который включает в себя обслуживание, а также этапы обучения, управления и мониторинга.
-
MLOps против AutoML:
Автоматическое машинное обучение (AutoML)
сосредоточено на автоматизации процесса создания моделей (например, выбора алгоритмов). MLOps управляет жизненным циклом этой
модели после ее создания и вводит в эксплуатацию конвейер, на котором работают инструменты AutoML.