论文浅尝 | MindMap:知识图谱提示激发大型语言模型中的思维图(ACL2024)

b4fe0cc327e760cd788e44e9649dee59.png

笔记整理:和东顺,天津大学硕士,研究方向为软件缺陷分析

论文链接:https://aclanthology.org/2024.acl-long.558/

发表会议:ACL 2024

1. 动机

虽然大语言模型(LLMs)已经在自然语言理解和生成任务中取得了显著的成绩,但是它们依然存在一些关键性的限制,包括但不限于以下几点:

(1)难以融合新知识:现有的LLMs在处理新知识时常常遇到困难,特别是在需要将新知识与现有知识进行综合分析的情况下。

(2)幻觉(Hallucinations):在生成文本时,LLMs可能会产生与上下文不符或事实不符的信息,这是由于模型缺乏对输入信息的有效验证机制。

(3)解释推理过程的能力有限:当LLMs生成答案或结论时,往往难以清晰地表达它们是如何从给定的信息中得出这些结论的,即缺乏透明度。

为了解决这些问题,本文提出了名为MindMap的方法。MindMap是一个创新的提示(Prompting)管道,它利用了知识图谱(Knowledge Graphs, KGs)来增强LLMs的推理能力和透明度。通过这种方法,MindMap不仅能让LLMs理解KGs的输入,还能让模型在隐性知识与外部知识的组合基础上进行推理。更重要的是,MindMap能够揭示LLMs的思维导图,这实际上反映了模型基于知识本体的推理路径。

6ced2a27ac57fb01eee1c7c9d9133117.png

图1: 本文方法与其他提示基线比较:纯LLM、文档检索+LLM和KG检索+LLM

2. 贡献

本文建立了一种即插即用的提示方法MindMap,能让 LLM 理解图输入,从而构建自己的思维导图,支持基于证据的推理生成。该框架的概念演示图如图2所示:

4209e9e2761eb40fb4096276af1f1472.png

图2:证据查询子图、合并推理子图和思维导图的概念演示。实体输入 Vq 可从输入中识别。相同颜色的线和圆表示它们相互对应。思维导图框中的红色虚线表示基于 LLM 知识的增强操作

具体而言,MindMap可以激发LLM的思维图:

(1)整合从KGs中检索到的事实和LLM的隐含知识;

(2)发现输入KGs中的新模式;

(3)对思维图进行推理以产生最终输出。

本文在三个数据集上进行了实验,结果表明 MindMap 的性能远远超过了一系列提示方法。这项工作强调了 LLM 如何学会与 KG 进行协同推理。通过整合隐式和显式知识,LLM可以实现透明、可靠的推理,并适应额外KG信息的不同正确性水平。

3. 方法

MindMap 的框架如图3所示:

d68617095cfc6380d2e3b2d2b1a82af8.png

图3: MindMap框架。左侧部分展示了证据图挖掘的各个组成部分,右侧部分展示了证据图聚合和使用思维导图的 LLM 推理

3.1 证据图挖掘

从外部 KG 发现相关证据子图 Gq 主要分为两个阶段。

(1)实体识别

首先,使用大语言模型(LLMs)来识别问题(Query)中的关键实体。这一过程通过构建一个包含问题分析、模板短语以及两个例子的提示来实现。随后,使用BERT相似度来匹配这些实体和关键词。具体来说,对LLMs抽取的所有关键词实体和外部知识图谱中的所有实体进行编码,形成密集嵌入向量,然后计算这些向量之间的余弦相似度矩阵。

(2)证据子图构建 

证据子图构建的目标是基于提取的实体构建证据子图。构建证据子图的过程可以分为两部分:

基于路径的探索:从选定的节点出发,在知识图谱中追踪最多k步的中间路径,形成路径片段。这一过程持续进行,直到所有的片段都连接起来,形成一系列的子图,存储在Gpath中。

基于邻居的探索:通过扩展每个节点到其邻居节点的距离为1步,增加关系三元组到Gnei中。这种方法将额外的相关证据纳入到证据子图中

为了管理和维护信息量,避免过载并保持多样性,通过聚类和采样方法对基于路径和基于邻居的子图进行修剪。最终形成的证据图保留了最优信息的同时保证了多样性。

3.2 证据图汇总

在这一阶段,LLM 被指示将不同的证据子图整合为统一的推理图。该推理图在完成后将作为步骤 III 的外部增强图输入,提供所有证据子图的整体视角,以增强输出生成过程。为了生成最终的附加知识子图输入,首先从上一部分中提取了至少 k 个基于路径的证据子图和 k 个基于邻居的证据子图,每个子图都代表了查询实体之间可能存在的联系。然后,将每个子图格式化为实体链,并分配一个序列号。接下来,LLMs被提示去理解和合并这些检索出的证据子图,以构建推理图。

3.3 基于思维导图进行LLM推理

在这一阶段,LLMs被指导去融合已经构建好的推理图以及它们的隐性知识。这意味着LLMs需要将从外部知识图谱中获取的信息与自己内部的已有知识相结合。随后,LLMs需要基于上述整合后的知识来生成最终的答案。这一阶段还包括构建一个思维导图,该导图揭示了LLMs的推理路径。

4. 实验

4.1 实验设置

本文评估了MindMap在三个医学问答数据集的复杂问题解答任务中对外部知识图谱的利用情况:GenMedGPT-5k、CMCQA 和 ExplainCPE。这些数据集分别涵盖了医患对话、多轮临床对话和中国国家执业药师考试的选择题。为了支持知识图谱增强方法,本文构建了两个知识图谱(EMCKG 和 CMCKG),其中包含与医学概念相关的实体和关系。ExplainCPE数据集利用知识不匹配的CMCKG来评估错误检索知识对模型性能的影响。本文将MindMap整合隐性知识和显性知识的能力与各种基线进行了比较,包括GPT-3.5和GPT-4,以及使用树形结构进行推理的思维树方法(TOT)。此外,本文还考虑了三种检索增强基线:BM25 retriever、Text Embedding retriever 和 KG retriever。这些基线利用不同的证据检索方法和来源,以 gpt-3.5-turbo-0613 作为所有基于检索方法的骨干。

4.2 医疗问答

使用 GenMedGPT-5K 测试了 LLM 如何处理医疗领域的问题解答,其中 LLM 需要回答疾病诊断、药物推荐和测试推荐等问题。

(1)评估指标

使用BERTScore和 GPT-4 Rating进行定量评估。BERTScore 衡量生成答案与参考答案之间的语义相似性。GPT4 用于:(1)根据基本事实对答案质量进行排序;(2)根据四个标准对答案对进行比较:答案多样性和完整性、总体事实正确性、疾病诊断正确性和药物推荐正确性。此外,还引入了一种新的幻觉量化指标,用于估算生成的答案与事实的偏离程度。为了计算该指标,首先使用步骤 I 生成的问题-额外实体数据,训练基于 mT5-large 的关键词提取模型(NER-MT5)。然后将 MindMap 的输出、其他基线和标签输入 NER-MT5 模型,得到每个答案的关键词列表。最后将关键词用逗号连接起来,作为 ner-sentences,并计算不同输出的 ner-sentences 之间的 tfidf 相似度得分。得分越低,说明答案中的幻觉越多。

(2)结果

表1根据 BERTScore、GPT-4 排名得分和幻觉量化得分对各种方法进行了评估。虽然 BERTScore 在各种方法中显示出相似的结果,但 MindMap 稍有进步,这可能是由于医学回答中的共同基调。不过,对于医学问题来说,全面的领域知识至关重要,而 BERTScore 并不能很好地捕捉到这一点。GPT-4排名得分和幻觉量化显示,MindMap明显优于其他方法,其平均GPT-4排名为1.8725,幻觉得分较低。这突出表明,与GPT3.5和GPT-4等基线模型相比,MindMap有能力生成有证据基础、可信且准确的答案,而GPT-4等基线模型由于依赖于内隐知识,可能会产生不正确的答案。此外,表 2 显示 MindMap 始终优于其他方法,强调了整合外部知识以减少 LLM 幻觉并提供准确答案的价值。

表1: GenMedGPT-5k 所有方法的 BERTScore 和 GPT4 排名

ac0443c2347e1da0b5751d69cbc312d6.png

表 2:在 GenMedGPT-5k 上,GPT-4 对 MindMap 与基线在多样性和完整性得分(%)、事实总匹配得分(%)和疾病诊断(%)方面的胜率进行了配对比较

b4006c1b20b0ff7e9e510d333065d9bf.png

4.3 长对话问答

在以需要复杂推理的冗长对话为特点的CMCQA数据集上进行的实验中,表3显示,尽管与KG Retriever类似,但MindMap的排名始终优于大多数基线。此外,在表4中,根据GPT-4判断,MindMap在成对胜率方面一直优于基线。尽管与GenMedGPT-5K相比,由于知识图谱(KG)不足以涵盖CMCQA问题的所有必要事实,MindMap的性能差距有所缩小,但它仍然超越了包括KG Retriever在内的所有基于检索的方法。这表明以前基于检索的方法可能会过度依赖检索到的外部知识,从而影响语言模型(LLM)利用其内隐知识把握复杂逻辑和对话细微差别的能力。相反,MindMap 在图推理中同时利用了外部知识和内隐知识,从而得到了更准确的答案。

表 3:所有方法在 CMCQA 数据集上的 BERTScore 和 GPT-4 排名

d24d7b247cf9f02a43d0e409d06d869b.png

表 4:GPT-4对MindMap在CMCQA疾病诊断和药物推荐方面的胜率与基线的成对比较

f9e9d3eefa6ca8f34cd1c9801e4a40bf.png

4.4 从KG生成不匹配的知识

在解决MindMap对KG事实正确性的稳健性问题时,利用第二个数据集--ExplainPE--中使用的相同的KG数据集。因此,检索到的知识可能会出现冗余或缺乏准确信息的情况。这一点尤为重要,因为它反映了生产中的一种常见情况,即 LLM 经常需要将其内隐知识和从外部来源获取的知识合并在一起生成答案。

(1)评估指标

根据生成选择的准确性和解释的质量对所有方法进行评估。为了评估解释质量,使用 BERTScore 和 GPT-4 排名。

(2)结果

在表 5 中,与各种基线相比, MindMap显示出更高的准确率,这肯定了它比文档检索提示技术更有效。有趣的是,直接将检索到的知识纳入提示中有时会降低答案质量,KG Retriever 和 BM25 Retriever 的表现就不如普通的 GPT-3.5 模型。造成这种差异的原因是外部知识不匹配,导致语言模型(LLM)受到误导。该模型倾向于依赖检索到的知识,如果不准确,LLM 可能会产生错误。指令提示的消融分析显示,提示LLM "结合你已有的知识"使成绩提高了8.2%。此外,表6突出显示了MindMap为答案生成理由的能力,在GPT-4中获得了2.98的排名。

表 5:ExplainCPE 的准确率得分

c008c6ae304f51a393419bcb826f0d5e.png

表 6:MindMap 与基线在 ExplainCPE 数据集中的 BERTScore 和 GPT-4 偏好排序的定量比较

fd6e60858ec0acdd6373001fd106b9bc.png

4.5 消融研究

将MindMap与两种变体进行了比较:纯邻居和纯路径。纯邻接法侧重于基于邻接的证据探索,而纯路径法侧重于基于路径的证据探索。尽管使用了额外的标记,但与纯邻居和纯路径方法相比,MindMap 在幻觉量化方面仍有显著改进。这凸显了结合基于路径和基于邻居的方法来减少幻觉的重要性。值得注意的是,与基于路径的方法相比,基于邻居的方法在提高事实准确性方面更为有效。对于涉及医疗咨询的任务,基于路径的方法在查找相关外部信息方面更胜一筹,但在处理多跳答案(如药物和测试建议)时则显得力不从心。

5. 总结

本文介绍了知识图谱提示:1)赋予语言学习者理解知识图谱输入的能力;2)促进语言学习者结合内隐知识和检索到的外部知识进行推理。然后,本文研究了激发思维导图的问题,在思维导图中,LLMs 进行推理并生成答案,其理由用图表示。通过在三个问题与答案数据集上进行广泛的实验,验证了本文的方法与直接使用LLMs 或RAG方法相比取得了显著的收益,并且对不匹配的检索知识具有鲁棒性,为在生产中实现可靠、透明的 LLM 推断打开了大门。


OpenKG

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

328a24f23c40383070cccd5885c1e166.png

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

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud Data Flow快速入门Demo

1.什么是Spring Cloud Data Flow? Spring Cloud Data Flow 是一个用于构建和编排数据处理流水线的云原生框架。它提供了一种简化的方式来定义、部署和管理数据处理任务和流应用程序。以下是一些关键特性和组件: 关键特性 流处理: 支持实时数…

C# .NET环境下调用ONNX格式YOLOV8模型问题总结

我的环境是: Visual Studio: 2019 显卡: 一、遇到问题 1、EntryPointNotFoundException:无法在DLL“onnxruntime”中找到名为“OrtGetApiBase”的入口点。差了下原因,入口点是启动项中的问题。 原因:之前用yolov7时安装的版本在C…

量子感知机

神经网络类似于人类大脑,是模拟生物神经网络进行信息处理的一种数学模型。它能解决分类、回归等问题,是机器学习的重要组成部分。量子神经网络是将量子理论与神经网络相结合而产生的一种新型计算模式。1995年美国路易斯安那州立大学KAK教授首次提出了量子…

AI Large Language Model

AI 的 Large Language model LLM , 大语言模型: 是AI的模型,专门设计用来处理自然语言相关任务。它们通过深度学习和庞大的训练数据集,在理解和生成自然语言文本方面表现出色。常见的 LLM 包括 OpenAI 的 GPT 系列、Google 的 PaLM 和 Meta…

运维团队3D可视化智能机房管理方案

随着信息技术的飞速发展,机房作为信息技术基础设施的核心部分,其管理效率与可视化程度对运维团队的工作质量有着直接影响。本文将介绍一种结合3D可视化技术的机房管理方案,为运维团队提供一种新的视角和工具,以提升机房管理的效率…

CKA认证 | Day2 K8s内部监控与日志

第三章 Kubernetes监控与日志 1、查看集群资源状态 在 Kubernetes 集群中,查看集群资源状态和组件状态是非常重要的操作。以下是一些常用的命令和解释,帮助你更好地管理和监控 Kubernetes 集群。 1.1 查看master组件状态 Kubernetes 的 Master 组件包…

111 - Lecture 10

File I/O and GUI with JavaFX 文件输入/输出与JavaFX图形用户界面 一、Overview 1. File I/O (1) learning Java File I/O mechanism (2) writing into and reading from a file 使用文件I/O进行数据读取和…

分享一下arr的意义(c基础)(必看)(牢记)

arr 即数组名 一般指数组首元素地址 在两种情况下不是 1:sizeof(arr) arr指整个数组简单讲解一下strlen与sizeof(c基础)_strzeof在c语言中什么意思-CSDN博客 2:printf("%p",&…

大数据基于Spring Boot的化妆品推荐系统的设计与实现

摘 要 随着大数据时代的到来,人们对于个性化服务的需求越来越高。化妆品推荐系统作为一个认知智能模型段,在为消费者提供更好的购物体验方面发挥了重要作用。本研究基于大数据技术设计了一个高效准确的化妆品推荐系统。通过对海量数据的分析和处理&…

NUXT3学习日记四(路由中间件、导航守卫)

前言 在 Nuxt 3 中,中间件(Middleware)是用于在页面渲染之前或导航发生之前执行的函数。它们允许你在路由切换时执行逻辑,像是身份验证、重定向、权限控制、数据预加载等任务。中间件可以被全局使用,也可以只在特定页…

在Unity环境中读取Excel配置文件(入门)

使用Excel作为配置的优势 使用Excel作为配置文件有相对普通的文本文档/json等类型的配置文件有一个更好的优点,更易于编辑,更易读.譬如上面的例子,我可以制作一个人员名单,可以记录它们的姓名,年龄等信息,每一行就是一个对象,该表就是一个List. 环境准备 GitHub - ExcelDataR…

Maven maven项目构建的生命周期 Maven安装配置 IDEA 配置 Maven

一,Maven的概述 Maven的作用:专门用于管理和构建Java项目的工具,它的主要功能有: 提供了一套标准化的项目结构提供了一套标准化的构建流程(编译,测试,打包,发布……)提…

VM虚拟机装MAC后无法联网,如何解决?

✨在vm虚拟机上,给虚拟机MacOS设置网络适配器。选择NAT模式用于共享主机的IP地址 ✨在MacOS设置中设置网络 以太网 使用DHCP ✨回到本地电脑上,打开 服务,找到VMware DHCP和VMware NAT,把这两个服务打开,专一般问题就…

day06(单片机高级)PCB设计

目录 PCB设计 PCB设计流程 元器件符号设计 原理图设计 元器件封装设计 元器件库使用 PCB设计 目的:学习从画原理图到PCB设计的整个流程 PCB设计流程 元器件符号设计 元器件符号:这是电子元器件的图形表示,用于在原理图中表示特定的元器件。例…

向量数据库FAISS之一:官方简单教程

1.安装 1.conda安装 # CPU-only version --> Linux (x86_64 and arm64), OSX (arm64 only), and Windows (x86_64) $ conda install -c pytorch faiss-cpu1.8.0# GPU(CPU) version --> Linux (x86_64 only) for CUDA 11.4 and 12.1 $ conda install -c pytorch -c nvid…

VMware Workstation 17.6.1

概述 目前 VMware Workstation Pro 发布了最新版 v17.6.1: 本月11号官宣:针对所有人免费提供,包括商业、教育和个人用户。 使用说明 软件安装 获取安装包后,双击默认安装即可: 一路单击下一步按钮: 等待…

java实现小程序接口返回Base64图片

文章目录 引言I java 接口返回Base64图片接口设计获取验证码图片-base64字符串获取验证码图片-二进制流arraybufferII 小程序端代码过期代码: 显示文件流图片(arraybuffer)知识扩展:微信小程序下载后端返回的文件流引言 场景: 图形验证码 背景: 接口返回arraybuffer的格式…

transformer.js(一):这个前端大模型运行框架的可运行环境、使用方式、代码示例以及适合与不适合的场景

随着大模型的广泛应用,越来越多的开发者希望在前端直接运行机器学习模型,从而减少对后端的依赖,并提升用户体验。Transformer.js 是一个专为前端环境设计的框架,它支持运行基于 Transformer 架构的深度学习模型,尤其是…

xiaolin coding 图解网络笔记——HTTP篇

1. HTTP 是什么? HTTP 是超文本传输协议(HyperText Transfer Protocol),一个用在计算机世界里专门在【两点】之间【传输】文字、图片、音频、视频等【超文本】数据的【约定和规范】。 2. HTTP 常见的状态码有哪些? …

23种设计模式-模板方法(Template Method)设计模式

文章目录 一.什么是模板方法模式?二.模板方法模式的特点三.模板方法模式的结构四.模板方法模式的应用场景五.模板方法模式的优缺点六.模板方法模式的C实现七.模板方法模式的JAVA实现八.代码解析九.总结 类图: 模板方法设计模式类图 一.什么是模板方法模…