Интерактивная визуализация больших наборов эмбеддингов и метаданных с перекрёстной фильтрацией и поиском.
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
Установить через pip
pip install umap-learn - 2
Установить через conda (conda-forge)
conda install -c conda-forge umap-learn - 3
Обучить модель и преобразовать данные в Python: выполните `import umap`, затем вызовите `umap.UMAP().fit_transform(data)`
Что важно знать
- Для Parametric UMAP требуется TensorFlow, который нужно установить отдельно.
В подборках
Темы
Частые вопросы
- Что такое 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 обновляется ежедневно.
Похожие проекты
Инструмент на Python для определения генетического происхождения по данным SNP от сервисов генетического тестирования, с сопоставлением с образцами проекта 1000 Genomes.
Библиотека машинного обучения для Python на базе SciPy и NumPy: классификация, регрессия, кластеризация и выбор моделей; лицензия BSD.
Библиотека Python для тематического моделирования: она объединяет эмбеддинги трансформеров и c-TF-IDF, чтобы выделять понятные темы в текстах.
Платформа машинного обучения и ИИ для JVM: классическое ML, глубокое обучение, NLP, визуализация и инференс LLM/ONNX для Java, Kotlin и Scala.
Библиотека Python для быстрого CPU-кластеризации больших высокоразмерных embedding-векторов с API в стиле scikit-learn.