Spec-Zone.ru › scikit-learn

SpectralEmbedding

classsklearn.manifold.SpectralEmbedding(n_components=2, *, affinity='nearest_neighbors', gamma=None, random_state=None, eigen_solver=None, eigen_tol='auto', n_neighbors=None, n_jobs=None)[source]

Спектральное вложение для нелинейного уменьшения размерности.

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

Примечание: Laplacian Eigenmaps — это фактический алгоритм, реализованный здесь.

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

Параметры:
n_componentsint, default=2

Размерность проектируемого подпространства.

affinity{‘nearest_neighbors’, ‘rbf’, ‘precomputed’, ‘precomputed_nearest_neighbors’} or callable, default=’nearest_neighbors’
Как построить матрицу сродства.
  • ‘nearest_neighbors’ : построить матрицу сродства, вычисляя граф ближайших соседей.
  • ‘rbf’ : построить матрицу сродства, вычисляя ядро радиальной базисной функции (RBF).
  • ‘precomputed’ : интерпретировать X как предварительно вычисленную матрицу сродства.
  • ‘precomputed_nearest_neighbors’ : интерпретировать X как разреженный граф предварительно вычисленных ближайших соседей и построить матрицу сродства, выбирая n_neighbors ближайших соседей.
  • callable : использовать переданную функцию в качестве функции сродства, которая принимает матрицу данных (n_samples, n_features) и возвращает матрицу сродства (n_samples, n_samples).
gammafloat, default=None

Коэффициент ядра для ядра rbf. Если None, gamma будет установлено равным 1/n_features.

random_stateint, RandomState instance or None, default=None

Генератор псевдослучайных чисел, используемый для инициализации разложения собственных векторов lobpcg, когда eigen_solver == 'amg', и для инициализации K-Means. Используйте целое число, чтобы сделать результаты детерминированными при вызовах (см. Glossary).

Примечание

При использовании eigen_solver == 'amg', необходимо также зафиксировать глобальное seed numpy с помощью np.random.seed(int) для получения детерминированных результатов. См. pyamg/pyamg#139 для получения дополнительной информации.

eigen_solver{‘arpack’, ‘lobpcg’, ‘amg’}, default=None

Стратегия разложения собственных значений для использования. AMG требует установки pyamg. Он может быть быстрее на очень больших, разреженных задачах. Если None, то используется 'arpack'.

eigen_tolfloat, default=”auto”

Критерий остановки для разложения собственных значений лапласианской матрицы. Если eigen_tol="auto" то переданная толерантность будет зависеть от eigen_solver:

  • Если eigen_solver="arpack", то eigen_tol=0.0;
  • Если eigen_solver="lobpcg" или eigen_solver="amg", то eigen_tol=None который настраивает основной решатель lobpcg для автоматического определения значения в соответствии с их эвристикой. См. scipy.sparse.linalg.lobpcg для деталей.

Обратите внимание, что при использовании eigen_solver="lobpcg" или eigen_solver="amg" значения tol<1e-5 могут привести к проблемам сходимости и должны быть избеганы.

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

n_neighborsint, default=None

Количество ближайших соседей для построения графа ближайших соседей. Если None, n_neighbors будет установлено равным max(n_samples/10, 1).

n_jobsint, default=None

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

Атрибуты:
embedding_ndarray of shape (n_samples, n_components)

Спектральное вложение обучающей матрицы.

affinity_matrix_ndarray of shape (n_samples, n_samples)

Матрица сродства, построенная из образцов или предварительно вычисленная.

n_features_in_int

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

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

feature_names_in_ndarray of shape (n_features_in_,)

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

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

n_neighbors_int

Количество эффективно используемых ближайших соседей.

См. также

Isomap

Нелинейное уменьшение размерности с помощью изометрического отображения.

Ссылки

  • A Tutorial on Spectral Clustering, 2007 Ulrike von Luxburg
  • On Spectral Clustering: Analysis and an algorithm, 2001 Andrew Y. Ng, Michael I. Jordan, Yair Weiss
  • Normalized cuts and image segmentation, 2000 Jianbo Shi, Jitendra Malik

Примеры

>>> from sklearn.datasets import load_digits
>>> from sklearn.manifold import SpectralEmbedding
>>> X, _ = load_digits(return_X_y=True)
>>> X.shape
(1797, 64)
>>> embedding = SpectralEmbedding(n_components=2)
>>> X_transformed = embedding.fit_transform(X[:100])
>>> X_transformed.shape
(100, 2)
fit(X, y=None)[source]

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

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

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

Если affinity равно «precomputed» X : {array-like, sparse matrix}, shape (n_samples, n_samples), интерпретировать X как предварительно вычисленный граф смежности, вычисленный из образцов.

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

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

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

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

fit_transform(X, y=None)[source]

Обучить модель по данным в X и преобразовать X.

Параметры:
X{array-like, sparse matrix} of shape (n_samples, n_features)

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

Если affinity равно «precomputed» X : {array-like, sparse matrix} of shape (n_samples, n_samples), интерпретировать X как предварительно вычисленный граф смежности, вычисленный из образцов.

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

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

Возвращает:
X_newarray-like of shape (n_samples, n_components)

Спектральное вложение обучающей матрицы.

get_metadata_routing()[source]

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

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

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

A MetadataRequest encapsulating routing information.

get_params(deep=True)[source]

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

Параметры:
deepbool, default=True

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

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

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

set_params(**params)[source]

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

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

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

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

Возвращает:
selfestimator instance

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

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

Различные методы агломеративной кластеризации на 2D-вложении цифр

Сравнение методов многомерного обучения

Методы многомерного обучения на усечённой сфере

Многомерное обучение на рукописных цифрах: локально линейное вложение, Isomap…

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

Spec-Zone.ru

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