ROC, AUC и пороги
Оценка качества ранжирования при разных порогах
«ROC, AUC и пороги» — бесплатный урок Data Science Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Data Science Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Data Science Academy содержит 4 уроков всего.
Модели выдают вероятности
Большинство классификаторов не просто отвечают «да» или «нет». Они выдают вероятность, например 0,73, а Вы решаете, где провести границу. 🎚️
probs = model.predict_proba(X)[:, 1]Порог принятия решения
Порог превращает вероятность в метку. Значение выше порога означает положительный класс, ниже — отрицательный. Порог 0,5 по умолчанию — лишь один из вариантов.
y_pred = probs >= 0.5Передвигаем границу
Снизьте порог — и обнаружите больше положительных случаев, но увеличите число ложных тревог. Повысите его — и станете строже, но пропустите больше случаев. Любая настройка предполагает компромисс.
Две отслеживаемые доли
Когда порог меняется, следите за долей истинно положительных и долей ложно положительных результатов. Вместе они описывают модель при любом пороге отсечения.
ROC-кривая
ROC-кривая показывает долю истинно положительных результатов в зависимости от доли ложно положительных при всех порогах, отображая весь компромисс на одном графике.
from sklearn.metrics import roc_curve
fpr, tpr, thr = roc_curve(y_true, probs)Как читать форму
Кривая, проходящая близко к верхнему левому углу, свидетельствует об отличном результате: много обнаруженных случаев и мало ложных тревог. Диагональная линия означает случайные предсказания.
Площадь под кривой
AUC сводит всю ROC-кривую к одному числу — площади под ней. Так обобщается качество модели сразу при всех порогах.
from sklearn.metrics import roc_auc_score
roc_auc_score(y_true, probs)Что означает AUC
Значение AUC, равное 1,0, означает идеальный результат, а 0,5 — случайное угадывание. Интерпретируйте его как вероятность того, что модель поставит истинно положительный случай выше истинно отрицательного.
Сравнение без фиксированного порога
Поскольку AUC не зависит от какого-либо одного порога, эта метрика отлично подходит для сравнения моделей. Побеждает модель, которая чаще ставит положительные случаи выше отрицательных.
Затем выберите порог
AUC помогает выбрать модель, но для реального применения Вам всё равно нужно задать порог, настроив его в пользу полноты или точности положительных предсказаний в зависимости от задачи.
Когда лучше использовать PR-кривые
На сильно несбалансированных данных ROC-кривая может выглядеть слишком оптимистично. Кривая точности положительных предсказаний и полноты часто честнее показывает качество для редкого класса.
Быстрая проверка
Проверим, что именно AUC сообщает Вам о классификаторе.
Итоги
Порог превращает вероятности в метки, ROC-кривая показывает все компромиссы, а AUC оценивает всю кривую одним числом. 🎯
Изучай Python с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 30
- Уроки
- 120
Часто задаваемые вопросы
Урок «ROC, AUC и пороги» бесплатный?
Да — полный текст урока «ROC, AUC и пороги» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Data Science Academy, подпишись на CoddyKit PRO. Курс Data Science Academy содержит 4 уроков всего.
Чему я научусь в уроке «ROC, AUC и пороги»?
Оценка качества ранжирования при разных порогах Ты практикуешь Data Science Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Data Science Academy?
Предыдущий опыт не требуется. Data Science Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «ROC, AUC и пороги»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Data Science Academy?
Да. Каждый урок Data Science Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.