Ferramenta de visualização interativa para explorar grandes conjuntos de embeddings e seus metadados, com filtros cruzados e busca.
lmcinnes/umap
Biblioteca Python para UMAP, um método não linear de redução de dimensionalidade usado em visualizações e como etapa de pré-processamento para machine learning.
- Estrelas
- 8,288
- Forks
- 880
- Issues abertas
- 539
- Último commit
- há 3 dias
O que é?
UMAP (Uniform Manifold Approximation and Projection) é uma técnica de redução de dimensionalidade que projeta dados de alta dimensão em um espaço de baixa dimensão, geralmente 2D ou 3D para visualização. Pode ser usado de forma semelhante ao t-SNE e também como uma etapa genérica de redução antes de tarefas de clustering ou outras tarefas de machine learning.
O pacote segue a API do scikit-learn, então pode ser chamado com fit_transform e usado em pipelines do sklearn. Entre os principais parâmetros estão n_neighbors, que equilibra as estruturas local e global; min_dist, que controla o quão próximos os pontos ficam; e metric, que aceita várias funções de distância, incluindo cosine e correlation. Também aceita matrizes esparsas como entrada e permite adicionar novos pontos a uma projeção existente usando transform.
Além do algoritmo principal, a biblioteca inclui o subpacote umap.plot para plotar projeções, uma variante chamada Parametric UMAP que treina uma rede neural (requer TensorFlow) e o densMAP, que também preserva informações sobre a densidade local. A instalação pode ser feita via pip ou conda-forge.
Recursos principais
- 01API no estilo do scikit-learn, compatível com substituição direta, com métodos fit e transform
- 02Aceita várias métricas de distância, incluindo métricas não métricas, como cosine e correlation
- 03Aceita matrizes esparsas como entrada
- 04Permite redução de dimensionalidade supervisionada e semissupervisionada por meio do parâmetro y
- 05Inclui umap.plot para plotar projeções e densMAP para preservar a densidade
Casos de uso
- Visualizar conjuntos de dados de alta dimensão, como embeddings ou dados de célula única, em 2D
- Reduzir a dimensionalidade antes de executar algoritmos de clustering, como HDBSCAN
- Adicionar UMAP como etapa de pré-processamento em um pipeline do scikit-learn
Início rápido
- 1
Instalar via pip
pip install umap-learn - 2
Instalar via conda (conda-forge)
conda install -c conda-forge umap-learn - 3
Ajustar e transformar dados em Python: execute `import umap` e, em seguida, chame `umap.UMAP().fit_transform(data)`
Antes de usar
- Parametric UMAP precisa do TensorFlow, que deve ser instalado separadamente.
Em coleções
Tópicos
Perguntas frequentes
- O que é umap?
- Biblioteca Python para UMAP, um método não linear de redução de dimensionalidade usado em visualizações e como etapa de pré-processamento para machine learning. UMAP (Uniform Manifold Approximation and Projection) é uma técnica de redução de dimensionalidade que projeta dados de alta dimensão em um espaço de baixa dimensão, geralmente 2D ou 3D para visualização. Pode ser usado de forma semelhante ao t-SNE e também como uma etapa genérica de redução antes de tarefas de clustering ou outras tarefas de machine learning.
- umap é gratuito? Qual é a licença?
- umap é open source sob a licença BSD-3-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
- umap ainda é mantido?
- Manutenção ativa. O último commit de umap foi em 3 de nov. de 2026.
- Para que posso usar umap?
- Visualizar conjuntos de dados de alta dimensão, como embeddings ou dados de célula única, em 2D Reduzir a dimensionalidade antes de executar algoritmos de clustering, como HDBSCAN Adicionar UMAP como etapa de pré-processamento em um pipeline do scikit-learn
- Como instalar umap?
- Instalar via pip: pip install umap-learn Instalar via conda (conda-forge): conda install -c conda-forge umap-learn Ajustar e transformar dados em Python: execute `import umap` e, em seguida, chame `umap.UMAP().fit_transform(data)`
- Onde consigo umap?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/lmcinnes/umap
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Ferramenta em Python que prevê a ancestralidade genética de uma pessoa a partir de dados SNP de testes diretos ao consumidor, comparando-os com amostras do 1000 Genomes.
Biblioteca de machine learning em Python baseada em SciPy e NumPy, com ferramentas de classificação, regressão, clustering e seleção de modelos, sob licença BSD.
Biblioteca Python de modelagem de tópicos que combina embeddings de transformers com c-TF-IDF para gerar tópicos interpretáveis a partir de textos.
Plataforma de machine learning e IA para JVM, com ML clássico, deep learning, NLP, visualização e inferência de LLMs/ONNX para Java, Kotlin e Scala.
Biblioteca Python para agrupar rapidamente, na CPU, grandes vetores de embeddings de alta dimensionalidade, com uma API no estilo scikit-learn.