
GraphRAG变种:HippoRAG进化到HippoRAG2.0,提升多跳复杂推理性能 原创
前面文章什么时候用GraphRAG?RAG VS GraphRAG综合分析如下表经过评测提到:HippoRAG2生成的图更为密集,提高了信息连接性和覆盖范围。并且这种变种的GraphRAG在需要多跳推理和上下文综合的任务中表现优异。
下面我们来看一看HippoRAG2如何通过增加知识图谱等结构来增强向量嵌入,以解决一些差距,即理解和关联性。供参考。
方法
HippoRAG 模拟了大脑皮层和海马体在人类记忆中的不同作用。使用 LLM 将语料库转换为知识图谱 (KG)作为人工海马索引。给定一个新的查询,HippoRAG 提取关键概念,并在 KG 上运行个性化 PageRank (PPR) 算法,以查询概念为种子,整合不同段落的信息进行检索。
PageRank 使 HippoRAG 能够探索知识图谱路径并识别相关子图,本质上是在单个检索步骤中执行多跳推理。这种高效的图搜索模拟了海马体从部分线索中提取相关信号的过程。PPR 中的节点概率会在索引段落上进行聚合,从而对其进行排序以供检索。
HippoRAG 2
HippoRAG 2 在HippoRAG的基础上进行了几项关键改进,如下:
1、密集-稀疏整合:HippoRAG知识图谱中的节点主要由描述概念的短语组成,我们在本文中将这些节点称为短语节点。这种图结构引入了与概念-上下文权衡相关的限制。概念简洁且易于泛化,但通常会丢失信息。HippoRAG 2改进: 在知识图谱(KG)中同时整合了概念(短语节点)和上下文(段落节点),以更好地模拟人类记忆中的概念与上下文的交互。这种整合使得 KG 不仅包含概念信息,还包含丰富的上下文信息,从而增强了检索的全面性和准确性。
2、更深层次的上下文化:观察到HippoRAG中的查询解析主要围绕概念展开,这经常忽视了知识图谱(KG)内的上下文对齐。这种以实体为中心的提取和索引方法对概念有强烈的偏好,导致许多上下文信号被利用不足。HippoRAG 2改进: 引入了更深层次的上下文链接方法,允许查询直接与 KG 中的三元组进行匹配,而不仅仅是实体或节点。这种方法提高了查询与知识图谱之间的语义匹配度,使得检索结果更加相关和准确。
3、识别记忆:引入了识别记忆机制,作为查询到三元组检索过程的一个过滤步骤。通过使用 LLM 过滤检索到的三元组,HippoRAG 2 能够更有效地选择相关的种子节点,从而提高检索的精度和效率。
4、在线检索的改进:在在线检索过程中,HippoRAG 2 不仅考虑了短语节点的排名分数,还将段落节点的嵌入相似性纳入重置概率的计算中。这种方法平衡了概念节点和上下文节点的影响,使得检索结果更加全面和准确。
实验
数据集设计:选择了多个数据集来评估RAG系统在保留事实记忆、增强关联性和理解能力方面的表现。数据集包括自然问题(NQ)、PopQA、MuSiQue、2Wiki、HotpotQA、LV-Eval和NarrativeQA。
基线方法:选择了三种简单的基线方法(BM25、Contriever、GTR)和几种大型嵌入模型(GTE-Qwen2-7B-Instruct、GritLM-7B、NV-Embed-v2),以及四种结构增强的RAG方法(RAPTOR、GraphRAG、LightRAG、HippoRAG)。
QA性能
检索性能
消融实验:查询到三元组的方法显著提高了HippoRAG 2的性能
参考文献:
- HippoRAG: Neurobiologically Inspired Long-Term Memory for Large Language Models,https://arxiv.org/pdf/2405.14831
- From RAG to Memory: Non-Parametric Continual Learning for Large Language Models,https://arxiv.org/pdf/2502.14802v2
- code:https://github.com/OSU-NLP-Group/HippoRAG
本文转载自大模型自然语言处理 作者:余俊晖
