Метрики качества модели на собеседовании Data Scientist

Зачем DS спрашивают про метрики

Метрика — это компас в работе DS. Неправильная метрика приведёт к неправильным моделям, которые формально «улучшаются», но реально не помогают бизнесу.

На собесе Data Scientist метрики проверяют в трёх форматах: (а) определения — что такое AUC, F1; (б) выбор — какую метрику выбрать для задачи; (в) интерпретация — что значит AUC 0.85 для бизнеса.

Метрики регрессии

MAE (Mean Absolute Error). Среднее абсолютное отклонение. Устойчив к выбросам. Линейный отклик: ошибка 100 в 2 раза хуже ошибки 50.

MSE / RMSE. Среднеквадратичная ошибка / её корень. Наказывает большие ошибки сильнее. Используется как функция потерь чаще, чем для оценки.

(коэффициент детерминации). Доля variance, объяснённая моделью. От 0 до 1 (может быть и отрицательным для очень плохой модели). Интуиция: «насколько модель лучше, чем предсказание средним».

MAPE / WAPE. Относительная ошибка. Удобно сравнивать модели на разных шкалах. WAPE = sum(|true - pred|) / sum(true) — более стабильная версия для нулевых значений.

Когда что использовать:

  • Прогноз продаж — MAPE или WAPE
  • Прогноз цены недвижимости — MAE (выбросы)
  • Production-loss для нейросети — MSE (гладкая производная)

Метрики бинарной классификации

Confusion matrix

Predicted Positive Predicted Negative
Actual Positive TP FN
Actual Negative FP TN

Все остальные метрики выводятся отсюда.

Accuracy

Accuracy = (TP + TN) / Total. Доля правильных предсказаний.

Когда работает: сбалансированные классы.

Когда обманывает: несбалансированные. Если 99% не fraud, всегда предсказывая «не fraud», получишь 99% accuracy — но модель бесполезна.

Precision и Recall

  • Precision = TP / (TP + FP) — из тех, кого назвали positive, сколько действительно positive
  • Recall = TP / (TP + FN) — из всех реальных positive, сколько модель нашла

Обратный trade-off:

  • Хочешь высокий precision → консервативный порог → ниже recall
  • Хочешь высокий recall → агрессивный порог → ниже precision

Когда что важнее:

  • Fraud detection — precision (мало false alarms клиентам)
  • Скрининг рака — recall (не пропустить больных)
  • Email spam — precision (не блокировать важное)

F1-score

F1 = 2 × Precision × Recall / (Precision + Recall). Гармоническое среднее.

Используется когда оба важны примерно одинаково. F-beta — обобщение, можно акцентировать precision (beta < 1) или recall (beta > 1).

Подробнее — accuracy vs F1.

AUC-ROC

ROC-кривая — TPR (= Recall) vs FPR при разных порогах классификатора. AUC — площадь под кривой.

Интерпретация:

  • AUC 0.5 — модель случайна
  • AUC 0.7 — приемлемая
  • AUC 0.8 — хорошая
  • AUC 0.9+ — отличная

Преимущества AUC:

  • Threshold-independent (не зависит от выбора порога)
  • Хорошо работает на сбалансированных задачах

Недостатки:

  • На сильно несбалансированных задачах AUC даёт слишком оптимистичную картину
  • Не учитывает калибровку

Подробнее — AUC-ROC и метрики классификации.

AUC-PR (Precision-Recall AUC)

Альтернатива AUC-ROC для несбалансированных задач (fraud, rare diseases).

PR-кривая чувствительнее к плохим решениям на positive классе.

Калибровка

Калибровка — соответствие между предсказанной вероятностью и реальной частотой.

«Если модель сказала P(fraud)=0.7, должны ли 70% таких случаев быть реальным фрод?»

Метод проверки: bin предсказаний, сравнить mean prediction с реальной частотой в каждом bin. Brier score — численная мера калибровки.

Калибровка важна, когда predictions используются для бизнес-решений (порог, экспект-калькуляции).

Метрики ранжирования

Когда мы ранжируем (поиск, рекомендации), порядок важнее самой вероятности.

Precision@k / Recall@k. Учитывают только топ-k результатов.

MAP (Mean Average Precision). Усреднённый precision на разных позициях.

MRR (Mean Reciprocal Rank). 1 / позиция первого релевантного результата. Усреднено по запросам.

NDCG (Normalized Discounted Cumulative Gain). Учитывает позицию (выше — важнее) и градацию релевантности. SOTA-метрика для рекомендаций и поиска.

Hit rate / Coverage / Diversity / Novelty. Дополнительные метрики, специфичные для рекомендательных систем.

Метрики многоклассовой классификации

Macro F1. Среднее F1 по классам. Каждый класс равен.

Micro F1 / Weighted F1. Учитывают размер класса.

Top-k accuracy. Доля случаев, когда правильный класс попал в топ-k предсказаний.

Confusion matrix. Для понимания, какие классы путаются.

Метрики LLM и NLP

BLEU, ROUGE. Перекрытие n-грамм с reference. Для машинного перевода и суммаризации.

Perplexity. Уверенность модели в предсказании. Меньше = лучше.

Human eval. Главная метрика для генеративных задач. Дорого, но необходимо.

LLM-as-a-judge. Использовать другую LLM для оценки. Дёшево, но bias.

Как выбрать метрику на собесе

Шаблон ответа:

  1. Цель бизнеса. Что вообще оптимизируем?
  2. Сбалансированность. Какое распределение классов?
  3. Стоимость ошибок. Что хуже — FP или FN?
  4. Использование предсказаний. Используется как ранжирование, как фильтр, как калиброванная вероятность?

Пример: «Для fraud в платежах: класс несбалансирован (<1%), false positives дорого (блокируем клиента), false negatives тоже дорого (теряем деньги). Использую: precision при заданном recall (например 0.9), AUC-PR как дополнительная метрика».

Типичные вопросы

«AUC 0.85 — хорошо или плохо?» Зависит от: baseline (что было раньше), сложности задачи, бизнес-impact. AUC 0.85 для fraud — отлично. Для скоринга — нормально. Для повторных покупок — нужно сравнивать с baseline и calibration.

«Когда не использовать accuracy?» На несбалансированных задачах. Дополнительно — когда стоимость ошибок асимметрична.

«Что такое калибровка и зачем?» Если используешь предсказания как probability в бизнес-логике, нужна калибровка. Без неё «0.7» не означает 70%.

«Чем AUC-ROC отличается от AUC-PR?» ROC — TPR vs FPR. PR — Precision vs Recall. PR чувствительнее к положительному классу, предпочтительнее для несбалансированных задач.

«Почему F1 чаще precision/recall отдельно?» F1 — одно число, удобно сравнивать. Минус — скрывает trade-off. На собесе лучше упомянуть оба варианта.

Частые ошибки

  • Зубрить формулы без интуиции. Формула F1 — знать. «Когда F1 не подходит» — отдельный вопрос
  • Игнорировать класс баланс. На имбалансе нужны другие метрики
  • Не связывать с бизнесом. AUC 0.9 — это про сколько RUB / клиентов?
  • Зубрить только бинарные. Регрессия, multi-class, ranking — всё проверяется
  • Не учитывать калибровку. Для бизнес-применения часто важнее, чем «голый» score

FAQ

Какие метрики обязательно знать?

Минимум: Accuracy, Precision, Recall, F1, AUC-ROC, MAE/RMSE, R², NDCG. На senior — AUC-PR, MAP, MRR, Brier score, perplexity, BLEU/ROUGE.

Можно ли сравнивать модели по разным метрикам?

Нет. Один dataset — одна-две главные метрики. Иначе компании каждой модели «лучше» по своей метрике.

Что важнее — offline или online метрики?

Online (A/B-результат) — главный критерий. Offline — индикатор. Хорошая offline-метрика не гарантирует рост online.

Спрашивают ли про метрики моделей generative?

В NLP-командах — да. BLEU, ROUGE, perplexity, human eval. В classical ML — нет.

Как готовиться к этой части собеса?

Прорешать 20+ задач на выбор метрики (Kaggle / pet-projects). Знать формулы. Тренировать ответы «какая метрика для задачи X».

Смотрите также