Spec-Zone.ru › scikit-learn

MultiOutputRegressor

classsklearn.multioutput.MultiOutputRegressor(estimator, *, n_jobs=None)[исходный код]

Регрессия с несколькими целевыми переменными.

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

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

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

Объект-оценщик, реализующий методы fit и predict.

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.

См. также

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

Spec-Zone.ru

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