Spec-Zone.ru › scikit-learn

cross_val_score

sklearn.model_selection.cross_val_score(estimator, X, y=None, *, groups=None, scoring=None, cv=None, n_jobs=None, verbose=0, params=None, pre_dispatch='2*n_jobs', error_score=nan)[исходный код]

Оценка показателя с помощью перекрёстной проверки.

Подробнее см. в руководстве пользователя.

Параметры:
estimatorобъект оценивателя, реализующий метод ‘fit’

Объект, используемый для обучения на данных.

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

Данные для обучения. Например, это может быть список или массив.

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

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

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

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

Изменено в версии 1.4: groups можно передавать только в том случае, если маршрутизация метаданных не включена с помощью sklearn.set_config(enable_metadata_routing=True). Если маршрутизация включена, передавайте groups вместе с другими метаданными через аргумент params. Например: cross_val_score(..., params={'groups': groups}).

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

Стратегия оценки производительности estimator при разбиениях перекрёстной проверки.

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

Аналогично использованию scoring в cross_validate, но допускается только одна метрика.

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

Определяет стратегию разбиения для перекрёстной проверки. Возможные значения cv:

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

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

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

Изменено в версии 0.22: значение по умолчанию cv для None изменено с 3 блоков на 5.

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

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

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

Уровень подробности вывода.

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

Параметры, передаваемые методу fit базового оценивателя, оценщику и разделителю CV.

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

pre_dispatchint или str, по умолчанию=’2*n_jobs’

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

  • None — в этом случае все задания создаются и запускаются немедленно. Используйте это значение для лёгких и быстро выполняющихся заданий, чтобы избежать задержек из-за запуска заданий по требованию;
  • int, задающий точное общее количество запускаемых заданий;
  • str, задающий выражение в зависимости от n_jobs, например ‘2*n_jobs’.
error_score‘raise’ или числовое значение, по умолчанию=np.nan

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

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

Возвращает:
scoresndarray типа float формы=(len(list(cv)),)

Массив показателей оценивателя для каждого запуска перекрёстной проверки.

См. также

cross_validate

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

cross_val_predict

Получение предсказаний для каждого разбиения перекрёстной проверки в диагностических целях.

sklearn.metrics.make_scorer

Создание оценщика на основе метрики производительности или функции потерь.

Примеры

>>> from sklearn import datasets, linear_model
>>> from sklearn.model_selection import cross_val_score
>>> diabetes = datasets.load_diabetes()
>>> X = diabetes.data[:150]
>>> y = diabetes.target[:150]
>>> lasso = linear_model.Lasso()
>>> print(cross_val_score(lasso, X, y, cv=3))
[0.3315057  0.08022103 0.03531816]

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

Лаговые признаки для прогнозирования временных рядов

Выбор модели с помощью вероятностного PCA и факторного анализа (FA)

Заполнение пропущенных значений вариантами IterativeImputer

Заполнение пропущенных значений перед построением оценивателя

Визуализация предсказаний с перекрёстной проверкой

Вложенная и невложенная перекрёстная проверка

Недообучение и переобучение

Основные изменения в scikit-learn 1.3

SVM-Anova: SVM с одномерным отбором признаков

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

Spec-Zone.ru

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