用知识图谱增强 LLM
大型语言模型在许多自然语言处理任务上都表现出色。但是,由于 LLM 缺乏实际知识而且常在推理时生成事实性错误,因此也饱受批评。解决该问题的一种方法是用知识图谱增强 LLM。
具体的方式有几种,一是使用知识图谱增强 LLM 预训练,其目的是在预训练阶段将知识注入到 LLM 中。二是使用知识图谱增强 LLM 推理,这能让 LLM 在生成句子时考虑到最新知识。三是使用知识图谱增强 LLM 可解释性,从而让我们更好地理解 LLM 的行为。表 2 总结了用知识图谱增强 LLM 的典型方法。
表 2:用知识图谱增强 LLM 的方法。
用知识图谱增强 LLM 预训练
现有的 LLM 主要依靠在大规模语料库上执行无监督训练。尽管这些模型在下游任务上表现卓越,它们却缺少与现实世界相关的实际知识。在将知识图谱整合进 LLM 方面,之前的研究可以分为三类:将知识图谱整合进训练目标、将知识图谱整合进 LLM 的输入、将知识图谱整合进附加的融合模块。
图 9:通过文本 - 知识对齐损失将知识图谱信息注入到 LLM 的训练目标中,其中 h 表示 LLM 生成的隐含表征。
图 10:使用图结构将知识图谱信息注入到 LLM 的输入中。
图 11:通过附加的融合模块将知识图谱整合到 LLM 中。
用知识图谱增强 LLM 推理
以上方法可以有效地将知识与 LLM 的文本表征融合到一起。但是,真实世界的知识会变化,这些方法的局限是它们不允许更新已整合的知识,除非对模型重新训练。因此在推理时,它们可能无法很好地泛化用于未见过的知识。
一些研究关注的正是分离知识空间与文本空间以及在推理时注入知识。这些方法主要关注的是问答(QA)任务,因为问答既需要模型捕获文本语义,还需要捕获最新的现实世界知识。
图 12:用于 LLM 推理的动态知识图谱融合。
图 13:通过检索外部知识来增强 LLM 生成。
用知识图谱增强 LLM 可解释性
尽管 LLM 在许多 NLP 任务上都表现不凡,但由于缺乏可解释性,依然备受诟病。LLM 可解释性是指理解和解释大型语言模型的内部工作方式和决策过程。这能提升 LLM 的可信度并促进 LLM 在事关重大的场景中的应用,比如医疗诊断和法律评判。由于知识图谱是以结构化的方式表示知识,因此可为推理结果提供优良的可解释性。因此,研究者必然会尝试用知识图谱来提升 LLM 的可解释性;相关研究大致可分为两类:用于语言模型探测的知识图谱、用于语言模型分析的知识图谱。
图 14:使用知识图谱进行语言模型探测的一般框架。
图 15:使用知识图谱进行语言模型分析的一般框架。
用 LLM 增强知识图谱
知识图谱的显著特点就是结构化的知识表示。它们适用于许多下游任务,比如问答、推荐和网络搜索。但是,传统知识图谱往往不完备,并且已有方法往往不会考虑文本信息。
为了解决这些问题,已有研究者考虑使用 LLM 来增强知识图谱,使其能考虑文本信息,从而提升在下游任务上的表现。表 3 总结了代表性的研究工作。这里会涉及到使用 LLM 对知识图谱进行不同增强的方法,包括知识图谱嵌入、知识图谱补全、知识图谱到文本生成、知识图谱问答。
表 3:用 LLM 增强知识图谱的代表性方法。
用 LLM 增强知识图谱嵌入
知识图谱嵌入(KGE)的目标是将每个实体和关系映射到低维的向量(嵌入)空间。这些嵌入包含知识图谱的语义和结构信息,可用于多种不同的任务,如问答、推理和推荐。传统的知识图谱嵌入方法主要依靠知识图谱的结构信息来优化一个定义在嵌入上的评分函数(如 TransE 和 DisMult)。但是,这些方法由于结构连接性有限,因此难以表示未曾见过的实体和长尾的关系。
图 16 展示了近期的一项研究:为了解决这一问题,该方法使用 LLM 来编码实体和关系的文本描述,从而丰富知识图谱的表征。
图 16:将 LLM 用作知识图谱嵌入的文本编码器。
图 17:用于联合文本与知识图谱嵌入的 LLM。
用 LLM 增强知识图谱补全
知识图谱补全(KGC)任务的目标是推断给定知识图谱中缺失的事实。类似于 KGE,传统 KGC 方法主要关注的是知识图谱的结构,而不会考虑广泛的文本信息。
但是,近期有研究将 LLM 整合到了 KGC 方法中来编码文本或生成事实,取得了更好的 KGC 表现。根据使用方式,这些方法分为两类:将 LLM 用作编码器(PaE)、将 LLM 用作生成器(PaG)。
图 18:将 LLM 用作编码器(PaE)来补全知识图谱的一般框架。
图 19:将 LLM 用作生成器(PaG)来补全知识图谱的一般框架 En. 和 De. 分别表示编码器和解码器。
图 20:使用基于 prompt 的 PaG 来补全知识图谱的框架。
用 LLM 增强知识图谱构建
知识图谱构建涉及到为特定领域内的知识创建结构化的表示。这包括识别实体以及实体之间的关系。知识图谱构建过程通常涉及多个阶段,包括:实体发现、共指消解和关系提取。图 21 展示了将 LLM 用于知识图谱构建各个阶段的一般框架。近期还有研究探索了端到端知识图谱构建(一步构建出完整的知识图谱)以及直接从 LLM 中蒸馏出知识图谱。
图 21:基于 LLM 的知识图谱构建的一般框架。
图 22:从 LLM 中蒸馏出知识图谱的一般框架。
用 LLM 增强知识图谱到文本生成
知识图谱到文本(KG-to-text)生成的目标是生成能准确一致地描述输入知识图谱信息的高质量文本。知识图谱到文本生成连接了知识图谱与文本,能显著提升知识图谱在更现实的自然语言生成场景中的可用性,包括故事创作和基于知识的对话。但是,收集大量知识图谱 - 文本平行数据难度很大,成本很高,这会导致训练不充分和生成质量差。
因此,有许多研究致力于解决这些问题:如何利用 LLM 的知识?如何构建大规模的弱监督知识图谱 - 文本语料库来解决这个问题?
图 23:知识图谱到文本生成的一般框架。
用 LLM 增强知识图谱问答
知识图谱问答(KGQA)的目标是根据知识图谱存储的结构化事实来寻找自然语言问题的答案。KGQA 有一个无可避免的挑战:检索相关事实并将知识图谱的推理优势扩展到问答任务上。因此,近期有研究采用 LLM 来填补自然语言问题与结构化知识图谱之间的空白。
图 24 给出了将 LLM 用于 KGQA 的一般框架,其中 LLM 可用作实体 / 关系提取器和答案推理器。
图 24:将 LLM 用于知识图谱问答的一般框架。
LLM 与知识图谱协同
LLM 与知识图谱协同近年来赢得了不少关注,该方法能将 LLM 和知识图谱的优点融合,从而更好地应对各种下游任务。举个例子,LLM 可用于理解自然语言,同时知识图谱可作为提供事实知识的知识库。将 LLM 和知识图谱联合起来可以造就执行知识表征和推理的强大模型。
这里从两个方面关注了 LLM 与知识图谱协同:知识表征、推理。表 4 总结了代表性的研究工作。
表 4:LLM 与知识图谱协同方法汇总。
知识表征
文本语料库和知识图谱都包含大量知识。但是,文本语料库中的知识通常是隐式的和非结构化的,而知识图谱中的知识是显式的和结构化的。因此,想要以统一方式来表示这些知识,就必须对齐文本语料库和知识图谱中的知识。图 25 给出了针对知识表征任务统一 LLM 和知识图谱的一般框架。
图 25:针对知识表征任务统一 LLM 和知识图谱的一般框架。
KEPLER 是一种用于知识嵌入和预训练语言表征的统一模型。KEPLER 会使用 LLM 将文本实体描述编码成它们的嵌入,然后对知识嵌入和语言建模目标进行联合优化。JointGT 提出了一种知识图谱 - 文本联合表征学习模型,其中提出了三个预训练任务来对齐知识图谱和文本的表征。DRAGON 则给出了一种自监督方法,可以基于文本和知识图谱来预训练一个语言 - 知识的联合基础模型。其输入是文本片段和相关的知识图谱子图,并会双向融合来自这两种模式的信息。然后,DRAGON 会利用两个自监督推理任务(掩码语言建模和知识图谱链接预测)来优化该模型的参数。HKLM 则引入了一种联合 LLM,其整合了知识图谱来学习特定领域知识的表征。
推理
为了同时利用 LLM 和知识图谱的优势,研究者也通过 LLM 和知识图谱协同来执行多种应用的推理任务。在问答任务中,QA-GNN 首先会利用 LLM 来处理文本问题,再引导知识图谱的推理步骤。这样一来就构建了文本和结构化信息之间的桥梁,从而能为推理过程提供解释。
在知识图谱推理任务中,LARK 提出了一种由 LLM 引导的逻辑推理方法。其首先会将传统的逻辑规则转换成语言序列,然后要求 LLM 推理出最终输出。此外,Siyuan et al. 通过一个统一框架统一了结构推理和语言模型预训练。给定一个文本输入,他们采用 LLM 来生成逻辑查询,其可在知识图谱上执行以获取结构化的上下文信息。最后,这个结构化的上下文会与文本信息融合以生成最终输出。
RecInDial 则将知识图谱与 LLM 组合起来在对话系统中提供个性化推荐。KnowledgeDA 提出了一种统一的领域语言模型开发流程,可使用领域知识图谱增强针对特定任务的训练过程。
未来方向
在联合知识图谱和大型语言模型方面还有诸多挑战有待解决,下面简单给出了这一研究领域的一些未来研究方向:
- 将知识图谱用于检测 LLM 的幻觉;
- 将知识图谱用于编辑 LLM 中的知识;
- 将知识图谱用于黑箱 LLM 知识注入;
- 将多模态 LLM 用于知识图谱;
- 将 LLM 用于理解知识图谱的结构;
- 将 LLM 和知识图谱协同用于双向推理。