Spec-Zone.ru › scikit-learn

cross_val_predict

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

Создает оценки с перекрестной проверкой для каждой входной точки данных.

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

Передача этих прогнозов в метрику оценки может быть некорректным способом измерения обобщающей способности. Результаты могут отличаться от cross_validate и cross_val_score, если только все тестовые выборки не имеют одинаковый размер, а метрика не раскладывается по образцам.

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

Параметры:
estimatorоценщик

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

X{массивоподобный объект, разреженная матрица} формы (n_samples, n_features)

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

y{массивоподобный объект, разреженная матрица} формы (n_samples,) или (n_samples, n_outputs), по умолчанию=None

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

groupsмассивоподобный объект формы (n_samples,), по умолчанию=None

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

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

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

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

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

Если указано целое число или None, а оценщик является классификатором и y имеет значение binary или multiclass, используется StratifiedKFold. Во всех остальных случаях используется KFold. Эти разби́ватели создаются с параметром shuffle=False, поэтому при каждом вызове разбиения будут одинаковыми.

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

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

n_jobsцелое число, по умолчанию=None

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

verboseцелое число, по умолчанию=0

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

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

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

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

pre_dispatchцелое число или строка, по умолчанию=’2*n_jobs’

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

  • None — все задачи сразу создаются и запускаются. Используйте это значение для легковесных и быстро выполняемых задач, чтобы избежать задержек из-за запуска задач по мере необходимости
  • целое число, задающее точное общее количество запускаемых задач
  • строка, задающая выражение через n_jobs, например ‘2*n_jobs’
method{‘predict’, ‘predict_proba’, ‘predict_log_proba’, ‘decision_function’}, по умолчанию=’predict’

Метод, вызываемый посредством estimator.

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

Результат вызова method. Форма:

  • Когда method имеет значение ‘predict’, а также в частном случае, когда method имеет значение ‘decision_function’ и целевая переменная бинарная: (n_samples,)
  • Когда method имеет одно из значений {‘predict_proba’, ‘predict_log_proba’, ‘decision_function’} (кроме указанного выше частного случая): (n_samples, n_classes)
  • Если estimator является многовыходной, к концу каждой из указанных выше форм добавляется дополнительное измерение ‘n_outputs’.

См. также

cross_val_score

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

cross_validate

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

Примечания

Если в обучающей части отсутствует один или несколько классов, всем экземплярам каждого такого класса необходимо присвоить оценку по умолчанию, если method возвращает столбцы для каждого класса, как в случаях {‘decision_function’, ‘predict_proba’, ‘predict_log_proba’}. Для predict_proba это значение равно 0. Чтобы гарантировать конечность результата, в остальных случаях мы приближаем отрицательную бесконечность минимальным конечным значением типа float для соответствующего типа данных.

Примеры

>>> from sklearn import datasets, linear_model
>>> from sklearn.model_selection import cross_val_predict
>>> diabetes = datasets.load_diabetes()
>>> X = diabetes.data[:150]
>>> y = diabetes.target[:150]
>>> lasso = linear_model.Lasso()
>>> y_pred = cross_val_predict(lasso, X, y, cv=3)

Подробный пример использования cross_val_predict для визуализации ошибок прогнозирования см. в разделе Построение графиков прогнозов с перекрестной проверкой.

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

Объединение предикторов с помощью стекинга

Построение графиков прогнозов с перекрестной проверкой

© 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_predict.html

Spec-Zone.ru

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