PrecisionRecallDisplay#

класс sklearn.metrics.PrecisionRecallDisplay(точность, полнота, *, average_precision=None, имя=None, pos_label=None, prevalence_pos_label=None, estimator_name='устаревший')[источник]#

Визуализация Precision Recall.

Рекомендуется использовать from_estimator или from_predictions для создания PrecisionRecallDisplay. Все параметры хранятся как атрибуты.

Для общей информации относительно scikit-learn инструменты визуализации, см. Руководство по визуализации. Для руководства по интерпретации этих графиков обратитесь к Руководство по оценке модели.

Параметры:
точностьndarray

Значения точности.

полнотаndarray

Значения полноты (recall).

average_precisionfloat, по умолчанию=None

Средняя точность. Если None, средняя точность не отображается.

имяstr, default=None

Имя оценщика. Если None, то имя оценщика не отображается.

Изменено в версии 1.8: estimator_name был устаревшим в пользу name.

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

Класс, считающийся положительным при вычислении метрик precision и recall. Если не None, это значение отображается в подписях осей x и y.

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

prevalence_pos_labelfloat, по умолчанию=None

Распространённость положительной метки. Используется для построения линии уровня случайности. Если None, линия уровня случайности не будет построена, даже если plot_chance_level устанавливается в True при построении графика.

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

estimator_namestr, default=None

Имя оценщика. Если None, имя оценщика не отображается.

Устарело с версии 1.8: estimator_name устарел и будет удален в версии 1.10. Используйте name вместо этого.

Атрибуты:
line_художник matplotlib

Кривая точности-полноты.

chance_level_художник matplotlib или None

Линия уровня случайности. Это None если уровень случайности не отображён.

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

ax_matplotlib Axes

Оси с кривой точности-полноты.

figure_фигура matplotlib

Рисунок, содержащий кривую.

Смотрите также

precision_recall_curve

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

PrecisionRecallDisplay.from_estimator

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

PrecisionRecallDisplay.from_predictions

Построение кривой Precision-Recall с использованием предсказаний бинарного классификатора.

Примечания

Средняя точность (см. average_precision_score) в scikit-learn вычисляется без какой-либо интерполяции. Для согласованности с этой метрикой, кривая точность-полнота строится без какой-либо интерполяции (ступенчатый стиль).

Вы можете изменить этот стиль, передав аргумент ключевого слова drawstyle="default" в plot, from_estimator, или from_predictions. Однако кривая не будет строго согласована с сообщённой средней точностью.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import (precision_recall_curve,
...                              PrecisionRecallDisplay)
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.svm import SVC
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(X, y,
...                                                     random_state=0)
>>> clf = SVC(random_state=0)
>>> clf.fit(X_train, y_train)
SVC(random_state=0)
>>> predictions = clf.predict(X_test)
>>> precision, recall, _ = precision_recall_curve(y_test, predictions)
>>> disp = PrecisionRecallDisplay(precision=precision, recall=recall)
>>> disp.plot()
<...>
>>> plt.show()
../../_images/sklearn-metrics-PrecisionRecallDisplay-1.png
метод класса from_estimator(estimator, X, y, *, sample_weight=None, drop_intermediate=False, response_method='auto', pos_label=None, имя=None, ax=None, plot_chance_level=False, chance_level_kw=None, despine=False, **kwargs)[источник]#

Построить кривую точности-полноты для данного оценщика и некоторых данных.

Для общей информации относительно scikit-learn инструменты визуализации, см. Руководство по визуализации. Для руководства по интерпретации этих графиков обратитесь к Руководство по оценке модели.

Параметры:
estimatorэкземпляр estimator

Обученный классификатор или обученный Pipeline в котором последний оценщик является классификатором.

X{array-like, sparse matrix} формы (n_samples, n_features)

Входные значения.

yarray-like формы (n_samples,)

Целевые значения.

sample_weightarray-like формы (n_samples,), по умолчанию=None

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

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

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

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

response_method{‘predict_proba’, ‘decision_function’, ‘auto’}, default=’auto’

Указывает, использовать ли predict_proba или decision_function как целевой отклик. Если установлено в 'auto', predict_proba сначала пробуется, и если он не существует decision_function пробуется следующим.

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

Класс, рассматриваемый как положительный при вычислении метрик точности и полноты. По умолчанию, estimators.classes_[1] инициализация на основе

имяstr, default=None

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

axоси matplotlib, по умолчанию=None

Объект Axes для построения графика. Если None, создается новый рисунок и оси.

plot_chance_levelbool, по умолчанию=False

Следует ли отображать уровень случайности. Уровень случайности — это распространенность положительной метки, вычисленная из данных, переданных во время from_estimator или from_predictions вызов.

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

chance_level_kwdict, по умолчанию=None

Аргументы ключевых слов для передачи в plot для отображения линии уровня шанса.

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

despinebool, по умолчанию=False

Удалять ли верхнюю и правую границы графика.

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

**kwargsdict

Аргументы ключевых слов для передачи в plot.

Возвращает:
отображениеPrecisionRecallDisplay

Смотрите также

PrecisionRecallDisplay.from_predictions

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

Примечания

Средняя точность (см. average_precision_score) в scikit-learn вычисляется без какой-либо интерполяции. Для согласованности с этой метрикой, кривая точности-полноты также строится без интерполяции (ступенчатый стиль).

Вы можете изменить этот стиль, передав аргумент ключевого слова drawstyle="default". Однако кривая не будет строго согласована с сообщённой средней точностью.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import PrecisionRecallDisplay
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...         X, y, random_state=0)
>>> clf = LogisticRegression()
>>> clf.fit(X_train, y_train)
LogisticRegression()
>>> PrecisionRecallDisplay.from_estimator(
...    clf, X_test, y_test)
<...>
>>> plt.show()
../../_images/sklearn-metrics-PrecisionRecallDisplay-2.png
метод класса from_predictions(y_true, y_score=None, *, sample_weight=None, drop_intermediate=False, pos_label=None, имя=None, ax=None, plot_chance_level=False, chance_level_kw=None, despine=False, y_pred='устаревший', **kwargs)[источник]#

Построение кривой precision-recall для бинарных предсказаний классов.

Для общей информации относительно scikit-learn инструменты визуализации, см. Руководство по визуализации. Для руководства по интерпретации этих графиков обратитесь к Руководство по оценке модели.

Параметры:
y_truearray-like формы (n_samples,)

Истинные бинарные метки.

y_scorearray-like формы (n_samples,)

Оцененные вероятности или выход функции принятия решений.

Добавлено в версии 1.8: y_pred был переименован в y_score.

sample_weightarray-like формы (n_samples,), по умолчанию=None

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

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

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

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

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

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

имяstr, default=None

Имя для обозначения кривой. Если None, имя будет установлено в "Classifier".

axоси matplotlib, по умолчанию=None

Объект Axes для построения графика. Если None, создается новый рисунок и оси.

plot_chance_levelbool, по умолчанию=False

Следует ли отображать уровень случайности. Уровень случайности — это распространенность положительной метки, вычисленная из данных, переданных во время from_estimator или from_predictions вызов.

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

chance_level_kwdict, по умолчанию=None

Аргументы ключевых слов для передачи в plot для отображения линии уровня шанса.

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

despinebool, по умолчанию=False

Удалять ли верхнюю и правую границы графика.

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

y_predarray-like формы (n_samples,)

Оцененные вероятности или выход функции принятия решений.

Устарело с версии 1.8: y_pred устарел и будет удален в версии 1.10. Используйте y_score вместо этого.

**kwargsdict

Аргументы ключевых слов для передачи в plot.

Возвращает:
отображениеPrecisionRecallDisplay

Смотрите также

PrecisionRecallDisplay.from_estimator

Построение кривой точности-полноты с использованием оценщика.

Примечания

Средняя точность (см. average_precision_score) в scikit-learn вычисляется без какой-либо интерполяции. Для согласованности с этой метрикой, кривая точности-полноты также строится без интерполяции (ступенчатый стиль).

Вы можете изменить этот стиль, передав аргумент ключевого слова drawstyle="default". Однако кривая не будет строго согласована с сообщённой средней точностью.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import PrecisionRecallDisplay
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...         X, y, random_state=0)
>>> clf = LogisticRegression()
>>> clf.fit(X_train, y_train)
LogisticRegression()
>>> y_score = clf.predict_proba(X_test)[:, 1]
>>> PrecisionRecallDisplay.from_predictions(
...    y_test, y_score)
<...>
>>> plt.show()
../../_images/sklearn-metrics-PrecisionRecallDisplay-3.png
plot(ax=None, *, имя=None, plot_chance_level=False, chance_level_kw=None, despine=False, **kwargs)[источник]#

Визуализация графика.

Дополнительные ключевые аргументы будут переданы в plot.

Параметры:
axMatplotlib Axes, по умолчанию=None

Объект Axes для построения графика. Если None, создаётся новая фигура и оси.

имяstr, default=None

Имя кривой точности-полноты для маркировки. Если None, используйте name если не None, в противном случае метки не отображаются.

plot_chance_levelbool, по умолчанию=False

Следует ли отображать уровень случайности. Уровень случайности — это распространенность положительной метки, вычисленная из данных, переданных во время from_estimator или from_predictions вызов.

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

chance_level_kwdict, по умолчанию=None

Аргументы ключевых слов для передачи в plot для отображения линии уровня шанса.

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

despinebool, по умолчанию=False

Удалять ли верхнюю и правую границы графика.

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

**kwargsdict

Аргументы ключевых слов для передачи в plot.

Возвращает:
отображениеPrecisionRecallDisplay

Объект, который хранит вычисленные значения.

Примечания

Средняя точность (см. average_precision_score) в scikit-learn вычисляется без какой-либо интерполяции. Для согласованности с этой метрикой, кривая точности-полноты также строится без интерполяции (ступенчатый стиль).

Вы можете изменить этот стиль, передав аргумент ключевого слова drawstyle="default". Однако кривая не будет строго согласована с сообщённой средней точностью.