Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Apprentissage par représentation matriochka (MRL)

Découvrez comment l'apprentissage par représentation Matryoshka (MRL) permet d'obtenir des représentations à plusieurs niveaux de granularité. Découvrez comment optimiser la recherche et le déploiement en périphérie avec Ultralytics .

L'apprentissage par représentation matriochka (MRL) est une technique d'entraînement en intelligence artificielle (IA) et en apprentissage automatique (ML) qui oblige un réseau neuronal à apprendre des représentations à granularité multiple au sein d'un seul vecteur de sortie. Inspiré des poupées russes emboîtables, le MRL structure la représentation de manière à ce que les informations sémantiques importantes soient placées en début de vecteur. Cela signifie qu'un vecteur de haute dimension (par exemple, 1 024 dimensions) peut être tronqué en sous-ensembles imbriqués plus petits (tels que 512, 256 ou 64 dimensions) sans perdre sa représentation sous-jacente. Cette flexibilité réduit considérablement la charge de calcul généralement associée aux tâches de recherche d'informations.

Comment fonctionne l'apprentissage par représentation Matryoshka

Traditionnellement, un modèle d'intégration est entraîné pour optimiser une fonction de perte spécifique pour une taille de sortie fixe. Si un système nécessite un vecteur plus petit pour économiser de la mémoire, il faut entraîner un modèle entièrement nouveau. Le MRL résout ce problème en appliquant une fonction de perte imbriquée pendant la phase d'entraînement. Il optimise conjointement la représentation complète et ses sous-ensembles imbriqués. Des organisations telles qu'OpenAI ont adopté le MRL pour leurs API d'intégration modernes, permettant ainsi aux développeurs de supprimer dynamiquement des dimensions à la fin d'un vecteur tout en conservant des scores de similarité cosinus précis.

Applications concrètes

Le MRL offre des avantages indéniables lorsqu'il s'agit de trouver un juste équilibre entre la précision, les coûts de stockage et la bande passante mémoire.

Différencier des concepts connexes

Pour bien utiliser le MRL, il est utile de le distinguer des anciennes techniques de compression de données.

  • MRL vs. Réduction de dimensionnalité: Des algorithmes tels que l'ACP (analyse en composantes principales) ou le t-SNE sont appliqués après l'apprentissage pour compresser les données. En revanche, la MRL est intégrée de manière native à l'architecture du réseau neuronal pendant l'apprentissage, ce qui permet de préserver les relations non linéaires plus profondes.
  • MRL vs. élagage de modèle: l'élagage supprime des poids et des couches du réseau neuronal d'origine afin d'accélérer l'inférence, par exemple en créant une variante plus petite d'un Ultralytics YOLO . Le MRL ne modifie pas la taille du modèle ; il ne modifie que la taille du vecteur de sortie produit par le modèle.

Mise en œuvre pratique

La troncature d'un encodage MRL est extrêmement simple et ne nécessite aucune logique complexe d'indexation sémantique. Étant donné que les caractéristiques les plus cruciales sont fortement pondérées dans les premières dimensions, il suffit de découper le tableau. L'exemple suivant montre comment tronquer une sortie multimodale simulée de YOLO26 à l'aide tensor PyTorch de base.

import torch

# Simulate a full 1024-dimensional MRL embedding returned by a model
full_embedding = torch.rand(1, 1024)

# To deploy on memory-constrained hardware, simply slice the first 256 dimensions
# Because the model was trained with MRL, this subset remains highly accurate
truncated_embedding = full_embedding[:, :256]

print(f"Original size: {full_embedding.shape[1]}, Compressed size: {truncated_embedding.shape[1]}")

Construisons ensemble l'avenir de l'IA !

Commencez votre parcours avec l'avenir de l'apprentissage automatique