Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

Embeddings

Les plongements sont des vecteurs appris qui rapprochent les textes, les images ou les éléments similaires. Présentation de leur création, de leur comparaison et de la recherche à grande échelle.

Un plongement est un vecteur de nombres appris qui représente un élément, comme un mot, une image, un produit ou un utilisateur, de sorte que les éléments de sens ou de contenu similaires aient des vecteurs proches. La distance dans cet espace vectoriel devient une mesure de similarité, ce qui permet aux logiciels de rechercher, de regrouper, de recommander et de classer en comparant des vecteurs plutôt que des pixels ou des chaînes bruts. Les plongements sont aussi la représentation de travail des réseaux neuronaux : un grand modèle de langage (LLM) convertit chaque jeton en plongement avant sa première couche Transformer, et un modèle de vision transforme une image en vecteurs de caractéristiques au moyen de son backbone. Les plongements utilisés pour la recherche ont généralement quelques centaines à quelques milliers de dimensions, bien moins que le nombre de valeurs de l'entrée brute.

Comment les embeddings sont créés#

Les embeddings proviennent de deux types de composants appris :

  • Tables de correspondance : Pour les éléments discrets tels que les tokens, les identifiants de produits ou les identifiants d'utilisateurs, une couche d'embedding stocke une ligne ajustable par élément, et la recherche d'un élément renvoie sa ligne. La table nn.Embedding de PyTorch en est un exemple. Ses lignes sont initialisées aléatoirement et mises à jour par rétropropagation avec le reste du modèle, de sorte que les éléments jouant des rôles similaires dans la tâche d'entraînement évoluent vers des vecteurs similaires.
  • Encodeurs : Pour les images, l'audio et le texte libre, un réseau mappe l'entrée entière vers un vecteur, souvent en agrégeant les cartes de caractéristiques d'un CNN ou en lisant les tokens de sortie d'un transformer. Les encodeurs entraînés pour une tâche telle que la classification produisent des embeddings utiles comme sous-produit, tandis que les encodeurs entraînés par apprentissage contrastif structurent directement l'espace des embeddings, comme le fait CLIP en plaçant les images et leurs légendes dans un même espace partagé.

Word2vec, publié par Tomas Mikolov et ses collègues chez Google en 2013, a montré toute la structure que ce type d'entraînement permet de capturer. Dans ses vecteurs de mots, le vecteur("King") − vecteur("Man") + vecteur("Woman") se rapproche le plus du vecteur("Queen"), et les vecteurs Google News préentraînés qu'il a publiés couvrent 3 millions de mots et d'expressions en 300 dimensions.

Comparer les embeddings#

La similarité cosinus compare les directions de deux vecteurs et varie de −1 à 1. Le produit scalaire tient également compte de leur longueur, et la distance euclidienne mesure l'écart en ligne droite entre eux. De nombreux systèmes normalisent les embeddings à une norme unitaire, ce qui rend la similarité cosinus et le produit scalaire identiques et classe les voisins dans le même ordre que la distance euclidienne. Les modèles YOLO26 produisent des embeddings d'images via embed(), qui ignore la tête de prédiction et renvoie un vecteur par image en calculant la moyenne des sorties de l'avant-dernière couche du modèle :

import torch.nn.functional as F
from ultralytics import YOLO
from ultralytics.utils import ASSETS

# Load a YOLO26 classification model trained on ImageNet
model = YOLO("yolo26n-cls.pt")

# embed() returns one pooled feature vector per image instead of predictions
bus, zidane = model.embed([ASSETS / "bus.jpg", ASSETS / "zidane.jpg"])
print(f"Embedding length: {bus.shape[0]}")

# Higher cosine similarity means the model sees more similar content
print(f"Cosine similarity: {F.cosine_similarity(bus, zidane, dim=0).item():.3f}")

Pour YOLO26n-cls, le plongement est un vecteur de 256 dimensions, la sortie agrégée du bloc d’attention qui termine son backbone ; la deuxième ligne affiche la similarité cosinus entre les deux photos d’exemple fournies. Effectuer la même comparaison avec les plongements stockés d’une collection entière permet à une recherche d’images similaires de classer ses résultats.

Rechercher des embeddings à grande échelle#

Comparer une requête à des millions de vecteurs stockés un par un est trop lent ; les bases de données vectorielles construisent donc des index de plus proches voisins approximatifs, comme les index HNSW fondés sur des graphes ou les index à fichiers inversés, qui trouvent des correspondances proches en examinant une petite fraction de la collection. La collection est transformée en embeddings une seule fois, et chaque requête est transformée en embedding au moment de la recherche avec le même encodeur, ou avec l'encodeur de texte associé lorsqu'une recherche textuelle porte sur des images :

Le stockage influe autant sur la conception que la précision. L'apprentissage de représentations Matryoshka entraîne des embeddings dont les premières dimensions sont utiles à elles seules, ce qui permet de tronquer les vecteurs pour économiser de l'espace, tandis que la quantification vectorielle compresse chaque vecteur en quelques octets. La recherche hybride combine la similarité des embeddings et la recherche par mots-clés.

Applications#

  • Recherche sémantique et génération augmentée par récupération (RAG) : Les embeddings de texte retrouvent des passages selon leur sens ; une requête sur les « déclarations de sinistres automobiles » trouve donc aussi des documents parlant de « polices d'assurance auto », et le RAG transmet les passages retrouvés à un LLM comme contexte.
  • Systèmes de recommandation : Les utilisateurs et les éléments sont représentés dans un même espace, et les éléments les plus proches du vecteur d'un utilisateur deviennent des recommandations possibles.
  • Classification zero-shot : Les modèles disposant d'un espace partagé entre images et texte classent une image en comparant son embedding à ceux des noms de classes écrits sous forme de texte.
  • Réidentification d'objets : Les embeddings d'apparence relient une même personne ou un même véhicule entre plusieurs caméras et entre les interruptions d'une trajectoire.
  • Exploration de jeux de données : la projection des plongements en deux dimensions avec t-SNE ou UMAP révèle les groupes, les quasi-doublons et les valeurs aberrantes d’un jeu de données, comme le fait le panneau Clustering pour les jeux de données Ultralytics Platform.
  • Espace latent : L'espace vectoriel occupé par les embeddings. « Représentation latente » et « embedding » sont souvent employés comme synonymes.
  • Extraction de caractéristiques : Tout processus qui transforme des données brutes en caractéristiques. Un embedding est un vecteur de caractéristiques appris de telle sorte que les distances entre les vecteurs aient un sens.
  • Tokenisation : Découpe le texte en tokens et associe à chacun un identifiant entier. La couche d'embedding associe ensuite chaque identifiant à un vecteur.
  • Encodage one-hot : Représente l'élément i d'un vocabulaire par un vecteur de zéros avec un 1 à la position i, de sorte que chaque paire d'éléments soit à égale distance et que l'encodage ne contienne aucune information de similarité. Multiplier un vecteur one-hot par la matrice des poids d'une table d'embeddings sélectionne exactement une ligne, ce qui correspond au résultat renvoyé par une recherche d'embedding sans effectuer la multiplication.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique