Reasoning on Graphs: Faithful and Interpretable Large Language Model Reasonin

摘要

大型语言模型(llm)在复杂任务中表现出令人印象深刻的推理能力。然而,他们在推理过程中缺乏最新的知识和经验幻觉,这可能导致不正确的推理过程,降低他们的表现和可信度。知识图谱(Knowledge graphs, KGs)以结构化的形式捕获了大量的事实,为推理提供了可靠的知识来源。然而,现有的基于kg的LLM推理方法只将kg作为事实知识库,忽略了其结构信息对推理的重要性。在本文中,我们提出了一种称为图上推理(RoG)的新方法,该方法将llm与KGs协同使用,以实现忠实和可解释的推理。具体来说,我们提出了一个计划检索-推理框架,其中RoG首先生成以KGs为基础的关系路径作为忠实计划。然后使用这些计划从KGs中检索有效的推理路径,以便llm进行忠实的推理。此外,RoG不仅可以从KGs中提取知识,通过训练提高llm的推理能力,还可以在推理过程中与任意llm无缝集成。在两个基准KGQA数据集上进行的大量实验表明,RoG在KG推理任务上达到了最先进的性能,并生成了忠实且可解释的推理结果1。

1.介绍

大型语言模型(llm)在许多NLP任务中表现出色(Brown等人,2020;Bang et al, 2023)。特别引人注目的是他们通过推理处理复杂任务的能力(Wei et al, 2022;Huang & Chang, 2023)。为了进一步释放法学硕士的推理能力,提出了计划-解决范式(Wang et al ., 2023c),在该范式中,LLMs被提示生成一个计划并执行每个推理步骤。通过这种方式,llm将复杂的推理任务分解为一系列子任务并逐步求解(Khot et al ., 2022)。

尽管LLMs取得了成功,但他们仍然受到知识缺乏的限制,在推理过程中容易产生幻觉,这可能导致推理过程中的错误(Hong et al, 2023;Wang et al ., 2023b)。例如,如图1所示,llm没有最新的知识,并且产生了一个错误的推理步骤:“有一个女儿”。这些问题在很大程度上削弱了LLMs在高风险场景中的表现和可信度,例如法律判决和医疗诊断。

为了解决这些问题,知识图(KGs)被用于提高llm的推理能力(Pan等人,2024;Luo et al ., 2023a)。KGs以结构化的形式捕获丰富的事实知识,为推理提供了可靠的知识来源。知识图谱问答(knowledge graph question answer, KGQA)是一种典型的推理任务,其目的是基于知识图谱获得答案(Sun et al ., 2019)。以前联合使用KGs和llm进行KGQA推理的工作大致可以分为两类:1)语义解析方法(Lan & Jiang, 2020;Ye et al, 2022),使用llm将问题转换为逻辑查询,并在KGs上执行以获得答案;2)检索增强方法(Li et al ., 2023;Jiang et al ., 2023),该方法从KGs中检索三元组作为知识上下文,并使用llm获得最终答案。

尽管语义解析方法可以通过利用KGs上的推理来生成更准确和可解释的结果,但由于语法和语义的限制,生成的逻辑查询通常是不可执行的,并且无法产生答案(Yu et al, 2022a)。检索增强方法更加灵活,并利用llm的推理能力。然而,他们只将kg视为事实知识基础,而忽略了其结构信息对推理的重要性(Jiang et al ., 2022)。例如,如图1所示,一个关系路径,它是一个关系序列,“child of→has son”可以用来获得“谁是Justin Bieber的兄弟?”这个问题的答案。因此,使llm能够直接在KGs上进行推理,以实现忠实和可解释的推理是至关重要的。 

在本文中,我们提出了一种称为图上推理(RoG)的新方法,该方法将llm与KGs协同进行忠实和可解释的推理。为了减轻幻觉和缺乏知识的问题,我们提出了一个规划-检索-推理框架,其中RoG首先通过规划模块生成以KGs为基础的关系路径作为忠实计划。然后使用这些计划从KGs中检索有效的推理路径,通过retrieval reasoning模块进行忠实的推理。这样,我们不仅可以从KG中检索到最新的知识,还可以考虑KG结构对推理和解释的指导。此外,在推理过程中,RoG的规划模块可以与不同的llm进行即插即用,以提高其性能。基于该框架,对RoG进行了两项优化:1)规划优化,将知识从KGs中提取到llm中,生成忠实关系路径作为规划;2)检索-推理优化,我们使llm能够基于检索到的路径进行忠实的推理并生成可解释的结果。我们在两个基准KGQA数据集上进行了广泛的实验,结果表明RoG在KG推理任务上达到了最先进的性能,并产生了忠实且可解释的推理结果。

2 RELATED WORK

LLM推理提示。许多研究提出利用llm的推理能力,通过提示来处理复杂任务(Wei et al ., 2022;Wang et al ., 2022;Yao等,2023;Besta et al, 2023)。plan -and-solve (Wang et al ., 2023c)促使llm生成一个计划,并在此基础上进行推理。DecomP (He et al, 2021)提示llm将推理任务分解为一系列子任务,并逐步求解。然而,幻觉和缺乏知识的问题影响了llm推理的准确性。ReACT (Yao et al ., 2022)将llm视为agent,与环境交互以获取最新的知识进行推理。为了探索忠实推理,FAME (Hong et al ., 2023)引入了蒙特卡洛规划来生成忠实推理步骤。RR (He et al ., 2022)和KD-CoT Wang et al . (2023b)进一步从KGs中检索相关知识,为llm生成忠实的推理计划。

知识图谱问答(KGQA)。传统的基于嵌入的方法表示嵌入空间中的实体和关系,并设计特殊的模型体系结构(例如键值记忆网络、顺序模型和图神经网络)来推理答案 。为了将llm集成到KGQA中,检索增强方法旨在从KGs中检索相对事实以提高推理性能(Li et al ., 2023;Karpukhin et al, 2020)。最近,UniKGQA (Jiang et al ., 2022)将图检索和推理过程统一为具有llm的单个模型,实现了STOA性能。语义解析方法通过llm将问题转换为结构化查询(例如SPARQL),查询引擎可以执行该查询以在KGs上推理答案(Sun et al ., 2020;兰江,2020)。然而,这些方法严重依赖于生成查询的质量。如果查询不可执行,则不会生成任何答案。DECAF (Yu et al ., 2022a)结合语义解析和llm推理共同生成答案,在KGQA任务上也达到了显著的性能。

3 PRELIMINARY

4 APPROACH

在本节中,我们将介绍我们的方法:图上推理(RoG),它包含两个组成部分:1)一个规划模块,该模块生成以KGs为基础的关系路径作为忠实计划;2)检索推理模块,首先根据计划从KGs中检索有效的推理路径,然后根据检索到的推理路径进行忠实推理,生成具有可解释解释的答案。RoG的总体框架如图2所示。

4.1 REASONING ON GRAPHS: PLANNING-RETRIEVAL-REASONING

4.1图上推理:规划-检索-推理

最近,人们探索了许多技术,通过计划来提高llm的推理能力,首先促使llm生成推理计划,然后在此基础上进行推理(Wang et al ., 2023c)。然而,llm以幻觉问题而闻名,这容易产生错误的计划并导致错误的答案(Ji et al, 2023)。为了解决这个问题,我们提出了一个新的计划-检索-推理框架,该框架将推理计划以KGs为基础,然后为LLM推理检索可靠的推理路径。

关系路径捕获实体之间的语义关系,已被用于KGs上的许多推理任务(Wang等人,2021;Xu et al, 2022)。此外,与动态更新的实体相比,KGs中的关系更加稳定(Wang et al ., 2023a)。通过使用关系路径,我们总是可以从KGs中检索到最新的知识进行推理。因此,关系路径可以作为推理KGQA任务答案的忠实计划。

通过将关系路径视为计划,我们可以确保计划以KGs为基础,从而使llm能够对图进行忠实且可解释的推理。简而言之,我们将我们的RoG描述为一个优化问题,其目的是通过生成关系路径z作为计划,最大限度地从知识图G中推理出问题q的答案的概率:

4.2 OPTIMIZATION FRAMEWORK

4.2优化框架

尽管llm具有将关系路径生成为计划的优势,但llm对KGs中包含的关系一无所知,因此llm不能直接生成以KGs为基础的关系路径作为忠实计划。此外,lllm可能无法正确理解推理路径,并基于它们进行推理。为了解决这些问题,我们设计了两个指令调优任务:1)规划优化,将KGs中的知识提取到llm中以生成忠实关系路径作为计划;2)检索-推理优化,使llm能够基于检索到的推理路径进行推理。

方程1中的目标函数可以通过最大化证据下界(ELBO)来优化(Jordan et al ., 1999),其表示为

式中,Q(z)表示以KGs为基础的忠实关系路径的后验分布,后一项最小化了后验与先验之间的KL分歧,从而鼓励llm生成忠实关系路径(规划优化)。前一项最大化了检索推理模块基于关系路径和KGs(检索推理优化)生成正确答案的期望。

Planning optimization.

在规划优化中,我们的目标是将知识从KGs中提取到llm中,以生成忠实关系路径作为规划。这可以通过最小化忠实关系路径Q(z)的后验分布的KL散度来实现,这可以通过KGs中的有效关系路径来近似。

4.3 PLANNING MODULE

4.3规划模块

规划模块旨在生成忠实的关系路径作为回答问题的计划。为了利用llm的指令跟随能力(Wei et al ., 2021),我们设计了一个简单的指令模板,提示llm生成关系路径:

4.4 RETRIEVAL-REASONING MODULE

4.4检索推理模块

尽管我们可以利用检索到的推理路径,直接得到多数投票的答案。检索到的推理路径可能是嘈杂的,与问题无关,从而导致错误的答案(He et al, 2021;Zhang et al, 2022)。因此,我们提出了一个推理模块来探索法学硕士识别重要推理路径并根据它们回答问题的能力。

推理。推理模块以问题q和一组推理路径Wz生成答案a。同样,我们设计推理指令提示符,引导llm根据检索到的推理路径Wz进行推理。Wz也被格式化为一系列结构句。详细提示可在附录A.10中找到。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在哪买国外服务器便宜?

在哪买国外服务器便宜?在寻找便宜且可靠的国外服务器商家时,我们需要考虑多个因素,包括价格、性能、可靠性、技术支持和扩展性等。下面是一些备受推崇的便宜国外服务器商家。 Amazon Web Services (AWS)。作为全球最大的云服务提供商之一&am…

WebSocket 详解-小案例展示

简介:Websocket是一种用于H5浏览器的实时通讯协议,可以做到数据的实时推送,可适用于广泛的工作环境,例如客服系统、物联网数据传输系统,该测试工具可用于websocket开发初期的测试工作。 文章末尾有此案例的完整源代码。…

从vivo X Fold3看vivo“质”变

撰文 | 何玺 排版 | 叶媛 vivo的气质变了!虽然依旧内敛、低调,但更自信、从容,气场也更强大。这是玺哥在本次vivo X Fold3系列新品发布会上的一个直观感受。 是什么改变了vivo的气质?产品?技术?又或是其他…

基于STC12C5A60S2系列1T 8051单片机通过单个按键单击次数实现开关机应用

基于STC12C5A60S2系列1T 8051单片机通过单个按键单击次数实现开关机应用 STC12C5A60S2系列1T 8051单片机管脚图STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍基于STC12C5A60S2系列1T 8051单片机通过单个按…

代码随想录算法训练营第二十四天(回溯1)|77. 组合(JAVA)

文章目录 回溯理论基础概念类型回溯模板 77. 组合解题思路源码 回溯理论基础 概念 回溯是递归的副产品,本质上是一种穷举 回溯解决的问题可以抽象为一种树形结构 类型 回溯主要用来解决以下问题 组合问题:N个数里面按一定规则找出k个数的集合切割问…

eNSP综合实验(PPP认证、VPN配置、RIP协议、NAT)

题目如上 第一步:配置IP地址 ip分配如下图所示 开始配置IP(PC省略) R1: [R1]undo [R1]undo in [R1]undo info-centere [R1]undo info-center e [R1]undo info-center enable Info: Information center is disabled. [R1]int g0/0/0 [R1-Gigabit…

2024年MathorCup数学建模思路A题B题C题D题思路分享

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间:2024…

蓝桥杯-岛屿个数

solution 数1的块数题&#xff0c;加了内岛不计入的小限制&#xff0c;以及输入数据间没有空格&#xff0c;不是矩阵形式的整数输入。 判断是否是子岛屿&#xff1a;如果该岛屿有边缘部分或者可以通过外海走到边缘部分说明不是子岛屿 #include<iostream> #include<…

蓝桥备赛——堆队列

AC code import os import sys import heapq a [] b [] n,k map(int,input().split())for _ in range(n):x,y map(int,input().split())a.append(x)b.append(y) q []# 第一种情况&#xff1a;不打第n个怪兽# 将前n-1个第一次所需能量加入堆 for i in range(n-1):heapq.h…

科普——芯片的市场价格

以前以为进口的芯片会很贵&#xff0c;其实不然&#xff0c;均在很低&#xff0c;粗略找了几个&#xff0c;批发价格在50元上下 厂商型号&#xff1a;STM32F103RCT7 品牌名称&#xff1a;ST(意法半导体) 元件类别&#xff1a;MCU 封装规格&#xff1a;64-LQFP&#xff08;10x1…

View事件分发

MotionEvent 1.简介 MotionEvent 是Android系统中一个非常重要的类&#xff0c;它代表了屏幕上发生的触摸事件。当用户在屏幕上触摸、滑动或者长按时&#xff0c;都会生成一个MotionEvent对象&#xff0c;这个对象包含了触摸动作的各种信息。 2.事件类型 ACTION_DOWN&#x…

沃尔玛百货有限公司 企业网页设计制作 企业html网页成品 跨国公司网页设计开发 web前端开发,html+css网页设计素材,静态html学生网页成品源码

沃尔玛百货有限公司 WalMart 7页面 企业主题 带jquery图片轮播特效 滚动文字 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.or…

接口自动化框架搭建(八):pytest+allure+jenkins接入

1&#xff0c;安装allure插件 2&#xff0c;创建jenkins项目 怎么确定路径&#xff0c;可以查看工作空间&#xff0c;jenkins默认根目录就是工作空间 配置执行用例的命令&#xff0c;可以现在pycharm上试一下&#xff0c;然后在jenkins中配置&#xff1a; 把启动java服务的代…

数据结构:基于数组实现栈

1 前言 栈是一种先进后出的线性表。向一个栈插入新元素可以叫做进栈、入栈、压栈&#xff0c;新元素必须放到栈顶元素上面&#xff0c;使之成为新的栈顶&#xff1b;从一个栈删除元素可以叫做出栈、退栈&#xff0c;它将栈顶元素删除&#xff0c;使和原来栈顶元素相邻的元素称…

Vue指令之v-for

跟其他语言中的for一样&#xff0c;是用来渲染多个类似实例的。 语法为v-for"(item, index) in 可迭代对象"&#xff0c;一般就用于遍历数组。这里的语法跟Python中的for循环enumerate也有点相似之处&#xff0c;但要注意item在前&#xff0c;index在后&#xff0c;…

【MATLAB源码-第21期】基于matlab的BCH码编码译码仿真,调制使用QPSK,对比编码与未编码的误码率曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 QPSK调制解调&#xff1a;QPSK&#xff08;Quadrature Phase Shift Keying&#xff09;调制解调**是一种数字调制技术&#xff0c;通常用于数字通信系统。 调制&#xff1a; 1. 首先&#xff0c;将数字信号分成两路&#xff…

【浅尝C++】使用模板实现泛型编程第二弹=>非类型模板参数/模板特化/模板分离编译详解

&#x1f3e0;专栏介绍&#xff1a;浅尝C专栏是用于记录C语法基础、STL及内存剖析等。 &#x1f3af;每日格言&#xff1a;每日努力一点点&#xff0c;技术变化看得见。 文章目录 非类型模板参数模板的特化概念函数模板特化类模板特化全特化偏特化 模板分离编译分离编译概念模板…

uniapp开发微信小程序设置分包,简单易学

文章目录 前言一、在 manifest.json文件中的源码试图中配置二、配置pages.json 前言 我们使用uniapp开发微信小程序的时候&#xff0c;当我们的包体积过大的时候&#xff0c;无法真机模拟。 因为小程序单个包只支持2MB&#xff08;现已支持预览4MB&#xff09;&#xff0c;所以…

PyTorch深度学习

一、深度学习的概念 如上所示&#xff0c;人工智能包含了机器学习和深度学习&#xff0c;其中深度学习是机器学习的一种特殊的学习方法&#xff0c;人工智能的核心是深度学习 1、深度学习 深度学习需要用到大量的神经网络构建和运算模块&#xff0c;故出现了很多的深度学习框…

通讯录改进———动态版本

在上一篇博客中讲完了动态内存分配&#xff0c;这时候我们就可以改进之前写的通讯录了&#xff0c;可以将其升级为动态内存的版本&#xff0c;既不用担心联系人满了&#xff0c;也不用担心内存浪费太大。 要将其改为动态版本主要是两件事&#xff0c;首先初始化的时候我们要动…