# 热门搜索 #
搜索
AI界的“海马体”:HippoRAG技术如何让机器像人类一样思考?
7793点击    2024-06-08 12:54

大脑皮层、海马体、旁回:HippoRAG的三大神器


上个月,谷歌发布了AI搜索功能——AI overview。这一功能本来应该是谷歌背水一战,宣誓自己在AI时代也能制霸搜索的杀招。结果出来才两周就被网友们挖出了许多啼笑皆非的案例。


比如一位网友搜索“自制披萨的奶酪容易掉下来怎么办?”,AI Overviews 回答道:“往酱汁里添加约 1/8 杯的胶水即可。”它甚至还特意强调用无毒胶水。


而且这个离谱的答案并非AI Overviews自己瞎编的,是它从Reddit上一位用户 11 年前的评论中提取到的错误信息,只可惜它没读懂人类的幽默。不仅如此,它还输出了诸如 “人至少每天吃一块石头获取营养”“兔子曾在NBA打过球(球员名字中带有rabbit一词)”这样似乎看起来好像有点道理,但根本禁不起琢磨的回答。


AI overview的翻车表现并非特例,其背后反映的是LLMs在信息检索上的局限性:LLMs会根据输入的信息生成对应答案,但有答案不等于答案是对的。这里也可能包含虚假信息和恶意内容。


RAG(检索增强生成)一直被业界认为是解决类似问题的“救兵”。它可以通过检索外部知识来克服LLMs的局限性,其原理是在用户提问时关联外部数据库,并将其反馈给 LLMs,增强其文本生成能力。但最近越来越多的证据表明,RAG不光没有消解幻觉,反而连连被骗中招。


美国华盛顿大学专攻在线搜索的教授Chirag Shah就认为,AI Overviews 中的 Gemini很可能就是通过使用RAG技术来解决LLMs的局限性,结果反倒吃了RAG的亏。假如Google确实用了RAG技术,那它就有力地证明着RAG现阶段有着很大的短板:它也许能准确的检索到信息,但没有能力去确认信息的真实性。


但假设我们给RAG多点联想空间,多点判断源头,它是不是就能避免这样的问题了呢?


当AI遇上多跳难题:RAG技术的崛起与挑战


近期发布的一篇俄亥俄州立大学NLP团队的论文可能就是解决这一问题的关键。尽管他们一开始并不是为了解决这一RAG的缺陷而进行的研究,但结果却展示了一种可能的思路。


在自然语言处理(NLP)中,多跳问题(Multi-hop Problem)的解决通常需要跨越并整合多个句子甚至段落的信息,其本质是借助逻辑推理和信息整合来解决复杂问题,在现实生活中有着丰富的应用场景。 


回到刚刚那个问题:“自制披萨的奶酪容易掉下来怎么办?”这是一个典型的多跳问题,要回答这个问题,系统需要以下步骤:


第一跳:找到自制披萨的步骤都有哪些?


第二跳:确定哪个步骤与奶酪粘合有关,并查找相应的解决方法,最终得到答案。


传统RAG通常缺乏跨段落连接信息的能力,只能做到独立检索段落。这也是AI Overviews翻车的可能原因。现有能够处理多跳问题的RAG通常采用迭代检索(如IRCoT)的方式。即首先检索“美国历任总统”相关文档,然后使用生成的中间结果继续检索“穆斯林总统”的情况,最终生成答案。在这个过程中,每一轮的检索和处理都基于前一轮的结果,而多轮的迭代检索则会消耗大量计算资源和时间。


这篇论文提出了让RAG赋予大型语言模型(LLMs)类似人脑的知识整合和多跳推理能力的方法,它比现有的迭代检索方法在同等性能下要快 10-30 倍。而且无需多轮迭代检索,即可形成对于一个结果的多角度的查询。


大脑皮层、海马体、旁回:HippoRAG的三大神器


在这篇论文里,研究人员通过解决一个多跳问题的方式展示了他们的新模型——HippoRAG的工作原理:从许多描述数千名斯坦福大学教授和阿尔兹海默症研究人员的段落中找到一位从事阿尔兹海默症研究的斯坦福教授。


图1.海马体和HippoRAG的对比


当人脑面临这样一个多跳问题时,在我们的大脑同时掌握研究人员和斯坦福教授的信息的前提下,这位同时满足两者特征的教授会因为我们的大脑联想记忆能力而迅速被记起。这种能力被认为是由上图中所示的海马体(蓝色部分)驱动的,海马体在形成不同记忆单元之间的关联方面起着至关重要的作用,关涉人脑的记忆功能。HippoRAG解决多跳问题的灵感便来源于此。


因此,在理解HippoRAG的工作原理之前首先需要了解人类记忆模型的工作原理。海马体记忆索引理论为理解人类长期记忆提供了理论支持。提出者Teyler和Discenna认为,人类长期记忆和三个组件有关,分别是新皮层(Neocortex)、海马体(Hippocampus)和海马旁回区域(Parahippocampal regions),这三个组件协同工作,使得人类能够存储大量的世界知识并持续整合新的体验,而不会丢失先前的记忆,这种复杂的记忆系统是推理和决策的基础。 


HippoRAG通过模仿这些组件的功能来增强LLMs的知识整合能力,具体工作原理如下:


知识图谱(KG)-大脑皮层(Neocortex)在人类大脑中,大脑皮层负责处理和存储具体的记忆表示,比如我们学到的知识、经历的事件等。在HippoRAG中,这个角色由一个大型语言模型(LLM)来扮演。就像大脑皮层处理感官输入一样,这个语言模型负责从文本语料库中提取信息,并将其转换成一个知识图谱(KG),这个图谱就像是一个巨大的、没有固定结构的网络,存储着各种实体(比如人名、地点、概念)和它们之间的关系。 


个性化PageRank(PPR)算法-海马体(Hippocampus)海马体在人类记忆中扮演着索引的角色,帮助我们通过关联来检索记忆。在HippoRAG中,海马体的功能通过KG和个性化PageRank(PPR)算法来实现。这个算法可以帮助HippoRAG在知识图谱中找到与查询最相关的部分,就像海马体通过关联线索来检索记忆一样。 


检索编码器(retrieval encoders)-海马旁回(Parahippocampal regions)在人类大脑中,这些区域帮助我们识别记忆的不同部分,并在检索过程中提供上下文信息。在HippoRAG中,这一功能由检索编码器(retrieval encoders)来实现,它们帮助将查询中的关键概念与知识图谱中的节点联系起来,确保检索过程能够准确进行。 


图2.三个步骤上的模拟


当HippoRAG接收到一个新问题时,它首先通过语言模型(大脑皮层)来理解问题的关键点,然后利用检索编码器(海马旁回)将这些关键点与知识图谱中的节点关联起来。最后,通过个性化PageRank算法(海马体),HippoRAG能够在知识图谱中快速找到并整合跨多个文本片段的信息,从而提供一个准确的答案。


智能升级:HippoRAG技术的实际影响力


在了解HippoRAG的工作原理后,下一步值得关注便是HippoRAG在实际应用层面能够带来哪些改变。关于这点,研究人员也在论文中进行了充分的测试。


为了衡量HippoRAG在处理多跳问答任务时的效率,研究人员选取了两个具有挑战性的多跳问答数据集(MuSiQue和2WikiMultiHopQ)进行测试,并且将HippoRAG与IRCoT等迭代检索方法进行比较,综合评估了HippoRAG在在线检索过程中的成本效益和速度。 


实验结果表明,HippoRAG在处理多跳问题回答(multi-hop question answering)方面表现出色,相较于现有的检索增强生成(RAG)方法,HippoRAG具有显著的优势:


首先是性能提升。HippoRAG在两个流行的多跳问题回答基准测试上,相较于当前的RAG方法,性能提升了大约3%到20%。这意味着HippoRAG在理解和回答问题时更加准确。


其次是更低的成本和更快的响应速度。使用HippoRAG进行单步检索的成本比迭代检索方法(如IRCoT)低10到30倍,速度也快6到13倍。这就好比用手机查资料,HippoRAG就像是个优化过的搜索引擎,不仅速度快,还省钱。


以及更强大的新场景处理能力。文中讨论的多跳问题是标准意义上的多跳问题,即按照给定的、明确的路径或顺序连接信息来找到答案。但在现实生活中,我们常常会面临更加复杂和棘手的问题,没有明确的路径,需要模型探索不同的信息源来构建答案。


HippoRAG在解决上述被称之为路径发现型多跳问题(Path-Finding Multi-Hop Questions)时同样具有优势。而且HippoRAG还可以与现有的迭代检索方法结合使用,比如与IRCoT结合,作为辅助工具进一步提高在处理复杂问题时的性能。


总结来说,HippoRAG为多跳问题的解决和AI的推理能力提供了效率更高、成本更低的方案。更有意思的是,它甚至还顺便回应了谷歌的难题。


回顾谷歌的AI Overviews在搜索领域遭遇尴尬开局,人们不禁对AI的智能极限产生疑问。然而,随着HippoRAG技术的登场,我们似乎有了新的解决方案。如果AI Overviews能够借助HippoRAG的多跳推理能力,那么它在面对那些充满陷阱的问题时,将不再会陷入误区。它将能够像一位精明的侦探,通过缜密的逻辑推理,迅速地从海量信息中筛选出正确的答案。


想象一下,AI Overviews在经历了HippoRAG技术的洗礼后,再次被问到相同的问题:“自制披萨的奶酪容易掉下来怎么办?”这一次,它不仅能迅速地给出了正确答案:“确保奶酪与披萨饼底紧密结合的最佳方法是使用适量的披萨酱和高质量的奶酪,同时注意烤制时间和温度。”甚至还能幽默地补充道:“经过HippoRAG的升级,我可以确认,我们不再需要任何胶水,哪怕是无毒的,来固定我们的奶酪。我们的目标是让奶酪在披萨上,而不是在笑话集里。”


参考文献:

[2405.14831] HippoRAG: Neurobiologically Inspired Long-Term Memory for Large Language Models


本文来自微信公众号“腾讯科技”,作者:李安琪


AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
RAG

【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。

项目地址:https://github.com/microsoft/graphrag

【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。

项目地址:https://github.com/langgenius/dify


【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。

项目地址:https://github.com/infiniflow/ragflow/tree/main


【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目

项目地址:https://github.com/phidatahq/phidata


【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。

项目地址:https://github.com/TaskingAI/TaskingAI

2
AI搜索

【开源免费】MindSearch是一个模仿人类思考方式的AI搜索引擎框架,其性能可与 Perplexity和ChatGPT-Web相媲美。

项目地址:https://github.com/InternLM/MindSearch

在线使用:https://mindsearch.openxlab.org.cn/


【开源免费】Morphic是一个由AI驱动的搜索引擎。该项目开源免费,搜索结果包含文本,图片,视频等各种AI搜索所需要的必备功能。相对于其他开源AI搜索项目,测试搜索结果最好。

项目地址:https://github.com/miurla/morphic/tree/main

在线使用:https://www.morphic.sh/