Spec-Zone.ru › scikit-learn

SparsePCA

классsklearn.decomposition.SparsePCA(n_components=None, *, alpha=1, ridge_alpha=0.01, max_iter=1000, tol=1e-08, method='lars', n_jobs=None, U_init=None, V_init=None, verbose=False, random_state=None)[source]

Разложение главных компонент с разреженностью (SparsePCA).

Находит набор разреженных компонент, которые оптимально восстанавливают данные. Степень разреженности контролируется коэффициентом L1-штрафа, задаваемого параметром alpha.

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

Параметры:
n_componentsint, по умолчанию=None

Количество разреженных атомов для извлечения. Если None, то n_components устанавливается в n_features.

alphafloat, по умолчанию=1

Параметр, контролирующий разреженность. Более высокие значения приводят к более разреженным компонентам.

ridge_alphafloat, по умолчанию=0.01

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

max_iterint, по умолчанию=1000

Максимальное количество итераций.

tolfloat, по умолчанию=1e-8

Погрешность для условия остановки.

method{‘lars’, ‘cd’}, по умолчанию=’lars’

Метод, используемый для оптимизации. lars: использует метод наименьших углов для решения задачи лассо (linear_model.lars_path) cd: использует метод координатного спуска для вычисления решения лассо (linear_model.Lasso). Lars будет быстрее, если оцениваемые компоненты разреженные.

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

Количество параллельных задач. None означает 1, если не в контексте joblib.parallel_backend. -1 означает использование всех процессоров. См. Словарь для получения дополнительной информации.

U_initndarray of shape (n_samples, n_components), по умолчанию=None

Начальные значения нагрузок для сценариев теплого запуска. Используется только если U_init и V_init не равны None.

V_initndarray of shape (n_components, n_features), по умолчанию=None

Начальные значения компонент для сценариев теплого запуска. Используется только если U_init и V_init не равны None.

verboseint или bool, по умолчанию=False

Управляет подробностью вывода сообщений; чем выше значение, тем больше сообщений. По умолчанию 0.

random_stateint, RandomState instance или None, по умолчанию=None

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

Атрибуты:
components_ndarray of shape (n_components, n_features)

Извлеченные разреженные компоненты из данных.

error_ndarray

Вектор ошибок на каждой итерации.

n_components_int

Оцененное количество компонент.

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

n_iter_int

Количество выполненных итераций.

mean_ndarray of shape (n_features,)

Эмпирическое среднее значение по каждой характеристике, оцененное из обучающего набора. Равно X.mean(axis=0).

n_features_in_int

Количество признаков, увиденных во время fit.

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

feature_names_in_ndarray of shape (n_features_in_,)

Имена признаков, увиденные во время fit. Определяются только когда X имеет имена признаков, которые все являются строками.

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

См. также

PCA

Реализация анализа главных компонент.

MiniBatchSparsePCA

Вариант мини-пакета SparsePCA, который быстрее, но менее точен.

DictionaryLearning

Общая задача обучения словарю с использованием разреженного кода.

Примеры

>>> import numpy as np
>>> from sklearn.datasets import make_friedman1
>>> from sklearn.decomposition import SparsePCA
>>> X, _ = make_friedman1(n_samples=200, n_features=30, random_state=0)
>>> transformer = SparsePCA(n_components=5, random_state=0)
>>> transformer.fit(X)
SparsePCA(...)
>>> X_transformed = transformer.transform(X)
>>> X_transformed.shape
(200, 5)
>>> # most values in the components_ are zero (sparsity)
>>> np.mean(transformer.components_ == 0)
np.float64(0.9666...)
fit(X, y=None)[source]

Обучить модель на данных X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Вектор обучающих данных, где n_samples — количество выборок, а n_features — количество признаков.

yИгнорируется

Не используется, присутствует здесь для соответствия API по соглашению.

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

Возвращает экземпляр самого себя.

fit_transform(X, y=None, **fit_params)[source]

Обучение на данных, затем преобразование.

Обучает преобразователь на X и y с необязательными параметрами fit_params и возвращает преобразованный вариант X.

Параметры:
Xarray-like of shape (n_samples, n_features)

Входные образцы.

yarray-like of shape (n_samples,) or (n_samples, n_outputs), по умолчанию=None

Значения целевой переменной (None для безконтрольных преобразований).

**fit_paramsdict

Дополнительные параметры обучения.

Возвращает:
X_newndarray array of shape (n_samples, n_features_new)

Преобразованный массив.

get_feature_names_out(input_features=None)[source]

Получение имен выходных признаков для преобразования.

Имена выходных признаков будут иметь префикс с именем класса в нижнем регистре. Например, если преобразователь выводит 3 признака, то имена выходных признаков: ["class_name0", "class_name1", "class_name2"].

Параметры:
input_featuresarray-like of str or None, по умолчанию=None

Используется только для проверки имен признаков с именами, увиденными в fit.

Возвращает:
feature_names_outndarray of str objects

Имена преобразованных признаков.

get_metadata_routing()[source]

Получить маршрутизацию метаданных этого объекта.

Обратитесь к Руководству пользователя, чтобы узнать, как работает механизм маршрутизации.

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

MetadataRequest , содержащий информацию о маршрутизации.

get_params(deep=True)[source]

Получить параметры этого оценщика.

Параметры:
deepbool, по умолчанию=True

Если True, вернёт параметры этого оценщика и вложенных подобъектов, являющихся оценщиками.

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

Названия параметров, сопоставленные со значениями.

inverse_transform(X)[source]

Преобразование данных из латентного пространства в исходное пространство.

Это обращение является приближением из-за потери информации, вызванной прямым разложением.

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

Параметры:
Xndarray формы (n_samples, n_components)

Данные в латентном пространстве.

Возвращает:
X_originalndarray формы (n_samples, n_features)

Восстановленные данные в исходном пространстве.

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" параметр был добавлен.

Возвращает:
selfэкземпляр оценщика

Экземпляр оценщика.

set_params(**params)[source]

Установить параметры этого оценщика.

Метод работает с простыми оценщиками и вложенными объектами (такими как Pipeline). Последние имеют параметры вида <component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.

Параметры:
**paramsdict

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

Возвращает:
selfэкземпляр оценщика

Экземпляр оценщика.

transform(X)[source]

Проекция данных на разреженные компоненты методом наименьших квадратов.

Для избежания проблем с устойчивостью в случае недоопределённой системы можно применить регуляризацию (линейная регрессия с регуляризацией Тихонова) через параметр ridge_alpha.

Обратите внимание, что ортогональность компонентов Sparse PCA не навязывается, как в PCA, поэтому нельзя использовать простое линейное проектирование.

Параметры:
Xndarray формы (n_samples, n_features)

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

Возвращает:
X_newndarray формы (n_samples, n_components)

Преобразованные данные.

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

Разложения набора данных лиц

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.decomposition.SparsePCA.html

Spec-Zone.ru

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