“ 昨天少见出现这么多RAG相关的文章,一起发了
ARES: An Automated Evaluation Framework for Retrieval-Augmented Generation Systems
这篇论文介绍了一种名为ARES(Automated RAG Evaluation System)的评估框架,用于评估检索增强生成(RAG)系统。RAG系统通常包括一个检索器和一个下游语言模型,用于从大量文档中检索相关信息并生成回答。ARES旨在自动评估RAG系统在以下三个方面的性能:上下文相关性、答案忠实度和答案相关性。
核心观点:
- ARES通过使用少量人工标注数据和合成数据来评估RAG系统,降低了评估成本。
- ARES利用预测驱动推理(PPI)提供统计置信区间,提高评估精度。
算法原理:
- 生成合成数据集:首先,ARES使用语言模型从目标语料库中的文档生成合成问题和答案,以创建正例和负例样本。
- 准备LLM评委:接着,ARES使用合成数据集对轻量级语言模型进行微调,训练它们分别评估上下文相关性、答案忠实度和答案相关性。
- 使用置信区间对RAG系统进行排名:最后,ARES应用这些评委模型对RAG系统进行评分,并结合人工标注验证集使用PPI方法生成置信区间,从而可靠地估计RAG系统的性能。
结论:
- ARES在KILT和SuperGLUE中的六个知识密集型任务上实现了准确评估RAG系统,同时仅使用少量人工标注数据。
- ARES评委在领域转换时仍具有较高的准确性,即使在查询和/或文档类型发生变化的情况下也能保持有效。
- 与现有的自动评估方法(如RAGAS)相比,ARES在上下文相关性和答案相关性评估准确性方面分别提高了59.29和14.4个百分点。
R-Tuning: Teaching Large Language Models to Refuse Unknown Questions
这篇论文的核心观点是解决大型语言模型(LLMs)在回答问题时产生错误或不存在的事实(即“幻觉”现象)的问题。为了解决这个问题,作者提出了一种新的方法:拒绝意识指令调整(Refusal-Aware Instruction Tuning,简称R-Tuning)。R-Tuning的目标是让模型在回答问题时能够根据自身的知识边界来判断是否应该回答,从而避免产生幻觉。
R-Tuning算法分为两个步骤:
- 拒绝意识数据识别:首先,通过比较模型在训练数据上的预测和标签,将训练数据划分为不确定数据(D0)和确定数据(D1)。如果模型的预测与标签匹配,则问题属于确定数据集;否则,问题属于不确定数据集。
- 拒绝意识数据构建:接下来,通过在标签后附加不确定性表达式,构建拒绝意识数据。对于确定数据集D1,在模板后添加“I am sure”;对于不确定数据集D0,在模板后添加“I am unsure”。
在训练和推理阶段,使用构建好的拒绝意识数据对模型进行微调,并在测试时评估模型的性能。
实验结果表明,R-Tuning方法在单任务和多任务实验中都取得了良好的效果。与传统的指令调整方法相比,R-Tuning在回答问题时能够更好地平衡准确性和拒绝回答不确定问题的能力。此外,在多任务实验中,R-Tuning展示了较强的泛化能力,证明了拒绝意识回答是一种元技能,可以从多任务训练中受益。
总之,R-Tuning通过拒绝回答超出模型知识范围的问题来减少幻觉现象,并在回答与模型参数知识一致的问题时表现出良好的性能。
Sequencing Maatters: A Generate-Retrieve-Generate Model for Building Conversational Agents
https://arxiv.org/pdf/2311.09513v1.pdf
这篇论文主要研究了如何构建一个对话代理,以解决TREC iKAT(Interactive Knowledge Assistance Track)挑战。iKAT的目标是结合对话和个性化元素,利用现有的信息检索技术来帮助用户获取信息。为了实现这一目标,iKAT系统需要处理两个来自用户的信息:1)个人文本知识库(PTKB),即关于用户的一些持久性事实陈述;2)用户话语,通常从信息检索的角度出发。
在这篇论文中,作者提出了一种生成-检索-生成(Generate-Retrieve-Generate)方法,该方法结合了大型语言模型(LLM)和传统的信息检索技术。整个系统的架构包括以下几个步骤:
- 使用Sentence-BERT对PTKB进行排序,并将其与用户话语组合成一个流畅的提示。
- 使用LLM(如Llama)根据提示生成初始回答。
- 使用BM25算法在语料库中检索相关文章。
- 使用逻辑回归对检索到的文章进行质量筛选。
- 使用Sentence-BERT对筛选后的文章进行优化,然后使用FastChat-T5对文章进行摘要。
- 将摘要输入到LLM中,生成最终回答。
实验结果表明,作者提交的三个运行方案在TREC评估中的表现均优于中位数。其中,最佳运行方案是第三个方案,即只进行一次生成-检索循环,并且不使用逻辑回归进行文本质量筛选。
总之,这篇论文提出了一种生成-检索-生成方法,有效地结合了大型语言模型和传统信息检索技术,以解决iKAT挑战。实验结果表明,该方法在TREC评估中取得了较好的成绩。
On Retrieval Augmentation and the Limitations of Language Model Training
这篇论文主要研究了为什么使用k-近邻检索(kNN)增强的语言模型(LM)在性能上优于普通的语言模型。作者发现了几个限制当前常见语言模型训练方法的问题,并提出了两个新的合成数据集(Macondo v1和v2)来探讨这些问题。
核心观点:
- 软最大值瓶颈(softmax bottleneck)并不是导致增强LM与普通LM之间性能差距的原因。
- 最后一个多层感知机(MLP)层可能会阻碍LM在早期训练过程中的优化,这被称为“MLP障碍”。
- 当训练数据包含无关信息时,使用常见的LM训练目标可能无法在测试数据上泛化。相比之下,kNN-LM在这种情况下表现更好。
- 即使模型规模扩大(如GPT-3.5-turbo),也无法解决这种泛化问题。
算法原理:
- 通过将kNN-LM生成的分布投影到训练有素的LM的最后一层输出空间,排除了软最大值瓶颈作为性能差距原因的可能性。
- 在Macondo v1数据集上,移除最后一个MLP层可以加速模型对事实知识的记忆过程。
- 在Macondo v2数据集上,作者发现LM在训练数据中的无关信息存在时,难以泛化到测试数据。
结论:
-
软最大值瓶颈并不是导致增强LM与普通LM之间性能差距的原因。
-
MLP障碍可能会减缓模型的训练速度。
-
当训练数据包含无关信息时,常见的LM训练目标可能无法在测试数据上泛化。这表明了LM训练的一个重要局限性。
-
通过引入两个合成数据集(Macondo v1和v2),为未来研究语言模型训练提供了有益的工具。