Hub documentation
Atlas d'embeddings
Atlas d'embeddings
Embedding Atlas est un outil de visualisation interactive pour explorer de grands espaces d’embeddings. Il vous permet de visualiser, de croiser les filtres et de rechercher des embeddings ainsi que les métadonnées associées, afin de mieux comprendre les motifs et les relations dans des données de haute dimension. Tout le calcul est effectué sur votre ordinateur, garantissant que vos données restent privées et sécurisées.
Voici un atlas d’exemple pour le jeu de données MegaScience hébergé en tant que Static Space :
Fonctionnalités clés
- Exploration interactive : Parcourez des millions d'embeddings avec une visualisation fluide et réactive
- Calcul basé sur le navigateur : Calculez les embeddings et les projections localement sans envoyer de données à des serveurs externes
- Filtrage croisé : Lier et filtrer les données à travers plusieurs colonnes de métadonnées
- Fonctionnalités de recherche : Trouver des points de données similaires à une requête ou à un élément existant
- Plusieurs options d’intégration : utilisation via ligne de commande, widgets Jupyter ou interface web
Prérequis
Tout d'abord, installez Embedding Atlas :
pip install embedding-atlas
Si vous prévoyez de charger des jeux de données privés depuis le Hugging Face Hub, vous devrez également vous connecter avec votre compte Hugging Face :
hf auth login
Chargement des jeux de données depuis le Hub
Embedding Atlas offre une intégration fluide avec le Hugging Face Hub, vous permettant de visualiser directement les embeddings de n'importe quel jeu de données.
Utiliser la ligne de commande
La façon la plus simple de visualiser un jeu de données Hugging Face est via l'interface en ligne de commande. Essayez-le avec le jeu de données 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 5000Pour vos propres jeux de données, utilisez le même modèle :
# 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"Utiliser Python et Jupyter
Vous pouvez également utiliser Embedding Atlas dans des notebooks Jupyter pour une exploration interactive :
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)
widgetPour vos propres jeux de données :
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)
widgetTravailler avec des embeddings précalculés
Si vous disposez de jeux de données avec des embeddings précalculés, vous pouvez les charger directement :
# 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"Personnalisation des embeddings
Embedding Atlas utilise SentenceTransformers par défaut, mais prend en charge les modèles d’embedding personnalisés :
# 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-codeParamètres de projection UMAP
Ajustez la réduction de dimensionnalité à votre cas d’usage spécifique :
embedding-atlas stanfordnlp/imdb \
--text "text" \
--umap-n-neighbors 30 \
--umap-min-dist 0.1 \
--umap-metric "cosine"Cas d'utilisation
Explorer les jeux de données textuels
Visualiser et explorer des corpus de texte pour identifier des clusters, des valeurs aberrantes et des motifs :
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)
widgetRessources supplémentaires
- Dépôt GitHub d’Embedding Atlas
- Documentation officielle
- Démo interactive
- Référence de la ligne de commande
