ValidationCurveDisplay#
- класс sklearn.model_selection.ValidationCurveDisplay(*, param_name, param_range, train_scores, test_scores, score_name=None)[источник]#
Визуализация кривой валидации.
Рекомендуется использовать
from_estimatorдля созданияValidationCurveDisplayэкземпляра. Все параметры хранятся как атрибуты.Подробнее в Руководство пользователя для общей информации о визуализационном API и подробная документация относительно визуализации кривой валидации.
Добавлено в версии 1.3.
- Параметры:
- param_namestr
Имя параметра, который был изменен.
- param_rangearray-like формы (n_ticks,)
Значения параметра, которые были оценены.
- train_scoresndarray формы (n_ticks, n_cv_folds)
Оценки на обучающих наборах.
- test_scoresndarray формы (n_ticks, n_cv_folds)
Оценки на тестовом наборе.
- score_namestr, default=None
Название оценки, используемой в
validation_curve. Он переопределит имя, выведенное изscoringпараметр. ЕслиscoreявляетсяNone, мы используем"Score"ifnegate_scoreявляетсяFalseи"Negative score"в противном случае. Еслиscoringявляется строкой или вызываемым объектом, мы выводим имя. Мы заменяем_пробелами и пишем первую букву заглавной. Мы удаляемneg_и заменить его на"Negative"ifnegate_scoreявляетсяFalseили просто удалите его в противном случае.
- Атрибуты:
- ax_matplotlib Axes
Оси с кривой валидации.
- figure_фигура matplotlib
Рисунок, содержащий кривую валидации.
- errorbar_список объектов matplotlib Artist или None
Когда
std_display_styleявляется"errorbar", это списокmatplotlib.container.ErrorbarContainerобъектов. Если используется другой стиль,errorbar_являетсяNone.- lines_список объектов matplotlib Artist или None
Когда
std_display_styleявляется"fill_between", это списокmatplotlib.lines.Line2Dобъекты, соответствующие средним оценкам обучения и тестирования. Если используется другой стиль,line_являетсяNone.- fill_between_список объектов matplotlib Artist или None
Когда
std_display_styleявляется"fill_between", это списокmatplotlib.collections.PolyCollectionобъектов. Если используется другой стиль,fill_between_являетсяNone.
Смотрите также
sklearn.model_selection.validation_curveВычислить кривую валидации.
Примеры
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from sklearn.datasets import make_classification >>> from sklearn.model_selection import ValidationCurveDisplay, validation_curve >>> from sklearn.linear_model import LogisticRegression >>> X, y = make_classification(n_samples=1_000, random_state=0) >>> logistic_regression = LogisticRegression() >>> param_name, param_range = "C", np.logspace(-8, 3, 10) >>> train_scores, test_scores = validation_curve( ... logistic_regression, X, y, param_name=param_name, param_range=param_range ... ) >>> display = ValidationCurveDisplay( ... param_name=param_name, param_range=param_range, ... train_scores=train_scores, test_scores=test_scores, score_name="Score" ... ) >>> display.plot() <...> >>> plt.show()
- метод класса from_estimator(estimator, X, y, *, param_name, param_range, группы=None, cv=None, оценка=None, n_jobs=None, pre_dispatch='all', verbose=0, error_score=nan, fit_params=None, ax=None, отрицать_оценку=False, score_name=None, score_type='both', std_display_style='fill_between', line_kw=None, fill_between_kw=None, errorbar_kw=None)[источник]#
Создать отображение кривой валидации из оценщика.
Подробнее в Руководство пользователя для общей информации о визуализации API и подробная документация относительно визуализации кривой валидации.
- Параметры:
- estimatorтип объекта, реализующий методы "fit" и "predict"
Объект этого типа, который клонируется для каждой проверки.
- Xarray-like формы (n_samples, n_features)
Обучающие данные, где
n_samples— это количество образцов иn_featuresэто количество признаков.- yarray-like формы (n_samples,) или (n_samples, n_outputs) или None
Целевая переменная относительно X для классификации или регрессии; None для обучения без учителя.
- param_namestr
Имя параметра, который будет варьироваться.
- param_rangearray-like формы (n_values,)
Значения параметра, которые будут оценены.
- группыarray-like формы (n_samples,), по умолчанию=None
Метки групп для образцов, используемых при разделении набора данных на обучающую/тестовую выборки. Используется только в сочетании с "Group" cv экземпляр (например,
GroupKFold).- cvint, генератор кросс-валидации или итерируемый объект, по умолчанию=None
Определяет стратегию разделения для перекрестной проверки. Возможные значения для cv:
None, чтобы использовать стандартную 5-кратную перекрестную проверку,
int, чтобы указать количество фолдов в
(Stratified)KFold,Итерируемый объект, возвращающий (обучающие, тестовые) разбиения в виде массивов индексов.
Для целочисленных/None входов, если оценщик является классификатором и
yявляется либо бинарным, либо многоклассовым,StratifiedKFoldиспользуется. Во всех остальных случаяхKFoldиспользуется. Эти сплиттеры создаются сshuffle=Falseтак что разбиения будут одинаковыми при разных вызовах.Обратитесь Руководство пользователя для различных стратегий перекрестной проверки, которые можно использовать здесь.
- оценкаstr или callable, по умолчанию=None
Метод оценки для использования при вычислении валидационной кривой. Варианты:
str: см. Строковые имена скореров для опций.
callable: вызываемый объект scorer (например, функция) с сигнатурой
scorer(estimator, X, y). См. Вызываемые скореры подробности.None:estimator’s критерий оценки по умолчанию используется.
- n_jobsint, default=None
Количество заданий для параллельного выполнения. Обучение оценщика и вычисление оценки распараллеливаются по различным обучающим и тестовым наборам.
Noneозначает 1, если только не вjoblib.parallel_backendконтекст.-1означает использование всех процессоров. См. Глоссарий для получения дополнительной информации.- pre_dispatchint или str, по умолчанию='all'
Количество предварительно отправленных заданий для параллельного выполнения (по умолчанию все). Опция может уменьшить выделенную память. Строка может быть выражением типа '2*n_jobs'.
- verboseint, по умолчанию=0
Управляет подробностью вывода: чем выше, тем больше сообщений.
- error_score'raise' или числовое, по умолчанию=np.nan
Значение для присвоения оценке, если возникает ошибка при обучении оценщика. Если установлено 'raise', ошибка вызывается. Если задано числовое значение, вызывается предупреждение FitFailedWarning.
- fit_paramsdict, по умолчанию=None
Параметры для передачи методу fit оценщика.
- axmatplotlib Axes, default=None
Объект Axes для построения графика. Если
None, создаётся новая фигура и оси.- отрицать_оценкуbool, по умолчанию=False
Следует ли инвертировать оценки, полученные с помощью
validation_curve. Это особенно полезно при использовании ошибки, обозначеннойneg_*вscikit-learn.- score_namestr, default=None
Название оценки, используемой для оформления оси Y графика. Оно переопределит имя, выведенное из
scoringпараметр. ЕслиscoreявляетсяNone, мы используем"Score"ifnegate_scoreявляетсяFalseи"Negative score"в противном случае. Еслиscoringявляется строкой или вызываемым объектом, мы выводим имя. Мы заменяем_пробелами и с заглавной буквы. Мы удаляемneg_и заменить его на"Negative"ifnegate_scoreявляетсяFalseили просто удалите его в противном случае.- score_type{“test”, “train”, “both”}, по умолчанию=”both”
Тип оценки для построения графика. Может быть одним из
"test","train", или"both".- std_display_style{“errorbar”, “fill_between”} или None, по умолчанию=”fill_between”
Стиль отображения стандартного отклонения оценки вокруг средней оценки. Если
None, представление стандартного отклонения не отображается.- line_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.plotиспользуется для отрисовки среднего балла.- fill_between_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.fill_betweenиспользуется для отображения стандартного отклонения оценки.- errorbar_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.errorbarиспользуется для построения средней оценки и оценки стандартного отклонения.
- Возвращает:
- отображение
ValidationCurveDisplay Объект, который хранит вычисленные значения.
- отображение
Примеры
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from sklearn.datasets import make_classification >>> from sklearn.model_selection import ValidationCurveDisplay >>> from sklearn.linear_model import LogisticRegression >>> X, y = make_classification(n_samples=1_000, random_state=0) >>> logistic_regression = LogisticRegression() >>> param_name, param_range = "C", np.logspace(-8, 3, 10) >>> ValidationCurveDisplay.from_estimator( ... logistic_regression, X, y, param_name=param_name, ... param_range=param_range, ... ) <...> >>> plt.show()
- plot(ax=None, *, отрицать_оценку=False, score_name=None, score_type='both', std_display_style='fill_between', line_kw=None, fill_between_kw=None, errorbar_kw=None)[источник]#
Визуализация графика.
- Параметры:
- axmatplotlib Axes, default=None
Объект Axes для построения графика. Если
None, создаётся новая фигура и оси.- отрицать_оценкуbool, по умолчанию=False
Следует ли инвертировать оценки, полученные с помощью
validation_curve. Это особенно полезно при использовании ошибки, обозначеннойneg_*вscikit-learn.- score_namestr, default=None
Название оценки, используемой для оформления оси Y графика. Оно переопределит имя, выведенное из
scoringпараметр. ЕслиscoreявляетсяNone, мы используем"Score"ifnegate_scoreявляетсяFalseи"Negative score"в противном случае. Еслиscoringявляется строкой или вызываемым объектом, мы выводим имя. Мы заменяем_пробелами и с заглавной буквы. Мы удаляемneg_и заменить его на"Negative"ifnegate_scoreявляетсяFalseили просто удалите его в противном случае.- score_type{“test”, “train”, “both”}, по умолчанию=”both”
Тип оценки для построения графика. Может быть одним из
"test","train", или"both".- std_display_style{“errorbar”, “fill_between”} или None, по умолчанию=”fill_between”
Стиль, используемый для отображения стандартного отклонения оценки вокруг средней оценки. Если None, стандартное отклонение не отображается.
- line_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.plotиспользуется для отрисовки среднего балла.- fill_between_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.fill_betweenиспользуется для отображения стандартного отклонения оценки.- errorbar_kwdict, по умолчанию=None
Дополнительные ключевые аргументы, передаваемые в
plt.errorbarиспользуется для построения средней оценки и оценки стандартного отклонения.
- Возвращает:
- отображение
ValidationCurveDisplay Объект, который хранит вычисленные значения.
- отображение
Примеры галереи#
Влияние регуляризации модели на ошибку обучения и тестирования