Repolode
lmcinnes

lmcinnes/umap

Библиотека Python для UMAP — метода нелинейного снижения размерности, применяемого для визуализации и предварительной обработки данных в машинном обучении.

Звёзды
8,288
Форки
880
Открытые issues
539
Последний коммит
вчера

Что это?

UMAP (Uniform Manifold Approximation and Projection) — метод снижения размерности, который проецирует данные из многомерного пространства в пространство меньшей размерности, чаще всего в 2D или 3D для построения графиков. Его можно использовать так же, как t-SNE, а также как универсальный этап снижения размерности перед кластеризацией и другими задачами машинного обучения.

Пакет реализует API в стиле scikit-learn: его можно вызывать через fit_transform и использовать в конвейерах sklearn. К основным параметрам относятся n_neighbors, регулирующий баланс между локальной и глобальной структурой, min_dist, задающий плотность размещения точек, и metric, принимающий различные функции расстояния, включая cosine и correlation. Также поддерживается ввод разреженных матриц и добавление новых точек в существующий эмбеддинг с помощью transform.

Помимо основного алгоритма, библиотека включает подпакет umap.plot для построения графиков эмбеддингов, вариант Parametric UMAP, который обучает нейронную сеть (требуется TensorFlow), и densMAP, который также сохраняет информацию о локальной плотности. Установить пакет можно через pip или conda-forge.

Ключевые возможности

  • 01API в стиле scikit-learn с методами fit и transform, который можно использовать как drop-in замену
  • 02Поддержка множества метрик расстояния, в том числе неметрических, таких как cosine и correlation
  • 03Принимает на вход разреженные матрицы
  • 04Поддерживает supervised- и semi-supervised-снижение размерности через параметр y
  • 05Включает umap.plot для построения графиков эмбеддингов и densMAP для сохранения информации о плотности

Сценарии использования

  • Визуализация многомерных наборов данных, например эмбеддингов или данных single-cell, в 2D
  • Снижение размерности перед запуском алгоритмов кластеризации, таких как HDBSCAN
  • Добавление UMAP в конвейер scikit-learn в качестве этапа предварительной обработки

Быстрый старт

  1. 1

    Установить через pip

    pip install umap-learn
  2. 2

    Установить через conda (conda-forge)

    conda install -c conda-forge umap-learn
  3. 3

    Обучить модель и преобразовать данные в Python: выполните `import umap`, затем вызовите `umap.UMAP().fit_transform(data)`

Что важно знать

  • Для Parametric UMAP требуется TensorFlow, который нужно установить отдельно.

В подборках

Темы

#dimensionality-reduction#machine-learning#visualization#manifold-learning#clustering#python#topological-data-analysis#umap

Частые вопросы

Что такое umap?
Библиотека Python для UMAP — метода нелинейного снижения размерности, применяемого для визуализации и предварительной обработки данных в машинном обучении. UMAP (Uniform Manifold Approximation and Projection) — метод снижения размерности, который проецирует данные из многомерного пространства в пространство меньшей размерности, чаще всего в 2D или 3D для построения графиков. Его можно использовать так же, как t-SNE, а также как универсальный этап снижения размерности перед кластеризацией и другими задачами машинного обучения.
umap можно использовать бесплатно? Какая у него лицензия?
umap распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
umap всё ещё поддерживается?
Активно поддерживается. Последний коммит в umap — 6 нояб. 2026 г..
Для чего можно использовать umap?
Визуализация многомерных наборов данных, например эмбеддингов или данных single-cell, в 2D Снижение размерности перед запуском алгоритмов кластеризации, таких как HDBSCAN Добавление UMAP в конвейер scikit-learn в качестве этапа предварительной обработки
Как установить umap?
Установить через pip: pip install umap-learn Установить через conda (conda-forge): conda install -c conda-forge umap-learn Обучить модель и преобразовать данные в Python: выполните `import umap`, затем вызовите `umap.UMAP().fit_transform(data)`
Где скачать umap?
Исходный код и инструкции по установке — на GitHub: https://github.com/lmcinnes/umap

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты