- 简介交叉编码器(CE)模型通过联合编码查询-项目对来计算相似度,比基于嵌入的模型(双编码器)更能准确估计查询-项目的相关性。现有方法通过将CE相似度与使用双编码器(DE)或CUR矩阵分解拟合的向量嵌入空间相似来执行k-NN搜索。基于DE的检索和重新排序方法在新领域上具有很差的召回率,并且DE的检索与CE分离。虽然基于CUR的方法比基于DE的方法更准确,但它们需要大量CE调用来计算项目嵌入,因此在实际部署中不切实际。本文提出了一种基于稀疏矩阵分解的方法,它有效地计算潜在的查询和项目嵌入以近似CE分数,并使用近似的CE相似度执行k-NN搜索,以解决这些缺点。我们通过分解包含一组训练查询的查询-项目CE分数的稀疏矩阵来离线计算项目嵌入。与基于CUR的方法相比,我们的方法仅需要部分CE调用即可产生高质量的近似,并允许利用DE来初始化嵌入空间,同时避免通过蒸馏进行DE的计算和资源密集型微调。在测试时,项目嵌入保持不变,检索在多轮之间进行,交替进行以下操作:a)通过最小化近似已检索项的CE分数的误差来估计测试查询嵌入,b)使用更新的测试查询嵌入来检索更多项目。我们的k-NN搜索方法相比于基于DE的方法,提高了召回率,k=1时提高了5%,k=100时提高了54%。此外,我们的索引方法相比于基于CUR的方法提高了100倍的速度,相比于DE蒸馏方法提高了5倍的速度,并且与基线相比,匹配或提高了k-NN搜索召回率。
- 图表
- 解决问题本论文旨在提出一种高效的基于稀疏矩阵分解的交叉编码器检索方法,以解决现有方法在新领域中召回率低和计算成本高的问题。
- 关键思路论文提出了一种基于稀疏矩阵分解的方法,通过离线计算稀疏矩阵,快速计算查询-项对的交叉编码器相似度,并使用近似相似度进行k-NN搜索。该方法相对于现有方法具有更高的召回率和更低的计算成本。
- 其它亮点论文的实验结果表明,该方法相对于现有方法具有更高的召回率和更低的计算成本。此外,该方法使用了离线计算的稀疏矩阵,避免了在线计算的高成本,并且可以利用双编码器初始化嵌入空间,避免了在线微调的计算和资源开销。论文还提供了开源代码。
- 在最近的相关研究中,也有一些基于交叉编码器的检索方法,如双编码器和CUR矩阵分解。
沙发等你来抢
去评论
评论
沙发等你来抢