Hub documentation

Atlas de Embeddings

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Atlas de Embeddings

Embedding Atlas é uma ferramenta de visualização interativa para explorar grandes espaços de embeddings. Ela permite visualizar, filtrar cruzadamente e buscar embeddings junto com os metadados associados, ajudando você a entender padrões e relações em dados de alta dimensionalidade. Todo o processamento acontece no seu computador, garantindo que seus dados permaneçam privados e seguros.

Aqui está um atlas de exemplo para o conjunto de dados MegaScience hospedado como um Static Space:

Principais recursos

  • Exploração interativa: Navegue por milhões de embeddings com visualização suave e responsiva
  • Computação baseada em navegador: Calcule incorporações e projeções localmente sem enviar dados para servidores externos
  • Filtragem cruzada: vincule e filtre dados entre várias colunas de metadados
  • Recursos de busca: Encontre pontos de dados semelhantes a uma consulta ou item existente
  • Várias opções de integração: Use via linha de comando, widgets do Jupyter ou interface web

Pré-requisitos

Primeiro, instale o Embedding Atlas:

pip install embedding-atlas

Se você planeja carregar conjuntos de dados privados do Hugging Face Hub, também será necessário fazer login com sua conta do Hugging Face:

hf auth login

Carregando Conjuntos de Dados do Hub

O Embedding Atlas oferece integração perfeita com o Hugging Face Hub, permitindo que você visualize embeddings de qualquer dataset diretamente.

Usando a Linha de Comando

A maneira mais simples de visualizar um dataset do Hugging Face é por meio da interface de linha de comando. Experimente com o dataset IMDB:

# Load the IMDB dataset from the Hub
embedding-atlas stanfordnlp/imdb

# Specify the text column for embedding computation
embedding-atlas stanfordnlp/imdb --text "text"

# Load only a sample for faster exploration
embedding-atlas stanfordnlp/imdb --text "text" --sample 5000

Para os seus próprios conjuntos de dados, use o mesmo padrão:

# Load your dataset from the Hub
embedding-atlas username/dataset-name

# Load multiple splits
embedding-atlas username/dataset-name --split train --split test

# Specify custom text column
embedding-atlas username/dataset-name --text "content"

Usando Python e Jupyter

Você também pode usar o Embedding Atlas em notebooks Jupyter para exploração interativa:

from embedding_atlas.widget import EmbeddingAtlasWidget
from datasets import load_dataset
import pandas as pd

# Load the IMDB dataset from Hugging Face Hub
dataset = load_dataset("stanfordnlp/imdb", split="train[:5000]")

# Convert to pandas DataFrame
df = dataset.to_pandas()

# Create interactive widget
widget = EmbeddingAtlasWidget(df)
widget

Para os seus próprios conjuntos de dados:

from embedding_atlas.widget import EmbeddingAtlasWidget
from datasets import load_dataset
import pandas as pd

# Load your dataset from the Hub
dataset = load_dataset("username/dataset-name", split="train")
df = dataset.to_pandas()

# Create interactive widget
widget = EmbeddingAtlasWidget(df)
widget

Trabalhando com Embeddings Pré-computados

Se você tiver conjuntos de dados com incorporações pré-computadas, pode carregá-los diretamente:

# Load dataset with pre-computed coordinates
embedding-atlas username/dataset-name \
    --x "embedding_x" \
    --y "embedding_y"

# Load with pre-computed nearest neighbors
embedding-atlas username/dataset-name \
    --neighbors "neighbors_column"

Personalizando Embeddings

O Embedding Atlas usa SentenceTransformers por padrão, mas suporta modelos de embedding personalizados:

# Use a specific embedding model
embedding-atlas stanfordnlp/imdb \
    --text "text" \
    --model "sentence-transformers/all-MiniLM-L6-v2"

# For models requiring remote code execution
embedding-atlas username/dataset-name \
    --model "custom/model" \
    --trust-remote-code

Parâmetros de Projeção UMAP

Ajuste a redução de dimensionalidade para o seu caso de uso específico:

embedding-atlas stanfordnlp/imdb \
    --text "text" \
    --umap-n-neighbors 30 \
    --umap-min-dist 0.1 \
    --umap-metric "cosine"

Casos de Uso

Explorando Conjuntos de Dados de Texto

Visualize e explore corpora de texto para identificar clusters, outliers e padrões:

from embedding_atlas.widget import EmbeddingAtlasWidget
from datasets import load_dataset
import pandas as pd

# Load a text classification dataset
dataset = load_dataset("stanfordnlp/imdb", split="train[:5000]")
df = dataset.to_pandas()

# Visualize with metadata
widget = EmbeddingAtlasWidget(df)
widget

Recursos adicionais

Update on GitHub