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