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')[source]
-
Генерация перекрёстно-валидированных оценок для каждой точки входных данных.
Данные разбиваются в соответствии с параметром
cv. Каждый образец принадлежит ровно одному набору для тестирования, и его предсказание вычисляется с помощью оценщика, обученного на соответствующем наборе для обучения.Передача этих прогнозов в метрику оценки может не быть корректным способом измерения обобщающей производительности. Результаты могут отличаться от
cross_validateиcross_val_score, если все наборы для тестирования не имеют одинакового размера, и метрика не разлагается по образцам.Подробнее см. в Руководстве пользователя.
- Parameters:
-
- estimatorestimator
-
Экземпляр оценщика, используемый для обучения данных. Он должен реализовывать метод
fitи метод, заданный параметромmethod. - X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Данные для обучения. Может быть, например, списком или массивом, по крайней мере 2d.
- y{array-like, sparse matrix} of shape (n_samples,) or (n_samples, n_outputs), default=None
-
Переменная целевого результата, которую необходимо предсказать в случае задач контролируемого обучения.
- groupsarray-like of shape (n_samples,), default=None
-
Метки групп для образцов, используемые при разделении набора данных на обучающий и тестовый наборы. Используется только вместе с экземпляром “Group” cv (например,
GroupKFold).Изменено в версии 1.4:
groupsможет быть передан только в том случае, если маршрутизация метаданных не включена с помощьюsklearn.set_config(enable_metadata_routing=True). При включённой маршрутизации передайтеgroupsвместе с другими метаданными через аргументparams. Например:cross_val_predict(..., params={'groups': groups}). - cvint, cross-validation generator or an iterable, default=None
-
Определяет стратегию разбиения перекрестной проверки. Возможные входные данные для
cv:None, для использования стандартной 5-кратной перекрестной проверки,int, для указания числа фолдов в(Stratified)KFold,- Разделитель CV,
- Итерируемый объект, генерирующий разбиения (обучение, тестирование) в виде массивов индексов.
Для целочисленных/None входных данных, если оценщик является классификатором и
yявляется двоичным или многоклассовым, используетсяStratifiedKFold. Во всех остальных случаях используетсяKFold. Эти разделители создаются сshuffle=False, поэтому разбиения будут одинаковыми при вызовах.См. Руководство пользователя для различных стратегий перекрестной проверки, которые могут быть здесь использованы.
Изменено в версии 0.22:
cvзначение по умолчанию, если None, изменилось с 3-кратного на 5-кратное. - n_jobsint, default=None
-
Количество задач, выполняемых параллельно. Обучение оценщика и предсказание выполняются параллельно по разбиениям перекрестной проверки.
Noneозначает 1, за исключением контекстаjoblib.parallel_backend.-1означает использование всех процессоров. См. Глоссарий для получения дополнительной информации. - verboseint, default=0
-
Уровень подробности.
- paramsdict, default=None
-
Параметры, передаваемые методу
fitбазового оценщика и разделителю CV.Добавлен в версии 1.4.
- pre_dispatchint or str, default=’2*n_jobs’
-
Управляет количеством задач, которые передаются во время параллельного выполнения. Уменьшение этого числа может быть полезно для предотвращения взрыва потребления памяти, когда передаётся больше задач, чем процессоры могут обработать. Этот параметр может быть:
None, в этом случае все задачи создаются и запускаются сразу. Используйте это для лёгких и быстро выполняющихся задач, чтобы избежать задержек из-за запроса создания задач по требованию.- Целое число, задающее точное количество созданных задач.
- Строка, задающая выражение как функцию от
n_jobs, как в ‘2*n_jobs’.
- method{‘predict’, ‘predict_proba’, ‘predict_log_proba’, ‘decision_function’}, default=’predict’
-
Метод, который должен вызываться
estimator.
- Returns:
-
- 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. Для обеспечения конечного результата мы приближаем отрицательную бесконечность к минимальному конечному плавающему значению для типа данных в других случаях.Примеры
>>> 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)
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.model_selection.cross_val_predict.html