Машинное обучение — это не только про обучение моделей, но и про постоянные эксперименты. Вы запускаете код снова и снова, меняете параметры, выбираете лучшую метрику… и через пару дней уже не помните, какой именно эксперимент дал хороший результат.

В этом гайде мы за 15 минут постараемся научить вас отслеживать параметры и метрики с использованием MLflow — без сложностей и лишней теории. Всё максимально просто: базовая модель, понятный код и наглядный интерфейс.

Что нужно установить?

Если у вас уже стоит Python (3.7–3.11) и pip, всё очень просто. Открывайте терминал и пишите:

bash
pip install mlflow scikit-learn pandas

Использование этих библиотек достаточно для первого эксперимента.

Пишем простую модель

Возьмём классическую задачу классификации: определим, относится ли цветок ириса к определённому виду. Создаём файл mlflow_demo.py со следующим кодом:

python
*import mlflow*

*import mlflow.sklearn*

*from sklearn.datasets import load_iris*

*from sklearn.linear_model import LogisticRegression*

*from sklearn.model_selection import train_test_split*

*from sklearn.metrics import accuracy_score*

*# Загружаем данные*

*iris = load_iris()*

*X = iris.data*

*y = iris.target*

*# Разбиваем на обучающую и тестовую выборки*

*X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)*

*# Задаём параметр модели*

*C_param = 1.0*

*# Начинаем трекинг эксперимента*

*with mlflow.start_run():*

*model = LogisticRegression(C=C_param, max_iter=200)*

*model.fit(X_train, y_train)*

*preds = model.predict(X_test)*

*acc = accuracy_score(y_test, preds)*

*# Логируем параметр и метрику*

*mlflow.log_param("C", C_param)*

*mlflow.log_metric("accuracy", acc)*

*# Сохраняем саму модель*

*mlflow.sklearn.log_model(model, "model")*

*print(f"Accuracy: {acc:.4f}")*

Смотрим результаты в MLflow UI

Теперь самое интересное — как посмотреть логи?

После запуска скрипта (bash) python mlflow_demo.py мы получим вывод вроде: (makefile) Accuracy: 1.0000

Далее запускаем интерфейс MLflow mlflow ui, открываем браузер и переходим по адресу: http://localhost:5000

Теперь можно пробовать другие параметры (например, C=0.1, C=10) и отслеживать, что работает лучше, добавлять другие метрики (precision, f1, recall), загружать и использовать сохранённую модель в другом скрипте., настроить удалённый MLflow-сервер (когда будешь работать в команде).

Советы по хорошему трекингу экспериментов

Когда вы начинаете логировать эксперименты, важно не просто «сложить всё в MLflow», а делать это с умом. Не нужно логировать каждый внутренний параметр модели. Начните с базового: learning rate, количество эпох, размер батча, коэффициенты регуляризации. Это упростит сравнение экспериментов.

MLflow позволяет указывать имя запуска (run name). Если вы добавляете mlflow.start_run(run_name=»lr=0.01, C=1.0″), будет проще ориентироваться в интерфейсе.

Еще можно сохранять артефакты. Это могут быть графики обучения (loss vs epoch), confusion matrix, файл с настройками. Они помогают визуально понять, как вёл себя конкретный запуск.

python
*import matplotlib.pyplot as plt*

*from sklearn.metrics import ConfusionMatrixDisplay*

*disp = ConfusionMatrixDisplay.from_predictions(y_test, preds)*

*plt.savefig("conf_matrix.png")*

*mlflow.log_artifact("conf_matrix.png")*

С помощью mlflow.set_tag() вы можете добавить к запуску, например, имя разработчика, версию датасета или тип модели. Это особенно полезно при командной работе или долгосрочных проектах.

Вывод

MLflow — мощный инструмент, который можно освоить за вечер.

Даже с минимальным кодом вы уже получаете историю запусков, видимые метрики, повторяемость результатов и простое управление моделями

А главное — больше никакой путаницы с экспериментами. Всё чётко, прозрачно и красиво.

Большой практикум
ЗАМЕНИ ВСЕ НЕЙРОСЕТИ НА ОДНУ — PERPLEXITY
ПОКАЖЕМ НА КОНКРЕТНЫХ КЕЙСАХ
  • Освой Perplexity и узнай, как пользоваться функционалом остальных ИИ в одном
  • УЧАСТВОВАТЬ ЗА 0 РУБ.
  • Расскажем, как получить подписку (240$) бесплатно
Участвовать бесплатно
ОНЛАЙН-ПРАКТИКУМ
ЗАПУСК DEEPSEEK R1 ЛОКАЛЬНО НА СВОЕМ КОМПЬЮТЕРЕ
ЧТО БУДЕТ НА ОБУЧЕНИИ?
  • ПОКАЖЕМ, КАК РАЗВЕРНУТЬ МОДЕЛЬ DEEPSEEK R1 ПРЯМО НА СВОЁМ КОМПЬЮТЕРЕ
Участвовать бесплатно