CalibrationDisplay#

класс sklearn.calibration.CalibrationDisplay(prob_true, prob_pred, y_prob, *, estimator_name=None, pos_label=None)[источник]#

Визуализация калибровочной кривой (также известной как диаграмма надежности).

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

Подробнее о калибровке в Руководство пользователя и больше о API визуализации scikit-learn в Визуализации.

Пример использования визуализации см. в Кривые калибровки вероятности.

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

Параметры:
prob_truendarray формы (n_bins,)

Доля выборок, класс которых является положительным классом (доля положительных), в каждом бине.

prob_predndarray формы (n_bins,)

Средняя прогнозируемая вероятность в каждом бине.

y_probndarray формы (n_samples,)

Вероятностные оценки для положительного класса, для каждого образца.

estimator_namestr, default=None

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

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

Положительный класс при вычислении калибровочной кривой. Если не указан None, это значение отображается в подписях осей x и y.

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

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

Кривая калибровки.

ax_matplotlib Axes

Оси с калибровочной кривой.

figure_фигура matplotlib

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

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

calibration_curve

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

CalibrationDisplay.from_predictions

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

CalibrationDisplay.from_estimator

Построить калибровочную кривую с использованием оценщика и данных.

Примеры

>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import calibration_curve, CalibrationDisplay
>>> 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(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> y_prob = clf.predict_proba(X_test)[:, 1]
>>> prob_true, prob_pred = calibration_curve(y_test, y_prob, n_bins=10)
>>> disp = CalibrationDisplay(prob_true, prob_pred, y_prob)
>>> disp.plot()
<...>
метод класса from_estimator(estimator, X, y, *, n_bins=5, стратегия='uniform', pos_label=None, имя=None, ax=None, ref_line=True, **kwargs)[источник]#

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

Калибровочная кривая, также известная как диаграмма надежности, использует входные данные бинарного классификатора и отображает среднюю прогнозируемую вероятность для каждого бина по отношению к доле положительных классов на оси y.

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

Подробнее о калибровке в Руководство пользователя и больше о API визуализации scikit-learn в Визуализации.

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

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

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

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

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

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

Бинарные целевые значения.

n_binsint, по умолчанию=5

Количество бинов для дискретизации интервала [0, 1] при вычислении калибровочной кривой. Большее число требует больше данных.

стратегия{‘uniform’, ‘quantile’}, default=’uniform’

Стратегия определения ширины бинов.

  • 'uniform': Корзины имеют одинаковую ширину.

  • 'quantile': Корзины имеют одинаковое количество образцов и зависят от предсказанных вероятностей.

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

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

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

имяstr, default=None

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

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

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

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

Если True, рисует опорную линию, представляющую идеально откалиброванный классификатор.

**kwargsdict

Ключевые аргументы для передачи в matplotlib.pyplot.plot.

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

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

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

CalibrationDisplay.from_predictions

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

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import CalibrationDisplay
>>> 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(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> disp = CalibrationDisplay.from_estimator(clf, X_test, y_test)
>>> plt.show()
../../_images/sklearn-calibration-CalibrationDisplay-1.png
метод класса from_predictions(y_true, y_prob, *, n_bins=5, стратегия='uniform', pos_label=None, имя=None, ax=None, ref_line=True, **kwargs)[источник]#

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

Калибровочная кривая, также известная как диаграмма надежности, использует входные данные бинарного классификатора и отображает среднюю прогнозируемую вероятность для каждого бина против доли положительных классов по оси Y.

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

Подробнее о калибровке в Руководство пользователя и больше о API визуализации scikit-learn в Визуализации.

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

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

для расширения текущего примера, оценивающего дисперсию ROC-кривых и их соответствующих AUC.

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

Предсказанные вероятности положительного класса.

n_binsint, по умолчанию=5

Количество бинов для дискретизации интервала [0, 1] при вычислении калибровочной кривой. Большее число требует больше данных.

стратегия{‘uniform’, ‘quantile’}, default=’uniform’

Стратегия определения ширины бинов.

  • 'uniform': Корзины имеют одинаковую ширину.

  • 'quantile': Корзины имеют одинаковое количество образцов и зависят от предсказанных вероятностей.

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

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

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

имяstr, default=None

Название для маркировки кривой.

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

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

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

Если True, рисует опорную линию, представляющую идеально откалиброванный классификатор.

**kwargsdict

Ключевые аргументы для передачи в matplotlib.pyplot.plot.

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

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

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

CalibrationDisplay.from_estimator

Построить калибровочную кривую с использованием оценщика и данных.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import CalibrationDisplay
>>> 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(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> y_prob = clf.predict_proba(X_test)[:, 1]
>>> disp = CalibrationDisplay.from_predictions(y_test, y_prob)
>>> plt.show()
../../_images/sklearn-calibration-CalibrationDisplay-2.png
plot(*, ax=None, имя=None, ref_line=True, **kwargs)[источник]#

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

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

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

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

имяstr, default=None

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

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

Если True, рисует опорную линию, представляющую идеально откалиброванный классификатор.

**kwargsdict

Ключевые аргументы для передачи в matplotlib.pyplot.plot.

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

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