Spec-Zone.ru › scikit-learn

precision_recall_curve

sklearn.metrics.precision_recall_curve(y_true, y_score=None, *, pos_label=None, sample_weight=None, drop_intermediate=False, probas_pred='deprecated')[source]

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

Примечание: эта реализация ограничена задачей бинарной классификации.

Точность — это отношение tp / (tp + fp) , где tp — количество истинно положительных, а fp — количество ложноположительных. Интуитивно точность — это способность классификатора не классифицировать отрицательный образец как положительный.

Полнота — это отношение tp / (tp + fn) , где tp — количество истинно положительных, а fn — количество ложноотрицательных. Интуитивно полнота — это способность классификатора найти все положительные образцы.

Последние значения точности и полноты равны соответственно 1. и 0. и не имеют соответствующего порога. Это гарантирует, что график начинается на оси y.

Первые значения точности и полноты — точность=баланс классов и полнота=1,0, что соответствует классификатору, который всегда предсказывает положительный класс.

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

Parameters:
y_truearray-like of shape (n_samples,)

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

y_scorearray-like of shape (n_samples,)

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

pos_labelint, float, bool or str, default=None

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

sample_weightarray-like of shape (n_samples,), default=None

Веса образцов.

drop_intermediatebool, default=False

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

Добавлен в версии 1.3.

probas_predarray-like of shape (n_samples,)

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

Устарело начиная с версии 1.5: probas_pred устарело и будет удалено в версии 1.7. Используйте y_score вместо этого.

Returns:
precisionndarray of shape (n_thresholds + 1,)

Значения точности, такие что элемент i — это точность прогнозов с оценкой >= thresholds[i], а последний элемент — 1.

recallndarray of shape (n_thresholds + 1,)

Убывающие значения полноты, такие что элемент i — это полнота прогнозов с оценкой >= thresholds[i], а последний элемент — 0.

thresholdsndarray of shape (n_thresholds,)

Возрастающие пороги на функции принятия решений, используемые для вычисления точности и полноты, где n_thresholds = len(np.unique(probas_pred)).

См. также

PrecisionRecallDisplay.from_estimator

Построение кривой точность-полнота, заданной бинарным классификатором.

PrecisionRecallDisplay.from_predictions

Построение кривой точность-полнота, используя прогнозы бинарного классификатора.

average_precision_score

Вычисление средней точности по оценкам прогнозов.

det_curve

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

roc_curve

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

Примеры

>>> import numpy as np
>>> from sklearn.metrics import precision_recall_curve
>>> y_true = np.array([0, 0, 1, 1])
>>> y_scores = np.array([0.1, 0.4, 0.35, 0.8])
>>> precision, recall, thresholds = precision_recall_curve(
...     y_true, y_scores)
>>> precision
array([0.5       , 0.66666667, 0.5       , 1.        , 1.        ])
>>> recall
array([1. , 1. , 0.5, 0.5, 0. ])
>>> thresholds
array([0.1 , 0.35, 0.4 , 0.8 ])

Галерея примеров

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

Точность-полнота

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

Spec-Zone.ru

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