Don't Retrieve, Generate: Prompting LLMs for Synthetic Training Data in Dense Retrieval

📄 arXiv: 2504.21015v3 📥 PDF

作者: Aarush Sinha

分类: cs.IR, cs.CL

发布日期: 2025-04-20 (更新: 2025-12-27)


💡 一句话要点

提出利用LLM生成合成负样本训练稠密检索模型,但效果不如传统方法。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 稠密检索 难负例挖掘 大型语言模型 合成数据生成 信息检索

📋 核心要点

  1. 稠密检索模型依赖于从大规模语料库中挖掘的难负例,这需要访问完整语料库并构建索引,成本高昂。
  2. 本文提出利用大型语言模型(LLM)直接从查询和正样本生成合成难负例,避免了对完整语料库的依赖。
  3. 实验结果表明,使用LLM生成的合成负例训练的检索模型性能不如传统的基于语料库的挖掘方法,且模型规模并非越大越好。

📝 摘要(中文)

训练有效的稠密检索模型通常依赖于从大型文档语料库中挖掘的难负例(HN)样本,挖掘方法包括BM25或交叉编码器,这些方法需要完全访问语料库并构建昂贵的索引。本文提出直接从给定的查询和正样本段落中使用大型语言模型(LLM)生成合成难负例。我们使用由四个最先进的LLM(参数量从4B到30B不等,包括Qwen3、LLaMA3、Phi4)生成的合成负例来微调DistilBERT,并在10个BEIR基准数据集上评估性能。与普遍认为更强的生成模型会产生更好的合成数据的假设相反,我们发现我们的生成流程始终不如传统的基于语料库的挖掘策略(BM25和交叉编码器)。此外,我们观察到缩放生成器模型并不能单调地提高检索性能,并且发现14B参数的模型优于30B参数的模型,在某些情况下,30B模型表现最差。

🔬 方法详解

问题定义:稠密检索模型训练依赖于难负例挖掘,传统方法如BM25和交叉编码器需要访问完整语料库并构建索引,计算成本高昂且不灵活。论文旨在探索一种无需访问完整语料库即可生成高质量难负例的方法,以降低训练成本和提高效率。

核心思路:利用大型语言模型(LLM)的生成能力,直接从给定的查询和正样本段落生成合成的难负例。核心假设是,LLM能够理解查询和正样本的语义,并生成与查询相似但与正样本不同的文本,从而作为有效的难负例。

技术框架:整体流程包括:1) 给定查询和正样本;2) 使用LLM生成合成负样本;3) 使用生成的合成负样本微调稠密检索模型(DistilBERT);4) 在BEIR基准数据集上评估微调后的模型性能。主要模块包括LLM生成器和DistilBERT检索模型。

关键创新:核心创新在于使用LLM作为合成难负例的生成器,替代了传统的基于语料库的挖掘方法。这种方法无需访问完整语料库,降低了训练成本和提高了灵活性。此外,论文还探讨了不同规模的LLM对生成合成负例质量的影响。

关键设计:论文使用了多个不同规模的LLM(Qwen3、LLaMA3、Phi4)作为生成器,参数量从4B到30B不等。使用DistilBERT作为稠密检索模型,并使用生成的合成负例进行微调。实验在10个BEIR基准数据集上进行,评估指标包括Recall@K和NDCG@K等。没有提供损失函数和网络结构的具体细节,可能使用了标准的对比学习损失函数。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,使用LLM生成的合成负例训练的DistilBERT模型,在BEIR基准数据集上的性能不如使用BM25或交叉编码器挖掘的负例。此外,实验发现LLM的规模并非越大越好,14B参数的模型优于30B参数的模型,这表明生成合成负例的质量并非与模型规模呈单调关系。具体性能数据未在摘要中给出。

🎯 应用场景

该研究探索了利用LLM生成合成数据以训练检索模型的可能性,潜在应用包括:在数据稀缺或难以获取的领域,利用LLM生成训练数据;在需要快速迭代和定制检索模型的场景,利用LLM生成特定领域的负样本;以及在保护隐私的场景下,避免直接访问原始语料库。

📄 摘要(原文)

Training effective dense retrieval models typically relies on hard negative (HN) examples mined from large document corpora using methods such as BM25 or cross-encoders, which require full corpus access and expensive index construction. We propose generating synthetic hard negatives directly from a provided query and positive passage, using Large Language Models(LLMs). We fine-tune DistilBERT using synthetic negatives generated by four state-of-the-art LLMs ranging from 4B to 30B parameters (Qwen3, LLaMA3, Phi4) and evaluate performance across 10 BEIR benchmark datasets. Contrary to the prevailing assumption that stronger generative models yield better synthetic data, find that our generative pipeline consistently underperforms traditional corpus-based mining strategies (BM25 and Cross-Encoder). Furthermore, we observe that scaling the generator model does not monotonically improve retrieval performance and find that the 14B parameter model outperforms the 30B model and in some settings it is the worst performing.