宣布 LlamaCloud 正式发布(以及我们 1900 万美元的 A 轮融资)!
LlamaIndex

Emanuel Ferreira 2023-10-18

使用检索增强双指令微调 (RA-DIT) 提升 RAG 效果

引言

大语言模型 (LLMs) 通过访问外部数据来提升与背景知识相关的任务性能。然而,现有方法需要在 LM 预训练期间进行昂贵的修改,或者在模型训练完成后整合数据存储。不利之处在于,这两种策略都会导致次优性能。

为了解决这个问题,Meta 的一个 AI 研究团队 提出了一种名为 RA-DIT: 检索增强双指令微调 的方法,该方法允许对任何 LLM 进行升级以包含检索功能。

在这篇博文中,我们将探讨 RA-DIT 如何通过构建数据集和微调模型来提升检索增强生成 (RAG) 的性能。

RA-DIT 方法包含两个不同的微调步骤

  1. 更新预训练 LM 以更好地利用检索到的信息。
  2. 更新检索器以返回更相关的结果

工作原理

RA-DIT 方法分别对 LLM 和检索器进行微调。LLM 的更新旨在最大化在给定检索增强指令下正确答案的概率,而检索器的更新旨在最小化文档与查询的语义相似度(相关性)。

下面我们将详细介绍每个步骤,包括生成微调数据集、微调语言模型以获得更好的预测结果,以及改进检索搜索过程。

微调数据集

微调数据集旨在增强语言模型利用知识的能力,并提高其在生成预测时的上下文感知能力。生成问答对、总结数据以及整合思维链推理,当与模型结合时,可以带来改进的结果。

按照我们的 LlamaIndex 实现,我们检索 top_k 节点,从文档生成问答对,然后增强数据。我们通过 QueryResponseDataset 模块使用问答对,该模块为微调数据集返回一个(查询,响应)对。而检索微调数据集则是基于问答对数据创建的。

语言模型微调

准备好微调数据集后,我们可以优化我们的 LLM 以实现两大益处:使 LLM 更好地利用相关的背景知识,以及训练 LLM 即使在检索到不正确的数据块时也能生成准确的预测,增强模型依赖自身知识的能力。

检索器微调

检索器使用 LM 监督检索 (LSR) 方法进行微调。在这种方法中,LLM 评估检索器获取的信息。如果 LLM 发现信息与给定查询不符,它会向检索器发送反馈。利用这些反馈,检索器改进其搜索过程,确保获取 LLM 可以有效利用的数据。这种协作提高了提供的答案的整体质量。

评估

为了评估所建议的方法,作者使用了特定的数据集和指标。让我们深入探讨每个部分,以便更好地理解实验结果。

指标

使用“精确匹配”(EM)指标来衡量模型预测与真实答案的接近程度。

数据集

该方法在两个不同的任务上进行了测试

  1. 知识密集型任务。
  2. 常识推理。

让我们探讨用于这两个任务的数据集。

知识密集型数据集

对于知识密集型任务,所选数据集主要侧重于模型访问、理解和传递深入特定知识的能力。它们包括基于事实的问题、一般常识问答以及复杂的领域特定查询;

使用的数据集包括 MMLU、自然问题 (NQ)、TriviaQA 以及 KILT 基准测试中的一部分任务。

常识推理数据集

常识推理数据集挑战模型基于一般知识和日常情景进行推理和推断的能力。它们包含的问题和情景通常不依赖于深厚的领域知识,而是基于直观和对世界的普遍理解。

使用的数据集包括 BoolQ、PIQA、SIQA、HellaSwag、WinoGrande、ARC-E、ARC-C、OBQA。

如需更好地了解这些数据集是如何使用的,您可以查阅这篇论文

结果

在对模型在知识密集型任务(下表 2)和常识推理任务(下表 3)上性能的比较分析中,考虑了三种模型

  • LLAMA 65B
  • LLAMA 65B REPLUG(仅进行检索增强)
  • RA-DIT 65B

知识密集型任务

评估在 0-shot、5-shot 和 64-shot 微调设置下进行。

0-shot 分析

  • RA-DIT 65B 在所有任务中表现出卓越性能,平均 EM 得分为 50.5。
  • 它优于 LLAMA 65B REPlug(平均 43.1),并显著超过 LLAMA 65B(平均 32.9)。

5-shot 分析

  • RA-DIT 65B 保持领先地位,平均 EM 得分为 55.2。
  • LLAMA 65B REPlug 紧随其后,得分为 52.7,而 LLAMA 65B 的平均得分为 45.0。

在针对 64-shot 微调的单独评估中,分析了两种模型:ATLAS 和 RA-DIT 65B。

64-shot 微调

  • RA-DIT 65B 在所有任务中取得了 60.9 的平均性能,略微超过了 ATLAS,后者获得了 56.8 的平均得分。

常识推理

RA-DIT 65B 进行了基准测试,以评估检索增强指令微调对 LLM 参数化知识和推理能力的影响。

在这项没有检索增强的实验中,RA-DIT 在 8 个评估数据集中的 7 个上显示出优于基础 LLAMA 65B 模型的改进,这表明 LLM 组件的参数化知识和推理能力总体上得到了保留。

总而言之,RA-DIT 65B 持续取得了出色的结果,在多种场景下超越了竞争对手,凸显了其在知识密集型任务中的熟练度和能力,同时表明 LLM 的参数化知识和推理能力仍然得到保留。

结论

RA-DIT 方法提供了一种结构化的方式来增强大语言模型利用外部数据的方式。通过对模型和检索器进行双重微调,我们旨在提高响应的准确性和上下文感知能力。

结合 LSR 技术促进了更高效的数据检索过程,确保生成的答案既相关又有根据;最终结果显示,RA-DIT 超越了像 REPLUG 这样未经微调的 RALM 方法,表现出具有竞争力的结果。

您可以在以下链接了解更多关于 LlamaIndex 实现的信息:https://docs.llamaindex.org.cn/en/stable/examples/finetuning/knowledge/finetune_retrieval_aug.html#fine-tuning-with-retrieval-augmentation

参考资料

RA-DIT 论文:https://arxiv.org/abs/2310.01352

TwitterLinkedin 上与我联系