Intégrations (Embeddings)
Découvrez ce que sont les embeddings et comment ils alimentent l'IA en capturant les relations sémantiques dans les données pour le NLP, les recommandations et la vision par ordinateur.
Les embeddings sont une pierre angulaire de l'apprentissage automatique (AA) moderne, représentant une méthode puissante pour convertir des données de haute dimension comme des mots, des images ou même des utilisateurs en vecteurs numériques denses, significatifs et de faible dimension. L'objectif principal d'un embedding est de capturer les relations sémantiques et le contexte sous-jacent des données originales. Dans cet espace vectoriel, les éléments ayant des significations ou des caractéristiques similaires sont positionnés plus près les uns des autres. Cela permet aux modèles d'IA d'effectuer des tâches complexes de raisonnement et de similarité qui seraient impossibles avec des données brutes et non structurées.
Comment les embeddings sont créés
Les embeddings sont généralement appris automatiquement par un modèle d'apprentissage profond pendant le processus d'entraînement. Un réseau neuronal, souvent construit avec des frameworks comme PyTorch ou TensorFlow, est entraîné sur une tâche pertinente, comme la prédiction du mot suivant dans une phrase ou la classification d'une image. L'une des couches cachées de ce réseau est ensuite utilisée comme couche d'embedding. Au fur et à mesure que le modèle apprend à effectuer sa tâche, il ajuste les poids dans cette couche, apprenant ainsi à mapper chaque élément d'entrée à un vecteur qui encapsule ses caractéristiques les plus importantes. Ce processus est une forme de réduction de dimensionnalité, compressant de grandes quantités d'informations dans un format compact et utile.
Applications et exemples
Les embeddings sont fondamentaux pour un large éventail d'applications d'IA, du traitement du langage naturel (TLN) à la vision par ordinateur.
- Moteurs de recommandation de commerce électronique : Les systèmes de recommandation utilisent des embeddings pour représenter à la fois les utilisateurs et les produits. Si un utilisateur achète ou consulte fréquemment des articles avec des embeddings similaires (par exemple, différents types d'équipement de course), le système peut identifier d'autres produits dans ce voisinage vectoriel (comme des gels énergétiques ou des sacs d'hydratation) et les recommander. Ceci est beaucoup plus efficace qu'une simple correspondance de mots-clés.
- Recherche sémantique et récupération d'images : Au lieu de s'appuyer sur des balises ou des métadonnées, les systèmes de recherche sémantique utilisent des embeddings pour trouver des résultats basés sur le sens conceptuel. Un utilisateur peut rechercher "photos de vacances d'été", et le système récupérera des images de plages, de montagnes et de scènes de voyage, même si ces mots exacts ne figurent pas dans la description de l'image. Ceci est alimenté par des modèles comme CLIP, qui génèrent des embeddings alignés pour le texte et les images, permettant de puissantes capacités de modèle multi-modal. Ce même principe permet une recherche visuelle puissante, une fonctionnalité clé dans de nombreuses applications modernes. Vous pouvez même construire le vôtre avec notre guide de recherche de similarité.
D'autres applications incluent la découverte de médicaments, où les molécules sont intégrées pour prédire les interactions, et les services de streaming musical qui recommandent des chansons avec des caractéristiques audio similaires.
Embeddings vs. Concepts connexes
Il est utile de distinguer les embeddings des termes connexes :
- Embeddings vs. Extraction de caractéristiques : Les embeddings sont une forme sophistiquée, souvent automatisée, d'extraction de caractéristiques réalisée grâce au deep learning. Alors que l'ingénierie des caractéristiques traditionnelle peut impliquer la définition manuelle de caractéristiques (par exemple, des histogrammes de couleurs pour les images), les embeddings apprennent les caractéristiques pertinentes directement à partir des données pendant l'entraînement.
- Embeddings vs. Recherche vectorielle / Bases de données vectorielles : Les embeddings sont les représentations vectorielles des éléments de données. La recherche vectorielle est le processus de requête d'une collection d'embeddings pour trouver ceux qui sont les plus similaires (les plus proches) à un vecteur de requête, souvent en utilisant des algorithmes Approximate Nearest Neighbor (ANN) pour l'efficacité. Les bases de données vectorielles (comme Pinecone ou Milvus) sont des bases de données spécialisées optimisées pour le stockage, l'indexation et l'exécution de recherches vectorielles rapides sur de grands volumes d'embeddings.
- Embeddings vs. Tokenisation : La tokenisation est le processus de décomposition du texte en unités plus petites (tokens). Ces tokens sont ensuite mappés aux embeddings. Ainsi, la tokenisation est une étape préliminaire avant que la représentation d'embedding ne soit créée ou récupérée. Les modèles NLP phares comme BERT et GPT-4 reposent sur ce processus en deux étapes.
Les embeddings offrent un moyen puissant de représenter les données pour les modèles d'apprentissage automatique, leur permettant de comprendre les similarités sémantiques et les modèles complexes dans divers types de données. Ils font partie intégrante des capacités des plateformes d'AA modernes comme Ultralytics HUB, qui simplifie la création de modèles d'IA avancés pour des tâches telles que la détection d'objets et la classification d'images.