Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Apprendimento rappresentazionale Matryoshka (MRL)

Scopri come il Matryoshka Representation Learning (MRL) consente di ottenere embedding multigranulari. Scopri come ottimizzare la ricerca e l'implementazione edge Ultralytics .

Il Matryoshka Representation Learning (MRL) è una tecnica di addestramento nell’ intelligenza artificiale (IA) e nell’ apprendimento automatico (ML) che induce una rete neurale ad apprendere incorporazioni multigranulari all’interno di un singolo vettore di output. Ispirandosi alle bambole russe matrioska, l’MRL struttura l’incorporazione in modo tale che le informazioni semantiche più rilevanti siano concentrate nella parte iniziale. Ciò significa che un vettore ad alta dimensionalità (ad esempio, 1024 dimensioni) può essere troncato in sottoinsiemi più piccoli e annidati (come 512, 256 o 64 dimensioni) senza perdere la sua rappresentazione sottostante. Questa flessibilità riduce drasticamente il sovraccarico computazionale tipicamente associato alle attività di recupero delle informazioni.

Come funziona l'apprendimento rappresentazionale Matryoshka

Tradizionalmente, un modello di embedding viene addestrato per ottimizzare una specifica funzione di perdita per una dimensione di output fissa. Se un sistema richiede un vettore più piccolo per risparmiare memoria, è necessario addestrare un modello completamente nuovo. L'MRL risolve questo problema applicando una funzione di perdita annidata durante la fase di addestramento. Essa ottimizza congiuntamente la rappresentazione completa e i suoi sottoinsiemi annidati. Organizzazioni come OpenAI hanno adottato l'MRL per le loro moderne API di embedding, consentendo agli sviluppatori di rimuovere dinamicamente le dimensioni dalla coda di un vettore mantenendo punteggi accurati di similarità cosinusoidale.

Applicazioni nel mondo reale

L'MRL offre vantaggi evidenti quando si tratta di trovare un equilibrio tra precisione, costi di archiviazione e larghezza di banda della memoria.

Differenziare i concetti correlati

Per utilizzare correttamente l'MRL, è utile distinguerlo dalle tecniche più datate utilizzate per comprimere i dati.

  • MRL vs. Riduzione della dimensionalità: Algoritmi come la PCA (Analisi delle Componenti Principali) o il t-SNE vengono applicati dopo l'addestramento per comprimere i dati. Al contrario, l'MRL viene integrata nativamente nell'architettura della rete neurale durante l'addestramento, preservando le relazioni non lineari più profonde .
  • MRL vs. Model Pruning: il pruning rimuove pesi e livelli dalla rete neurale effettiva per velocizzare l'inferenza, ad esempio creando una variante più piccola di una Ultralytics YOLO . L'MRL non modifica le dimensioni del modello , ma solo quelle del vettore di output generato dal modello.

Attuazione pratica

Il troncamento di un embedding MRL è incredibilmente semplice e non richiede alcuna complessa logica di indicizzazione semantica. Poiché le caratteristiche più rilevanti hanno un peso elevato nelle prime dimensioni, è sufficiente suddividere l'array. L'esempio seguente illustra come troncare un output multimodale simulato di YOLO26 utilizzando tensor di base tensor PyTorch .

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]}")

Costruiamo insieme il futuro dell'intelligenza artificiale!

Inizia il tuo viaggio con il futuro del machine learning