Изомап
- классsklearn.manifold.Isomap(*, n_neighbors=5, radius=None, n_components=2, eigen_solver='auto', tol=0, max_iter=None, path_method='auto', neighbors_algorithm='auto', n_jobs=None, metric='minkowski', p=2, metric_params=None)[source]
-
Вложение Isomap.
Нелинейное уменьшение размерности с помощью изометрического отображения
Подробнее см. в Руководстве пользователя.
- Параметры:
-
- n_neighborsint или None, по умолчанию=5
-
Количество соседей для рассмотрения для каждой точки. Если
n_neighbors— целое число, тоradiusдолжно бытьNone. - radiusfloat или None, по умолчанию=None
-
Предельное расстояние соседей для возврата. Если
radius— число с плавающей точкой, тоn_neighborsдолжно быть установлено наNone.Добавлен в версии 1.1.
- n_componentsint, по умолчанию=2
-
Количество координат для многообразия.
- eigen_solver{‘auto’, ‘arpack’, ‘dense’}, по умолчанию=’auto’
-
‘auto’ : Попытка выбрать наиболее эффективный решатель для данной задачи.
‘arpack’ : Использование разложения Арнольди для нахождения собственных значений и векторов.
‘dense’ : Использование прямого решателя (т.е. LAPACK) для разложения по собственным значениям.
- tolfloat, по умолчанию=0
-
Допуск сходимости, передаваемый в arpack или lobpcg. Не используется, если eigen_solver == ‘dense’.
- max_iterint, по умолчанию=None
-
Максимальное количество итераций для решателя arpack. Не используется, если eigen_solver == ‘dense’.
- path_method{‘auto’, ‘FW’, ‘D’}, по умолчанию=’auto’
-
Метод, используемый для поиска кратчайшего пути.
‘auto’ : попытка автоматически выбрать лучший алгоритм.
‘FW’ : алгоритм Флойда-Уоршелла.
‘D’ : алгоритм Дейкстры.
- neighbors_algorithm{‘auto’, ‘brute’, ‘kd_tree’, ‘ball_tree’}, по умолчанию=’auto’
-
Алгоритм для поиска ближайших соседей, передаваемый экземпляру neighbors.NearestNeighbors.
- n_jobsint или None, по умолчанию=None
-
Количество параллельных задач.
Noneозначает 1, за исключением контекстаjoblib.parallel_backend.-1означает использование всех процессоров. Смотрите Справочник для получения дополнительных сведений. - metricstr или callable, по умолчанию=”minkowski”
-
Метрика, используемая для расчета расстояния между экземплярами в массиве признаков. Если метрика — строка или вызываемый объект, она должна быть одним из вариантов, разрешенных
sklearn.metrics.pairwise_distancesдля параметра метрики. Если метрика равна “precomputed”, X предполагается матрицей расстояний и должна быть квадратной. X может быть Справочник.Добавлен в версии 0.22.
- pfloat, по умолчанию=2
-
Параметр метрики Минковского из sklearn.metrics.pairwise.pairwise_distances. При p = 1 это эквивалентно использованию manhattan_distance (l1), а euclidean_distance (l2) — для p = 2. Для произвольного p используется minkowski_distance (l_p).
Добавлен в версии 0.22.
- metric_paramsdict, по умолчанию=None
-
Дополнительные ключевые параметры для функции метрики.
Добавлен в версии 0.22.
- Атрибуты:
-
- embedding_array-like, форма (n_samples, n_components)
-
Хранит векторы вложения.
- kernel_pca_объект
-
KernelPCAобъект, используемый для реализации вложения. - nbrs_экземпляр sklearn.neighbors.NearestNeighbors
-
Хранит экземпляр ближайших соседей, включая BallTree или KDtree, если применимо.
- dist_matrix_array-like, форма (n_samples, n_samples)
-
Хранит матрицу геодезических расстояний обучающих данных.
- n_features_in_int
-
Количество признаков, увиденных во время fit.
Добавлен в версии 0.24.
-
feature_names_in_массив формы (
n_features_in_,) -
Названия признаков, увиденные во время fit. Определены только тогда, когда у
Xесть имена признаков, все из которых являются строками.Добавлен в версии 1.0.
См. также
sklearn.decomposition.PCA-
Анализ главных компонент, который является линейным методом уменьшения размерности.
sklearn.decomposition.KernelPCA-
Нелинейное уменьшение размерности с помощью ядер и PCA.
MDS-
Обучение многообразию с использованием многомерного шкалирования.
TSNE-
Вложение стохастических соседей с распределением Т.
LocallyLinearEmbedding-
Обучение многообразию с использованием локального линейного вложения.
SpectralEmbedding-
Спектральное вложение для нелинейной размерности.
Ссылки
[1]Тенебаум, Дж.Б.; Де Сильва, В.; & Лэнгфорд, Дж.К. Глобальная геометрическая основа для нелинейного уменьшения размерности. Наука 290 (5500)
Примеры
>>> from sklearn.datasets import load_digits >>> from sklearn.manifold import Isomap >>> X, _ = load_digits(return_X_y=True) >>> X.shape (1797, 64) >>> embedding = Isomap(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, BallTree, KDTree, NearestNeighbors}
-
Данные выборки, форма = (n_samples, n_features), в виде массива numpy, разреженной матрицы, предварительно вычисленного дерева или объекта NearestNeighbors.
- yИгнорируется
-
Не используется, присутствует для согласованности API по соглашению.
- Возвращает:
-
- selfобъект
-
Возвращает экземпляр self после подгонки.
- fit_transform(X, y=None)[source]
-
Подогнать модель к данным в X и преобразовать X.
- Параметры:
-
- X{array-like, sparse matrix, BallTree, KDTree}
-
Вектор обучения, где
n_samples— количество выборок, аn_features— количество признаков. - yИгнорируется
-
Не используется, присутствует для согласованности API по соглашению.
- Возвращает:
-
- X_newarray-like, форма (n_samples, n_components)
-
X, преобразованный в новом пространстве.
- get_feature_names_out(input_features=None)[source]
-
Получить имена выходных признаков для преобразования.
Имена выходных признаков будут начинаться с нижнего регистра имени класса. Например, если преобразователь выводит 3 признака, то имена выходных признаков будут:
["class_name0", "class_name1", "class_name2"].- Параметры:
-
- input_featuresмассив-подобный тип str или None, по умолчанию=None
-
Используется только для проверки имен признаков с именами, увиденными в
fit.
- Возвращает:
-
- feature_names_outмассив объектов str
-
Имена преобразованных признаков.
- get_metadata_routing()[source]
-
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращает:
-
- routingMetadataRequest
-
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[source]
-
Получить параметры этого оценщика.
- Параметры:
-
- deepbool, по умолчанию=True
-
Если True, вернет параметры этого оценщика и вложенных под-объектов, которые являются оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные со значениями.
- reconstruction_error()[source]
-
Вычислить ошибку реконструции для вложения.
- Возвращает:
-
- reconstruction_errorfloat
-
Ошибка реконструции.
Примечания
Функция стоимости вложения изомапы:
E = frobenius_norm[K(D) - K(D_fit)] / n_samplesГде D — матрица расстояний для входных данных X, D_fit — матрица расстояний для выходного вложения X_fit, а K — ядро изомапы:
K(D) = -0.5 * (I - 1/n_samples) * D^2 * (I - 1/n_samples)
- 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]
-
Преобразовать X.
Это реализуется путем связывания точек X в граф геодезических расстояний обучающих данных. Сначала
n_neighborsближайших соседей X находятся в обучающих данных, и из них вычисляются кратчайшие геодезические расстояния от каждой точки в X до каждой точки в обучающих данных для построения ядра. Вложение X является проекцией этого ядра на векторы вложения обучающего набора.- Параметры:
-
- X{массив-подобный тип, разреженная матрица}, форма (n_запросов, n_признаков)
-
Если neighbors_algorithm=’precomputed’, X предполагается матрицей расстояний или разреженным графом формы (n_запросов, n_примеров_подобранок).
- Возвращает:
-
- X_newмассив-подобный тип, форма (n_запросов, n_компонентов)
-
X преобразован в новом пространстве.
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.manifold.Isomap.html