人工智能咨询培训老师叶梓 转载标明出处
传统的参数化语言模型通过大规模的网络数据训练,虽然具备一定的灵活性和能力,但它们在处理具体任务时存在以下主要问题:
- 事实错误:模型可能会产生与事实不符的信息,即“幻觉”。
- 验证困难:模型生成的内容难以追溯和验证。
- 数据选择性退出难题:难以从模型中排除特定数据序列。
- 适应性成本高:模型难以适应新的数据分布,且需要昂贵的计算资源进行调整。
- 模型规模过大:模型的规模庞大,导致计算成本高,且难以部署。
Akari Asai、Zexuan Zhong、Danqi Chen 等研究者提倡使用检索增强型语言模型。这类模型在推理过程中整合了大规模的数据存储库,通过检索来增强模型的性能,
图 1 描述了参数化语言模型 和检索增强型语言模型在处理输入时的不同之处。参数化LMs在训练时将大量文本数据内化到模型参数中,而检索增强型LMs在测试时从大规模数据存储中检索文本。
论文链接:https://arxiv.org/abs/2403.03187
检索增强型LMs的有效性
检索增强型语言模型由两个关键组件构成:检索器 R 和参数化语言模型 θ。检索器基于数据存储库 D 中的文档构建搜索索引 I。在推理时,给定输入序列 x,检索器利用索引 I 找到相关的文本。然后,语言模型 θ 使用原始提示和检索到的文本来预测输出 。
图2 为检索增强型LMs的架构分类,这些架构基于三个轴:检索文本的单位(z 的粒度)、如何整合检索(z 的整合方式),以及检索的频率。
输入增强(Input augmentation):将检索结果 z 与原始输入 x 结合,在语言模型的输入空间中进行标准推断。
中间融合(Intermediate fusion):通过新的注意力机制,将预先编码的文本块独立于查询 x 同时整合到中间层。
输出插值(Output interpolation):直接操作输出的token分布,而不是让语言模型从其词汇表中生成续篇。
检索增强型语言模型(retrieval-augmented LMs)的有效性,主要体现在以下几个方面:
减少长尾知识中的事实错误。长尾知识指的是那些在训练数据中出现频率较低,但在实际应用中可能非常重要的信息。传统的参数化语言模型可能会在这些知识上产生错误或“幻觉”,因为它们主要依赖于训练数据中的统计规律。而检索增强型LMs通过检索补充这些长尾知识,从而显著降低了这类错误,提高了输出的事实准确性。
更好的归因。在检索增强型LMs中,检索到的文本(z)在模型生成输出时起到了直接的作用。这不仅提高了输出的准确性,还为模型的输出提供了可追溯性。实践者可以通过检查检索到的文本,手动或自动地验证模型输出的正确性,这在以往的参数化模型中是很难做到的。
灵活选择序列。检索增强型LMs允许对数据存储库进行动态更新,这意味着可以灵活地选择或排除特定的数据序列。这种灵活性对于处理隐私敏感或版权受限的数据尤为重要。通过改进的归因和数据存储库的更新,检索增强型LMs能够更好地适应不同的应用需求。
适应性和定制性。检索增强型LMs通过分离和可交换的数据存储库知识源,提供了更好的定制能力。这使得模型能够针对特定的领域、应用场景或时间戳进行优化,而无需进行额外的训练。这种能力对于需要快速适应新领域的应用来说是非常有价值的。
参数效率。检索增强型LMs通过利用外部数据存储库来减轻模型参数的记忆负担,从而在参数使用上更加高效。这意味着即使模型的参数数量较少,也能够通过检索来弥补知识的不足,从而在某些任务上超越参数数量更多的传统模型。
想要掌握如何将大模型的力量发挥到极致吗?叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具。9月22日晚,实战专家1小时讲解让您轻松上手,学习如何使用 Llama Factory 微调模型。
加助理微信提供直播链接:amliy007,29.9元即可参加线上直播分享,叶老师亲自指导,互动沟通,全面掌握Llama Factory,关注享粉丝福利,限时免费CSDN听直播后的录播讲解。
LLaMA Factory 支持多种预训练模型和微调算法。它提供灵活的运算精度和优化算法选择,以及丰富的实验监控工具。开源特性和社区支持使其易于使用,适合各类用户快速提升模型性能。
检索增强型LMs尚未广泛采用的原因
检索增强型语言模型虽然在实验中展示了潜力,但与参数化语言模型相比,它们的广泛采用仍然受限。简要回顾检索增强型LMs,包括架构(图2)、训练和数据存储:
架构方面,检索增强型LMs具有多种架构,这些架构基于三个主要维度:检索文本的单位(z的粒度)、如何整合检索到模型中(z的整合方式),以及检索的频率。这些架构可以分为三组:输入增强、中间融合和输出插值。输入增强通过将检索结果z添加到原始输入x的输入空间中,并运行标准的语言模型推断。这种方法允许灵活地插入不同的检索和语言模型组件。然而,这种方法的一个显著瓶颈是冗余和效率低下;在输入空间中一起编码许多文档会导致上下文长度窗口限制,并指数级增加推理成本。
表 1列出了基于架构和训练分类的不同检索增强型LMs,展示了它们在检索粒度、整合方式、训练方法等方面的多样性。
训练方面,检索增强型LMs由索引I、检索器R(即生成输入和文档编码的模型)和语言模型θ三个主要组件构成。如何有效地同时更新这些组件以优化整个流程是一个挑战。目前有两种训练范式:独立或顺序训练和联合训练。独立训练涉及检索器和语言模型的独立开发,在训练期间没有直接交互。而联合训练则同时训练语言模型和检索组件,以进一步优化它们的交互和端到端的检索增强型LMs流程。
应用和数据存储方面,检索增强型LMs已在各种自然语言处理(NLP)任务中证明有效,尤其是在知识密集型任务中。然而,它们的应用通常依赖于大规模的数据存储库,这些存储库的设计和构建是检索增强型LMs的一个关键挑战。一些工作使用与训练数据相同的语料库,而其他工作则使用较小的、通用领域的语料库,例如维基百科。此外,为特定任务策划高质量、领域专注的语料库也很重要。
当前检索增强型LMs的限制,尽管在知识密集型任务上取得了成功,但在更广泛的应用中,它们受到限制。例如,检索增强型LMs在推理任务上只取得了边际收益,这可以归因于检索和语言模型组件的弱点。另外检索器和语言模型之间的交互有限,常见的方法如RAG,通常只是将检索结果附加到预训练的参数化语言模型的输入上,缺乏检索和语言模型组件之间的紧密交互。这种缺陷放大了诸如不支持的生成或易受不相关上下文影响的问题。另外输入增强增加了语言模型的上下文长度,导致推理成本指数级增加。
表2总结了当前检索增强型LMs的现状和未来的发展方向,包括检索器和数据存储的限制、检索器与LM之间的交互限制,以及缺乏专门针对检索增强型LMs的基础设施。
如何进一步推进检索增强型?
重新思考检索和数据存储
作者们强调了超越语义和词汇相似性的重要性,以扩展检索增强型LMs在传统知识中心任务之外的应用。这需要对输入查询和数据存储中文档的“相关性”进行新的定义。例如,某些任务中的有信息文本可能与输入查询在语义或词汇上并不相似。少量的上下文学习示例或甚至是未标记的文本可以提升模型在推理或语言理解任务上的性能。然而,什么使得某些文档有帮助(例如,潜在的推理模式或写作风格)仍然是一个未解决的问题。更好地理解有帮助文档的特征可能会释放检索增强型LMs的潜力。
作者们建议重新考虑和改进数据存储。对于更广泛的下游应用或更专业的领域任务,过分依赖单一的通用领域语料库(如维基百科)可能会限制检索增强型LMs的能力。数据存储的策划和组合对最终性能有显著影响。尽管有关好的语言模型预训练数据的文献很丰富,但关于应将哪些数据放入数据存储的研究还相对较少。
加强检索器-LMs交互
作者们提出了超越输入增强的新架构,例如输出插值或中间融合。尽管新架构获得了一定的成功,但与大规模预训练的参数化LMs相比,它们的训练和模型规模通常较小,因为预训练的计算成本很高。另外采用较小粒度检索的方法(如前所述)在扩展方面面临重大挑战。
作者们建议在LMs预训练期间引入检索,这已被证明是有效的,但通常需要额外的显著训练成本或对标准LM架构进行非平凡的修改。已经证实检索相似的文本块和重新排序预训练语料库可以增强LMs对长序列进行推理或执行多样化任务的检索增强的能力。
在预训练之后进行进一步的适应也是一个有前景的途径。尽管显著的架构修改或预训练需要大量的计算,但在资源受限的环境中,探索预训练后的检索增强型LMs的适应是一个有前景的途径。最近的研究证明了在不增加额外成本的情况下,通过额外的组件过滤掉不相关的上下文或指导LM学习区分的前景。
作者们认为对检索增强型LMs进行高效的端到端训练非常重要。检索错误通常是检索增强型LMs中的突出问题。与其单独优化LM组件,不如联合优化检索器组件。在许多下游任务中,没有监督标签可用于训练检索系统。研究无需监督的有效训练策略对于使检索增强型LMs能够应用于更广泛的任务至关重要。
构建更好的系统和基础设施以实现扩展和适应
来自系统和算法等跨学科领域的重大努力和专业知识将使从业者能够利用大规模数据集。例如,探索用于数十亿文本嵌入的压缩和量化算法是一个重要领域。开源工具包如FAISS可以加速这方面的进展。数据存储扩展的另一个瓶颈是存储数百万或数十亿编码文档的要求,以及如何在推理期间有效地加载它们。
目前我们仍然缺乏标准化的检索增强型LM管道实现和能够灵活适应各种架构和训练配置的评估基准。开源已经促进了参数化LMs的快速发展。
检索增强型语言模型作为下一代语言模型,有望在多个领域和任务中发挥重要作用。通过改进架构、训练方法和基础设施,这些模型将能够更广泛地被采用,以构建更可靠、可适应、可归因的智能系统。