MultiOutputRegressor
- classsklearn.multioutput.MultiOutputRegressor(estimator, *, n_jobs=None)[исходный код]
-
Регрессия с несколькими целевыми переменными.
Эта стратегия заключается в обучении отдельного регрессора для каждой целевой переменной. Это простой способ расширить возможности регрессоров, которые изначально не поддерживают регрессию с несколькими целевыми переменными.
Добавлено в версии 0.18.
- Параметры:
-
- estimatorобъект-оценщик
- n_jobsцелое число или None, необязательный параметр (по умолчанию=None)
-
Количество задач, выполняемых параллельно.
fit,predictиpartial_fit(если переданный оценщик поддерживает этот метод) будут выполняться параллельно для каждой целевой переменной.Если отдельные оценщики быстро обучаются или выполняют предсказания, использование
n_jobs > 1может замедлить работу из-за накладных расходов на параллельное выполнение.Noneозначает1, если только не используется контекстjoblib.parallel_backend.-1означает использование всех доступных процессов и потоков. Подробнее см. в глоссарии.Изменено в версии 0.20: значение по умолчанию
n_jobsизменено с1наNone.
- Атрибуты:
-
-
estimators_список оценщиков
n_output -
Оценщики, используемые для предсказаний.
- n_features_in_целое число
-
Количество признаков, обнаруженных во время вызова fit. Определён, только если базовый
estimatorпредоставляет такой атрибут после обучения.Добавлено в версии 0.24.
-
feature_names_in_ndarray формы (
n_features_in_,) -
Названия признаков, обнаруженных во время вызова fit. Определён, только если базовые оценщики предоставляют такой атрибут после обучения.
Добавлено в версии 1.0.
-
estimators_список оценщиков
См. также
RegressorChain-
Модель с несколькими метками, объединяющая регрессии в цепочку.
MultiOutputClassifier-
Классифицирует каждый выход независимо, не объединяя его в цепочку.
Примеры
>>> import numpy as np >>> from sklearn.datasets import load_linnerud >>> from sklearn.multioutput import MultiOutputRegressor >>> from sklearn.linear_model import Ridge >>> X, y = load_linnerud(return_X_y=True) >>> regr = MultiOutputRegressor(Ridge(random_state=123)).fit(X, y) >>> regr.predict(X[[0]]) array([[176, 35.1, 57.1]])
- fit(X, y, sample_weight=None, **fit_params)[исходный код]
-
Обучает модель на данных отдельно для каждой выходной переменной.
- Параметры:
-
- X{массивоподобный объект, разреженная матрица} формы (n_samples, n_features)
-
Входные данные.
- y{массивоподобный объект, разреженная матрица} формы (n_samples, n_outputs)
-
Целевые значения для нескольких выходов. Матрица индикаторов активирует оценивание с несколькими метками.
- sample_weightмассивоподобный объект формы (n_samples,), по умолчанию=None
-
Веса объектов выборки. Если
None, все объекты имеют одинаковый вес. Поддерживается, только если базовый регрессор поддерживает веса объектов выборки. - **fit_paramsсловарь вида строка -> объект
-
Параметры, передаваемые методу
estimator.fitкаждого шага.Добавлено в версии 0.23.
- Возвращает:
-
- selfобъект
-
Возвращает обученный экземпляр.
- get_metadata_routing()[исходный код]
-
Возвращает маршрутизацию метаданных этого объекта.
Ознакомьтесь с руководством пользователя, чтобы узнать, как работает механизм маршрутизации.
Добавлено в версии 1.3.
- Возвращает:
-
- routingMetadataRouter
-
Объект
MetadataRouter, содержащий информацию о маршрутизации.
- get_params(deep=True)[исходный код]
-
Возвращает параметры этого оценщика.
- Параметры:
-
- deepлогическое значение, по умолчанию=True
-
Если True, возвращает параметры этого оценщика и содержащихся в нём объектов, являющихся оценщиками.
- Возвращает:
-
- paramsсловарь
-
Имена параметров, сопоставленные их значениям.
- partial_fit(X, y, sample_weight=None, **partial_fit_params)[исходный код]
-
Постепенно обучает модель на данных для каждой выходной переменной.
- Параметры:
-
- X{массивоподобный объект, разреженная матрица} формы (n_samples, n_features)
-
Входные данные.
- y{массивоподобный объект, разреженная матрица} формы (n_samples, n_outputs)
-
Целевые значения для нескольких выходов.
- sample_weightмассивоподобный объект формы (n_samples,), по умолчанию=None
-
Веса объектов выборки. Если
None, все объекты имеют одинаковый вес. Поддерживается, только если базовый регрессор поддерживает веса объектов выборки. - **partial_fit_paramsсловарь вида строка -> объект
-
Параметры, передаваемые методу
estimator.partial_fitкаждого подоценщика.Доступно, только если
enable_metadata_routing=True. См. руководство пользователя.Добавлено в версии 1.3.
- Возвращает:
-
- selfобъект
-
Возвращает обученный экземпляр.
- predict(X)[исходный код]
-
Предсказывает значения нескольких выходных переменных, используя модель для каждой целевой переменной.
- Параметры:
-
- X{массивоподобный объект, разреженная матрица} формы (n_samples, n_features)
-
Входные данные.
- Возвращает:
-
- y{массивоподобный объект, разреженная матрица} формы (n_samples, n_outputs)
-
Предсказанные целевые значения для нескольких выходов на основе нескольких предикторов. Примечание: для каждого предиктора создаётся отдельная модель.
- score(X, y, sample_weight=None)[исходный код]
-
Возвращает коэффициент детерминации на тестовых данных.
Коэффициент детерминации \(R^2\) определяется как \((1 - \frac{u}{v})\), где \(u\) — сумма квадратов остатков
((y_true - y_pred)** 2).sum(), а \(v\) — общая сумма квадратов((y_true - y_true.mean()) ** 2).sum(). Наилучшее возможное значение оценки — 1.0; она также может быть отрицательной (поскольку модель может работать сколь угодно плохо). Постоянная модель, всегда предсказывающая ожидаемое значениеyбез учёта входных признаков, получит оценку \(R^2\), равную 0.0.- Параметры:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Тестовые образцы. Для некоторых оценщиков вместо этого может использоваться предварительно вычисленная матрица ядра или список объектов общего вида формы
(n_samples, n_samples_fitted), гдеn_samples_fitted— количество образцов, использованных при обучении оценщика. - yмассивоподобный объект формы (n_samples,) или (n_samples, n_outputs)
-
Истинные значения для
X. - sample_weightмассивоподобный объект формы (n_samples,), по умолчанию=None
-
Веса объектов выборки.
- Возвращает:
-
- scoreчисло с плавающей точкой
-
Значение \(R^2\) для
self.predict(X)относительноy.
Примечания
При вызове
scoreдля регрессора используется оценка \(R^2\) сmultioutput='uniform_average'начиная с версии 0.23, чтобы согласовать её со значением по умолчаниюr2_score. Это влияет на методscoreвсех регрессоров с несколькими выходами (кромеMultiOutputRegressor).
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') MultiOutputRegressor[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных методу
fit.Обратите внимание, что этот метод имеет значение только тогда, когда данный оценщик используется как подобъект-оценщик внутри метаоценщика и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Ознакомьтесь с руководством пользователя, чтобы узнать, как работает механизм маршрутизации.Для каждого параметра доступны следующие варианты:
-
True: метаданные запрашиваются и передаются вfit, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоценщик не передаёт их вfit. -
None: метаданные не запрашиваются, и метаоценщик выдаст ошибку, если пользователь их предоставит. -
str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightстрока, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвfit.
- Возвращает:
-
- selfобъект
-
Обновлённый объект.
-
- set_params(**params)[исходный код]
-
Задаёт параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (например,
Pipeline). Параметры последних имеют вид<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsсловарь
-
Параметры оценщика.
- Возвращает:
-
- selfэкземпляр оценщика
-
Экземпляр оценщика.
- set_partial_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') MultiOutputRegressor[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных методу
partial_fit.Обратите внимание, что этот метод имеет значение только тогда, когда данный оценщик используется как подобъект-оценщик внутри метаоценщика и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Ознакомьтесь с руководством пользователя, чтобы узнать, как работает механизм маршрутизации.Для каждого параметра доступны следующие варианты:
-
True: метаданные запрашиваются и передаются вpartial_fit, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоценщик не передаёт их вpartial_fit. -
None: метаданные не запрашиваются, и метаоценщик выдаст ошибку, если пользователь их предоставит. -
str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightстрока, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвpartial_fit.
- Возвращает:
-
- selfобъект
-
Обновлённый объект.
-
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') MultiOutputRegressor[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных методу
score.Обратите внимание, что этот метод имеет значение только тогда, когда данный оценщик используется как подобъект-оценщик внутри метаоценщика и маршрутизация метаданных включена с помощью
enable_metadata_routing=True(см.sklearn.set_config). Ознакомьтесь с руководством пользователя, чтобы узнать, как работает механизм маршрутизации.Для каждого параметра доступны следующие варианты:
-
True: метаданные запрашиваются и передаются вscore, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется. -
False: метаданные не запрашиваются, и метаоценщик не передаёт их вscore. -
None: метаданные не запрашиваются, и метаоценщик выдаст ошибку, если пользователь их предоставит. -
str: метаданные следует передавать метаоценщику под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightстрока, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Возвращает:
-
- selfобъект
-
Обновлённый объект.
-
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.multioutput.MultiOutputRegressor.html