论文浅尝 | THINK-ON-GRAPH:基于知识图谱的深层次且可靠的大语言模型推理方法...

news2024/11/27 17:53:45

219919b8876112fa315e6006759a9edd.png

笔记整理:刘佳俊,东南大学硕士,研究方向为知识图谱

链接:https://arxiv.org/pdf/2307.07697.pdf

1. 动机

本文是IDEA研究院的工作,这篇工作将知识图谱的和大语言模型推理进行了结合,在每一步图推理中利用大语言模型检索图结构数据,实现了深层且可靠的推理。

1.1 大语言模型的问题

尽管大型语言模型(LLM)在各种任务中都取得了显著的表现,但在面临复杂的知识推理任务时有很大的局限性

(1)LLM通常无法准确回答需要预训练阶段以外的专业知识的问题或需要长逻辑链和多跳知识推理的问题

(2)LLM缺乏可靠性、可解释性和透明度,这引起了用户对“幻觉”和“有害文本”风险的担忧

(3)LLM的训练过程通常既昂贵又耗时,这使得它们很难保持最新的知识。

1.2 “LLM ⊕ KG”方法的局限性

一个自然而有潜力的解决方案是结合外部知识,如知识图谱(KGs),以帮助改进LLM推理。KGs提供结构化、明确和可编辑的知识表示,提供了一种互补的策略来减轻LLM的局限性。这些方法遵循一个范式:从KGs中检索信息,相应地增加提示,并将增加的提示输入LLM,这篇论文称为“LLM ⊕ KG”。

尽管LLM旨在整合LLM和KG的力量,但在这种范式中,LLM扮演着翻译器的角色,将输入问题转换为机器可理解的命令,用于KG的搜索和推理,但它并不直接参与图推理过程。不幸的是,这种低耦合度的范式有其自身的局限性,其成功在很大程度上取决于KG的完整性和高质量。

1.3 “LLM ⊗ KG”范式的提出

本文提出了一种新的高耦合“LLM ⊗ KG”范式,其中KG和LLM协同工作,在图推理的每一步中互补彼此的能力。这篇文章称为“Think-on-Graph”,ToG允许LLM动态探索KG中的许多推理路径,并相应地做出决策。其具有以下优点:

(1)深度推理

(2)可靠推理

(3)灵活高效

758cc185489e63ea5f04965afeee1767.png

图1  针对问题“堪培拉所在的国家现在的多数党是什么?”,三种LLM推理范式的典型工作流程:(a) 仅LLM(例如思想链提示),由于知识库时间落后答案错误(b) LLM⊕KG(例如,通过LLM生成的SPARQL查询进行KBQA),图谱查询失败(c)LLM⊗KG(如,ToG)深度推理成功得到答案。

2. 方法

6861ad565d9f0516c11fbc437ccdfe12.png

图2 ToG的推理过程,包含多个关系探索、实体探索过程并且包含搜索和修剪过程,最终生成多个推理路径,从中得到答案

2.1 ToG

ToG提示LLM迭代地探索KGs上的多个可能的推理路径,直到LLM确定可以根据当前推理路径回答问题。整个推理过程包括以下三个阶段:初始化、探索和推理。

(1)初始化

ToG首先提示LLM自动提取有问题的主题实体,并获得问题的前N个主题实体。请注意,主题实体的数量可能小于N。

(2)探索

第D次迭代中的探索阶段旨在利用LLM,根据问题x从当前前N个实体集  的相邻实体中识别出最相关的前N个实体  ,并用  扩展前N个推理路径P。为了解决LLM处理大量相邻实体的复杂性,ToG实施了两步探索策略:首先,探索出重要的关系,然后使用选定的关系来指导实体探索。

关系探索

关系探索是一个深度为1、宽度为N的集束搜索(beam search)过程,从  到  。整个过程可以分解为两个步骤: 搜索和修剪。LLM充当自动完成此过程的代理。

搜索:搜索在第D次迭代开始时,关系探索阶段首先为每个推理路径  搜索链接到尾部实体  的关系  。这些关系被聚合为  。

修剪:一旦我们从关系搜索中获得了候选关系集  和扩展的候选推理路径  ,我们就可以利用LLM基于问题x的文字信息和候选关系  ,从  中选择出以尾部关系  结尾的新的前N个推理路径P。

实体探索

与关系探索类似,实体探索也是LLM从  到  执行的波束搜索过程,由两个步骤组成:搜索和修剪。

搜索:一旦我们从关系探索中获得了新的前N个推理路径P和一组新的尾部关系  ,对于每个关系路径  ,我们可以通过查询  或  来探索候选实体集  ,其中  表示  的尾部实体和关系。我们可以将  聚合到  中,并将前N条推理路径P扩展到具有尾部实体  的  。

修剪:由于每个候选集合  中的实体是用自然语言表示的,因此我们可以利用LLM来选择新的前N个推理路径P,该路径P以  的尾部实体  结束。

在执行上述两个探索之后,我们重建新的前N个推理路径P,其中每个路径的长度增加1。每个修剪步骤最多需要N个LLM调用。

(3)推理

在通过探索过程获得当前推理路径P后,我们提示LLM评估当前推理路径是否足以生成答案。如果评估结果为肯定,我们将提示LLM使用推理路径生成答案,并将查询作为输入,如图2所示。相反,如果评估结果为否定,我们重复探索和推理步骤,直到评估结果为肯定或达到最大搜索深度  。如果算法尚未结束,则表明即使达到  ,ToG仍然无法探索解决问题的推理路径。在这种情况下,ToG仅基于LLM中的固有知识生成答案。

ToG的整个推理过程包括D个探索阶段和D个评估步骤以及一个生成步骤,该生成步骤最多需要对LLM进行2ND+D+1次调用。

2.2 ToG-R

以前的KBQA方法,特别是基于语义解析的方法,主要依赖于问题中的关系信息来生成正式查询。受此启发,本文提出了基于关系的ToG(ToG-R),它探索从主题实体开始的前N个关系链  ,而不是基于三元组的推理路径。ToG-R在每次迭代中依次执行关系搜索、关系修剪和实体搜索,与ToG相同。然后ToG-R基于通过实体搜索获得的以  结尾的所有候选推理路径来执行推理步骤。如果LLM确定检索到的候选推理路径不包含LLM回答问题的足够信息,则我们从候选实体  中随机抽取N个实体,并继续进行下一次迭代。

假设每个实体集  中的实体可能属于同一实体类并具有相似的相邻关系,则修剪实体集  的结果可能对后续的关系探索几乎没有影响。因此,我们在ToG中使用随机集束搜索而不是LLM约束的波束搜索来进行实体修剪,称为随机修剪。oG-R最多需要对LLM进行ND+D+1调用。

ToG-R对比ToG的优势

(1)它消除了使用LLM修剪实体的过程的需要,从而减少了总体成本和推理时间。

(2)ToG-R主要强调关系的字面信息,当中间实体的字面信息缺失或LLM不熟悉时,降低了错误推理的风险。

3. 实验

3.1 实验设计

数据集和评估采用最近常用的方法,如表1所示,共做了五个任务,包含九个数据集,使用了Freebase和Wikidata两个知识图谱用于推理。并且使用了多个大语言模型验证即插即用的便捷性,分别是ChatGPT, GPT4和Llama-2,其中。测试指标采用标准绝对匹配(exact match)准确率。因为基于特定数据集的大模型微调方法仅在特定相关领域有较好表现,所以不将微调方法的SOTA水平作为比较。

2ee4ab1ced6a1fde9ec576c65ff11346.png

表1 ToG在不同数据集上的结果

3.2 实验结果

(1)与其他方法对比的结果:如表1所示,使用ToG方法所有的任务上效果都优于CoT方法的SOTA水平,甚至部分超过了微调方法。在大部分场景下,ToG方法优于ToG-R方法,因为ToG按照三元组推理的方法比ToG-R关系推理能够获得更多中间实体的信息。

(2)不同基座模型的表现 :实验表明ToG的效果随着基座模型能力的提升而提升。并且即使使用最小的模型Llama-2(70B参数),ToG也优于GPT-4的CoT。小型LLM的ToG方案可能是替代昂贵大LLM的候选者,特别是在外部KG可以覆盖的垂直场景中。

(3)消融研究:针对搜索宽度和深度,实验表明宽度和深度设置为3是最合适的。针对知识图谱的选择,针对不同的任务越专业的知识图谱效果越好。针对提示的设计,使用ToG的三元组格式提示效果优于序列格式、句子格式以及ToG-R的格式。针对不同的修剪工具,直接让大模型做修剪效果最佳。

(4)知识的可追溯性和可纠正性:ToG的显式推理路径可以显示给用户,体现了知识的可追溯性。同时,根据ToG的提示,用户可以要求LLM更正KG出现的错误,并用正确的信息回答相同的问题。ToG不仅用KG增强LLM,而且用LLM提高KG的质量,称为知识灌输。

4. 总结

这篇文章介绍了LLM⊗KG范式,用于以紧密耦合的方式集成LLM和KG,并提出了图上思考(ToG)算法框架,该框架利用LLM作为参与KG推理的智能代理来实现更好的决策。实验结果表明,ToG在没有额外训练成本的情况下优于现有的部分基于微调的方法和基于提示的方法,并减轻了LLM的幻觉问题。


OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

737d8b9647309d016b6a24eeda61a67c.png

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

Nvidia/算能 +FPGA+AI大算力边缘计算盒子:电力巡检智能机器人

聚焦数字经济与双碳经济赛道,专注于提供集中式新能源场站与分布式综合能源数智化整体解决方案,坚持以场站数字化、综合能源数字化双轮驱动发展。依靠专业化人才队伍与丰富的实证基地研究经验,打造成熟、先进的数智新能源研发平台。 在集中式新…

【Git】远程操作 -- 详解

一、理解分布式版本控制系统 我们目前所说的所有内容(工作区、暂存区、版本库等等)都是在本地,也就是在我们的笔记本或者计算机上。而我们的 Git 其实是分布式版本控制系统。 上面这段话是什么意思呢? 可以简单理解为&#xff1…

模型 SCAMPER创新法则

说明:系列文章 分享 模型,了解更多👉 模型_思维模型目录。激发创新的七步思维法。 1 SCAMPER创新法则的应用 1.1 SCAMPER应用之改进自行车设计 一家自行车制造商希望改进其自行车设计,以吸引更多的消费者并提高市场份额。他们决…

【小白专用24.6.8】C# 异步任务Task和异步方法async/await详解

一、什么是异步 同步和异步主要用于修饰方法。当一个方法被调用时,调用者需要等待该方法执行完毕并返回才能继续执行,我们称这个方法是同步方法;当一个方法被调用时立即返回,并获取一个线程执行该方法内部的业务,调用…

最值,反转数组——跟之前的差不多

文章目录 数组最值感悟改进 反转数组问题 代码改进 数组最值 package com.zhang; /*求数组最大最小值*/ public class test_arr1 {public static void main(String[] args) {int[] arr {10,66,42,8,999,1};max(arr);min(arr);}public static int max(int[] arr){int max arr…

【云原生_K8S系列】Kubernetes 控制器之 Deployment

在 Kubernetes 中,Deployment 是一种高级控制器,负责管理应用的部署和生命周期。它提供了一种声明性的方式来定义应用的期望状态,并确保实际状态与期望状态保持一致。Deployment 可以自动处理应用的滚动更新、扩展和回滚等任务,是…

GPU风扇不旋转:为什么会发生这种情况以及如何修复

GPU在处理数百万像素时往往会发热,因此冷却风扇静音可能会令人担忧,这是可以理解的!如果你注意到你的GPU风扇没有旋转,下面是如何评估是否存在真正的问题,以及如何解决问题。 风扇停止旋转可能是一个功能,而不是一个Bug 如果GPU没有用于密集任务或没有达到高温,则可以…

Java 环境配置 -- Java 语言的安装、配置、编译与运行

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 002 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进…

vs - vs2015编译gtest-v1.12.1

文章目录 vs - vs2015编译gtest-v1.12.1概述点评笔记将工程迁出到本地后,如果已经编译过工程,将工程Revert, Clean up 干净。编译用的CMake, 优先用VS2019自带的打开VS2015X64本地命令行编译gtest工程测试安装自己写个测试工程,看看编译出来的…

《精通ChatGPT:从入门到大师的Prompt指南》第10章:案例分析

第10章:案例分析 10.1 优秀Prompt案例解析 在深入探讨如何精通ChatGPT的使用之前,理解并分析一些优秀的Prompt案例是至关重要的。这不仅有助于更好地掌握Prompt的构建技巧,还能提高与AI交互的效果。在这一节中,我们将详细解析一…

STM32F103C8T6 HAL库 printf重定向 USART1 DMA方式发送数据

前言: 在上一篇文章里,我采用printf重定向为usart1,但是这样发送,对于MPU的负载比较大,所以本篇文章采用DMA方式,解放MPU资源,去做其他的事情,这里仅做为自己的记录。 正文开始&…

LDA初步了解

LDA简析 最明显的特征是能够将若干文档自动编码分类为一定数量的主题(注意:主题的数量需要人为指定)。设定好主题数量之后,运行LDA模型就会得到每个主题下边词语的发布概率以及文档对应的主题概率。 LDA原理 LDA的工作原理 可把…

【刷题篇】分治-归并排序

文章目录 1、排序数组2、交易逆序对的总数3、计算右侧小于当前元素的个数4、翻转对 1、排序数组 给你一个整数数组 nums&#xff0c;请你将该数组升序排列。 class Solution { public:vector<int> tmp;void mergeSort(vector<int>& nums,int left,int right){…

Web学习_sqli-labs_1~10关

less1-GET-Error based - Single quotes - String &#xff08;基于错误的GET单引号字符型注入&#xff09; 我每次操作都会在Hackbar中&#xff0c;代码都在Hackbar框中&#xff0c;可放大看 有题目知道了是字符型注入&#xff0c;我们先判断表格有几列&#xff0c;可以发现…

详细分析Mysql临时变量的基本知识(附Demo)

目录 前言1. 用户变量2. 会话变量 前言 临时变量主要分为用户变量和会话变量 1. 用户变量 用户变量是特定于会话的&#xff0c;在单个会话内可以在多个语句中共享 以 符号开头在 SQL 语句中使用 SET 语句或直接在查询中赋值 声明和赋值 SET var_name value; -- 或者 SE…

如何在恢复出厂设置后从 Android 恢复照片

在某些情况下&#xff0c;您可能会考虑将 Android 设备恢复出厂设置。需要注意的是&#xff0c;恢复出厂设置后&#xff0c;所有设置、用户数据甚至应用程序数据都将被清除。因此&#xff0c;如果您将 Android 设备恢复出厂设置&#xff0c;甚至在里面留下了一些珍贵的照片&…

宝塔面板和 LNMP 环境下反代 HFish 蜜罐平台的正确方法

最近明月在热心站长好友的支持下搭建了安全、简单、有效并永久免费的蜜罐平台 HFish,因为 HFish 默认是以 https://IP:端口 的 Web 链接形式提供访问的,这会暴露蜜罐平台的真实服务器 IP 不说,还非常不便于快速的访问(反正明月是记不住 IP 的),所以就需要给部署好的 HFis…

扫地机器人:卷价格,不如卷技术

扫地机器人内卷的终点是技术和价值&#xff0c;价格只是附属品。 一路上涨的价格&#xff0c;一路下跌的销量 从价格飙升&#xff0c;到重新卷回价格&#xff0c;尴尬的背后是扫地机器人在骨感现实下的无奈抉择。 根据数据显示&#xff0c;2020中国扫地机器人线上市场零售均价…

经典文献阅读之--P2O-Calib(利用点对空间遮挡关系的相机-激光雷达标定)

Tip: 如果你在进行深度学习、自动驾驶、模型推理、微调或AI绘画出图等任务&#xff0c;并且需要GPU资源&#xff0c;可以考虑使用UCloud云计算旗下的Compshare的GPU算力云平台。他们提供高性价比的4090 GPU&#xff0c;按时收费每卡2.6元&#xff0c;月卡只需要1.7元每小时&…

C#操作MySQL从入门到精通(19)——插入数据

前言: 谈到数据库,大家最容易脱口而出的就是增删改查,在本篇文章之前一直都是说的各种查询,本文就是说的增删改查中的增,所谓增也就是增加数据的意思,插入数据就是增加数据。 本文测试使用的数据库如下: 1、插入完整行 所谓插入完整行就是一行所有列的数据都是自己插…