Spec-Zone.ru › scikit-learn

roc_curve

sklearn.metrics.roc_curve(y_true, y_score, *, pos_label=None, sample_weight=None, drop_intermediate=True)[исходный код]

Вычисляет характеристику приёмника (ROC).

Примечание: поддержка задач классификации, отличных от бинарной классификации, с использованием схемы «один против остальных» или «один против одного» не реализована.

Подробнее см. в руководстве пользователя.

Параметры:
y_trueмассивоподобный объект формы (n_samples,)

Истинные бинарные метки. Если метки не входят в множество {-1, 1} или {0, 1}, необходимо явно задать pos_label.

y_scoreмассивоподобный объект формы (n_samples,)

Оценки целевого класса: это могут быть оценки вероятности положительного класса или значения функции принятия решения без пороговой обработки (возвращаемые функцией принятия решения некоторых классификаторов). Для оценок функции принятия решения значения, большие или равные нулю, должны указывать на положительный класс.

pos_labelint, float, bool или str, по умолчанию=None

Метка положительного класса. Если pos_label=None, а y_true входит в {-1, 1} или {0, 1}, pos_label получает значение 1; в противном случае будет вызвана ошибка.

sample_weightмассивоподобный объект формы (n_samples,), по умолчанию=None

Веса выборок.

drop_intermediatebool, по умолчанию=True

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

Добавлено в версии 0.17: параметр drop_intermediate.

Возвращает:
fprndarray формы (>2,)

Массив возрастающих значений доли ложноположительных результатов, в котором элемент i — это доля ложноположительных предсказаний с оценкой >= thresholds[i].

tprndarray формы (>2,)

Массив возрастающих значений доли истинно положительных результатов, в котором элемент i — это доля истинно положительных предсказаний с оценкой >= thresholds[i].

thresholdsndarray формы (n_thresholds,)

Убывающие пороговые значения функции принятия решения, используемые для вычисления fpr и tpr. Первое пороговое значение равно np.inf.

Изменено в версии 1.3: добавлено произвольное бесконечное пороговое значение (хранится в thresholds[0]), представляющее классификатор, который всегда предсказывает отрицательный класс, то есть fpr=0 и tpr=0.

См. также

RocCurveDisplay.from_estimator

Строит кривую характеристики приёмника (ROC) для заданной модели и данных.

RocCurveDisplay.from_predictions

Строит кривую характеристики приёмника (ROC) по истинным и предсказанным значениям.

RocCurveDisplay.from_cv_results

Строит кривые ROC для нескольких фолдов по результатам кросс-валидации.

det_curve

Вычисляет частоты ошибок для разных пороговых значений вероятности.

roc_auc_score

Вычисляет площадь под кривой ROC.

confusion_matrix_at_thresholds

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

Примечания

Поскольку пороговые значения отсортированы от меньшего к большему, при возврате они располагаются в обратном порядке, чтобы соответствовать fpr и tpr, которые при вычислении сортируются в обратном порядке.

Ссылки

[1]

Статья Википедии о характеристике приёмника

[2]

Fawcett T. Введение в анализ ROC[J]. Pattern Recognition Letters, 2006, 27(8):861-874.

Примеры

>>> import numpy as np
>>> from sklearn import metrics
>>> y = np.array([1, 1, 2, 2])
>>> scores = np.array([0.1, 0.4, 0.35, 0.8])
>>> fpr, tpr, thresholds = metrics.roc_curve(y, scores, pos_label=2)
>>> fpr
array([0. , 0. , 0.5, 0.5, 1. ])
>>> tpr
array([0. , 0.5, 0.5, 1. , 1. ])
>>> thresholds
array([ inf, 0.8 , 0.4 , 0.35, 0.1 ])

Примеры в галерее

Моделирование распространения видов

Визуализация с помощью объектов отображения

Кривая компромисса ошибок обнаружения (DET)

Многоклассовая характеристика приёмника (ROC)

© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.metrics.roc_curve.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API