---
title: Валидация и метрики качества
questionDates:
  q-transfer-0001: '2026-10-01'
  q-transfer-0002: '2026-10-01'
  q-transfer-0012: '2026-10-01'
  q-transfer-0013: '2026-10-01'
  q-transfer-0014: '2026-10-01'
seo:
  description: >-
    Тема «Валидация и метрики качества» для собеседования Data Scientist. Чем
    тестовая выборка отличается от валидационной? Как настроить early stopping
    без утечки из test set?
  title: Валидация и метрики качества — Data Scientist
---

[Все темы Data Scientist](/prep/data-scientist)

Подтемы:

- [Оценка и валидация модели](#q-14bee738d69b81638cbaf4aec34ff473)
- [Метрики оценки качества моделей](#q-14bee738d69b81f3bed8da5ebe838b75)
- [Recall](#q-14bee738d69b81f18a5ddadfc73beee5)
- [Confusion Matrix](#q-14bee738d69b81acb0f8c42b6fd08500)
- [ROC-AUC](#q-14bee738d69b8147b7adc73c3b27e7a5)
- [PR Кривая](#q-14bee738d69b819eb83fd5865550e3ab)

<span
  id="q-14bee738d69b8159b050c1bf42c9f44f"
  data-question-redirect="/prep/data-scientist/vremennye-ryady#q-14bee738d69b8159b050c1bf42c9f44f"
></span>

<span
  id="q-14bee738d69b8172b8a5c24a7634a12a"
  data-question-redirect="/prep/data-scientist/rekomendatelnye-sistemy#q-14bee738d69b8172b8a5c24a7634a12a"
></span>

<span
  id="q-14bee738d69b81b0b4ddebbd5e751ff6"
  data-question-redirect="/prep/data-scientist/snizhenie-razmernosti-i-metricheskoe-obuchenie#q-14bee738d69b81b0b4ddebbd5e751ff6"
></span>

## <strong>Чем тестовая выборка отличается от валидационной?</strong> [#q-14bee738d69b81638cbaf4aec34ff473]

Тестовая выборка и валидационная выборка являются частями данных, которые используются в машинном обучении для оценки качества модели. Однако их роли и цели отличаются&#58;

#### <strong>Тестовая выборка</strong> <code>&#40;Test Set&#41;</code>&#58;

- Используется для окончательной оценки качества модели после ее обучения и настройки.

- Никогда не используется в процессе обучения или настройки модели, чтобы избежать переобучения.

- Помогает оценить, насколько хорошо модель обобщает данные, которые она ранее не видела.

#### <strong>Валидационная выборка</strong> <code>&#40;Validation Set&#41;</code>&#58;

- Используется во время обучения модели для настройки гиперпараметров и оценки ее качества на данных, которые не использовались в обучении.

- Помогает выбирать лучшие параметры модели и предотвращать переобучение.

- Обычно используется для выбора лучшей модели из нескольких вариантов.

:::note[Ссылки для изучения]

1. [Обучающая, валидационная и тестовая выборки при настройке модели](https://deepmachinelearning.ru/docs/Machine-learning/Base-concepts/Quality-estimation)
   :::

---

## Как настроить early stopping без утечки из test set? [#q-transfer-0001]

Early stopping настраивают по метрике отдельной validation-выборки: задают направление улучшения, `patience`, `min_delta` и сохранение лучшего checkpoint. Последняя эпоха не обязательно лучшая, поэтому после остановки восстанавливают лучшие веса. Validation уже участвует в выборе числа итераций и считается частью обучения. Test set не просматривают до фиксации модели и порога, а затем используют один раз для финальной оценки. Для временных или групповых данных сам split тоже должен исключать утечку.

:::note[Ссылки для изучения]

1. [Ранняя остановка: контроль переобучения по validation-выборке](https://deepmachinelearning.ru/docs/Neural-networks/Regularization/Early-stopping)
1. [Validation для выбора параметров и test для финальной оценки: как избежать утечки](https://contest.yandex.ru/tracks/ml/model-evaluation/hyperparameter-tuning#pervyj-variant)
   :::

---

## Когда при разбиении данных нужна стратификация? [#q-transfer-0002]

Стратификация нужна, когда важно сохранить доли классов или других заранее выбранных страт в train, validation и test. Она особенно полезна при редком классе и небольшой выборке, где случайный split может почти не оставить положительных объектов в одном наборе. Слишком мелкие или многомерные страты становятся нестабильными. Стратификация не заменяет `group split`: связанные объекты нельзя разносить между наборами. Для временных данных приоритет имеет порядок времени, даже если доли классов получатся разными.

:::note[Ссылки для изучения]

1. [Стратифицированное разбиение: сохранение долей классов и редкий класс](https://deepmachinelearning.ru/docs/Machine-learning/Base-concepts/Quality-estimation#стратифицированное-разбиение)
   :::

---

## <strong>Какие метрики вы применяли для оценки результатов классификации и кластеризации?</strong> [#q-14bee738d69b81f3bed8da5ebe838b75]

Для оценки результатов классификации часто используются следующие метрики&#58;

#### <strong>Для бинарной классификации</strong>&#58;

- Точность (Accuracy)

- Полнота (Recall)

- Точность (Precision)

- F1-мера (F1-score)

- AUC-ROC (Area Under the Receiver Operating Characteristic Curve)

#### <strong>Для многоклассовой классификации</strong>&#58;

- Матрица ошибок (Confusion Matrix)

- Макро и микро F1-мера

- Взвешенная точность и полнота

Для оценки результатов кластеризации часто используются следующие метрики&#58;

1. <strong>Silhouette Score</strong>&#58; Измеряет, насколько объект хорошо
   согласуется со своим кластером по сравнению с другими кластерами.

1. <strong>Davies-Bouldin Index</strong>&#58; Мера сходства внутри кластера и
   различия между кластерами. Чем меньше значение, тем лучше разделение.

1. <strong>Calinski-Harabasz Index</strong>&#58; Оценивает плотность и
   разделение между кластерами.

1. <strong>Adjusted Rand Index (ARI)</strong>&#58; Измеряет сходство между двумя
   кластерными разбиениями, учитывая случайные перестановки.

:::note[Ссылки для изучения]

1. [Классификация: матрица ошибок, precision/recall и ROC](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics)
1. [Кластеризация: гомогенность, полнота, V-мера и силуэт](https://contest.yandex.ru/tracks/ml/practical-topics/clustering)
   :::

---

## <strong>Что такое</strong> <code>MAPE</code><strong>?</strong> [#q-14bee738d69b81539065f37d92cb8215]

<code>MAPE</code> (Mean Absolute Percentage Error) - это метрика оценки точности
прогнозирования, которая измеряет среднее абсолютное процентное отклонение между
прогнозируемыми и фактическими значениями. Это выражается в процентах и
позволяет оценить точность модели прогнозирования, особенно при работе с
временными рядами и прогнозировании количественных значений. Чем ниже значение
<code>MAPE</code>, тем лучше модель.

:::note[Ссылки для изучения]

1. [MAPE и sMAPE: процентная ошибка и проблема малых фактов](https://habr.com/ru/articles/1013998/)
   :::

---

## <strong>Вычислить кумулятивную сумму для определенной метрики по месяцам.</strong> [#q-14bee738d69b810ebfb5d867991a1b2b]

<strong>Решение&#58;</strong>

```python
import pandas as pd

# Загрузка данных
data = pd.read_csv("your_data.csv")

# Преобразование столбца с датой в формат даты
data['date'] = pd.to_datetime(data['date'])

# Сортировка данных по дате
data = data.sort_values('date')

# Группировка данных по месяцам и вычисление кумулятивной суммы
data['cumulative_metric'] = data.groupby(data['date'].dt.to_period('M'))['metric'].cumsum()
```

:::note[Ссылки для изучения]

1. [Pandas GroupBy.cumsum: нарастающая сумма внутри группы](https://code.mu/ru/python/lib/pandas/manual/groupby/method/cumsum/)
   :::

---

## Как выбрать метрику классификации под задачу? [#q-14bee738d69b8124ac15c3a959b90c1b]

Метрику выбирают по типу прогноза и цене ошибок. Если классы сбалансированы и ошибки сопоставимы, подойдёт accuracy. При дорогих ложных срабатываниях смотрят precision, при дорогих пропусках смотрят recall; нужный компромисс задают $F_\beta$. [Формулы этих метрик](/prep/data-scientist/klassifikaciya-i-disbalans#q-14bee738d69b812bba1ff31f51710067) выводятся из матрицы ошибок.

Для качества ранжирования без фиксированного порога используют ROC-AUC, а при редком положительном классе обычно информативнее PR-AUC. Если важны сами вероятности, оценивают log loss или Brier score и отдельно проверяют калибровку. В многоклассовой задаче заранее выбирают macro-, weighted- или micro-усреднение: macro одинаково учитывает классы, weighted учитывает их частоты, micro агрегирует все объекты.

Окончательный выбор фиксируют до сравнения моделей и проверяют на данных, близких к рабочему распределению.

:::note[Ссылки для изучения]

1. [Выбор метрики классификации: цена ошибок, accuracy, precision, recall и F-мера](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics)
   :::

---

## <strong>Когда применять метрику accuracy вместо loss в машинном обучении?</strong> [#q-14bee738d69b81ac9661d56bd922970a]

Метрика accuracy обычно используется для оценки качества модели в случае задач классификации, когда интересует доля правильных предсказаний по всей выборке. Это особенно полезно, когда классы в данных сбалансированы. Однако, метрика <code>accuracy</code> может давать искаженные результаты в случае несбалансированных классов, поэтому в таких случаях часто предпочтительнее использовать другие метрики, такие как <code>precision</code>, <code>recall</code> или <code>F1&#45;score</code>. <code>Loss&#45;функции</code>, напротив, обычно используются в процессе обучения модели для оптимизации параметров на основе разницы между предсказанными и истинными значениями.

:::note[Ссылки для изучения]

1. [Метрики в задачах машинного обучения](https://habr.com/ru/companies/ods/articles/328372/)
   :::

---

## Почему MSE сильнее MAE реагирует на выбросы? [#q-transfer-0012]

MAE растет линейно: ошибка 10 в десять раз дороже ошибки 1. MSE возводит ошибку в квадрат, поэтому тот же промах становится в сто раз дороже и несколько выбросов могут определять обучение и оценку. MSE имеет квадратные единицы таргета; RMSE возвращает исходные единицы, сохраняя сильный штраф за большие ошибки. На выбор влияют выбросы и реальная цена крупных промахов. Для устойчивости также рассматривают Huber loss.

:::note[Ссылки для изучения]

1. [MSE, RMSE и MAE: квадратичный штраф и влияние выбросов](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics#regressiya)
   :::

---

## Почему MRR плохо оценивает качество длинного списка рекомендаций? [#q-transfer-0013]

MRR для каждого запроса берет только обратный ранг первого релевантного результата: позиция 1 дает 1, позиция 10 дает 0,1. Второй и последующие релевантные объекты не меняют оценку. Поэтому две выдачи с одинаковым первым попаданием, но совершенно разным остальным top-K, имеют одинаковый MRR. Метрика уместна в задачах с одним нужным ответом. Для качества длинного списка чаще используют MAP, Recall@K или NDCG@K, которая учитывает позиции нескольких релевантных результатов.

:::note[Ссылки для изучения]

1. [MRR: обратный ранг только первого релевантного результата](https://contest.yandex.ru/tracks/ml/practical-topics/ranking#mean-reciprocal-rank)
   :::

---

## Симметрична ли MAPE к недопрогнозу и перепрогнозу? [#q-transfer-0014]

MAPE несимметрична из-за факта в знаменателе. Для факта 100 прогнозы 80 и 120 оба дают 20%, но если сравнивать взаимно обратные ошибки, прогноз 100 при факте 80 дает 25%, а прогноз 80 при факте 100 дает 20%. При нуле MAPE не определена, а около нуля становится нестабильной. В зависимости от задачи рассматривают MAE, WAPE, MASE или RMSLE. Альтернатива тоже требует проверки: например, sMAPE имеет собственные пограничные эффекты.

:::note[Ссылки для изучения]

1. [Асимметрия MAPE: взаимная перестановка факта и прогноза и проблема нулей](https://habr.com/ru/articles/1013998/)
   :::

---

## <strong>Напишите формулу для метрик Recall и F1</strong> [#q-14bee738d69b81f18a5ddadfc73beee5]

Формула для <code>Recall</code> <code>&#40;Полноты&#41;</code> выглядит так&#58;

$$
\text{Recall} = \frac{TP}{TP + FN}
$$

где&#58;

- <InlineMath tex={"TP"} /> — количество истинно положительных результатов (true
  positives),

- <InlineMath tex={"FN"} /> — количество ложно отрицательных результатов (false
  negatives).

Формула для <code>F1 Score</code><code> &#40;F1&#45;меры&#41;</code>, которая является гармоническим средним между точностью <code>&#40;Precision&#41;</code> и полнотой <code>&#40;Recall&#41;</code>, выглядит следующим образом&#58;

$$
F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}
$$

где&#58;

- <InlineMath tex={"\\text{Precision} = \\frac{TP}{TP + FP}"} />,

- $$
   \text{Recall} = \frac{TP}{TP + FN},
  $$

- <InlineMath tex={"FP"} /> — количество ложно положительных результатов (false
  positives).

:::note[Ссылки для изучения]

1. [Recall, precision и F1: доли и гармоническое среднее](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics)
   :::

---

## <strong>Расскажите про Confusion Matrix.</strong> [#q-14bee738d69b81acb0f8c42b6fd08500]

<code>Confusion Matrix &#40;матрица ошибок&#41;</code> — это инструмент,
используемый для оценки производительности модели классификации. Она
визуализирует, как модель классифицирует объекты по сравнению с их истинными
метками. Матрица состоит из четырех различных комбинаций предсказанных и
истинных классов&#58;

1. <strong>True Positive (TP)</strong>&#58; Количество правильно
   классифицированных положительных случаев.

1. <strong>True Negative (TN)</strong>&#58; Количество правильно
   классифицированных отрицательных случаев.

1. <strong>False Positive (FP)</strong>&#58; Количество отрицательных случаев,
   ошибочно классифицированных как положительные.

1. <strong>False Negative (FN)</strong>&#58; Количество положительных случаев,
   ошибочно классифицированных как отрицательные.

<strong>Структура матрицы обычно следующая&#58;</strong>

|                                        | <strong>Предсказано Положительным</strong> | <strong>Предсказано Отрицательным</strong> |
| -------------------------------------- | ------------------------------------------ | ------------------------------------------ |
| <strong>Истинно Положительный</strong> | True Positive (TP)                         | False Negative (FN)                        |
| <strong>Истинно Отрицательный</strong> | False Positive (FP)                        | True Negative (TN)                         |

:::note[Ссылки для изучения]

1. [Confusion matrix: TP, TN, FP и FN](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics)
   :::

---

## У какой модели лучше ROC-AUC&#58; 0.51, 0.65 или 0.88? [#q-14bee738d69b8147b7adc73c3b27e7a5]

Модель с <code>AUC&#45;ROC</code> 0&#46;88 будет иметь более высокую предсказательную способность. <code>AUC&#45;ROC</code> (Area Under the Receiver Operating Characteristic curve) измеряет способность модели различать между классами. Чем выше значение <code>AUC&#45;ROC</code>, тем лучше модель разделяет классы и, следовательно, имеет более высокую предсказательную способность.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Что произойдёт с графиком если мы возведём все предсказания в квадрат?</strong> [#q-14bee738d69b81f190d4ee4b3d0df55f]

Если предсказания неотрицательны, например вероятности от 0 до 1, возведение в квадрат сохраняет их порядок. ROC-кривая и AUC не изменятся, изменятся только пороги. Для оценок с отрицательными значениями порядок может измениться, поэтому инвариантность не гарантирована.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Что будет с графиком и метрикой если к предикту добавить константу?</strong> [#q-14bee738d69b81cba8e3fbbc7b521679]

При добавлении одной константы ко всем оценкам порядок сохраняется, поэтому ROC-кривая и AUC не изменятся. Изменятся пороги; метрики при фиксированном числовом пороге могут стать другими.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Расскажите о метрике</strong> <code>ROC&#45;AUC</code><strong>. Что означает значение 0.5</strong> <code>ROC&#45;AUC</code><strong>?</strong> [#q-14bee738d69b8141b456cc6869aac8a8]

Метрика <code>ROC&#45;AUC</code> (Receiver Operating Characteristic - Area Under the Curve) измеряет качество бинарной классификации, оценивая способность модели разделять классы. <code>ROC&#45;AUC</code> представляет собой площадь под кривой <code>ROC</code> (Receiver Operating Characteristic), которая отображает отношение между долей истинно положительных результатов (True Positive Rate) и долей ложно положительных результатов (False Positive Rate) при изменении порога классификации.

Значение <code>ROC&#45;AUC</code> находится в диапазоне от 0 до 1. Чем ближе значение к 1, тем лучше модель отличает между классами&#58; положительным и отрицательным. Значение 0.5 <code>ROC&#45;AUC</code> говорит о том, что модель не различает между классами лучше, чем случайный выбор, что соответствует отсутствию дискриминирующей способности модели.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Как изменится roc_auc, если мы продублируем в выборке единицы 4 раза, а нули 7 раз?</strong> [#q-14bee738d69b8165afc0d04b1b2fd786]

Если мы продублируем единицы 4 раза и нули 7 раз в выборке, то <code>ROC AUC</code> не изменится, поскольку он оценивает порядок ранжирования классов, а не их абсолютные частоты. Как только порядок ранжирования останется неизменным, <code>ROC AUC</code> будет таким же, как и до дублирования.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Как строится</strong> <code>ROC&#45;AUC</code><strong>?</strong> [#q-14bee738d69b812cab9bf65fefce83b2]

<code>ROC&#45;AUC</code>
<code>
  {" "}
  &#40;Receiver Operating Characteristic &#45; Area Under the Curve&#41;
</code>
— это графический метод оценки качества бинарных классификаторов и состоит из
двух основных компонентов&#58; кривой ROC и площади под этой кривой (AUC).

#### Как строится кривая ROC&#58;

{/* prettier-ignore */}
1. <strong>Оси графика</strong>&#58; Ось X отображает False Positive Rate <code>&#40;FPR&#41;</code>, а ось Y — True Positive Rate <code>&#40;TPR&#41;</code>.

    - <strong>True Positive Rate (TPR)</strong>, также известен как <code>Recall</code> или <code>Sensitivity</code>, рассчитывается как <InlineMath tex={"\\frac{TP}{TP + FN}"} />.

    - <strong>False Positive Rate (FPR)</strong> рассчитывается как <InlineMath tex={"\\frac{FP}{TN + FP}"} />.

1. <strong>Пороги классификации</strong>&#58; Для построения кривой ROC модель применяется к данным, чтобы получить оценки вероятностей принадлежности к положительному классу. Затем изменяется порог, при котором предсказания считаются положительными, от низкого к высокому. Для каждого порога вычисляются значения TPR и FPR.

1. <strong>График</strong>&#58; Каждая пара значений (FPR, TPR), полученная в результате изменения порога, отмечается на графике, образуя кривую.

#### AUC (Area Under the Curve)&#58;

- <strong>AUC</strong> — это мера, которая позволяет оценить, насколько хорошо
  модель способна различать классы. Значение AUC лежит в диапазоне от 0 до 1,
  где 1 означает идеальное различение классов, а 0.5 — что модель не имеет
  дискриминационной способности (работает на уровне случайных предсказаний).

#### Значение ROC-AUC&#58;

ROC-AUC широко используется для оценки и сравнения моделей, поскольку площадь под кривой ROC не зависит от конкретного порога классификации и позволяет увидеть, насколько хорошо модель управляется с различением классов при разных уровнях чувствительности и специфичности.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Как вообще интерпретировать</strong> <code>PR&#45;AUC</code> <strong>или</strong> <code>ROC&#45;AUC</code><strong>?</strong> [#q-14bee738d69b81b18e81eca06ef13994]

Площадь под PR-кривой <code>&#40;PR AUC&#41;</code> и площадь под ROC-кривой <code>&#40;ROC AUC&#41;</code> являются метриками оценки качества модели классификации.

1. <strong>PR AUC (площадь под PR-кривой)</strong>&#58; Оценивает качество
   модели, учитывая точность и полноту. Чем выше PR AUC, тем лучше модель
   способна находить положительные классы и минимизировать ложные срабатывания.

1. <strong>ROC AUC (площадь под ROC-кривой)</strong>&#58; Оценивает способность
   модели различать между классами. ROC AUC показывает отношение между долей
   истинно положительных и долей ложно положительных предсказаний при различных
   пороговых значениях. Чем выше ROC AUC, тем лучше модель различает между
   классами.

Интерпретация&#58;

- PR AUC&#58; более высокое значение обычно лучше при оценке на одной выборке. Базовый уровень precision случайного ранжирования равен доле положительного класса, поэтому универсального ориентира 0.5 нет. При сравнении уточняйте, используется площадь с интерполяцией или Average Precision.

- ROC AUC&#58; Чем больше значение ROC AUC, тем лучше модель. Значение 0.5 также означает случайное угадывание, а значение 1 означает идеальную модель.

:::note[Ссылки для изучения]

1. [ROC-AUC и PR-AUC при дисбалансе: пример поиска документов](https://habr.com/ru/companies/ods/articles/328372/)
   :::

---

## <strong>Что произойдёт с</strong> <code>ROC&#45;AUC</code> <strong>если помножить предсказания на константу?</strong> [#q-14bee738d69b813bbceed56acc275506]

При умножении на положительную константу ROC-AUC не меняется. Отрицательная константа обращает порядок, и AUC становится 1 − AUC при стандартном учёте совпадений. Умножение на ноль делает все оценки равными и даёт AUC 0.5, если в выборке есть оба класса.

:::note[Ссылки для изучения]

1. [Гайд по AUC ROC](https://alexanderdyakonov.wordpress.com/2017/07/28/auc-roc-%D0%BF%D0%BB%D0%BE%D1%89%D0%B0%D0%B4%D1%8C-%D0%BF%D0%BE%D0%B4-%D0%BA%D1%80%D0%B8%D0%B2%D0%BE%D0%B9-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA/)
   :::

---

## <strong>Расскажите про PR-кривую и как она строится.</strong> [#q-14bee738d69b819eb83fd5865550e3ab]

PR-кривая <code>&#40;Precision&#45;Recall curve&#41;</code> является инструментом для оценки производительности модели в задачах классификации, особенно в случаях, когда классы в данных несбалансированы. Она показывает отношение между точностью <code>&#40;precision&#41;</code> и полнотой <code>&#40;recall&#41;</code> модели при различных пороговых значениях для принятия решения.

1. <strong>Точность (Precision)</strong>&#58; Это доля истинно положительных
   результатов среди всех положительных результатов, предсказанных моделью.
   Формула&#58; <InlineMath tex={"\\frac {TP} {(TP + FP)}"} />, где TP -
   количество истинно положительных предсказаний, а FP - количество ложно
   положительных предсказаний.

1. <strong>Полнота (Recall)</strong>&#58; Это доля истинно положительных
   результатов среди всех реальных положительных результатов в данных.
   Формула&#58; <InlineMath tex={"\\frac {TP} {(TP + FN)}"} />, где TP -
   количество истинно положительных предсказаний, а FN - количество ложно
   отрицательных предсказаний.

PR-кривая строится путем изменения порогового значения для классификации и подсчета точности и полноты при каждом значении порога. Затем эти точки объединяются в кривую, где по оси X отображается полнота, а по оси Y - точность.

Чем ближе PR-кривая к верхнему правому углу графика (то есть к точке (1, 1)), тем лучше производительность модели. Однако не всегда возможно добиться высоких значений и точности, и полноты одновременно, поэтому необходимо находить баланс между этими метриками в зависимости от конкретной задачи.

:::note[Ссылки для изучения]

1. [PR-кривая: precision/recall при изменении порога](https://contest.yandex.ru/tracks/ml/model-evaluation/classification-and-regression-metrics#pr-auc)
   :::
