Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Aprendizaje por representaciones matrioška (MRL)

Descubre cómo el aprendizaje de representaciones Matryoshka (MRL) permite realizar incrustaciones multigranulares. Descubre cómo optimizar la búsqueda y la implementación en el borde Ultralytics .

El aprendizaje de representaciones Matryoshka (MRL) es una técnica de entrenamiento en inteligencia artificial (IA) y aprendizaje automático (ML) que obliga a una red neuronal a aprender incrustaciones multigranulares dentro de un único vector de salida. Inspirado en las muñecas rusas anidadas, el MRL estructura la incrustación de tal manera que la información semántica importante se concentra al principio. Esto significa que un vector de alta dimensión (por ejemplo, 1024 dimensiones) puede truncarse en subconjuntos más pequeños y anidados (como 512, 256 o 64 dimensiones) sin perder su representación subyacente. Esta flexibilidad reduce drásticamente la sobrecarga computacional que suele asociarse a las tareas de recuperación de información.

Cómo funciona el aprendizaje por representaciones Matryoshka

Tradicionalmente, un modelo de incrustación se entrena para optimizar una función de pérdida específica para un tamaño de salida fijo. Si un sistema requiere un vector más pequeño para ahorrar memoria, es necesario entrenar un modelo completamente nuevo. El MRL resuelve esto aplicando una función de pérdida anidada durante la fase de entrenamiento. Optimiza conjuntamente la representación completa y sus subconjuntos anidados. Organizaciones como OpenAI han adoptado el MRL para sus modernas API de incrustación, lo que permite a los desarrolladores eliminar dinámicamente dimensiones del final de un vector al tiempo que se conservan puntuaciones precisas de similitud coseno.

Aplicaciones en el mundo real

MRL ofrece claras ventajas a la hora de encontrar el equilibrio entre la precisión, los costes de almacenamiento y el ancho de banda de la memoria.

Diferenciar conceptos relacionados

Para utilizar correctamente el MRL, conviene distinguirlo de las técnicas más antiguas que se empleaban para comprimir datos.

  • MRL frente a la reducción de dimensionalidad: Algoritmos como el PCA (análisis de componentes principales) o el t-SNE se aplican tras el entrenamiento para comprimir los datos. En cambio, el MRL se integra de forma nativa en la arquitectura de la red neuronal durante el entrenamiento, conservando las relaciones no lineales más profundas.
  • MRL frente a la poda de modelos: la poda elimina pesos y capas de la red neuronal original para acelerar la inferencia, por ejemplo, creando una variante más pequeña de una Ultralytics YOLO . El MRL no modifica el tamaño del modelo; solo cambia el tamaño del vector de salida generado por el modelo.

Aplicación práctica

Truncar una representación MRL es increíblemente sencillo y no requiere ninguna lógica compleja de indexación semántica. Dado que las características más importantes tienen una ponderación elevada en las primeras dimensiones, basta con dividir la matriz. El siguiente ejemplo muestra cómo truncar una salida multimodal simulada de YOLO26 utilizando tensor básicas 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]}")

¡Construyamos juntos el futuro de la IA!

Comience su viaje con el futuro del aprendizaje automático