Spec-Zone.ru › scikit-learn

LearningCurveDisplay

classsklearn.model_selection.LearningCurveDisplay(*, train_sizes, train_scores, test_scores, score_name=None)[исходный код]

Визуализация кривой обучения.

Для создания экземпляра from_estimator рекомендуется использовать LearningCurveDisplay. Все параметры сохраняются в виде атрибутов.

Общую информацию об API визуализации см. в руководстве пользователя, а подробную документацию по визуализации кривой обучения — в соответствующем разделе.

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

Параметры:
train_sizesndarray формы (n_unique_ticks,)

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

train_scoresndarray формы (n_ticks, n_cv_folds)

Оценки на обучающих выборках.

test_scoresndarray формы (n_ticks, n_cv_folds)

Оценки на тестовой выборке.

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

Название оценки, используемое в learning_curve. Оно заменяет название, определяемое по параметру scoring. Если score равен None, используется "Score", если negate_score равен False, и "Negative score" в противном случае. Если scoring — строка или вызываемый объект, название определяется автоматически. _ заменяется пробелами, а первая буква становится заглавной. neg_ удаляется и заменяется на "Negative", если negate_score равен False, либо просто удаляется в противном случае.

Атрибуты:
ax_matplotlib Axes

Область построения с кривой обучения.

figure_matplotlib Figure

Фигура с кривой обучения.

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.learning_curve

Вычислить кривую обучения.

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import load_iris
>>> from sklearn.model_selection import LearningCurveDisplay, learning_curve
>>> from sklearn.tree import DecisionTreeClassifier
>>> X, y = load_iris(return_X_y=True)
>>> tree = DecisionTreeClassifier(random_state=0)
>>> train_sizes, train_scores, test_scores = learning_curve(
...     tree, X, y)
>>> display = LearningCurveDisplay(train_sizes=train_sizes,
...     train_scores=train_scores, test_scores=test_scores, score_name="Score")
>>> display.plot()
<...>
>>> plt.show()
../../_images/sklearn-model_selection-LearningCurveDisplay-1.png
classmethodfrom_estimator(estimator, X, y, *, groups=None, train_sizes=array([0.1, 0.33, 0.55, 0.78, 1.]), cv=None, scoring=None, exploit_incremental_learning=False, n_jobs=None, pre_dispatch='all', verbose=0, shuffle=False, random_state=None, error_score=nan, fit_params=None, ax=None, negate_score=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 для обучения без учителя.

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

Метки групп для образцов, используемые при разделении набора данных на обучающую и тестовую выборки. Используется только вместе с экземпляром «Group» cv (например, GroupKFold).

train_sizesarray-like формы (n_ticks,), по умолчанию=np.linspace(0.1, 1.0, 5)

Относительное или абсолютное количество обучающих примеров, используемых для построения кривой обучения. Если dtype — float, значение рассматривается как доля от максимального размера обучающей выборки (определяемого выбранным методом проверки), то есть должно находиться в диапазоне (0, 1]. В противном случае оно интерпретируется как абсолютный размер обучающих выборок. Обратите внимание, что для классификации число образцов обычно должно быть достаточно большим, чтобы содержать хотя бы один образец каждого класса.

cvint, генератор перекрёстной проверки или итерируемый объект, по умолчанию=None

Определяет стратегию разделения данных для перекрёстной проверки. Для cv допустимы следующие значения:

  • None — использовать перекрёстную проверку по умолчанию с 5 блоками,
  • int — задать количество блоков в (Stratified)KFold,
  • разделитель для перекрёстной проверки,
  • итерируемый объект, возвращающий разделения (train, test) в виде массивов индексов.

Для значений int/None, если оценщик является классификатором, а y — бинарная или многоклассовая, используется StratifiedKFold. Во всех остальных случаях используется KFold. Эти разделители создаются с параметром shuffle=False, поэтому разделения будут одинаковыми при разных вызовах.

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

scoringstr или вызываемый объект, по умолчанию=None

Метод оценки, используемый при вычислении кривой обучения. Возможные варианты:

  • str: варианты см. в разделе оценщики с именами-строками.
  • вызываемый объект: вызываемый объект-оценщик (например, функция) с сигнатурой scorer(estimator, X, y). Подробнее см. в разделе вызываемые оценщики.
  • None: используется estimator критерий оценки по умолчанию.
exploit_incremental_learningbool, по умолчанию=False

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

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

Количество заданий, выполняемых параллельно. Обучение оценщика и вычисление оценки распараллеливаются по различным обучающим и тестовым выборкам. None означает 1, если только выполнение не происходит в контексте joblib.parallel_backend. -1 означает использование всех процессоров. Подробнее см. в глоссарии.

pre_dispatchint или str, по умолчанию=’all’

Количество заданий, заранее отправляемых на параллельное выполнение (по умолчанию — все). Этот параметр может уменьшить объём выделяемой памяти. Значение str может быть выражением, например ‘2*n_jobs’.

verboseint, по умолчанию=0

Управляет подробностью вывода: чем выше значение, тем больше сообщений.

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

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

random_stateint, экземпляр RandomState или None, по умолчанию=None

Используется, если shuffle имеет значение True. Передайте int, чтобы получать воспроизводимый результат при нескольких вызовах функции. См. глоссарий.

error_score‘raise’ или числовое значение, по умолчанию=np.nan

Значение, присваиваемое оценке, если при обучении оценщика возникает ошибка. Если задано ‘raise’, ошибка вызывается повторно. Если задано числовое значение, вызывается предупреждение FitFailedWarning.

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

Параметры, передаваемые методу fit оценщика.

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

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

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

Инвертировать ли оценки, полученные с помощью learning_curve. Это особенно полезно при использовании ошибки, обозначенной neg_* в scikit-learn.

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

Название оценки, используемое для подписи оси y графика. Оно заменяет название, определяемое по параметру scoring. Если score равен None, используется "Score", если negate_score равен False, и "Negative score" в противном случае. Если scoring — строка или вызываемый объект, название определяется автоматически. _ заменяется пробелами, а первая буква становится заглавной. neg_ удаляется и заменяется на "Negative", если negate_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, который используется для отображения средней оценки и её стандартного отклонения.

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

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

Примеры

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import load_iris
>>> from sklearn.model_selection import LearningCurveDisplay
>>> from sklearn.tree import DecisionTreeClassifier
>>> X, y = load_iris(return_X_y=True)
>>> tree = DecisionTreeClassifier(random_state=0)
>>> LearningCurveDisplay.from_estimator(tree, X, y)
<...>
>>> plt.show()
../../_images/sklearn-model_selection-LearningCurveDisplay-2.png
plot(ax=None, *, negate_score=False, score_name=None, score_type='both', std_display_style='fill_between', line_kw=None, fill_between_kw=None, errorbar_kw=None)[исходный код]

Построить визуализацию.

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

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

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

Инвертировать ли оценки, полученные с помощью learning_curve. Это особенно полезно при использовании ошибки, обозначенной neg_* в scikit-learn.

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

Название оценки, используемое для подписи оси y графика. Оно заменяет название, определяемое по параметру scoring. Если score равен None, используется "Score", если negate_score равен False, и "Negative score" в противном случае. Если scoring — строка или вызываемый объект, название определяется автоматически. _ заменяется пробелами, а первая буква становится заглавной. neg_ удаляется и заменяется на "Negative", если negate_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, который используется для отображения средней оценки и её стандартного отклонения.

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

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

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

Сравнение ядерной гребневой регрессии и SVR

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

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

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

Spec-Zone.ru

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