返回 Ultralytics 术语表
Matryoshka Representation Learning (MRL)
了解套娃式表征学习 (MRL) 如何实现多粒度嵌入。了解如何优化 Ultralytics YOLO26 搜索和边缘部署。
套娃式表示学习(MRL)是人工智能(AI)和机器学习(ML)中的一种训练技术,它让神经网络在单个输出向量中学习多粒度嵌入。MRL 的灵感来自俄罗斯套娃,它会对嵌入进行结构化处理,将重要的语义信息优先放在前面。这意味着高维向量(例如 1024 维)可以截取为较小的嵌套子集(例如 512、256 或 64 维),同时保留其底层表示。这种灵活性大幅降低了信息检索任务通常产生的计算开销。
套娃式表示学习的工作原理#
传统上,嵌入模型会针对固定的输出尺寸优化特定的损失函数。如果系统需要更小的向量来节省内存,就必须训练全新的模型。MRL 通过在训练阶段应用嵌套损失函数解决这一问题,同时优化完整表示及其嵌套子集。OpenAI 已在其现代嵌入 API 中采用 MRL,让开发者可以动态截去向量末尾的维度,同时保持准确的余弦相似度分数。
实际应用#
MRL 在平衡准确性、存储成本和内存带宽时具有明显优势。
- 面向 LLMs 的自适应向量搜索:在检索增强生成(RAG)流水线中,大型语言模型(LLMs)通常依赖庞大的向量数据库。借助 MRL,企业可以先使用嵌入的前 64 个维度执行快速粗略的语义搜索,再使用完整的 1024 维向量对排名靠前的结果重新排序。这种两阶段方法能大幅加快向量搜索并降低数据库存储成本。
- 边缘端可扩展计算机视觉:使用Ultralytics Platform部署计算机视觉系统时,硬件限制可能千差万别。采用 MRL 的模型可以将完整尺寸的视觉嵌入发送到高性能云端部署服务器,但在低功耗边缘计算设备上运行时,也能平稳地改为发送截断后的 128 维嵌入,在无需重新训练模型的情况下优化延迟。
区分相关概念#
为了正确使用 MRL,最好将它与较早的数据压缩技术区分开来。
- MRL 与降维:PCA(主成分分析)或 t-SNE 等算法会在训练之后应用于数据压缩。与之不同,MRL 在训练时原生集成到神经网络架构中,因此能保留更深层的非线性关系。
- MRL 与模型剪枝:剪枝会从实际神经网络中移除权重和层,以加快推理速度,例如创建更小版本的Ultralytics YOLO模型。MRL 不会改变模型大小,只会改变模型生成的输出向量大小。
实际实现#
截断 MRL 嵌入非常简单,不需要复杂的语义索引逻辑。由于最关键的特征在靠前的维度中权重最高,你只需对数组进行切片。下面的示例演示如何使用基本的PyTorch 张量操作截断模拟的YOLO26多模态输出。
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]}")








