# Experiments

← [Раздел](README.md) · [Главная](../README.md)

## Цель

Понять назначение, устройство и практику использования компонента **Experiments** в MLflow.

## Предварительно

- [Artifact Store](artifact-store.md)

## Время

**2–3 ч**

---

## Назначение

**Experiment** — логическая **папка** для группы runs с общей целью (например, «fraud-detection-v2»).

## Создание

```python
mlflow.set_experiment("fraud-detection-v2")
# или
mlflow.create_experiment("new-exp", artifact_location="s3://bucket/exp2/")
```

## Организация в команде

| Практика | Пример |
|----------|--------|
| Имя = проект + задача | `recommendations-ranking` |
| Один experiment на гипотезу | Не смешивать классификацию и регрессию |
| Tags на уровне experiment | `team: payments`, `cost_center: CC42` |

## Lifecycle

- **Active** — новые runs принимаются
- **Deleted** (soft) — скрыт, восстановим
- Периодическая **чистка** неудачных runs

## Сравнение runs

В UI: выберите несколько runs → **Compare** → parallel coordinates chart для params/metrics.

## API поиска

```python
from mlflow import MlflowClient
client = MlflowClient()
runs = client.search_runs(
    experiment_ids=["1"],
    filter_string="metrics.accuracy > 0.9",
    order_by=["metrics.accuracy DESC"],
)
```

## Антипаттерны

- Один giant experiment «default» для всей компании
- Тысячи runs без имени `run_name`

---

## Самопроверка

1. Кратко опишите роль «Experiments» в MLflow.
2. Назовите типичную ошибку при работе с этим компонентом.
3. Как этот компонент связан с соседними?

---

## Дальше

→ [Runs](runs.md)
