Data Science

ML Pipeline: от notebook к production

Airbnb, 2018. ML команда обучила модель предсказания цены за 3 месяца. В production - потеря $10M за квартал. Модель предсказывала корректно, но признаки вычислялись иначе чем при обучении. Training-serving skew. Именно это дало толчок к созданию Zipline Feature Store и всей ML Infrastructure культуре.

  • Uber Michelangelo: 10 000+ ML моделей в production, централизованный Feature Store, Model Registry - промышленный стандарт
  • Netflix: MLflow для 1000+ экспериментов в год, Model Registry с автоматическим A/B тестированием новых версий рекомендательных моделей
  • Spotify: Evidently-подобный мониторинг recommendation models - при drift >PSI 0.15 автоматически запускается переобучение

MLflow: отслеживание экспериментов и артефактов

MLflow - open-source платформа для ML lifecycle: tracking (параметры и метрики экспериментов), projects (воспроизводимость), models (упаковка), registry (версионирование). Без tracking: забытые гиперпараметры, невозможность воспроизвести лучший результат.

MLflow Autolog: mlflow.autolog() автоматически логирует параметры, метрики и артефакты для scikit-learn, XGBoost, LightGBM, PyTorch, TensorFlow. Databricks, AWS SageMaker и Azure ML интегрированы с MLflow нативно. Альтернативы: Weights & Biases (WandB) с богатым UI для deep learning, Neptune.ai.

Зачем использовать MLflow tracking вместо записей в Excel или Python комментариев?

Feature Store: централизованное хранение признаков

Feature Store - централизованный репозиторий вычисленных признаков. Решает три проблемы: дублирование вычислений (5 команд считают 'средние траты пользователя' по-разному), training-serving skew (в обучении признак вычислен иначе, чем в production), point-in-time correctness (нельзя использовать будущие данные при обучении на прошлом).

Uber Michelangelo Feature Store (2017) - один из первых в индустрии. Airbnb Zipline - point-in-time correct feature computation. Tecton, Feast, Hopsworks - современные реализации. Training-serving skew - причина 50%+ production ML failures по данным Google.

Что такое training-serving skew и чем опасна?

Model Registry: версионирование и promotion

Model Registry - каталог обученных моделей с версиями, метаданными и стейджами (Staging/Production/Archived). Позволяет: откатиться к предыдущей версии, A/B тестировать модели, проследить родословную модели (какие данные, какой код).

Зачем нужны стейджи (Staging/Production/Archived) в Model Registry?

ML Monitoring: мониторинг модели в production

ML мониторинг: три уровня. Infrastructure: latency, throughput, errors (как обычный сервис). Data drift: распределение признаков изменилось относительно train (PSI, KL divergence). Model performance: target метрики деградируют (если есть feedback loop с labels).

Arize AI, WhyLabs, Evidently AI - ML monitoring платформы. Uber ml monitoring: 1000+ production модели, автоматический алерт при PSI>0.2. Retraining trigger: scheduled (каждую неделю), event-based (при drift >threshold), или online learning (непрерывное обновление). Labeling latency - сколько ждать ground truth для оценки model performance.

Модель без изменений начала хуже предсказывать отток клиентов. Наиболее вероятная причина:

Ключевые идеи

  • MLflow tracking: каждый эксперимент = parameters + metrics + artifacts. Воспроизводимость через run_id.
  • Feature Store: устраняет training-serving skew и дублирование - признаки вычислены один раз, используются везде.
  • ML Monitoring: data drift (PSI > 0.2) + model performance - ранний сигнал переобучения до падения бизнес-метрик.

Связанные темы

ML Pipeline объединяет все этапы data science workflow:

  • Regression и Classification — scikit-learn Pipeline + MLflow logging - стандартный паттерн для supervised learning экспериментов
  • DS на собеседовании (FAANG) — ML system design: Feature Store, Model Registry, Monitoring - обязательные темы для ML Engineer позиций

Вопросы для размышления

  • Когда Feature Store over-engineering: маленькая команда с одной моделью vs большая команда с 50+ моделями?
  • Как организовать retraining pipeline: scheduled vs event-based vs continuous learning - для каждого сценария?
  • Почему model performance monitoring требует labeling latency и как это влияет на скорость обнаружения деградации?

Связанные уроки

  • ml-45-mlops-pipeline
ML Pipeline: от notebook к production

0

1

Войти