Глоссарий

Операции машинного обучения (MLOps)

Открой для себя мощь MLOps: оптимизируй развертывание ML-моделей, автоматизируй рабочие процессы, обеспечь надежность и эффективно масштабируй успех ИИ.

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

Machine Learning Operations (MLOps) - это набор практик, направленных на надежное и эффективное развертывание и поддержку моделей Machine Learning (ML) в производстве. Черпая вдохновение в принципах DevOps, MLOps преодолевает разрыв между разработкой моделей (Data Scientists, ML Engineers) и ИТ-операциями (Ops Engineers), оптимизируя весь жизненный цикл ML от сбора данных до развертывания и мониторинга моделей. Цель - автоматизировать и стандартизировать процессы, обеспечивая более быстрое проведение экспериментов, более надежное развертывание и постоянное совершенствование ML-систем в производственных средах.

Основные принципы MLOps

MLOps построен на нескольких ключевых принципах, призванных управлять уникальными сложностями ML-систем:

  • Автоматизация: Автоматизация повторяющихся задач, таких как подготовка данных, обучение модели, проверка и развертывание, с помощью конвейеров непрерывной интеграции/непрерывного развертывания (CI/CD), адаптированных для ML.
  • Сотрудничество: Содействие общению и сотрудничеству между командами, занимающимися наукой о данных, разработкой программного обеспечения и операционной деятельностью, на протяжении всего жизненного цикла ML.
  • Версионирование: Реализуй контроль версий для данных, кода и моделей, чтобы обеспечить воспроизводимость и прослеживаемость. Такие инструменты, как DVC, часто используются наряду с Git'ом.
  • Мониторинг моделей: Непрерывно отслеживай производительность модели, качество данных и работоспособность в процессе производства, чтобы обнаружить такие проблемы, как дрейф данных или снижение производительности.
  • Управление и соблюдение норм: Обеспечение соответствия моделей нормативным требованиям, этическим рекомендациям(AI Ethics) и политике организации в отношении конфиденциальности и безопасности данных.

Жизненный цикл MLOps

Жизненный цикл MLOps охватывает весь путь ML-модели:

  1. Управление данными: Загрузка, проверка, очистка(Data Cleaning) и версионирование наборов данных( руководства помаркировке и подготовкеданных можно найти в Ultralytics Docs).
  2. Разработка моделей: Экспериментируй с различными алгоритмами, разработкой функций и архитектурой, часто используя такие фреймворки, как PyTorch или TensorFlow.
  3. Обучение моделей: Обучай модели в масштабе, потенциально используя распределенное обучение и управляя экспериментами с помощью таких инструментов, как Weights & Biases или MLflow. Настройка гиперпараметров часто автоматизирована.
  4. Проверка модели: Оценка работы модели с помощью таких показателей, как точность или mAP, на данных проверки.
  5. Развертывание моделей: Упаковка(контейнеризация с помощью Docker) и развертывание моделей в производственной среде, потенциально используя платформы оркестровки вроде Kubernetes.
  6. Мониторинг и переобучение моделей: Отслеживай производительность в реальном времени, выявляй дрейф или распад и при необходимости запускай конвейеры переобучения. Наблюдаемость здесь играет ключевую роль.

MLOps в сравнении со смежными понятиями

  • MLOps vs. AutoML: если MLOps охватывает весь сквозной жизненный цикл управления, то Automated Machine Learning (AutoML) фокусируется на автоматизации этапов построения модели (подготовка данных, разработка признаков, выбор модели, настройка гиперпараметров). Инструменты AutoML могут быть компонентом рабочего процесса MLOps.
  • MLOps против наблюдательности: Наблюдаемость - это критически важная возможность в рамках стратегии MLOps. Она предоставляет инструменты и практики (логирование, метрики, трассировка), необходимые для понимания внутреннего состояния и поведения развернутых ML-систем, что позволяет осуществлять эффективный мониторинг и устранять неполадки.

Применение в реальном мире

Практика MLOps необходима для управления сложными ML-системами в производстве:

  1. Рекомендательные системы: Такие компании, как Netflix или Spotify, используют MLOps для постоянного переобучения рекомендательных моделей на основе новых данных о взаимодействии с пользователями, A/B-тестирования различных версий моделей, мониторинга показателей вовлеченности и быстрого отката неэффективных моделей. Благодаря этому рекомендации остаются актуальными и персонализированными.
  2. Обнаружение мошенничества: Финансовые организации развертывают конвейеры MLOps для управления моделями обнаружения мошенничества. Это включает в себя мониторинг данных о транзакциях на предмет дрейфа, автоматическое переобучение моделей с учетом новых моделей мошенничества, обеспечение низкой задержки вывода для обнаружения в режиме реального времени и ведение аудиторских записей для соответствия нормативным требованиям. Ultralytics YOLO модели, используемые в системах визуального контроля, которые могут использоваться для обнаружения мошенничества, также выигрывают от применения MLOps для развертывания и мониторинга.

Инструменты и платформы

Разнообразные инструменты поддерживают различные этапы жизненного цикла MLOps:

Внедрение принципов MLOps помогает организациям более эффективно создавать, внедрять и управлять системами ИИ, преодолевая разрыв между экспериментальными исследованиями и надежными производственными приложениями.

Читать полностью