提升多跳问答中的语言模型知识编辑能力

人工智能咨询培训老师叶梓 转载标明出处

大模型在静态知识库的更新上存在局限,特别是在面对需要多步骤推理的多跳问题时,难以提供准确和最新的回答。为了解决这一问题,来自美国佐治亚大学、纽约大学、莱斯大学、北卡罗来纳州立大学等机构的研究人员提出了一种名为“检索增强型知识编辑(Retrieval-Augmented model Editing, RAE)”的框架。图1展示了一个例子,说明了传统的基于相似度的搜索方法在检索用于语言模型编辑的正确事实时的不足,以及如何通过更复杂的检索策略来改进这一过程。

论文链接:https://arxiv.org/pdf/2403.19631

方法

检索增强型知识编辑框架旨在提升多跳问答中的语言模型性能,主要包含两个关键步骤:(1) 检索与问题相关的编辑过的事实(edited facts);(2) 使用这些检索到的事实通过上下文学习(in-context learning)编辑语言模型。

简单的编辑方法可能会使用基于相似度的搜索来检索与目标问题相似的编辑过的事实。这些事实随后被整合到一个提示模板中,通过上下文学习进行编辑。例如,模板可以是“Given fact: {𝛿′}, {𝑞} ?”。然而,这种方法在检索需要回答𝑞的问题时编辑过的事实Δ𝑞时存在困难,因为这些事实通常包含与𝑞不同的实体,导致在大型事实库Δ中得到低相似度分数。

为了解决这个问题,研究者提出了编辑事实链提取的方法来获取。每个本质上形成了一个连接的知识图谱(KG)。这样的知识图谱可以通过从一个实体到另一个实体的迭代遍历来检索。

图2展示了检索增强型上下文模型编辑方法的总体框架。在这个框架中,可以看到从外部知识图谱到编辑记忆的步骤,然后通过互信息基于检索得到检索事实,最后通过上下文学习进行编辑。

研究者介绍了如何构建一个连接不同事实的知识图谱,并提出了给定输入问题时提取相关子图的目标:

为了有效地编辑,检索到的子图𝐺𝑆必须与问题共享相关信息。因此,定义子图检索的目标是最大化子图和需要编辑答案的问题集之间的互信息(MI)。互信息的公式化定义如下:

\text{max}_{𝐺𝑆} \𝐼(𝑄;𝐺𝑆) = 𝐻(𝑄) − 𝐻 (𝑄 | 𝐺 = 𝐺𝑆)

这里,𝐻(𝑄)是固定的问题集𝑄的香农熵,是常数。因此,最大化互信息𝐼(𝑄;𝐺𝑆)相当于最小化条件熵𝐻(𝑄 | 𝐺 = 𝐺𝑆)。

为了解决实际中计算𝑝(𝑞|𝐺 = 𝐺𝑆)的挑战,研究者提出了利用大型语言模型的下一词预测能力来计算概率。给定形成尾到头连接知识图谱的事实链,提取的子图𝐺𝑆可以表示为𝐺𝑆 =(ℎ1, 𝑟1, 𝑡1, ..., ℎ𝑛, 𝑟𝑛, 𝑡𝑛),其中ℎ𝑖和𝑡𝑖是节点,𝑟𝑖是边,𝑛是检索到的三元组的数量。

为了减少检索到的子图中可能引入的不相关信息,研究者提出了一种剪枝方法,该方法利用模型输出的不确定性来消除冗余事实。通过实验验证了这种方法的有效性,实验中使用了不同的事实子集作为模型输入,并观察到当事实子集包含问题的全部事实链时,模型输出的熵显著降低。

想要掌握如何将大模型的力量发挥到极致吗?叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具。9月22日晚,实战专家1小时讲解让您轻松上手,学习如何使用 Llama Factory 微调模型。

加助理微信提供直播链接:amliy007,29.9元即可参加线上直播分享,叶老师亲自指导,互动沟通,全面掌握Llama Factory,关注享粉丝福利,限时免费CSDN听直播后的录播讲解。
 

LLaMA Factory 支持多种预训练模型和微调算法。它提供灵活的运算精度和优化算法选择,以及丰富的实验监控工具。开源特性和社区支持使其易于使用,适合各类用户快速提升模型性能。

实验

实验回答以下问题:

  1. RAE在编辑LLM输出方面的效果如何?
  2. 他们的检索策略与其他检索方法相比表现如何?
  3. 他们提出的剪枝技术是否能够从检索到的事实中移除冗余信息?
  4. RAE是否适用于专有的LLMs?

实验涉及多种不同大小和系列的语言模型,包括GPT-2 (1.5B), GPT-J (6B), Falcon (7B), Vicuna (7B), 和 Llama2-chat (7B)。这些模型中,GPT-2, GPT-J, 和 Falcon 是未经指令调整的预训练语言模型,而Vicuna 是 Llama1 的指令调整变体,Llama2-chat 是 Llama2 的指令调整版本。包括这两种类型的模型,以验证所提方法的有效性。

三种模型编辑方法进行比较:模型权重更新方法、辅助模型方法,以及基于RAG的方法。Subgraph Retriever (SR) 作为高级知识检索方法的基准。

在MQUAKE-CF 和 MQUAKE-T 数据集上评估了编辑方法。这些数据集包含不同跳数的问题的编辑实例。利用 MQUAKE-CF-9k 数据集中的相关案例来为基线和方法制作提示模板。

为了回答第一个问题,研究者们评估了他们的模型编辑方法在不同语言模型上的表现,并与不同的基线方法进行了比较。表2 展示了在进行数千次编辑时,RAE在三个数据集上的表现均优于其他方法。这主要得益于他们新颖的基于互信息的检索目标和有效的剪枝策略。

为了回答第二个问题,研究者们评估了他们基于互信息的检索方法在多跳问答任务中的有效性。他们考虑了三种基于嵌入的方法和一种基于概率的方法作为基线。

为了回答第三个问题,研究者们验证了他们提出的剪枝策略对多跳编辑任务的益处。通过在原始问题所需的事实之外始终检索2个额外事实来进行实验。表4 报告了使用或不使用剪枝策略的RAE的编辑准确性,表明剪枝技术显著提高了模型编辑的性能。

为了回答第四个问题,研究者们将RAE应用于只能通过API访问的专有语言模型,如ChatGPT。他们使用GPT-2 (1.5B) 作为检索模型,并报告了他们方法的编辑准确性和总编辑成本。

研究者们还评估了不同编辑批次大小的编辑性能。他们发现,无论是在Vicuna还是Llama2模型中,RAE的准确性在不同编辑实例中保持稳定,而Mello的准确性随着实例的增加显著下降。

通过图6 展示了两个来自M-CF数据集的案例,以演示在知识图谱上的检索过程和检索到的事实的剪枝过程。图中的红色、黑色和虚线代表了使用束搜索的知识图谱中的最终路径、候选路径和丢弃路径,反映了检索设计中的决策过程。

通过这些详细的实验和评估,全面地展示了RAE框架在多跳问答中编辑语言模型的有效性和实用性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1523895.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

案例-KVM+GFS分布式存储系统构建KVM高可用(虚拟化实战)

NFS GlusterFS 基于共享存储 采用GFS做共享存储; 实验环境:101 102 103 104 做gfs集群;201 202做虚拟机; 同步一下会话; 为了方便使用主机名进行通信,修改hosts文件; 为了使用GlusterFS的仓库…

机器学习引领未来:赋能精准高效的图像识别技术革新

图像识别技术近年来取得了显著进展,深刻地改变了各行各业。机器学习,特别是深度学习的突破,推动了这一领域的技术革新。本文将深入探讨机器学习如何赋能图像识别技术,从基础理论到前沿进展,再到实际应用与挑战展望,为您全面呈现这一领域的最新动态和未来趋势。 1. 引言 …

Python进阶07-高级语法

零、文章目录 Python进阶07-高级语法 1、with语句 (1)文件操作 文件使用完后必须关闭,因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件数量也是有限的 # 第一步:打开文件 f open(python.txt…

CAS理解和说明

目录 1.CAS是什么? 2.CAS的应用场景 2.1 实现原子类 2.2 实现自旋锁 3.CAS的典型问题:ABA问题 1.CAS是什么? CAS:全称compare and swap(比较并交换) 我们假设内存中的原始数据V,旧的预期值A,需要修改的新值B 1.比较A与V是否相等(比较…

Spring6梳理6——依赖注入之Setter注入

以上笔记来源: 尚硅谷Spring零基础入门到进阶,一套搞定spring6全套视频教程(源码级讲解)https://www.bilibili.com/video/BV1kR4y1b7Qc 目录 一、引言 二、Java方法初始化过程 2.1 set方法及构造器方法实现Book对象初始化 三…

QT实战项目之音乐播放器

项目效果演示 myMusicShow 项目概述 在本QT音乐播放器实战项目中,开发环境使用的是QT Creator5.14版本。该项目实现了音乐播放器的基本功能,例如开始播放、停止播放、下一首播放、上一首播放、调节音量、调节倍速、设置音乐播放模式等。同时还具备搜索功…

C语言:常用技巧及误用

一、字符串存储在数组中 int main() {char* arr[7] {"xiaoming","zhangsan","李四"};printf("%s\n", arr[0]);printf("%s\n", arr[2]);return 0; } 二、scanf()函数用法 2.1 scanf()输入字符串 int main() {char arr[10…

jquery下载的例子如何应用到vue中

参考测试圈相亲平台开发流程(4):选个漂亮的首页 (qq.com) 下载的文件夹解压到v_love项目的pubilc下的static文件夹内,这里放的都是我们的静态资源。 打开文件夹内的index.html,我们先确定下它是不是我们要的东西&…

多目标应用:四种多目标优化算法(NSGA2、NSPSO、NSDBO、NSCOA)求解柔性作业车间调度问题(FJSP),MATLAB代码

一、柔性作业车间调度问题 柔性作业车间调度问题(Flexible Job Scheduling Problem, FJSP) 的描述如下:n个工件 { J , J 2 , . . , J n } \{J,J_2,..,J_n\} {J,J2​,..,Jn​}要在 m m m 台机器 { M 1 , M 2 , . . , M m } \{M_1,M_2,..,M_m\} {M1​,M2​,..,Mm​} …

做了SEO为何效果平平无奇?

SEO(Search Engine Optimization)即搜索引擎优化,指在不同的搜索引擎中,按照相应的规则与机制提高网站在特定的搜索引擎中的自然排名。作为对产品和服务进行数字宣传营销的重要手段,SEO已然成为各企业提高网站曝光和流…

Ubuntu 24.04 安装 英特尔工具包 Intel® Toolkits

目录 1.采用用户界面 GUI 安装英特尔基本工具包 Intel oneAPI Base Toolkit 1.1 下载离线英特尔基本工具包 1.2 安装英特尔基本工具包 1.3 英特尔基本工具包 Intel oneAPI Base Toolkit 环境设置 2.安装英特尔高性能计算工具包 Intel HPC Toolkit 2.1 下载离线英特尔高性…

[MOCO v3] An Empirical Study of Training Self-Supervised Vision Transformers

1、目的 探索基于contrastive/Siamese范式(而非masked auto-encoding范式)和ViT结构(而非卷积网络)的自监督学习 2、方法 MoCo v3 ​​​​​​​ 1)random data augmentation 2)query encoder &a…

Java笔试面试题AI答之正则表达式(3)

文章目录 13. 简述Java String支持哪几种使用正则表达式的方法?14. 请列举常见校验数字的表达式 ?15. 请列举常见校验字符的表达式 ?1. 汉字2. 英文和数字3. 特定长度的字符串4. 由26个英文字母组成的字符串5. 由数字和26个英文字母组成的字符…

【电池专题】软包电池封装工序

铝塑膜成型工序冲坑 铝塑膜成型工序,软包电芯可以根据客户的需求设计成不同的尺寸,当外形尺寸设计好后,就需要开具相应的模具,使铝塑膜成型。 成型工序也叫作冲坑,顾名思义,就是用成型模具在加热的情况下,在铝塑膜上冲出一个能够装卷芯的坑,具体的见下图。 …

「Python程序设计」循环控制:for和while循环语句

​我们在实际业务,或者是实际问题,进行数据分析处理的过程中,往往需要对数据集进行处理。 从程序设计的角度来看,一维数组,代表了同一数据类型的相关数据。二维数组,相当于我们excel中的表格,可…

ML17_变分推断Variational Inference

1. KL散度 KL散度(Kullback-Leibler divergence),也称为相对熵(relative entropy),是由Solomon Kullback和Richard Leibler在1951年引入的一种衡量两个概率分布之间差异的方法。KL散度不是一种距离度量&am…

硬件工程师笔试面试知识器件篇——电容

目录 电容 2.1、基础 电容原理图 电容实物图 2.1.1、定义 2.1.2、原理 2.1.3、电容的类型 分类1: 分类2: 2.1.4、电容的应用 2.2、相关问题 2.2.1、电容器的电容值如何测量 2.2.2、不同类型的电容器在实际应用中有那些具体差异 2.2.3、如何选择合适的电容器来满…

模型从 HuggingFace 转存到 ModelScope

由于 HuggingFace 网络访问比较慢,国内通常会使用魔搭下载模型,如果魔搭上还没有,需要从 HuggingFace 准存一下,本文将通过 Colab AliyunPan 的方式下载模型并进行转存。 登录Colab 并运行一下命令 安装依赖包,Hugg…

SpringBoot-读取配置文件方式

目录 前言 一. 使用 ConfigurationProperties 注解读取 二. 使用 Value 注解读取配置文件 三. 使用 Environment 类获取配置属性 前言 Spring Boot提供了多种灵活的方式来读取配置文件,以适应不同的开发和部署需求,SpringBoot启动的时候,…

Datawhale X 李宏毅苹果书 AI夏令营(深度学习进阶)task3

批量归一化 其实归一化简单一点理解就类似于我们学过的数学中的每个数值减去平均值除以标准差。 神经网络中的批量归一化(Batch Normalization,BN)就是其中一个“把山铲平”的想法。不要小看优化这个问题,有时候就算误差表面是凸…