HippoRAG如何从大脑获取线索以改进LLM检索
知识存储和检索正在成为大型语言模型(LLM)应用的重要组成部分。虽然检索增强生成(RAG)在该领域取得了巨大进步,但一些局限性仍然没有克服。
俄亥俄州立大学和斯坦福大学的研究团队推出了HippoRAG,这是一种创新性的检索框架,其设计理念源于人类长期记忆系统中的海马索引理论。
HippoRAG的引入使大型语言模型(LLM)应用程序能够更有效地集成动态知识,并更快、更准确地检索重要信息。HippoRAG在多跳(multi-hop)问答等任务上表现出令人印象深刻的性能,对于需要对大型复杂知识图进行组装和推理的LLM应用程序非常有用。
LLM知识整合的挑战
哺乳动物的大脑可以储存大量的知识,并在不丢失以前经验的情况下不断整合新经验。这种长期记忆系统允许人类不断更新他们用于推理和决策的知识。
相比之下,LLM在预训练后的知识整合仍然很困难。虽然RAG已经成为LLM中长期记忆的主流解决方案,但现有的方法在处理新文档时往往采取单独编码的方式,这使得不同来源的知识难以有效集成。
许多应用程序需要跨多个文档进行知识集成。例如,科学文献综述、法律案例简报和医学诊断需要将不同来源中提到的事实和概念相互关联。标准的多跳问答也需要整合各种文档的多个段落之间的信息。
为了完成这些任务,当前的RAG系统使用多个检索和生成步骤来连接不同的段落。然而,即使执行了多步RAG,对于许多知识集成场景来说,也往往是不够的。
HippoRAG
HippoRAG从大脑中的新皮层和海马体之间的生物相互作用中获得灵感,这种相互作用使强大的基于场景的、不断更新的人类大脑记忆成为可能。
根据科学研究,大脑皮层负责处理和存储实际的记忆表征,而海马体则拥有一组相互关联的索引,这些索引指向新皮层中的记忆单元,并储存它们之间的关联性。这两个关键组成部分共同协作,执行“模式分离”和“模式完成”的功能,前者确保不同经历的表征具有独特性,后者则让从部分刺激中检索完整记忆成为可能。
HippoRAG通过使用LLM将文档语料库转换为充当人工海马索引的知识图来模仿这种记忆模型。HippoRAG分为两个阶段,离线索引用于存储信息,在线检索用于将知识整合到用户请求中。
离线索引阶段类似于大脑中的记忆编码,使用指令调优的LLM以知识图三元组的形式从段落中提取重要特征。与传统的RAG管道中使用的密集嵌入相比,这允许更细粒度的模式分离。
人工海马索引是在检索语料库中得到的三元组的基础上建立的开放知识图谱。为了连接这些组件,HippoRAG使用现成的密集编码器进行检索,这些编码器在知识图中相似的名词短语之间提供额外的边缘,以帮助下游模式完成连接。编码器有助于使系统更有弹性和灵活性,因为相同的知识可以用稍微不同的方式表达。
在线检索过程反映了大脑的记忆检索过程。LLM从用户查询中提取显著的命名实体,然后根据检索编码器确定的相似性将其链接到知识图中的节点。然后,HippoRAG使用个性化PageRank算法,这是PageRank的一个版本,它使用一组用户定义的源节点在图中分布概率。这种约束使HippoRAG能够将其输出限制为前一步中选择的候选查询节点集。然后将结果应用于索引的段落,以选择它们进行检索。
HippoRAG的实际应用
研究人员在两项具有挑战性的多跳问答基准测试(MuSiQue和2WikiMultiHopQA)以及HotpotQA数据集上,对HippoRAG的检索能力进行了全面的评估。他们将其与几种强大的检索方法和最近的LLM增强基线进行了比较。
评估结果表明, HippoRAG在单步检索上优于所有其他方法,包括那些基于LLM增强的基线模型。与多步骤检索方法IRCoT相结合时,HippoRAG在相同的数据集上提供高达20%的互补增益。
HippoRAG的一个主要优点是它能够在一个步骤中执行多跳检索。其在线检索过程的成本与目前的迭代检索方法(例如IRCoT)相比低10到30倍,快6到13倍,同时实现了相当的性能。
研究人员在报告中写道:“我们提出的神经生物学原理方法虽然简单,但已经显示出克服标准RAG系统固有局限性的巨大潜力,同时保留了它们相对于参数记忆的优势。HippoRAG在路径跟踪多跳QA和路径发现多跳QA方面的卓越表现,以及其显著的效率提升和持续更新的能力,使其成为了连接标准RAG方法和参数化记忆之间的强大中间框架,为LLM中的长期记忆问题提供了令人信服的解决方案。”
研究人员承认,为了进一步改进HippoRAG,还需要克服一些局限性,例如对其组件进行微调,并进一步验证其对更大知识图谱的可扩展性。然而,当前的研究结果已经证明了神经生物学启发的方法在推进LLM知识整合方面的潜力,并使他们能够对非结构化信息进行更复杂的推理。
知识图谱和LLM的结合是一个非常强大的工具,可以解锁许多应用程序。GNN-RAG是一种将图神经网络(GNN)和知识图与LLM相结合的创新方法,已被证明可以解决许多经典RAG无法解决的复杂推理问题。而将GNN引入HippoRAG可能是未来探索的一个有趣方向。
相关文章:
HippoRAG如何从大脑获取线索以改进LLM检索
知识存储和检索正在成为大型语言模型(LLM)应用的重要组成部分。虽然检索增强生成(RAG)在该领域取得了巨大进步,但一些局限性仍然没有克服。 俄亥俄州立大学和斯坦福大学的研究团队推出了HippoRAG,这是一种创新性的检索框架,其设计理念源于人类…...
求函数最小值-torch版
目标:torch实现下面链接中的梯度下降法 先计算 的导函数 ,然后计算导函数 在处的梯度 (导数) 让 沿着 梯度的负方向移动, 自变量 的更新过程如下 torch代码实现如下 import torchx torch.tensor([7.5],requires_gradTrue) # print(x.gr…...
如何将HEVC格式的视频转换为无损、未压缩的MP4格式视频?
在和大家分享视频格式转换之前,先跟大家分享一下HEVC格式的视频到底是什么文件?压缩原理是什么?了解了它的本质之后,我们就可以知道如何保证视频高清无损了。 如何将HEVC格式的视频转换为无损、未压缩的MP4格式视频? …...
自定义在线活动报名表单小程序源码系统 源代码+搭建部署教程 可二次定制开发
系统概述 在数字化时代,线上活动成为连接用户与组织的重要桥梁。为了高效地管理活动报名流程,一款灵活、易用的在线活动报名表单小程序显得尤为重要。本文旨在为开发者提供一套全面的解决方案,包括自定义在线活动报名表单小程序的源代码分析…...
数据分析入门指南:表结构数据(三)
在数字化转型的浪潮中,表结构数据作为企业决策支持系统的核心要素,其重要性日益凸显。本文深入剖析了表结构数据的本质特征、高效处理策略,并探讨了其在现代商业智能环境中的广泛应用,旨在为数据分析师与决策者提供前沿洞察与实战…...
凌凯科技前五大客户依赖症加剧:研发费用率骤降,应收账款大增
《港湾商业观察》黄懿 6月13日,上海凌凯科技股份有限公司(下称“凌凯科技”)在港交所提交上市申请,拟于主板上市,华泰国际为其独家保荐人。 凌凯科技致力于提供小分子化合物技术和产品解决方案,专注于制药…...
5 科大讯飞AI大赛:热力学定律的电池材料生产参数动态调控
赛题名称:基于热力学定律的电池材料生产参数动态调控挑战赛 赛题类型:数据挖掘 赛题任务:利用时空模型进行建模并预测匣钵实际温度 赛题链接:https://challenge.xfyun.cn/topic/info?typebattery-material&optiontjjg&…...
概论(二)随机变量
1.名词解释 1.1 样本空间 一次具体实验中所有可能出现的结果,构成一个样本空间。 1.2 随机变量 把结果抽象成数值,结果和数值的对应关系就形成了随机变量X。例如把抛一次硬币的结果,正面记为1,反面记为0。有变量相对应的就有自…...
Apache AGE 安装部署
AGE概述 概述 我们可以通过源码安装、拉取docker镜像运行、直接使用公有云三种方式中的任意一种来使用Apache AGE 获取 AGE 发布版本 可以在 https://github.com/apache/age/releases 找到发布版本和发布说明。 源代码 源代码可以在 https://github.com/apache/age 找到…...
Python29 Tensorflow的基本知识和使用
1. TensorFlow TensorFlow 是一个开源的机器学习框架,由 Google Brain 团队开发。它用于数据流图的计算,尤其擅长深度学习任务。在 TensorFlow 中,数据流图(Data Flow Graph)是其核心概念之一,它定义了计算…...
Linux操作系统上用到的磁盘分区管理工具
parted磁盘分区工具 磁盘格式:MBR, GPT, 这两种名称分别是硬盘里面分区表两种格式的称呼, 第一种MBR格式的分区表最大支持2TB的容量, 磁盘的三种分区主分区,扩展分区,逻辑分区,主分区扩展分区<4 第…...
Python数据结构的库之Fuk使用详解
概要 fuk 是一个用于处理 Python 数据结构的库,全称为 "Fast and Uncomplicated Kit"。它提供了一系列高效、简洁的数据结构实现,以及对 Python 内置数据结构的扩展。通过使用 fuk,开发者可以更加方便地处理列表、集合、字典等数据类型,提高代码的执行效率和可读…...
【STM32学习】cubemx配置,串口的使用,串口发送接收函数使用,以及串口重定义、使用printf发送
1、串口的基本配置 选择USART1,选择异步通信,设置波特率 选择后,会在右边点亮串口 串口引脚是用来与其他设备通信的,如在程序中打印发送信息,电脑上打开串口助手,就会收到信息。 串口的发送接收࿰…...
复现MiDAS文章:文章数据和代码
介绍 MiDAS 4: A global catalogue of full-length 16S rRNA gene sequences and taxonomy for studies of bacterial communities in wastewater treatment plants 提供了全套的代码和数据,方便大家复现: github: https://github.com/ msdueholm/MiD…...
【Python专栏】Python的历史及背景介绍
博客主页:Duck Bro 博客主页系列专栏:Python专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ Python的背景介绍 关键词:Python、优缺点、领域 目录 …...
web端已有项目集成含UI腾讯IM
通过 npm 方式下载 TUIKit 组件,将 TUIKit 组件复制到自己工程的 src 目录下: npm i tencentcloud/chat-uikit-vue mkdir -p ./src/TUIKit && rsync -av --exclude{node_modules,package.json,excluded-list.txt} ./node_modules/tencentcloud/…...
IF不降反增!审稿速度,比我家网速还快!3本接受率高的医学期刊,赶紧码住!
🔍 为什么选择这3本期刊? 今天老毕给大家分享3本医学 SCI,分别为Tumori Journal、Adipocyte以及Annals of Medicine。 这3本医学杂志,不仅审稿速度快,录用率还高,其中不乏接受率为48%的“毕业神刊”。2024年…...
怎样把视频字幕提取出来?分享4个零门槛的字幕提取工具
暑假正是弯道超车的好机会!相信不少朋友都会选择宅在家自学网课。 不可否认的是,海量学习资源的确可以让学习变得更加便捷与自由。然而,如何高效地吸收和理解在线课程也就成为了一个关键问题。不敢想倘若此时能够拥有一款高效又实用的视频提…...
PostgreSQL 里怎样解决多租户数据隔离的性能问题?
文章目录 一、多租户数据隔离的性能问题分析(一)大规模数据存储和查询(二)并发访问和锁争用(三)索引维护成本高(四)资源分配不均 二、解决方案(一)数据分区&a…...
Oracle执行一条SQL的内部过程
一、SQL语句根据其功能主要可以分为以下几大类: 1. 数据查询语言(DQL, Data Query Language) 功能:用于从数据库中检索数据,常用于查询表中的记录。基本结构:主要由SELECT子句、FROM子句、WHERE子句等组成…...
SpringMVC的架构有什么优势?——控制器(一)
#SpringMVC的架构有什么优势?——控制器(一) 前言 关键字: 机器学习 人工智能 AI chatGPT 学习 实现 使用 搭建 深度 python 事件 远程 docker mysql安全 技术 部署 技术 自动化 代码 文章目录 控制器(Controller) 控制器是S…...
LabVIEW干涉仪测向系统
开发了一套基于LabVIEW的软件系统,结合硬件设备,构建一个干涉仪测向实验教学平台。该平台应用于信号处理课程,帮助学生将理论知识与实际应用相结合,深化对信号处理核心概念的理解和应用。 项目背景: 当前信号处理教学…...
JavaScript 模拟光标全选选中一段文字
在JavaScript中,如果你想要通过编程方式选择一段文本,你可以使用window.getSelection()和Range对象。以下是一个简单的例子,展示了如何使用这些对象来选中页面上的特定文本节点: function selectText(node) {if (window.getSelect…...
【算法】代码随想录之数组(更新中)
文章目录 前言 一、二分查找法(LeetCode--704) 二、移除元素(LeetCode--27) 前言 跟随代码随想录,学习数组相关的算法题目,记录学习过程中的tips。 一、二分查找法(LeetCode--704࿰…...
Win-ARM联盟的端侧AI技术分析
Win-ARM联盟,端侧AI大幕将起 微软震撼发布全球首款AI定制Windows PC——Copilot PC,搭载全新NPU与重塑的Windows 11系统,纳德拉盛赞其为史上最快、最强、最智能的Windows PC。该设备算力需求高达40TOPS,支持语音翻译、实时绘画、文…...
MySQL常见的几种索引类型及对应的应用场景
MySQL 提供了多种索引类型,每种索引类型都有其特定的应用场景和优势。以下是 MySQL 中常见的几种索引类型及其具体应用场景: 1. B-Tree 索引 特点: B-Tree(Balanced Tree,平衡树)是 MySQL 的默认索引类型…...
如何利用java依赖jave-all-deps实现视频格式转换
视频格式转换是常见的需求,通过使用Java依赖库jave-all-deps可以实现视频格式的转换。本文将详细介绍在Java中如何利用jave-all-deps实现视频格式转换。 什么是jave-all-deps库? jave-all-deps是一款基于FFmpeg库的Java音视频编解码库。它提供了一系列AP…...
三端保险丝-锂电池BMS二次保护器件
三端保险丝,从其结构上来看,是一种芯片式表贴安装产品,通常包含三个端子。其中,两个端子由合金金属构成的保险丝串联而成,当电路中出现过流或短路故障时,保险丝能够迅速熔断,切断电路࿰…...
用户增长 - 私域 - 社群运营自检清单SOP(社群运营30问)
Check List: 1.你的目标用户是谁? 2.你的目标用户有哪些需要立马解决的需求?有哪些长期需求?这些需求的优先级是什么? 3.做社群的目的是什么? 4.你的用户和业务是否适合做社群? 5.你做哪类社群才能更好的帮…...
算法·高精度
高精度算法 分为四则运算加减乘除 适用条件 都高精度了,肯定时long long都会爆的情况——一般与阶乘有关 注意事项 用数组模拟位运算,最后在一起考虑进位 注意res[i1]res[i]/10; 是""不是 两数相加,相乘数组的新长度会变&…...
微信网站域名备案成功后怎么做/中国宣布疫情结束日期
一. 出错原因 原因: 当后端传Long类型给前端, Long类型数据大于17位时, 前端拿到数据会损失精度.前端拿到的数据: 第16位会四舍五入, 17位后的数据自动用0代替)二. 解决方案 解决方案: 后端把Long类型改为String类型, 再传给前端三. 案例 1 传给前端是Long类型的单个数据 : …...
dede 门户网站/推广产品的方法和步骤
共回答了13个问题采纳率:84.6%172.19.52.128/26代表该网段为172.19.52.128-172.19.52.191,段内2^8/2^(26-3*8)64个IP地址,划分为两个16IP地址的子网,一个32IP地址的子网,三个子网分别为172.19.52.128/28、172.19.52.14…...
动画型网站/培训心得体会200字
如何为窗体应用程序显示控制台 周银辉 由于某种特殊需求(⊙﹏⊙),需要将窗体应用程序的控制台输出显示出来,其实是为了显示Console.Write()信息以便调试哈(VS的output窗口是可以显示的&…...
手机网站导航条/yandex网站推广
1.看的什么书? 《基于Apache Flink的流处理》,我开始翻了几页书的时候,我感觉要翻车了,都是文字性的描述,而且版本是1.7版本,还没有我想看的Flink SQL 以及 Flink 实时数仓。 2,后面呢&#x…...
网站设计方法/国外网络推广
“短视频”目前呈现井喷式的发展,主要得益于傻瓜化的内容制作和便捷化的内容传播, “快手”、“抖音和快手”两大短视频平台都倡导的是利用平台去记录和分享生活,在编辑拍摄的视频时,可以利用官方平台提供的简易剪辑工具进行简单加…...
天津网站建设 文率科技/怎么弄推广广告
0. 前言 听了实验室6位老师的讲座之后,对老师们的研究内容有了基本的认识。下面将对这6次的内容做个总结。 1. 主动学习 主动学习方法,是指能够从任务出发,通过对任务的理解来制定标准,挑选最关键的样本,使其最有助于…...