PLSRegression
- classsklearn.cross_decomposition.PLSRegression(n_components=2, *, scale=True, max_iter=500, tol=1e-06, copy=True)[source]
-
Регрессия PLS.
PLSRegression также известен как PLS2 или PLS1, в зависимости от количества целевых переменных.
Для сравнения с другими алгоритмами кросс-декомпозиции см. Сравнение методов кросс-декомпозиции.
Дополнительную информацию см. в Руководстве пользователя.
Добавлен в версии 0.8.
- Параметры:
-
- n_componentsint, по умолчанию=2
-
Количество компонент для сохранения. Должно быть в
[1, n_features]. - scalebool, по умолчанию=True
-
Масштабировать
XиY. - max_iterint, по умолчанию=500
-
Максимальное число итераций метода итераций при
algorithm='nipals'. Игнорируется в противном случае. - tolfloat, по умолчанию=1e-06
-
Погрешность, используемая в качестве критерия сходимости в методе итераций: алгоритм останавливается, когда квадратная норма
u_i - u_{i-1}меньше, чемtol, гдеuсоответствует левому сингулярному вектору. - copybool, по умолчанию=True
-
Копировать
XиYв fit перед применением центрирования и потенциального масштабирования. ЕслиFalse, эти операции будут выполняться на месте, изменяя оба массива.
- Атрибуты:
-
- x_weights_массив формы (n_features, n_components)
-
Левые сингулярные векторы матриц взаимной ковариации каждой итерации.
- y_weights_массив формы (n_targets, n_components)
-
Правые сингулярные векторы матриц взаимной ковариации каждой итерации.
- x_loadings_массив формы (n_features, n_components)
-
Загрузки
X. - y_loadings_массив формы (n_targets, n_components)
-
Загрузки
Y. - x_scores_массив формы (n_samples, n_components)
-
Преобразованные тренировочные образцы.
- y_scores_массив формы (n_samples, n_components)
-
Преобразованные тренировочные целевые переменные.
- x_rotations_массив формы (n_features, n_components)
-
Матрица проекции, используемая для преобразования
X. - y_rotations_массив формы (n_targets, n_components)
-
Матрица проекции, используемая для преобразования
Y. - coef_массив формы (n_target, n_features)
-
Коэффициенты линейной модели, такие что
Yаппроксимируется какY = X @ coef_.T + intercept_. - intercept_массив формы (n_targets,)
-
Перехваты линейной модели, такие что
Yаппроксимируется какY = X @ coef_.T + intercept_.Добавлен в версии 1.1.
- n_iter_список формы (n_components,)
-
Число итераций метода итераций для каждой компоненты.
- n_features_in_int
-
Количество признаков, увиденных во время fit.
-
feature_names_in_массив формы (
n_features_in_,) -
Имена признаков, увиденные во время fit. Определены только тогда, когда
Xимеет имена признаков, которые все являются строками.Добавлен в версии 1.0.
См. также
PLSCanonical-
Преобразователь и регрессор Partial Least Squares.
Примеры
>>> from sklearn.cross_decomposition import PLSRegression >>> X = [[0., 0., 1.], [1.,0.,0.], [2.,2.,2.], [2.,5.,4.]] >>> y = [[0.1, -0.2], [0.9, 1.1], [6.2, 5.9], [11.9, 12.3]] >>> pls2 = PLSRegression(n_components=2) >>> pls2.fit(X, y) PLSRegression() >>> Y_pred = pls2.predict(X)
Для сравнения PLS-регрессии и
PCAсм. Регрессия главных компонент против регрессии с частичными наименьшими квадратами.- fit(X, y=None, Y=None)[source]
-
Обучить модель на данных.
- Параметры:
-
- Xarray-like формы (n_samples, n_features)
-
Векторы обучения, где
n_samples— количество выборок, аn_features— количество предикторов. - yarray-like формы (n_samples,) или (n_samples, n_targets)
-
Векторы целевых переменных, где
n_samples— количество выборок, аn_targets— количество переменных отклика. - Yarray-like формы (n_samples,) или (n_samples, n_targets)
-
Векторы целевых переменных, где
n_samples— количество выборок, аn_targets— количество переменных отклика.Устарело начиная с версии 1.5:
Yустарело в 1.5 и будет удалено в 1.7. Используйтеyвместо него.
- Возвращаемое значение:
-
- selfобъект
-
Обученная модель.
- fit_transform(X, y=None)[source]
-
Обучить и применить редукцию размерности к тренировочным данным.
- Параметры:
-
- Xarray-like формы (n_samples, n_features)
-
Векторы обучения, где
n_samples— количество выборок, аn_features— количество предикторов. - yarray-like формы (n_samples, n_targets), по умолчанию=None
-
Векторы целевых переменных, где
n_samples— количество выборок, аn_targets— количество переменных отклика.
- Возвращаемое значение:
-
- selfndarray формы (n_samples, n_components)
-
Возвращает
x_scoresеслиYне задано, иначе(x_scores, y_scores).
- get_feature_names_out(input_features=None)[source]
-
Получить имена выходных признаков для преобразования.
Имена выходных признаков будут иметь префикс с помощью строчной версии имени класса. Например, если преобразователь выводит 3 признака, то имена признаков будут:
["class_name0", "class_name1", "class_name2"].- Параметры:
-
- input_featuresarray-like str или None, по умолчанию=None
-
Используется только для проверки имен признаков с именами, увиденными в
fit.
- Возвращаемое значение:
-
- feature_names_outмассив строковых объектов
-
Имена преобразованных признаков.
- get_metadata_routing()[source]
-
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, обратитесь к Руководству пользователя для получения информации о том, как работает механизм маршрутизации.
- Возвращает:
-
- routingMetadataRequest
-
Объект
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оценщика.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, вернет параметры этого оценщика и вложенных подобъектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные с их значениями.
- inverse_transform(X, y=None, Y=None)[source]
-
Преобразовать данные обратно в исходное пространство.
- Параметры:
-
- Xarray-like of shape (n_samples, n_components)
-
Новые данные, где
n_samples— количество выборок, аn_components— количество компонентов PLS. - yarray-like of shape (n_samples,) or (n_samples, n_components)
-
Новые целевые значения, где
n_samples— количество выборок, аn_components— количество компонентов PLS. - Yarray-like of shape (n_samples, n_components)
-
Новые целевые значения, где
n_samples— количество выборок, аn_components— количество компонентов PLS.Устаревшее начиная с версии 1.5:
Yустарело в 1.5 и будет удалено в 1.7. Используйтеyвместо него.
- Возвращает:
-
- X_reconstructedndarray of shape (n_samples, n_features)
-
Возвращает преобразованные данные
X. - y_reconstructedndarray of shape (n_samples, n_targets)
-
Возвращает преобразованные целевые значения
X. Возвращается только при указанииy.
Примечания
Это преобразование будет точным только если
n_components=n_features.
- predict(X, copy=True)[source]
-
Предсказать целевые значения заданных выборок.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Выборки.
- copybool, по умолчанию=True
-
Копировать
XиY, или выполнить нормализацию на месте.
- Возвращает:
-
- y_predndarray of shape (n_samples,) or (n_samples, n_targets)
-
Возвращает предсказанные значения.
Примечания
Этот вызов требует оценки матрицы размера
(n_features, n_targets), что может быть проблемой в высокоразмерном пространстве.
- score(X, y, sample_weight=None)[source]
-
Возвращает коэффициент детерминации предсказания.
Коэффициент детерминации \(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.- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Тестовые выборки. Для некоторых оценщиков это может быть предварительно вычисленная матрица ядер или список универсальных объектов вместо нее с формой
(n_samples, n_samples_fitted), гдеn_samples_fitted— количество выборок, используемых при подгонке для оценщика. - yarray-like of shape (n_samples,) or (n_samples, n_outputs)
-
Истинные значения для
X. - sample_weightarray-like of shape (n_samples,), default=None
-
Веса выборок.
- Возвращает:
-
- scorefloat
-
\(R^2\) от
self.predict(X)по отношению кy.
Примечания
Балл \(R^2\), используемый при вызове
scoreна регрессоре, используетmultioutput='uniform_average'с версии 0.23 для соответствия значению по умолчаниюr2_score. Это влияет наscoreметод всех регрессоров с несколькими выходами (за исключениемMultiOutputRegressor).
- set_output(*, transform=None)[source]
-
Установить контейнер вывода.
См. Вводный API set_output для примера использования API.
- Параметры:
-
- transform{“default”, “pandas”, “polars”}, по умолчанию=None
-
Настроить вывод
transformиfit_transform.-
"default": Формат вывода по умолчанию для преобразователя -
"pandas": Вывод DataFrame -
"polars": Вывод Polars -
None: Конфигурация преобразования не изменяется
Добавлен в версии 1.4:
"polars"был добавлен как опция. -
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценщика.
- set_params(**params)[source]
-
Установите параметры этого оценщика.
Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как
Pipeline). Последние имеют параметры вида<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценщика.
- Возвращает:
-
- selfэкземпляр оценщика
-
Экземпляр оценщика.
- set_predict_request(*, copy:bool|None|str='$UNCHANGED$') PLSRegression[source]
-
Запрос метаданных, передаваемых методу
predict.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). Дополнительную информацию о механизме маршрутизации см. в Руководстве пользователя.Доступные варианты для каждого параметра:
-
True: метаданные запрашиваются и передаются методуpredict, если они предоставлены. Запрос игнорируется, если метаданные отсутствуют. -
False: метаданные не запрашиваются, и мета-оценщик не передаст их методуpredict. -
None: метаданные не запрашиваются, и мета-оценщик вызовет ошибку, если пользователь их предоставит. -
str: метаданные должны передаваться мета-оценщику с данным псевдонимом вместо оригинального названия.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для всех.Добавлен в версии 1.3.
Примечание
Этот метод актуален только если данный оценщик используется как под-оценщик мета-оценщика, например, внутри
Pipeline. В противном случае он не имеет эффекта.- Параметры:
-
- copyстрока, True, False или None, по умолчанию sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
copyвpredict.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') PLSRegression[source]
-
Запрос метаданных, передаваемых методу
score.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). Дополнительную информацию о механизме маршрутизации см. в Руководстве пользователя.Доступные варианты для каждого параметра:
-
True: метаданные запрашиваются и передаются методуscore, если они предоставлены. Запрос игнорируется, если метаданные отсутствуют. -
False: метаданные не запрашиваются, и мета-оценщик не передаст их методуscore. -
None: метаданные не запрашиваются, и мета-оценщик вызовет ошибку, если пользователь их предоставит. -
str: метаданные должны передаваться мета-оценщику с данным псевдонимом вместо оригинального названия.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для всех.Добавлен в версии 1.3.
Примечание
Этот метод актуален только если данный оценщик используется как под-оценщик мета-оценщика, например, внутри
Pipeline. В противном случае он не имеет эффекта.- Параметры:
-
- sample_weightстрока, True, False или None, по умолчанию sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightвscore.
- Возвращает:
-
- selfобъект
-
Обновленный объект.
-
- set_transform_request(*, copy:bool|None|str='$UNCHANGED$') PLSRegression[source]
-
Запрос метаданных, передаваемых методу
transform.Обратите внимание, что этот метод актуален только если
enable_metadata_routing=True(см.sklearn.set_config). См. Руководство пользователя по принципу работы механизма маршрутизации.Доступные опции для каждого параметра:
-
True: запрашиваются метаданные и передаются методуtransform, если они предоставлены. Запрос игнорируется, если метаданные не предоставлены. -
False: метаданные не запрашиваются и мета-оценщик не передаст их методуtransform. -
None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь их предоставит. -
str: метаданные должны передаваться мета-оценщику с указанным псевдонимом вместо исходного имени.
По умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняется существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для всех.Добавлен в версии 1.3.
Примечание
Этот метод актуален только в случае использования этого оценщика в качестве под-оценщика мета-оценщика, например, внутри
Pipeline. В противном случае он не оказывает никакого влияния.- Параметры:
-
- copystr, True, False, или None, по умолчанию sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
copyвtransform.
- Возвращаемое значение:
-
- selfобъект
-
Обновлённый объект.
-
- transform(X, y=None, Y=None, copy=True)[source]
-
Применение понижения размерности.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Обрабатываемые образцы.
- yarray-like of shape (n_samples, n_targets), по умолчанию None
-
Векторы целевых значений.
- Yarray-like of shape (n_samples, n_targets), по умолчанию None
-
Векторы целевых значений.
Устарело начиная с версии 1.5:
Yустарело в версии 1.5 и будет удалено в 1.7. Используйтеyвместо него. - copybool, по умолчанию True
-
Копировать
XиY, или выполнить нормализацию на месте.
- Возвращаемое значение:
-
- x_scores, y_scoresarray-like или кортеж array-like
-
Возвращается
x_scores, еслиYне задано,(x_scores, y_scores)в противном случае.
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.cross_decomposition.PLSRegression.html