Spec-Zone.ru › scikit-learn

RocCurveDisplay

classsklearn.metrics.RocCurveDisplay(*, fpr, tpr, roc_auc=None, name=None, pos_label=None)[исходный код]

Визуализация ROC-кривой.

Для создания объекта RocCurveDisplay рекомендуется использовать from_estimator, from_predictions или from_cv_results. Все параметры сохраняются в виде атрибутов.

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

Параметры:
fprndarray или список ndarray

Доли ложноположительных результатов. Каждый ndarray должен содержать значения для одной кривой. При построении нескольких кривых длина списка должна совпадать с длиной tpr.

Изменено в версии 1.7: Теперь для построения нескольких кривых можно передать список.

tprndarray или список ndarray

Доли истинноположительных результатов. Каждый ndarray должен содержать значения для одной кривой. При построении нескольких кривых длина списка должна совпадать с длиной fpr.

Изменено в версии 1.7: Теперь для построения нескольких кривых можно передать список.

roc_aucfloat или список float, по умолчанию=None

Площадь под ROC-кривой, используемая для подписи каждой кривой в легенде. При построении нескольких кривых должен быть передан список той же длины, что и fpr и tpr. Если None, оценки ROC AUC не отображаются в легенде.

Изменено в версии 1.7: Теперь для построения нескольких кривых можно передать список.

namestr или список str, по умолчанию=None

Название для подписей элементов легенды. Число элементов легенды определяется значением curve_kwargs, переданным в plot, и не зависит от name.

Если передана строка, она будет использована для подписи единственного элемента легенды либо, если элементов несколько, для подписи каждой отдельной кривой одним и тем же названием.

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

Если задано None, название в легенде не отображается.

Изменено в версии 1.7: estimator_name объявлен устаревшим в пользу name; теперь для построения нескольких кривых можно передать список.

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

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

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

Атрибуты:
line_объект Artist matplotlib или список объектов Artist matplotlib

ROC-кривые.

Изменено в версии 1.7: Если построено несколько кривых, этот атрибут теперь может быть списком объектов Artist.

chance_level_объект Artist matplotlib или None

Линия уровня случайного угадывания. Имеет значение None, если уровень случайного угадывания не отображается.

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

ax_Axes matplotlib

Оси с ROC-кривой.

figure_Figure matplotlib

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

См. также

roc_curve

Вычисление ROC-кривой (Receiver Operating Characteristic).

RocCurveDisplay.from_estimator

Построение ROC-кривой (Receiver Operating Characteristic) по оценщику и данным.

RocCurveDisplay.from_predictions

Построение ROC-кривой (Receiver Operating Characteristic) по истинным и предсказанным значениям.

RocCurveDisplay.from_cv_results

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

roc_auc_score

Вычисление площади под ROC-кривой.

Примеры

>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> from sklearn import metrics
>>> y_true = np.array([0, 0, 1, 1])
>>> y_score = np.array([0.1, 0.4, 0.35, 0.8])
>>> fpr, tpr, thresholds = metrics.roc_curve(y_true, y_score)
>>> roc_auc = metrics.auc(fpr, tpr)
>>> display = metrics.RocCurveDisplay(fpr=fpr, tpr=tpr, roc_auc=roc_auc,
...                                   name='example estimator')
>>> display.plot()
<...>
>>> plt.show()
../../_images/sklearn-metrics-RocCurveDisplay-1.png
classmethodfrom_cv_results(cv_results, X, y, *, sample_weight=None, drop_intermediate=True, response_method='auto', pos_label=None, ax=None, name=None, curve_kwargs=None, plot_chance_level=False, chance_level_kwargs=None, despine=False)[исходный код]

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

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

Параметры:
cv_resultsdict

Словарь, возвращаемый cross_validate с использованием return_estimator=True и return_indices=True (то есть словарь должен содержать ключи «estimator» и «indices»).

X{array-like, разреженная матрица} формы (n_samples, n_features)

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

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

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

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

Веса объектов.

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

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

response_method{‘predict_proba’, ‘decision_function’, ‘auto’}, по умолчанию=’auto’

Указывает, использовать ли predict_proba или decision_function в качестве целевого отклика. Если задано значение ‘auto’, сначала используется predict_proba, а если этот метод отсутствует, используется decision_function.

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

Класс, считающийся положительным при вычислении метрик ROC AUC. По умолчанию положительным считается estimator.classes_[1] (с использованием estimator из cv_results).

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

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

namestr или список str, по умолчанию=None

Название для подписей элементов легенды. Число элементов легенды определяется значением curve_kwargs, переданным в plot, и не зависит от name.

Если передана строка, она будет использована для подписи единственного элемента легенды либо, если элементов несколько, для подписи каждой отдельной кривой одним и тем же названием.

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

Если задано None, название в легенде не отображается.

curve_kwargsdict или список dict, по умолчанию=None

Аргументы-ключевые слова, передаваемые функции plot matplotlib для построения отдельных ROC-кривых. Если передан список, параметры последовательно применяются к ROC-кривым каждого фолда CV, и для каждой кривой добавляется элемент легенды. Если передан один словарь, одинаковые параметры применяются ко всем ROC-кривым, а для всех кривых добавляется один элемент легенды с подписью, содержащей среднюю оценку ROC AUC.

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

Следует ли отображать уровень случайного угадывания.

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

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

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

Следует ли убрать верхнюю и правую рамки графика.

Возвращает:
displayRocCurveDisplay

Объект отображения ROC-кривых для нескольких фолдов.

См. также

roc_curve

Вычисление ROC-кривой (Receiver Operating Characteristic).

RocCurveDisplay.from_estimator

Построение ROC-кривой (Receiver Operating Characteristic) по оценщику и данным.

RocCurveDisplay.from_predictions

Визуализация ROC-кривой по вероятностям или оценкам классификатора.

roc_auc_score

Вычисление площади под ROC-кривой.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import RocCurveDisplay
>>> from sklearn.model_selection import cross_validate
>>> from sklearn.svm import SVC
>>> X, y = make_classification(random_state=0)
>>> clf = SVC(random_state=0)
>>> cv_results = cross_validate(
...     clf, X, y, cv=3, return_estimator=True, return_indices=True)
>>> RocCurveDisplay.from_cv_results(cv_results, X, y)
<...>
>>> plt.show()
../../_images/sklearn-metrics-RocCurveDisplay-2.png
classmethodfrom_estimator(estimator, X, y, *, sample_weight=None, drop_intermediate=True, response_method='auto', pos_label=None, name=None, ax=None, curve_kwargs=None, plot_chance_level=False, chance_level_kw=None, despine=False)[исходный код]

Создание графика ROC-кривой на основе оценщика.

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

Параметры:
estimatorэкземпляр оценщика

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

X{array-like, разреженная матрица} формы (n_samples, n_features)

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

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

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

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

Веса объектов.

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

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

response_method{‘predict_proba’, ‘decision_function’, ‘auto’}, по умолчанию=’auto’

Указывает, использовать ли predict_proba или decision_function в качестве целевого отклика. Если задано значение ‘auto’, сначала используется predict_proba, а если этот метод отсутствует, используется decision_function.

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

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

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

Название ROC-кривой для подписи. Если задано None, используется название оценщика.

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

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

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

Аргументы-ключевые слова, передаваемые функции plot matplotlib.

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

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

Следует ли отображать уровень случайного угадывания.

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

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

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

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

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

Следует ли убрать верхнюю и правую рамки графика.

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

Возвращает:
displayRocCurveDisplay

Объект отображения ROC-кривой.

См. также

roc_curve

Вычисление ROC-кривой (Receiver Operating Characteristic).

RocCurveDisplay.from_predictions

Визуализация ROC-кривой по вероятностям или оценкам классификатора.

RocCurveDisplay.from_cv_results

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

roc_auc_score

Вычисление площади под ROC-кривой.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import RocCurveDisplay
>>> 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).fit(X_train, y_train)
>>> RocCurveDisplay.from_estimator(
...    clf, X_test, y_test)
<...>
>>> plt.show()
../../_images/sklearn-metrics-RocCurveDisplay-3.png
classmethodfrom_predictions(y_true, y_score=None, *, sample_weight=None, drop_intermediate=True, pos_label=None, name=None, ax=None, curve_kwargs=None, plot_chance_level=False, chance_level_kw=None, despine=False)[исходный код]

Построение ROC-кривой по истинным и предсказанным значениям.

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

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

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

Истинные метки.

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

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

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

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

Веса объектов.

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

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

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

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

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

Название ROC-кривой для подписи в легенде. Если задано None, название устанавливается в "Classifier".

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

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

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

Аргументы-ключевые слова, передаваемые функции plot matplotlib.

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

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

Следует ли отображать уровень случайного угадывания.

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

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

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

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

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

Следует ли убрать верхнюю и правую рамки графика.

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

Возвращает:
displayRocCurveDisplay

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

См. также

roc_curve

Вычисление ROC-кривой (Receiver Operating Characteristic).

RocCurveDisplay.from_estimator

Визуализация ROC-кривой по оценщику и некоторым данным.

RocCurveDisplay.from_cv_results

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

roc_auc_score

Вычисление площади под ROC-кривой.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import RocCurveDisplay
>>> 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).fit(X_train, y_train)
>>> y_score = clf.decision_function(X_test)
>>> RocCurveDisplay.from_predictions(y_test, y_score)
<...>
>>> plt.show()
../../_images/sklearn-metrics-RocCurveDisplay-4.png
plot(ax=None, *, name=None, curve_kwargs=None, plot_chance_level=False, chance_level_kw=None, despine=False)[source]

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

Параметры:
axоси matplotlib, по умолчанию=None

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

nameстрока или список строк, по умолчанию=None

Имя для подписей элементов легенды. Количество элементов легенды определяется параметром curve_kwargs, переданным в plot, и не зависит от name.

Если указана строка, она будет использоваться для подписи единственного элемента легенды или, если элементов несколько, для подписи каждой отдельной кривой одним и тем же именем.

Если указан список, он будет использоваться для отдельной подписи каждой кривой. Передача списка вызовет ошибку, если curve_kwargs не является списком, чтобы избежать подписывания отдельных кривых, имеющих одинаковый вид.

Если None, используется значение name, указанное при инициализации RocCurveDisplay. Если оно по-прежнему равно None, имя в легенде не отображается.

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

curve_kwargsсловарь или список словарей, по умолчанию=None

Аргументы-ключевые слова, передаваемые функции plot matplotlib для построения отдельных ROC-кривых. Для построения одной кривой следует указать словарь. Для построения нескольких кривых, если передан список, параметры последовательно применяются к ROC-кривым каждой складки перекрёстной проверки, и для каждой кривой добавляется элемент легенды. Если передан один словарь, одни и те же параметры применяются ко всем ROC-кривым и для них добавляется один общий элемент легенды с подписью, содержащей среднее значение ROC AUC.

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

plot_chance_levelлогическое значение, по умолчанию=False

Следует ли отображать уровень случайного угадывания.

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

chance_level_kwсловарь, по умолчанию=None

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

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

despineлогическое значение, по умолчанию=False

Следует ли убрать верхнюю и правую линии рамки графика.

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

Возвращает:
displayRocCurveDisplay

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

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

Преобразование признаков с помощью ансамблей деревьев

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

Оценка оценивателей для обнаружения выбросов

ROC-кривая с API визуализации

Настройка порога принятия решения для обучения с учётом стоимости ошибок

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

Характеристическая кривая приёмника (ROC) для нескольких классов

Характеристическая кривая приёмника (ROC) с перекрёстной проверкой

Основные нововведения scikit-learn 0.22

Основные нововведения scikit-learn 1.7

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

Spec-Zone.ru

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