套娃嵌入
也叫:Matryoshka Embeddings · Matryoshka Representation Learning · MRL · 套娃表示学习
套娃嵌入通过同时训练完整向量及多个截短前缀,让同一表示能在不同维度下用于检索等任务。
他们说
训练在不同向量维度下均可使用的嵌套表示
老白翻译
训练时就照顾长短几种向量,让使用者能按任务选择保留多少维。
它到底是什么
套娃嵌入让模型在训练时兼顾完整向量和若干较短的前缀。使用时可以按模型支持的维度截短,减少输出向量的存储与后续计算。
在流程里怎么看
一种用法是先拿短向量筛选候选,再用完整向量继续比较。若同时保存长短两份表示,存储开销要把两份都算进去。
常见误解
普通向量随意截短不一定有效。仅缩短输出也不会自动减少编码模型的推理成本。已归一化的向量被截短后,还要按模型和相似度算法的要求检查是否需要重新归一化。
普通人怎么用
选择维度前用真实问题比较召回表现,查询与文档使用一致设置。保留原始资料与模型版本,以便需要更高维度时重新编码。