当前位置: 首页 > news >正文

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磁盘分区工具 磁盘格式&#xff1a;MBR, GPT, 这两种名称分别是硬盘里面分区表两种格式的称呼&#xff0c; 第一种MBR格式的分区表最大支持2TB的容量&#xff0c; 磁盘的三种分区主分区&#xff0c;扩展分区&#xff0c;逻辑分区&#xff0c;主分区扩展分区<4 第…...

Python数据结构的库之Fuk使用详解

概要 fuk 是一个用于处理 Python 数据结构的库,全称为 "Fast and Uncomplicated Kit"。它提供了一系列高效、简洁的数据结构实现,以及对 Python 内置数据结构的扩展。通过使用 fuk,开发者可以更加方便地处理列表、集合、字典等数据类型,提高代码的执行效率和可读…...

【STM32学习】cubemx配置,串口的使用,串口发送接收函数使用,以及串口重定义、使用printf发送

1、串口的基本配置 选择USART1&#xff0c;选择异步通信&#xff0c;设置波特率 选择后&#xff0c;会在右边点亮串口 串口引脚是用来与其他设备通信的&#xff0c;如在程序中打印发送信息&#xff0c;电脑上打开串口助手&#xff0c;就会收到信息。 串口的发送接收&#xff0…...

复现MiDAS文章:文章数据和代码

介绍 MiDAS 4: A global catalogue of full-length 16S rRNA gene sequences and taxonomy for studies of bacterial communities in wastewater treatment plants 提供了全套的代码和数据&#xff0c;方便大家复现&#xff1a; github: https://github.com/ msdueholm/MiD…...

【Python专栏】Python的历史及背景介绍

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Python专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Python的背景介绍 关键词&#xff1a;Python、优缺点、领域 目录 …...

web端已有项目集成含UI腾讯IM

通过 npm 方式下载 TUIKit 组件&#xff0c;将 TUIKit 组件复制到自己工程的 src 目录下&#xff1a; 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本接受率高的医学期刊,赶紧码住!

&#x1f50d; 为什么选择这3本期刊&#xff1f; 今天老毕给大家分享3本医学 SCI&#xff0c;分别为Tumori Journal、Adipocyte以及Annals of Medicine。 这3本医学杂志&#xff0c;不仅审稿速度快&#xff0c;录用率还高&#xff0c;其中不乏接受率为48%的“毕业神刊”。2024年…...

怎样把视频字幕提取出来?分享4个零门槛的字幕提取工具

暑假正是弯道超车的好机会&#xff01;相信不少朋友都会选择宅在家自学网课。 不可否认的是&#xff0c;海量学习资源的确可以让学习变得更加便捷与自由。然而&#xff0c;如何高效地吸收和理解在线课程也就成为了一个关键问题。不敢想倘若此时能够拥有一款高效又实用的视频提…...

PostgreSQL 里怎样解决多租户数据隔离的性能问题?

文章目录 一、多租户数据隔离的性能问题分析&#xff08;一&#xff09;大规模数据存储和查询&#xff08;二&#xff09;并发访问和锁争用&#xff08;三&#xff09;索引维护成本高&#xff08;四&#xff09;资源分配不均 二、解决方案&#xff08;一&#xff09;数据分区&a…...

Oracle执行一条SQL的内部过程

一、SQL语句根据其功能主要可以分为以下几大类&#xff1a; 1. 数据查询语言&#xff08;DQL, Data Query Language&#xff09; 功能&#xff1a;用于从数据库中检索数据&#xff0c;常用于查询表中的记录。基本结构&#xff1a;主要由SELECT子句、FROM子句、WHERE子句等组成…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 抽象 现代智能交通系统 &#xff08;ITS&#xff09; 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 &#xff08;…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候&#xff0c;遇到了一些问题&#xff0c;记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

docker详细操作--未完待续

docker介绍 docker官网: Docker&#xff1a;加速容器应用程序开发 harbor官网&#xff1a;Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台&#xff0c;用于将应用程序及其依赖项&#xff08;如库、运行时环…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...

如何在网页里填写 PDF 表格?

有时候&#xff0c;你可能希望用户能在你的网站上填写 PDF 表单。然而&#xff0c;这件事并不简单&#xff0c;因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件&#xff0c;但原生并不支持编辑或填写它们。更糟的是&#xff0c;如果你想收集表单数据&#xff…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具&#xff0c;可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件&#xff0c;也不需要在线上传文件&#xff0c;保护您的隐私。 工具截图 主要特点 &#x1f680; 快速转换&#xff1a;本地转换&#xff0c;无需等待上…...

nnUNet V2修改网络——暴力替换网络为UNet++

更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...

【Linux】Linux安装并配置RabbitMQ

目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的&#xff0c;需要先安…...