深圳Yolo 视觉
深圳
立即加入
词汇表

套娃表示学习(MRL)

了解“套娃式表征学习”(MRL)如何实现多粒度嵌入。探索如何优化Ultralytics 的搜索和边缘部署。

套娃表示学习(MRL)是人工智能(AI) 机器学习(ML)领域中的一种训练技术,它迫使神经 网络在单个输出向量内学习多粒度嵌入。受俄罗斯套娃的启发,MRL将嵌入结构化处理,使得重要的语义 信息优先呈现。 这意味着一个高维向量(例如1024维)可以被截断为 更小、嵌套的子集(如512、256或64维),同时不丢失其底层表示。这种 灵活性极大地降低了通常与 信息检索任务相关的计算开销。

Matryoshka 表征学习的工作原理

传统上,嵌入模型是在固定输出尺寸下,通过优化特定的 损失函数来训练的。如果系统需要 更小的向量以节省内存,就必须训练一个全新的模型。MRL 通过在训练阶段应用嵌套损失 函数来解决这一问题。它同时优化了完整的表示及其嵌套子集。OpenAI等 机构在其 现代嵌入式 API 中采用了 MRL,这使得开发者能够动态地从向量末尾剥离维度,同时保持 精确的余弦相似度得分。

实际应用

在权衡精度与存储成本及 内存带宽时,MRL 具有显著优势。

  • 适用于大型语言模型(LLM)的自适应向量搜索: 检索增强生成(RAG) 管道中, 大型语言模型(LLM)通常依赖 于庞大的向量数据库。 通过MRL, 企业可以利用嵌入向量的前64个维度 进行快速、粗略的语义搜索, 随后使用完整的1024维向量对顶级结果进行重新排序。这种两阶段方法 极大地加速了向量搜索,并降低了 数据库存储成本。
  • 边缘端的可扩展计算机视觉:在使用 Ultralytics 部署 计算机视觉系统时,硬件限制可能千差万别。 一个 采用 MRL 的模型可将全尺寸视觉嵌入向高性能 云部署 服务器传输,但在低功耗 边缘计算设备上运行时,能优雅地回退至传输截断的 128 维嵌入,从而在无需重新训练 模型的情况下优化 延迟

区分相关概念

要正确使用 MRL,最好将其与以往用于数据压缩的技术区分开来。

  • MRL 与 降维 在训练完成后,会应用 PCA(主成分分析)或 t-SNE 等算法来压缩数据。相比之下, MRL 在训练过程中原生地融入神经网络架构,从而保留了更深层的非线性 关系。
  • MRL 与模型剪枝剪枝 通过从实际神经网络中移除权重和层来加快推理速度,例如创建一个更小的 变体 Ultralytics YOLO 模型的较小变体。MRL 不会改变模型 的规模;它仅改变模型生成的输出向量的大小。

具体实施

截断 MRL 嵌入的过程极其简单,无需复杂的 语义索引逻辑。由于最 关键的特征在最早的维度中权重最高,因此只需对数组进行截取即可。以下 示例演示了如何使用基本的 PyTorch tensor 来截断模拟的 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]}")

让我们一起共建AI的未来!

开启您的机器学习未来之旅