From Artificial Needles to Real Haystacks: Improving Retrieval Capabilities in LLMs by Finetuning on Synthetic Data

📄 arXiv: 2406.19292v2 📥 PDF

作者: Zheyang Xiong, Vasilis Papageorgiou, Kangwook Lee, Dimitris Papailiopoulos

分类: cs.LG, cs.AI, cs.CL

发布日期: 2024-06-27 (更新: 2024-10-14)


💡 一句话要点

通过合成数据微调提升LLM在长文本中的信息检索能力

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

关键词: 长文本处理 信息检索 大型语言模型 合成数据 微调 键值检索 数值推理

📋 核心要点

  1. 现有LLM在处理长文本时,信息检索能力下降,难以保持准确的推理能力。
  2. 论文提出利用合成数据微调LLM,专注于数值键值检索任务,提升长文本处理能力。
  3. 实验表明,该方法显著提升了LLM在长文本环境下的信息检索和推理能力,且通用性能几乎不受影响。

📝 摘要(中文)

最近的研究表明,大型语言模型(LLM)在处理长上下文输入时,难以准确检索信息并保持推理能力。为了解决这些限制,我们提出了一种微调方法,该方法利用精心设计的合成数据集,包含数值键值检索任务。我们在GPT-3.5 Turbo和Mistral 7B等模型上的实验表明,在此数据集上微调LLM可以显著提高LLM在更长上下文设置中的信息检索和推理能力。我们对微调后的模型进行了分析,说明了技能从合成任务到真实任务评估的转移(例如,GPT-3.5 Turbo在20个文档的MDQA任务中,位置10处的性能提高了10.5%)。我们还发现,微调后的LLM在通用基准测试中的性能几乎保持不变,而使用其他基线长上下文增强数据微调的LLM可能会导致幻觉(例如,在TriviaQA上,使用我们的合成数据微调的Mistral 7B不会导致性能下降,而其他基线数据可能导致2.33%至6.19%的下降)。我们的研究强调了在合成数据上进行微调以提高LLM在更长上下文任务中的性能的潜力。

🔬 方法详解

问题定义:现有大型语言模型在处理长文本时,面临信息检索能力下降的问题。模型难以从长上下文中准确提取所需信息,导致推理性能降低。现有的长文本处理方法,例如直接扩展上下文窗口,往往会引入噪声或导致模型产生幻觉,影响模型的可靠性。

核心思路:论文的核心思路是通过在合成数据上进行微调,使LLM学习如何在长上下文中准确定位和检索信息。合成数据专注于数值键值检索任务,旨在训练模型区分关键信息和噪声,从而提高其在真实长文本场景中的表现。

技术框架:该方法主要包含两个阶段:首先,构建一个包含数值键值检索任务的合成数据集。然后,使用该数据集对LLM进行微调。微调过程采用标准的监督学习方法,目标是使模型能够根据给定的键,从长上下文中准确检索对应的值。

关键创新:该方法最重要的创新在于利用合成数据进行微调,专注于提升LLM的信息检索能力。与直接在真实数据上进行微调相比,合成数据可以更精确地控制训练数据的分布,从而使模型能够更好地学习到关键的信息检索策略。此外,该方法在提升长文本处理能力的同时,能够保持模型在通用任务上的性能。

关键设计:合成数据集的设计是关键。数据集包含大量的数值键值对,这些键值对随机分布在长上下文中。上下文包含大量的噪声信息,旨在模拟真实场景中的复杂性。微调过程中,采用标准的交叉熵损失函数,优化模型的信息检索能力。实验中,作者探索了不同的模型架构(GPT-3.5 Turbo, Mistral 7B)和微调参数,以找到最佳的性能。

🖼️ 关键图片

img_0

📊 实验亮点

实验结果表明,在合成数据上微调后,GPT-3.5 Turbo在20个文档的MDQA任务中,位置10处的性能提高了10.5%。同时,使用该方法微调的Mistral 7B在TriviaQA上的性能几乎没有下降,而使用其他基线数据微调会导致2.33%至6.19%的性能下降。这些结果表明,该方法能够有效提升LLM在长文本中的信息检索能力,并保持其在通用任务上的性能。

🎯 应用场景

该研究成果可应用于需要处理长文本信息的各种场景,例如:金融报告分析、法律文档检索、医学病历理解等。通过提升LLM在长文本中的信息检索能力,可以提高相关任务的效率和准确性,为决策提供更可靠的支持。未来,该方法可以进一步扩展到其他类型的信息检索任务,例如文本摘要、问答等。

📄 摘要(原文)

Recent studies have shown that Large Language Models (LLMs) struggle to accurately retrieve information and maintain reasoning capabilities when processing long-context inputs. To address these limitations, we propose a finetuning approach utilizing a carefully designed synthetic dataset comprising numerical key-value retrieval tasks. Our experiments on models like GPT-3.5 Turbo and Mistral 7B demonstrate that finetuning LLMs on this dataset significantly improves LLMs' information retrieval and reasoning capabilities in longer-context settings. We present an analysis of the finetuned models, illustrating the transfer of skills from synthetic to real task evaluations (e.g., $10.5\%$ improvement on $20$ documents MDQA at position $10$ for GPT-3.5 Turbo). We also find that finetuned LLMs' performance on general benchmarks remains almost constant while LLMs finetuned on other baseline long-context augmentation data can encourage hallucination (e.g., on TriviaQA, Mistral 7B finetuned on our synthetic data cause no performance drop while other baseline data can cause a drop that ranges from $2.33\%$ to $6.19\%$). Our study highlights the potential of finetuning on synthetic data for improving the performance of LLMs on longer-context tasks.