人工智能咨询培训老师叶梓 转载标明出处
传统的检索增强型语言模型(RALMs)在检索时往往只关注短且连续的文本块,这限制了它们对整体文档上下文的全面理解。例如,在需要整合文本多个部分知识的主题性问题上,如理解整本书的内容,传统方法难以有效回答跨章节的问题。为了解决这一问题,斯坦福的研究团队提出了一种名为RAPTOR(Recursive Abstractive Processing for Tree-Organized Retrieval)的新颖方法。
RAPTOR模型通过递归地嵌入、聚类和总结文本块,构建了一个从底层到顶层具有不同抽象级别的树状结构。在推理时,RAPTOR从这棵树中检索信息,整合不同层次的长文档信息。通过受控实验,研究者发现使用递归摘要进行检索,在多个任务上相比传统检索增强型语言模型有显著的性能提升。特别是在涉及复杂、多步骤推理的问题回答任务上,RAPTOR展现了其卓越的性能。
RAPTOR方法
RAPTOR模型的设计理念基于长篇文本通常包含子主题和层级结构的观察。为了解决现有方法在语义深度和连接阅读方面的问题,RAPTOR构建了一个递归树状结构,它在保持主题广泛性的同时,也能关注细节,允许基于语义相似性的节点分组,而不仅仅是文本中的顺序。
图1为RAPTOR构建树状结构的过程,这个过程是自底向上进行的。首先,系统将文本分割成基于向量嵌入的小块,并递归地对这些文本块进行聚类。每个聚类操作都会生成一个节点,这些节点被称为兄弟节点,因为它们来自同一层次的聚类。随后,系统对每个聚类生成的文本块进行总结,形成一个新的父节点,该父节点包含了其子节点的文本摘要。这个过程不断重复,直到形成一个完整的树状结构,其中每个父节点都提供了其子节点内容的高层次抽象。这种结构不仅保留了文本的细节,还通过层层递进的总结,提供了对文本内容的全面理解,使得RAPTOR能够有效地处理复杂的信息检索任务。
构建RAPTOR树的第一步是将检索语料分割成长度为100的短文本块,这与传统的检索增强技术相似。如果一个句子超过了100个标记的限制,就将整个句子移动到下一个文本块,而不是在句子中间切断,以保持每个文本块内的上下文和语义连贯性。这些文本块随后使用基于BERT的编码器SBERT进行嵌入,形成树结构的叶节点。
为了将相似的文本块组织成组,RAPTOR采用了聚类算法。聚类后,使用语言模型对分组文本进行总结。然后,对这些总结后的文本重新进行嵌入,继续进行嵌入、聚类和总结的循环,直到进一步聚类变得不可行,最终形成原始文档的结构化、多层次的树状表示。
聚类算法的一个独特之处在于它采用了软聚类,允许节点属于多个聚类,而不需要固定数量的聚类。这种灵活性至关重要,因为单个文本片段通常包含与不同主题相关的信息,因此需要包含在多个摘要中。
聚类算法基于高斯混合模型(GMMs),提供了灵活性和概率框架。GMMs假定数据点是由几个高斯分布的混合生成的。对于给定的N个文本段,每个文本段表示为d维密集向量嵌入,文本向量x属于第k个高斯分布的似然度由表示。整体概率分布是加权组合P(x)=,其中表示第k个高斯分布的混合权重。
由于向量嵌入的高维度对传统GMMs构成挑战,RAPTOR采用了均匀流形近似和投影(UMAP)技术,这是一种流形学习方法,用于降维。UMAP中的最近邻参数n_neighbors决定了保持局部和全局结构之间的平衡。算法通过变化n_neighbors来创建分层聚类结构:首先识别全局聚类,然后在这些全局聚类内部执行局部聚类。这种两步聚类过程能够捕捉文本数据中的广泛关系,从广泛的主题到具体细节。
为了确定最佳聚类数量,RAPTOR使用贝叶斯信息准则(BIC)进行模型选择。BIC不仅惩罚模型复杂性,还奖励拟合优度。给定GMM的BIC是,其中N是文本段(或数据点)的数量,k是模型参数的数量,是模型似然函数的最大值。在GMM的背景下,参数数量k是输入向量维度和聚类数量的函数。
使用BIC确定最佳聚类数量后,使用期望最大化算法来估计GMM参数,即均值、协方差和混合权重。
使用GMM聚类节点后,每个聚类中的节点被发送到语言模型进行摘要。这一步骤允许模型将大块文本转换为所选节点的简洁、连贯的摘要。实验中使用了gpt-3.5-turbo生成摘要。摘要步骤将检索到的大量信息压缩到可管理的大小。
RAPTOR采用了两种查询机制:树遍历和折叠树。树遍历方法从树的根层开始,逐层遍历,修剪并选择每层最相关的节点。折叠树方法则将所有层的节点集体评估,以找到最相关的节点。
树遍历方法首先基于与查询嵌入的余弦相似度选择最相关的k个根节点。然后在下一层选择这些选定节点的子节点中的前k个节点,再次基于它们与查询向量的余弦相似度进行选择。这个过程重复进行,直到达到叶节点。最后,将所有选定节点的文本连接起来,形成检索到的上下文。
折叠树方法提供了一种更简单的搜索相关信息的方式,它通过将树的所有节点同时考虑,而不是逐层进行。这种方法将多层树展平为单层,将所有节点带到同一级别进行比较。首先,将整个RAPTOR树折叠成单层。这个新节点集C包含原始树的每个层的节点。接下来,计算查询嵌入与折叠集中所有节点的嵌入之间的余弦相似度。最后,选择与查询具有最高余弦相似度分数的前k个节点,继续添加节点到结果集中,直到达到预定义的最大标记数。
RAPTOR性能评估实验
RAPTOR的性能在三个问答数据集上进行了衡量:NarrativeQA、QASPER和QuALITY。这些数据集的选择旨在全面测试模型在不同长度文本上的理解与检索能力。数据集介绍:
-
NarrativeQA 数据集包含了基于完整书籍和电影剧本的1572个文档的问答对。NarrativeQA-Story任务要求全面理解整个叙事以准确回答问题,测试了模型在文学领域理解长文本的能力。使用标准的BLEU(B-1, B-4)、ROUGE(R-L)和METEOR(M)指标来衡量此数据集上的性能。
-
QASPER 数据集包含了1585篇NLP论文中的5049个问题,每个问题都探测嵌入在全文中的信息。QASPER中的答案类型被归类为可回答/不可回答、是/否、抽象型和提取型。使用标准的F1分数来衡量准确性。
-
QuALITY 数据集由多项选择题组成,每个问题都附带平均长度约为5000个标记的上下文段落。这个数据集要求对整个文档进行推理以完成问答任务,使我们能够在中等长度文档上衡量检索系统的性能。数据集包括一个具有挑战性的子集QuALITYHARD,其中包含大多数人类注释者在速度设置中回答错误的问题。报告了整个测试集和HARD子集的准确率。
使用UnifiedQA 3B作为阅读器,SBERT、BM25和DPR作为嵌入模型,分别在三个数据集上进行了控制比较,测试了有无RAPTOR树结构的差异。
在NarrativeQA 数据集上(表1),RAPTOR在ROUGE、BLEU-1、BLEU-4和METEOR指标上均优于基线方法。
在QuALITY 数据集上(表2和表4),RAPTOR的准确率达到了62.4%,比DPR和BM25分别提高了2%和5.1%。
在QASPER 数据集上(表3),使用三种不同的大型语言模型(GPT-3、GPT-4和UnifiedQA)进行比较,RAPTOR在所有测试的语言模型上均优于BM25和DPR。
图4 展示了RAPTOR检索《灰姑娘》故事中两个问题信息的过程:“故事的中心主题是什么?”和“灰姑娘是如何获得幸福结局的?”。突出显示的节点表示RAPTOR的选择,而箭头指向DPR的叶节点。值得注意的是,RAPTOR的上下文经常包含DPR检索到的信息,无论是直接作为叶节点还是作为更高层摘要的一部分。
RAPTOR不仅在控制比较中表现优异,而且在与现有最先进系统的比较中也显示出了其卓越的性能。表5和表7分别展示了RAPTOR在QASPER和QuALITY数据集上的F1匹配分数和准确率,证明了其在多个层面上超越了其他模型。
研究者们还探讨了RAPTOR树状结构中每一层节点对其检索能力的贡献。他们假设上层节点在处理需要广泛理解文本的主题性或多跳查询中起着至关重要的作用。
表6展示了在NarrativeQA数据集上,不同模型在四个指标(ROUGE-L、BLEU-1、BLEU-4和METEOR)上的性能比较。当RAPTOR与UnifiedQA 3B结合时,不仅超越了BM25和DPR等检索方法,还在METEOR指标上设立了新的最高标准。
表7展示了在QuALITY数据集的整体测试集和更具挑战性的困难子集上的模型准确率。GPT-4结合RAPTOR设定了新的最高标准。
表8展示了在QuALITY数据集中的一个故事上,RAPTOR在查询不同树状层次时的性能。表中展示了从叶节点(Layer 0)开始,以及从第一层(Layer 1)和第二层(Layer 2)开始检索时的性能差异。
研究者们通过定量和定性分析验证了他们的假设。定量分析使用了QuALITY数据集中的故事来理解上层节点的贡献。在检索过程中,他们限制了搜索范围,仅检索叶节点和每个上层,以及不同连续子集的层。表8中特定故事的发现表明,利用所有层的全树搜索,检索策略优于仅关注特定层的策略。
这些发现突显了RAPTOR中完整树状结构的重要性。通过为检索提供原始文本和更高级别的摘要,RAPTOR能够有效地处理更广泛的问题,从高阶主题查询到细节导向的查询。通过这些分析,研究者们证明了RAPTOR树状结构的每个层次都对其检索能力有独特的贡献,且全树搜索策略在多个查询和数据集中表现更佳。
论文链接:https://arxiv.org/abs/2401.18059
代码链接:https://github.com/psarthi/RAPTOR