MLOps

Experiment Tracking

Трекинг экспериментов

актуальноТекущий рабочий стандарт

Фиксация параметров, метрик, артефактов и версии кода для каждого запуска.

Ключевые тезисы

  • Без трекинга «лучшая модель» через месяц невоспроизводима.
  • Логируйте seed, версию данных и git-хеш.
  • Инструменты: MLflow, W&B, ClearML, Neptune.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Что логировать обязательно

Минимальный набор, без которого эксперимент не воспроизвести.

  • Гиперпараметры и конфиг целиком.
  • Git-хеш кода и версия данных (DVC-хеш или снапшот).
  • Все метрики по фолдам, а не только среднее.
  • Random seed и версии ключевых библиотек.
  • Артефакты: веса модели, графики, важности признаков, примеры ошибок.
import mlflow
with mlflow.start_run(run_name="lgbm-v3"):
    mlflow.log_params(params)
    mlflow.log_metric("roc_auc_cv", score.mean())
    mlflow.log_metric("roc_auc_std", score.std())
    mlflow.set_tag("git_sha", sha)
    mlflow.log_artifact("feature_importance.png")
    mlflow.sklearn.log_model(model, "model")
2

Как не утонуть в экспериментах

Соглашения, которые стоит завести сразу.

  • Единое имя эксперимента на задачу, run_name с осмысленным префиксом версии.
  • Теги: тип модели, набор признаков, автор, ветка.
  • Одна главная метрика, зафиксированная заранее, — иначе сравнение превратится в спор.
  • Автоматическое логирование конфига целиком, а не выборочных параметров.

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

Воспроизводимость