AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


类海马体的RAG检索策略
发布日期:2024-09-23 19:11:05 浏览次数: 1543


今天分享的是来自俄亥俄州立大学的一篇文章 HippoRAG: Neurobiologically Inspired Long-Term Memory for Large Language Models,受神经生物学启发的大语言模型的长期记忆策略。
文章链接:https://arxiv.org/pdf/2405.14831
代码链接:https://github.com/OSU-NLP-Group/HippoRAG

摘要

这篇论文提出了一种名为 HippoRAG 的新型检索框架,灵感来源于人类长期记忆的海马体索引理论,旨在帮助大语言模型(LLMs)更高效地整合新的知识和经验。当前的 LLMs 即使结合检索增强生成(RAG)技术,仍然难以在预训练后高效地处理大量新信息。HippoRAG 将 LLMs、知识图谱以及 Personalized PageRank 算法结合起来,模仿新皮质和海马体在记忆中的不同角色,从而实现更深层次和高效的知识整合。

海马体索引理论

海马体索引理论可以用一个形象的比喻来解释:想象你有一个非常复杂的图书馆,里面有成千上万的书籍。这些书籍代表了你所有的记忆和知识。现在,图书馆有两个主要的区域:
  1. 书架区(新皮质):这是存放书籍的地方,你可以在这里找到每一本书。这些书籍代表了你处理和存储的各种信息和记忆。
  2. 索引卡区(海马体):这是一个存放索引卡的地方。每张索引卡上写着关于书籍的详细信息,比如书名、作者、主题等。索引卡帮助你快速找到你需要的书籍。
海马体索引理论认为,当你学习新东西时,信息首先进入“书架区”,即新皮质,然后通过“索引卡区”,即海马体,建立起索引卡。索引卡上的信息就是你记忆的关键信息和关联,用来帮助你在需要时找到具体的书籍或记忆。
当你想要回忆某件事时,你的脑海中会想起一些提示(就像查找索引卡),然后根据这些提示去“书架区”找到相关的书籍。这样,即使你只有一些部分信息(索引卡上的提示),也能帮助你完整地回忆起整个记忆(找到书籍)。
简单来说,海马体索引理论描述了大脑如何通过创建和利用记忆的“索引卡”来帮助我们更好地存储和检索信息。这使得大脑在面对新信息时,能够高效地更新记忆,同时保持过去的信息不丢失。

检索框架

我们结合框架图来理解这个框架是如何设计的以及如何模拟人类的记忆过程。
  1. 离线索引(Offline Indexing)
  • 新皮质模拟:左侧的第一个大脑图像代表新皮质区域,这里的信息被提取并转化为知识图谱。同时,合成的旁海马区(PHR)检测同义词。例如,在例子中,“Thomas, researches, Alzheimer's”和“Stanford, employs, Thomas”这样的三元组被提取并整合进知识图谱。
  • 知识图谱构建:右侧的大脑代表海马体及其周边区域,这里的信息来自新皮质,并被组织成知识图谱。在这个过程中,通过开放信息提取,将文本中的事件抽取出来,形成三元组结构,例如:“Thomas-researches-Alzheimer's”和“Stanford-employs-Thomas”。
  • 在线检索(Online Retrieval)
    • 记忆检索模拟:最下方的流程图展示了在线检索阶段的工作流程,首先从查询中提取关键信息,也就是查询实体。然后,这些实体被链接到知识图谱中的相应节点,链接依据是通过检索编码器确定的相似性。最后,通过个性化PageRank算法,从查询节点出发进行图搜索,以找到最相关的记忆片段。
    • 知识图谱检索:右侧展示了知识图谱检索的过程,箭头表示信息流,中间的大脑用彩色线条表示不同类型的关联。
  • 整体架构
    • 离线索引和在线检索之间的联系:离线索引阶段负责从大量文本数据中提取有用信息并将其组织成知识图谱;在线检索阶段则利用这些知识图谱来快速准确地响应用户的查询请求。

    实现方法

    在离线索引阶段,首先需要处理一组文本段落 ,使用一个指令调优的大规模语言模型 和一个检索编码器 。通过一次提示的方式,LLM 从每一段落中提取出名词短语节点 和关系边 ,这一过程通过OpenIE实现。在提取过程中,先从每个段落中识别出命名实体,然后将这些命名实体添加到 OpenIE 提示中,以提取包含概念(名词短语)在内的最终三元组。此外,检索编码器 被用来检测两个实体表示之间的高余弦相似度,当相似度超过预设阈值 时,会在知识图谱中添加额外的同义关系 。这一操作增加了知识图谱的连通性和冗余性,有助于更有效地完成模式匹配。最后,构建一个 的矩阵 ,记录每个名词短语在知识图谱中的出现频率。
    在线检索阶段,当接收到一个查询 时,首先使用 LLM 通过一次提示来提取查询中的命名实体 然后,这些命名实体被同一检索编码器 编码,并根据最高的余弦相似度选出与查询命名实体最相似的一组节点 接下来,使用个性化PageRank算法在知识图谱上运行,定义一个个性化的概率分布 #»n,使每个查询节点具有相同的概率,而其他节点概率为零。这使得概率质量集中在与查询节点最相关的邻近节点上。运行 PPR 算法后,得到更新的概率分布 #»n'。为了获得段落得分,将 #»n' 与之前定义的矩阵 相乘,得到用于检索的每段原始文本的排名得分 #»p。
    为了进一步提高检索效果,HippoRAG 引入了节点特异性(Node Specificity)。节点特异性是一种生物神经学上合理的方法,用于改进检索。节点 的特异性 定义为 其中 是包含节点 的所有段落集合。在检索过程中,通过将每个查询节点的概率 #»n 乘以相应的节点特异性 ,来调整其邻居节点的概率。这种方法允许在没有全局聚合的情况下利用局部信号来改进检索,从而避免了传统 IDF 方法在大脑中可能引入的计算开销。通过这种方式,HippoRAG 能够更好地模拟人类记忆系统的模式分离和模式完成功能。

    实验结论总结

    实验结果显示,HippoRAG 在单步检索和多步检索任务上均表现出色,并且这种检索性能的提升直接促进了问答任务的表现。
    在单步检索实验中,HippoRAG 在 MuSiQue 和 2WikiMultiHopQA 数据集上超越了包括 Propositionizer 和 RAPTOR 在内的其他基线方法。具体来说,在 2WikiMultiHopQA 数据集上,HippoRAG 在 R@2 和 R@5 上分别提高了 11% 和 20%,而在 MuSiQue 上也有大约 3% 的提升。这种差异部分归因于 2WikiMultiHopQA 的实体中心设计,该设计特别适合 HippoRAG。相比之下,在 HotpotQA 数据集上的表现稍逊一筹,原因在于此数据集对知识整合的需求较低,同时存在概念与上下文之间的权衡,但这个问题可以通过附录 F.2 中描述的集成技术来缓解。
    对于多步或迭代检索实验,结果显示 HippoRAG 和 IRCoT 是互补的。当 HippoRAG 作为 IRCoT 的检索器时,它继续带来了显著的性能提升,如在 MuSiQue 上 R@5 改善了约 4%,在 2WikiMultiHopQA 上改善了 18%,在 HotpotQA 上则有额外的 1% 改善。
    问答结果方面,使用 HippoRAG 作为检索器时,MuSiQue、2WikiMultiHopQA 和 HotpotQA 的 F1 分数分别提高了最多 3%、17% 和 1%,并且这种改进是在使用相同的 QA 阅读器情况下实现的。值得注意的是,单步 HippoRAG 的性能与 IRCoT 相当甚至更好,而且在线检索的成本更低,速度更快,成本效益比 IRCoT 高出 10 至 30 倍,速度也快了 6 至 13 倍。
    综上所述,HippoRAG 不仅在检索任务上取得了优异的成绩,而且由于其高效的检索性能,也间接推动了问答系统的效果,尤其是在多实体或多步推理场景下更为明显。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询