Spec-Zone.ru › scikit-learn

LocallyLinearEmbedding

classsklearn.manifold.LocallyLinearEmbedding(*, n_neighbors=5, n_components=2, reg=0.001, eigen_solver='auto', tol=1e-06, max_iter=100, method='standard', hessian_tol=0.0001, modified_tol=1e-12, neighbors_algorithm='auto', random_state=None, n_jobs=None)[исходный код]

Локальное линейное вложение.

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

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

Количество соседей, учитываемых для каждой точки.

n_componentsint, по умолчанию=2

Количество координат многообразия.

regfloat, по умолчанию=1e-3

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

eigen_solver{‘auto’, ‘arpack’, ‘dense’}, по умолчанию=’auto’

Решатель, используемый для вычисления собственных векторов. Доступны следующие варианты:

  • 'auto' : алгоритм попытается выбрать наилучший метод для входных данных.
  • 'arpack' : использовать итерации Арнольди в режиме сдвига-инверсии. Для этого метода M может быть плотной матрицей, разреженной матрицей или общим линейным оператором.
  • 'dense' : использовать стандартные операции с плотными матрицами для разложения по собственным значениям. Для этого метода M должен иметь тип массива или матрицы. Этого метода следует избегать для больших задач.

Предупреждение

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

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

Допуск для метода ‘arpack’. Не используется, если eigen_solver==’dense’.

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

Максимальное количество итераций для решателя arpack. Не используется, если eigen_solver==’dense’.

method{‘standard’, ‘hessian’, ‘modified’, ‘ltsa’}, по умолчанию=’standard’
  • standard: использовать стандартный алгоритм локального линейного вложения. См. ссылку [1]
  • hessian: использовать метод гессиановых собственных отображений. Для этого метода требуется n_neighbors > n_components * (1 + (n_components + 1) / 2. См. ссылку [2]
  • modified: использовать модифицированный алгоритм локального линейного вложения. См. ссылку [3]
  • ltsa: использовать алгоритм выравнивания локального касательного пространства. См. ссылку [4]
hessian_tolfloat, по умолчанию=1e-4

Допуск для метода гессиановых собственных отображений. Используется только, если method == 'hessian'.

modified_tolfloat, по умолчанию=1e-12

Допуск для модифицированного метода LLE. Используется только, если method == 'modified'.

neighbors_algorithm{‘auto’, ‘brute’, ‘kd_tree’, ‘ball_tree’}, по умолчанию=’auto’

Алгоритм поиска ближайших соседей, передаваемый экземпляру NearestNeighbors.

random_stateint, экземпляр RandomState, по умолчанию=None

Определяет генератор случайных чисел, если eigen_solver == ‘arpack’. Передайте целое число, чтобы получать воспроизводимые результаты при нескольких вызовах функции. См. глоссарий.

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

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

Атрибуты:
embedding_array-like, форма [n_samples, n_components]

Содержит векторы вложения

reconstruction_error_float

Ошибка реконструкции, связанная с embedding_

n_features_in_int

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

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

feature_names_in_ndarray формы (n_features_in_,)

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

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

nbrs_объект NearestNeighbors

Содержит экземпляр поиска ближайших соседей, включая BallTree или KDtree, если применимо.

См. также

SpectralEmbedding

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

TSNE

Стохастическое вложение соседей с t-распределением.

Список литературы

[1]

Roweis, S. & Saul, L. Нелинейное снижение размерности с помощью локального линейного вложения. Science 290:2323 (2000).

[2]

Donoho, D. & Grimes, C. Гессиановые собственные отображения: методы локального линейного вложения для многомерных данных. Proc Natl Acad Sci U S A. 100:5591 (2003).

[3]

Zhang, Z. & Wang, J. MLLE: модифицированное локальное линейное вложение с использованием нескольких весов.

[4]

Zhang, Z. & Zha, H. Главные многообразия и нелинейное снижение размерности с помощью выравнивания касательного пространства. Journal of Shanghai Univ. 8:406 (2004)

Примеры

>>> from sklearn.datasets import load_digits
>>> from sklearn.manifold import LocallyLinearEmbedding
>>> X, _ = load_digits(return_X_y=True)
>>> X.shape
(1797, 64)
>>> embedding = LocallyLinearEmbedding(n_components=2)
>>> X_transformed = embedding.fit_transform(X[:100])
>>> X_transformed.shape
(100, 2)
fit(X, y=None)[исходный код]

Вычислить векторы вложения для данных X.

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

Обучающая выборка.

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

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

Возвращает:
selfобъект

Обученный экземпляр класса LocallyLinearEmbedding.

fit_transform(X, y=None)[исходный код]

Вычислить векторы вложения для данных X и преобразовать X.

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

Обучающая выборка.

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

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

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

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

get_feature_names_out(input_features=None)[исходный код]

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

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

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

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

Возвращает:
feature_names_outndarray строковых объектов

Названия преобразованных признаков.

get_metadata_routing()[исходный код]

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

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

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

Объект MetadataRequest, содержащий сведения о маршрутизации.

get_params(deep=True)[исходный код]

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

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

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

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

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

set_output(*, transform=None)[исходный код]

Задать контейнер выходных данных.

Подробнее см. в руководстве пользователя, а пример использования API приведён в разделе Знакомство с API set_output.

Параметры:
transform{“default”, “pandas”, “polars”}, по умолчанию=None

Настроить формат вывода для transform и fit_transform.

  • "default": формат вывода преобразователя по умолчанию
  • "pandas": вывод в виде DataFrame
  • "polars": вывод в формате Polars
  • None: конфигурация преобразования не меняется

Добавлено в версии 1.4: добавлен параметр "polars".

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

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

set_params(**params)[исходный код]

Задать параметры этого оценщика.

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

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

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

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

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

transform(X)[исходный код]

Преобразовать новые точки в пространство вложения.

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

Обучающая выборка.

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

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

Примечания

Из-за масштабирования, выполняемого этим методом, не рекомендуется использовать его вместе с методами, инвариантными к масштабу (например, SVM).

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

Визуализация структуры фондового рынка

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

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

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

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

Spec-Zone.ru

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