EMNLP 2024 | 从知识图谱中学习大语言模型的规划能力

img

01 前言

在使用大语言模型(LLMs)处理复杂问答任务时,通常需要先对复杂问题进行规划(Planning),将其分解为多个子问题,然后分别对每个子问题进行检索和回答,最终综合得出原始问题的答案。然而,对于参数量较小的模型(小于10B),进行复杂问题的规划并不容易,通常需要依赖监督训练。这引发了一个关键问题:如何获取规划任务所需的监督训练样本?人工标注虽然可行,但成本过高,难以大规模应用;常见的替代方法是从更大的语言模型中蒸馏出规划路径来训练小型模型,但这种方法无法确保蒸馏出的知识完全准确。

我们发现,知识图谱中蕴含了丰富且正确的推理知识。如图1所示,知识图谱中的每个子图模式(Pattern)都可以视为复杂问题的抽象表示,这为构建复杂问题规划任务的训练数据提供了新的可能性。因此,在本研究中,我们利用知识图谱构建了复杂问题规划的训练数据,使大语言模型能够从知识图谱中学习问题规划的能力。

img

图1 知识图谱中的子图Pattern与复杂问题之间的联系

02 方法

我们提出了一个名为LPKG的问答框架,旨在通过知识图谱构建复杂问题规划任务的训练数据,从而提升参数量较小的LLMs的规划能力。LPKG问答框架的整体流程如图2所示。

img

图2 LPKG问答框架

2.1 基于知识图谱的训练数据构建

在构建训练数据之前,我们首先定义了9种子图模式(Pattern),如图3所示。其中,p表示一跳逻辑,i表示交集逻辑,u表示并集逻辑,c表示比较逻辑。每种模式对应一种查询类型,例如1p、2p、3p分别是一跳、二跳和三跳查询,2i、3i、2u则分别表示两个查询的交集、三个查询的交集以及两个查询的并集等。这些模式的设计旨在覆盖现实中的多种复杂问题类型。

我们从Wikidata15k知识图谱中,基于上述9种模式抽取了9000个子图实例。接着,我们沿着每个子图实例的路径,自下而上地将其转换为多个自然语言形式的子问题,并将它们组合成一个复杂问题。为了提高效率并确保问题的流畅性,我们借助大模型(如GPT-4)来完成子图数据到自然语言的转换。通过调用GPT-4并结合上下文示例,高效且准确地生成了子问题和复杂问题。需要注意的是,虽然使用了GPT-4,但知识来源仍然是知识图谱,大模型仅负责格式转换,并未引入额外知识。

最后,我们将生成的子问题按类型填入输出模板,复杂问题填入输入模板,从而构建出规划任务的训练数据。为了便于后续对模型输出进行解析,我们采用了代码形式的数据构建方式。

在这里插入图片描述

​ 图3 子图Pattern

2.2 模型微调与下游问题推理

在完成训练数据构建后,我们采用LoRA(低秩自适应)方法对模型进行参数高效微调。经微调后的模型可泛化应用于下游多跳问答场景的规划推理——如图2的Output部分所示,模型输出的结构化规划路径(如子问题拆解顺序及关联逻辑)虽基于知识图谱数据构建,但其推理能力已突破传统KGQA范畴,可适配开放领域的复杂问题。最终答案需通过将规划路径输入解析器,结合知识检索与逻辑运算模块协同执行获得。这种"规划-解析-执行"的分离架构,既保证了模型输出的可解释性,也实现了知识获取与逻辑推理的解耦。

2.3 规划解析与执行

我们对生成的规划数据进行解析和执行,当检测到“Search”关键字时,系统会调用检索模块,根据子问题从相关文档中检索信息;当检测到“Get Answer”关键字时,系统会调用问答模块,基于子问题和检索到的文档生成答案;当检测到“Intersection”或“Union”关键字时,系统会调用相应的集合操作函数,对结果集进行交集或并集运算。

值得注意的是,这里的问答模块与规划模块是相互独立的,可以使用任何现成的大语言模型来完成问答任务。当所有规划步骤解析并执行完成后,系统将输出原始复杂问题的最终答案。

03 实验

3.1 数据集

在实验中,我们发现现有的多跳问答评测集(如HotPotQA、2WikiMultihopQA、MuSiQue、Bamboogle)存在一些不足之处:1. 这些数据集主要聚焦于多跳问题和比较类型的问题,类型覆盖不全面,且问题分布不均衡,尤其缺乏关注交集与并集逻辑的问题;2. 除了MuSiQue,其它数据集均只提供单一答案,而现实中许多问题通常涉及多个答案。因此,我们希望构建一个新的评测集,涵盖更丰富且均衡的逻辑类型,并且不限制答案数量,以更好地反映现实问题。考虑到知识图谱的多样性和答案实体数量的无限制,我们基于Wikidata15K构建了一个名为CLQA-Wiki的新评测集。CLQA-Wiki的构建方法与上述训练集相似,但采用不同的子图实例以避免数据泄漏。我们使用GPT-4还原子图实例,并提取最终复杂问题作为测试问题,同时通过图谱游走获取尾实体作为问题答案。最终,我们得到了1200条测试数据,并进行人工质检以确保数据质量。

3.2 对比实验

我们在多个常见的公开多跳问答数据集上进行了测试,实验结果详见表1。我们选择了CodeQwen1.5-7B-Chat和Llama3-8B-Instruct作为规划模型的基础,并使用GPT-3.5作为问答模型。与多个主流基线方法相比,我们的方法表现出色,处于领先地位。此外,当我们将经过微调的规划模型替换为GPT-3.5(即ICLPKG(GPT-3.5))时,实验结果表明,经过微调的小型模型在性能上达到了与GPT-3.5相当,甚至在某些情况下表现得更好,成功实现了“小模型大效果”。

表1 对比实验最终指标值

img

3.3 消融实验

在消融实验中,我们将微调后的规划模型替换为未经微调的原始模型,以探讨图谱来源数据的有效性。实验结果(详见表2)表明,与原始模型相比,使用图谱数据进行规划模型的微调后,端到端问答的整体准确率显著提升,进一步验证了图谱数据的有效性。

表2 消融实验结果

img

3.4 与其他一般蒸馏方法的对比

此外,我们还将图谱数据与常规蒸馏方法进行对比。为确保公平性,我们从 HotPotQA、2WikiMQA 和 MuSiQue 的训练集中各抽取 3000 条数据,并利用 GPT-3.5 生成规划路径,用于微调 CodeQwen1.5-7B-Chat。微调后,在训练过程中未见过的测试集 Bamboogle 上进行评估。结果如表4表明,在相同的测试条件下,基于图谱数据的微调效果优于从更大模型蒸馏所得的结果。

​ 表4 与其他一般蒸馏方法的对比结果

img

04 结论

本研究探讨如何让语言模型从知识图谱中习得复杂问题的规划能力。我们提出 LPKG 框架,利用知识图谱中的子图模式构建高质量的规划训练数据,并据此训练大语言模型,以提升其在下游任务中的规划推理能力。最终,该模型解析并执行规划过程,以生成最终答案。实验结果表明,LPKG 在多个数据集上表现优越。

论文链接:

https://arxiv.org/abs/2406.14282

代码链接:

https://github.com/zjukg/LPKG

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值