论文解读 Retrieve Anything To Augment Large Language Models

论文背景:大型语言模型(LLMs)在知识、记忆、配准和行为方面面临着巨大的挑战和限制。这些问题不能单靠LLMs解决,应该依靠外部工具的援助,比如知识库、内存存储、演示示例和其他工具。检索增强是桥接LLMs和外部工具的重要机制。

(图1:这张图展示了不同种类的检索器可以解决大语言模型不同的边界问题)

论文创新点:LLM Embedder(这是一个全面支持LLMs检索增强技术的多样化需求的一个统一嵌入模型。通过连接到存储任何所需外部元素的向量数据库,它可以支持各种各样的检索增强任务。)

论文解决问题:通用检索器没有合理优化,特定检索器缺乏通用性,这影响了他们在不同场景下的性能。

original text:

(1) the general-purpose retrievers are not properly optimized for the retrieval augmentation of LLMs(2) the task-specific retrievers lack the required versatility, hindering their performance across the diverse retrieval augmentation scenarios.

论文具体实现:为了解决捕获语义信息时受到的干扰,在训练阶段,该团队提出了四种优化策略:

(1)基于大语言模型反馈的奖励机制;

(2)知识蒸馏的稳定化;

(3)明确指示的多任务微调;

(4)同质负抽样的使用。

original text:This includes reward formulation based on LLMs’ feedback, the stabilization of knowledge distillation, multi-task finetuning with explicit instructions, and the use of homogeneous inbatch negative sampling.

LLM Embedder训练数据:

1、数据来源:问答任务、会话搜索、工具学习、指令调整、生成任务

2、数据集分类:Labeled data和 Non-labeled data

LLM Embedder训练方法:

1、训练奖励怎么算的?在哪些场景下应用?

LLM的期望输出表示为𝑂,检索候选表示为𝐶,候选的奖励表示为𝑟𝐶|𝑂,由以下方程导出:

𝑜𝑖表示期望输出的第𝑖个标记,而LLM(𝑥 | 𝑦)表示在给定上下文𝑦的情况下,LLM生成𝑥的可能性。换句话说,如果一个检索候选导致期望输出的生成可能性更高,那么将分配更高的奖励。

那么这种奖励是怎么应用的呢?

a. 问答任务:奖励计算为在给定一个单一候选段落的情况下,生成答案的可能性。

b. 指令调整:奖励计算为在给定一个候选示例的情况下,生成指定的输出的可能性。

c. 生成任务:奖励计算为在给定一个候选历史块的情况下,生成新内容的可能性。需要注意的是,LLM奖励不适用于会话搜索和工具学习数据集,因为在这些情况下没有对LLM输出的明确期望。

2、对比学习的损失函数和其在框架中的设计特点?

对比学习的损失函数用于一对硬标记的文本样本,表示为𝑞和𝑝(例如,查询和文段)。损失函数的形式如下所示:

其中,𝒆∗表示嵌入,〈·〉表示内积运算符,P是正负样本的并集,𝜏是温度参数。

损失函数的目标是将相似的样本的内积值最大化,而不相似样本的内积值最小化。通过调整嵌入和温度参数,可以使嵌入的分布更有判别力,以更好地表示不同样本之间的相似性和差异性。

3、知识蒸馏的目的?如何减小奖励波动对知识蒸馏的影响?

知识蒸馏的目标是通过最小化使用LLM的奖励计算的候选样本分布与由嵌入模型预测的分布之间的差距来提高模型性能。

计算KL散度,以减小LLM的奖励的波动对蒸馏的负面影响,公式如下:

公式中的𝑞代表查询(query),𝑝𝑖代表候选样本中的第𝑖个候选(candidate),𝑖表示候选的索引。〈𝒆𝑞, 𝒆𝑝𝑖〉表示查询𝑞和候选𝑝𝑖之间的内积(inner product)。这部分代表了模型对候选的相似度评分,其中𝒆𝑞是查询的嵌入向量,𝒆𝑝𝑖是候选𝑝𝑖的嵌入向量。𝜏(tau)是温度参数,用于调整损失函数的尺度。

这个kl散度公式的核心思想是计算模型的相似度评分(𝑞和𝑝𝑖之间的内积)并将其用作指导知识蒸馏的一部分。

进一步优化这个损失函数:

优化后的公式通过引入稳定化处理(通过重新排序候选列表中的候选样本并引入一种新的权重机制)和多样性采样策略(通过重新排序候选列表中的候选样本并引入一种新的权重机制)。这些改进有助于解决LLM奖励波动性较大或奖励偏向极端值的情况。

LLM Embedder典型应用场景:

这部分总结了LLM-Embedder的多任务能力,以及它在处理不同类型任务和上下文中的应用场景。LLM-Embedder可以与向量数据库结合使用,以实现检索增强,从而更好地理解用户的需求并生成相关内容。

(图2:表示LLM Embedder支持的典型场景)

a. 存储在向量数据库中的内容:在处理知识密集型任务时,可以将来自知识文档库的整个文档编码并存储在向量数据库中。查询向量数据库的方式可以是根据明确提出的问题或生成过程中的工作上下文。检索到的文档可以直接应用或进行进一步的细化,以生成更丰富的信息段落。最终,查询和检索到的文档被合并以生成基于知识的答案。

b. 处理长上下文:在处理长篇上下文时,可以将整个历史内容切分、编码并上传到向量数据库。生成过程中的工作上下文可以用于查询向量数据库以获取相关的片段。在许多情况下,不仅使用相关片段,如 chunk_i,还使用其后续的 chunk_i+1 进行内存增强,因为后续片段对未来生成更为关键。检索到的片段用于填充当前上下文,从而可以使用远程但重要的记忆生成新内容。

c. 上下文中的学习:演示示例以“(任务说明,期望输出)”的形式组织,可以编码并预先存储在向量数据库中。当给定新任务时,可以使用任务说明来查询向量数据库。检索到的示例与任务说明连接在一起,基于此可以进行上下文中的学习,以生成响应。

d. 工具学习:工具的功能可以以描述的形式表达,并与其API配对:“(描述,API)”。通过这种方式,可以基于编码的描述来管理大量的工具。对于涉及工具使用的用户请求,用户请求可以被编码并用于查询向量数据库。检索到的工具通过其API执行,执行结果被返回以供LLM完成其余的生成过程。

实验结果分析:

实验主要解释以下三个问题:

RQ 1. can LLM-Embedder comprehensively support the diverse scenarios of LLM’s retrieval augmentation.

RQ 2. what is LLMEmbedder’s impact to each specific scenario.

RQ 3. what are the key factors influencing the empirical performance of LLM-Embedder

RQ 1. can LLM-Embedder comprehensively support the diverse scenarios of LLM’s retrieval augmentation?

可以的,效果不错。

(图3,可视化了五种代表性方法的检索增强效果(相对于None的改进):BGE、AAR、LLM-R、API-Retriever(API-R)和LLM-Embedder(论文的方法))

实验表明,为一种场景优化的特定任务检索器在其他场景中的性能有限,说明不同检索任务之间的训练影响并不总是可传递的。可以观察到,尽管特定任务的训练可以为其相应的场景(例如,知识增强和上下文学习)提供有竞争力的性能,但当应用于其他用途时,它们的影响会严重削弱。相反,LLM-Embedder在不同场景下展现出稳定且有竞争力的性能。这表明通过正确优化的训练方法,似乎不相关甚至相互对立的检索模式可以由一个嵌入模型统一处理。

RQ 2. what is LLMEmbedder’s impact to each specific scenario?

知识增强、上下文学习、长上下文建模。

(表1,知识增强的实验结果)

  • 实验结果显示了在MMLU和PopQA等问题回答任务中,LLM通过检索增强方法相对于普通LLM(None)获益于外部知识。在这些任务中,检索增强方法明显优于普通LLM。
  • 进一步,结果表明检索的准确性对知识增强的影响至关重要。随着从使用BM25检索器过渡到更高级的嵌入模型,知识增强的影响逐渐加大。
  • 此外,研究人员观察到不同数据集之间存在差异,PopQA数据集对检索增强的影响更为显著,这可能是因为PopQA数据集更侧重于知识密集型问题,涉及长尾实体的问题。相比之下,MMLU数据集的问题更多依赖于常识和逻辑推理,而非广泛的世界知识。

(表2,上下文学习的实验结果)

  • 实验结果表明,在大多数情况下,与普通LLM(None)相比,使用检索增强方法能够显著提高性能,从而加强了LLM在示范性学习时遵循指令的能力。
  • 值得注意的是,BM25的性能在这种场景中相对较弱,这可以归因于上下文学习的特殊性质,其中示例需要强调语义相似性而不是词汇相似性。
  • 此外,研究人员发现,尽管对于上下文学习而言,特定任务的方法LLM-R表现出了竞争力,但将其应用于其他场景,如知识检索和工具使用,其效用受到严重限制。这表明示例检索需要特定于这一任务的独特模式,很难转移到其他场景。

(表3,长上下文建模的实验结果)

  • 实验结果表明,检索增强方法相对于没有增强(None)的情况,始终能够提高性能。然而,这一提高可能不够令人信服,因为它使用了更多上下文信息。
  • 为了解决这个问题,研究引入了一个名为"Recency"的新基线。与使用检索到的上下文不同,Recency直接利用当前窗口之前的最新上下文。例如,在对话中,它考虑了当前会话之前的最后一对话语;在语言建模中,它引入了位于最新2048标记之前的2049-4096标记范围内的内容。
  • LLM-Embedder在各种情况下继续表现出卓越的性能。然而,其他检索器不再保证一致的性能提升:虽然其他检索增强方法在语言建模的生成质量方面取得了改进,但在处理对话时,大多数方法不及Recency的性能。这一观察结果强调了实际中有效内存检索的挑战

RQ 3. what are the key factors influencing the empirical performance of LLM-Embedder?

见消融实验(表4)。

w.o. LLM reward"(没有LLM奖励),w.o. instruction FT"(没有指导性微调),w.o. homo NS"(没有均匀的批内负采样),w.o. stabilized distill"(没有稳定的蒸馏)

实验表明,这四个因素对于LLM Embedder是缺一不可的,每替换一个因素,模型的性能都会下降。需要补充的是,在w.o. LLM reward时,作者将LLM的软奖励替换为最高评级的候选项作为正例样本,即硬标签。这将知识蒸馏简化到对比学习。大多数情况下,由于这种更改,经验性能都有所降低。然而,工具学习和对话搜索的性能几乎没有受到影响,这是可以理解的,因为LLM-Embedder在这两种情景中纯粹使用硬标签进行训练。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值