KG-LLM:加强知识图谱多跳推理,复杂问题推理问答

  • 思维笔记
  • 宏观分析
  • 微观分析
  • 摘要
  • 引言
  • 相关工作
  • 方法论
  • 3.1 知识图谱的定义
  • 3.1.1 多跳链接预测任务
  • 3.1.2 多跳关系预测任务
  • 3.2 知识提示
  • 3.3 KG-LLM框架
  • 4 实验
  • 5 结论与未来工作



 

论文:Knowledge Graph Large Language Model (KG-LLM) for Link Prediction

代码:https://anonymous.4open.science/r/KG-LLM-FED0/README.md

思维笔记

什么是多跳推理?

KG-LLM:加强知识图谱多跳推理,复杂问题推理问答_人工智能


KG-LLM:加强知识图谱多跳推理,复杂问题推理问答_自然语言_02

宏观分析

├── 1 引言【描述研究背景和问题】
│    ├── 知识图谱(KGs)的重要性【背景介绍】
│    │    ├── 结构化和有效的数据表示方法【KGs特点】
│    │    └── 在知识图谱分析领域的广泛应用【KGs应用】
│    ├── 多跳链接预测的挑战【问题描述】
│    │    ├── 需要模型理解所有中间连接【多跳链接预测难点】
│    │    └── 现有模型缺乏解释性推理步骤【现有模型不足】
│    └── 知识图谱大型语言模型(KG-LLM)的提出【技术解决方案】
│         ├── 利用大型语言模型(LLMs)进行知识图谱任务【KG-LLM方法】
│         └── 通过自然语言提示增强多跳链接预测【KG-LLM目标】
├── 2 相关工作【现有研究的总结】
│    ├── 图神经网络(GNN)模型的应用【GNN模型】
│    │    ├── GATs在链接预测任务中的应用【GATs应用】
│    │    └── GCN-based模型的链接预测性能【GCN模型】
│    └── 大型语言模型(LLMs)的发展【LLMs发展】
│         ├── BERT、GPT等模型在KGs任务中的应用【LLMs应用】
│         └── 通过文本到文本训练提高预测能力【LLMs训练方法】
├── 3 方法论【KG-LLM框架的详细介绍】
│    ├── KG-LLM框架的实现【KG-LLM框架的详细实现步骤】
│    │    ├── 输入【原始知识图谱数据】
│    │    │    └── 包含实体和关系的有向图【KG定义】
│    │    ├── 处理过程【知识图谱到自然语言的转换】
│    │    │    ├── 深度优先搜索(DFS)【路径提取技术】
│    │    │    │    └── 提取所有可能的路径【路径提取】
│    │    │    ├── 去重和路径筛选【数据处理】
│    │    │    │    ├── 移除重复路径【去重】
│    │    │    │    └── 保留2到6个节点的路径【路径长度筛选】
│    │    │    ├── 正面和负面实例的标记【实例标记】
│    │    │    │    ├── 确定路径是否存在连接【连接性判断】
│    │    │    │    └── 调整实例数量以平衡数据集【数据平衡】
│    │    │    └── 知识提示转换【提示设计】
│    │    │         ├── 将路径转换为自然语言提示【提示内容】
│    │    │         └── 结合指令和选项以生成响应【提示结构】
│    │    ├── 模型微调【利用知识提示进行模型训练】
│    │    │    ├── 指令式微调(IFT)【微调技术】
│    │    │    │    └── 利用提示-答案对进行微调【IFT应用】
│    │    │    ├── 特殊标记添加【词汇扩展】
│    │    │    │    └── 将节点和关系ID作为特殊标记添加到模型词汇【词汇扩展】
│    │    │    └── 微调策略【不同模型的微调方法】
│    │    │         ├── Flan-T5的全局微调【Flan-T5微调】
│    │    │         ├── LlaMa2和Gemma的LoRA微调【LoRA应用】
│    │    │         └── 使用交叉熵损失函数【损失函数计算】
│    │    └── 输出【微调后的模型】
│    │         ├── 用于多跳链接预测的模型【预测任务】
│    │         └── 具备处理未见提示的零样本能力【模型能力】
│    └── 多跳链接预测任务【任务定义】
│         ├── 识别知识图谱中的缺失连接【任务目标】
│         └── 预测缺失链接的存在性【任务输出】
├── 4 实验【对KG-LLM框架的评估】
│    ├── 实验设置【实验环境和数据集】
│    │    ├── 四个真实世界数据集的使用【数据集选择】
│    │    └── 训练集、验证集和测试集的构建【数据集划分】
│    ├── 与传统方法的比较【性能比较】
│    │    ├── TransE、Analogy等模型的比较【比较方法】
│    │    └── KG-LLM框架模型的性能【KG-LLM性能】
│    └── 多跳链接预测任务的评估【任务评估】
│         ├── 非上下文学习(non-ICL)和上下文学习(ICL)的评估【评估类型】
│         └── AUC和F1分数作为性能指标【评估指标】
└── 5 结论和未来工作【研究总结和展望】
     ├── KG-LLM框架作为多跳生成预测任务的解决方案【结论】
     │    └── 提升了KG相关任务的预测准确性【KG-LLM效果】
     └── 未来工作的方向【未来工作】
          ├── 改进模型的推理过程评估【改进方向】
          └── 利用提示质量过滤器提高预测的准确性和可靠性【改进措施】

KG-LLM框架是一种创新的解决方案,旨在通过大模型(LLMs)提升知识图谱中的多跳链接预测性能。

以下是该框架的逻辑连贯介绍:

首先,输入阶段,KG-LLM框架接收原始的知识图谱数据,这是一个包含实体和关系的有向图结构。这些数据构成了模型训练和预测任务的基础。

接下来,在处理过程中,框架采用深度优先搜索(DFS)算法来提取知识图谱中的所有可能路径,这是路径提取的关键技术。

提取出的路径经过去重和筛选,以确保它们的独特性和实用性。

特别地,路径长度被限制在2到6个节点之间,基于“六度分隔”理论,这有助于保持数据的平衡性和代表性。

随后,这些路径被标记为正面或负面实例,这涉及到判断路径中是否存在连接,并据此调整实例数量,实现数据集的平衡。

进一步,路径被转换为自然语言的知识提示,这是通过将节点和关系转换为易于理解的文本,并结合指令和选项来生成模型可以响应的提示。

模型微调阶段,KG-LLM框架采用指令式微调(IFT)技术,利用之前生成的知识提示-答案对来对模型进行微调。

为了增强模型对特定领域语言的理解,将节点和关系ID作为特殊标记添加到模型的词汇中。

此外,根据所使用的具体模型,如Flan-T5、LlaMa2或Gemma,应用不同的微调策略,例如全局微调或LoRA(Low-Rank Adaptation)方法,并通过交叉熵损失函数来优化模型参数。

最终,在输出阶段,经过微调的模型被用于执行多跳链接预测任务。

这些模型不仅在训练数据上表现良好,还展现出处理未见提示的零样本能力,这表明KG-LLM框架在提升模型的泛化能力和适应性方面具有显著效果。

综上所述,KG-LLM框架通过一系列精心设计的步骤,将知识图谱数据有效地转换和利用,以训练出能够进行复杂推理并准确预测知识图谱中多跳链接的模型。

这一框架的实现不仅提高了预测的准确性,还增强了模型对新场景的适应能力,为知识图谱分析领域带来了新的视角和可能性。

微观分析

KG-LLM:加强知识图谱多跳推理,复杂问题推理问答_人工智能_03

  • 目的:提高知识图谱中多跳链接预测的准确性和模型的泛化能力。
  • 问题:传统的知识图谱链接预测方法缺乏解释性,且在多跳推理上表现不佳。
  • 解法:KG-LLM框架,它利用大型语言模型进行知识图谱任务。
  1. 子解法1 - 结构化数据到自然语言的转换(因为特征:需要模型理解复杂的关系链)
  • 之所以使用结构化数据到自然语言的转换,是因为大型语言模型更擅长处理自然语言,这有助于模型更好地理解和学习实体及其关系的潜在表示。
  • 例如,将“Node_1 has relation_x with Node_2”转换为“Node_1和Node_2通过relation_x相关联”。
  1. 子解法2 - 深度优先搜索(DFS)提取路径(因为特征:需要全面探索知识图谱中的连接)
  • 之所以使用DFS,是因为它能确保从每个节点开始探索所有可能的路径,从而为多跳链接预测提供全面的候选路径。
  • 例如,从节点A开始,通过DFS找到到节点B、C、D等的所有路径。
  1. 子解法3 - 路径去重和筛选(因为特征:减少冗余和提高效率)
  • 之所以进行路径去重和筛选,是为了移除重复的路径并根据节点数量限制路径长度,这有助于提高模型训练和预测的效率。
  • 例如,删除所有长度超过6个节点的路径。
  1. 子解法4 - 指令式微调(IFT)(因为特征:增强模型对特定任务的适应性)
  • 之所以使用IFT,是因为它允许模型根据给定的指令和选项进行微调,从而提高模型在特定链接预测任务上的表现。
  • 例如,通过微调模型以识别“Node_1是否通过一系列关系与Node_n相连”。
  1. 子解法5 - 特殊标记的词汇扩展(因为特征:增强模型对知识图谱特定元素的识别能力)
  • 之所以扩展词汇表,是因为这使得模型能够识别和处理知识图谱中的特殊元素,如节点和关系ID。
  • 例如,将“Node_1”和“relation_x”作为标记添加到模型的词汇中。
  1. 子解法6 - 交叉熵损失函数(因为特征:优化模型预测的准确性)
  • 之所以使用交叉熵损失函数,是因为它能够衡量模型预测的概率分布与实际标签的概率分布之间的差异,从而指导模型训练以减少预测误差。
  • 例如,在训练过程中,模型的输出与期望的输出序列之间的差异将通过交叉熵损失来计算。
  1. 子解法7 - 零样本学习能力(因为特征:提高模型对未见情况的适应性)
  • 之所以强调零样本学习能力,是因为这允许模型在没有额外训练数据的情况下处理新的或未见过的提示,这对于多跳链接预测尤其重要。
  • 例如,模型能够准确预测两个实体间未见过的联系。

这些子解法构成了一个逻辑链,每个环节都基于前一个环节的输出,并为下一个环节提供输入。

整个框架可以被视为一个决策树,其中每个节点代表一个决策或处理步骤,而每个分支代表该步骤的一个可能结果或后续步骤。

摘要

在知识图谱分析中,准确预测多个连接点之间的联系是一项颇具挑战性的任务,这要求模型能够理解并推理出所有中间的联系。

本文提出了一种创新的框架——知识图谱大型语言模型(KG-LLM),它通过运用大模型来处理知识图谱的相关任务。

我们先将知识图谱的结构化数据转化成自然语言形式,再利用这些自然语言的提示对大型语言模型进行微调,以提升在知识图谱中进行多跳链接预测的能力。

这种将知识图谱转化为自然语言的设计,使我们的框架能够深入学习实体及其相互关系的内在表示。

为了验证KG-LLM框架的效果,我们选取了包括Flan-T5、LLaMa2和Gemma在内的三种主流的大型语言模型进行了微调。

我们还研究了该框架赋予模型处理未见提示的零样本能力的潜力。

实验结果显示,KG-LLM能显著增强模型的泛化性,使得在不熟悉情境下的预测更为精确。

引言

知识图谱作为数据表示和组织的一种结构化有效方法,在近年来备受瞩目。

尽管知识图谱中两节点间的链接预测取得了积极成果,但多跳链接预测任务依然充满挑战。

在现实世界中,我们通常更关注两个距离较远实体间的关系,而非它们之间的直接联系,这就要求模型能够推理出它们之间的中间实体及其相互关系。

此外,现有模型在进行判别性预测时,由于缺乏解释性推理步骤,难以发现错误的根源,这严重影响了模型的准确性和性能。

因此,开发能够精确生成并预测知识图谱中多跳链接的模型变得尤为重要。

从历史发展来看,知识图谱任务的解决策略从基于嵌入的方法发展到如今结合了大模型(LLMs)的先进技术。

最初,嵌入方法通过将知识图谱中的实体和关系映射为低维向量,以保持图的结构和语义完整性来解决链接预测问题。

随着技术的进步,LLMs的引入为提升预测能力和语义理解带来了新的视角,这种转变标志着从纯数学表示到更加注重上下文理解的方法的进步。

尽管已有研究取得了一定的成果,但我们的研究发现了三个尚未完全解决的主要问题,这也是我们提出新方法旨在克服的。

首先,现有方法过于侧重于判别性模型而非生成性模型,这忽略了推理过程的重要性。

其次,现有研究多集中在直接节点间的链接预测,对多跳链接预测的探索不足。

这种局限性限制了模型在更广泛节点序列中进行导航和推断连接的能力。

最后,传统模型普遍缺乏泛化能力,面对未见任务时表现不佳。

为了解决这些问题,我们提出了一种新的方法——知识图谱大型语言模型(KG-LLM),这是一种针对多跳链接预测的创新途径。

如图1所示,知识图谱中的节点通过特定的关系相互连接。

我们的框架首先接收原始的知识图谱数据集作为输入,然后通过预处理,将所有路径转化为思维链(CoT)提示,这些提示包含了一系列的关系陈述。

多跳问题的复杂性由路径的长度和节点的数量共同决定。

通过指令微调(IFT)三种大型语言模型——Flan-T5、LlaMa2和Gemma,我们的框架能够在测试阶段提升多跳链接预测的性能。

此外,通过整合上下文学习(ICL),模型不仅在性能上有所提升,还具备了处理未见提示的能力,这体现了我们方法在解决多跳链接预测问题上的创新性。

我们的研究展示了KG-LLM框架在多跳链接预测任务上的创新性。我们的主要贡献包括:

  • 将知识图谱转化为CoT提示,使我们的框架能够帮助LLMs更深入地理解和学习知识图中实体及其相互关系的潜在表示。
  • 我们对现实世界数据集的分析证明,我们的框架能够改进知识图谱中的生成性多跳链接预测,这突出了在训练中融入CoT和指令微调的优势。
  • 我们的研究结果还表明,我们的框架显著提高了LLMs对未见提示的响应能力,增强了其泛化性。

相关工作

近期,学界广泛利用图神经网络(GNN)模型来处理多样的图关联问题,为该领域带来了重大的进展。

特别是,图注意力网络(GATs)因其突出的能力——衡量邻近节点的重要性而备受瞩目。例如,wsGAT模型就在链接预测方面展现了其卓越的性能。

同时,基于图卷积网络(GCN)的模型也呈现出了不俗的成果,如ConGLR模型通过结合上下文图和逻辑推理,显著提升了归纳关系预测的准确度;ConvRot模型则融合了关系旋转和卷积技术,进一步提高了知识图谱中的链接预测表现。

然而,即便这些方法在各自领域取得了显著成就,多跳链接预测的问题依然存在挑战。

除了GNN模型,大模型(LLMs)如BERT、GPT、LLaMA、Gemini和Flan-T5等在处理知识图谱任务,包括链接预测方面也取得了突破。

这些模型采用文本到文本的训练方式,特别适合于执行生成性的多跳链接预测任务。

诸如GraphEdit、MuseGraph和InstructGraph等研究工作显示,自然语言能够有效地向LLMs传达结构化数据。

此外,这些模型在大量数据上的训练经验使它们能够对未见任务或训练数据之外的提示进行泛化。

LLMs在生成性建模方面另一个显著优势是它们的思维链(CoT)推理能力。

这种能力允许模型灵活地调整指令、选项和示例,以实现结构化的生成和预测。

通过将知识图谱中的推理路径转化为自然语言,CoT推理过程能够与知识图谱自然集成,从而轻松评估模型根据所提供信息遵循指令和做出决策的能力。

与此同时,上下文学习(In-Context Learning, ICL)功能使LLMs能够根据提示中的示例学习,为特定问题生成正确答案,这也能够与知识图谱自然集成。

总而言之,CoT和ICL技术通过自然语言,为知识图谱的推理提供了一种灵活的途径。

方法论

3.1 知识图谱的定义

知识图谱定义为KG = (E, R, L),这里E代表实体集合,R代表关系集合,而L是E × R × E的一个子集,包含知识图谱中的所有边,即三元组。

每个三元组(ei, r, ei+1) ∈ L表示实体ei通过关系r与实体ei+1相连。

3.1.1 多跳链接预测任务

多跳链接预测任务比两个节点间简单的链接预测更为复杂。

它的目标是识别知识图谱中多个关系步骤之间的缺失连接。

具体来说,就是基于一系列已观察到的三元组形成的连接路径Pobs,来预测是否缺失某个链接lmiss,通过回答“是”或“否”来确定这个链接是否存在。

3.1.2 多跳关系预测任务

多跳关系预测任务与多跳链接预测任务密切相关,但关键区别在于问题的性质和输出结果。

这项任务不是判断链接的存在与否,而是预测实体间的具体关系类型,从而将焦点从简单的存在性判断转移到了关系的具体识别上。

3.2 知识提示

知识提示是一种为知识图谱设计的专用提示方式,它将观察到的三元组序列转换成自然语言,帮助模型更有效地理解知识图谱中的内在联系和模式,提升多跳预测任务的性能。

如图3所示,我们定义了两种知识提示类型:KG-LLM知识提示和KG-LLM(消融)知识提示,用于多跳链接预测和多跳关系预测任务。

3.3 KG-LLM框架

我们的KG-LLM框架从输入知识图谱开始。

通过迭代地将每个节点设为根节点,并使用深度优先搜索(DFS)算法提取所有可能的路径,然后去除重复路径,保留节点数量在2到6之间的路径。

这些路径根据“六度分离”理论进行平衡,最终被标记为正面或负面实例,并通过转换成为KG-LLM和KG-LLM(消融)知识提示。

在微调阶段,我们使用了三种不同的大型语言模型(LLMs),并为它们添加了所有节点ID和关系ID作为特殊标记。

我们还采用了不同的微调技术,如对Flan-T5实施全局微调,对LlaMa2和Gemma实施4位量化的LoRA修改。

训练过程中,我们使用交叉熵损失函数来优化模型。

为了评估KG-LLM框架,我们对每个模型进行了两次训练,首先使用KG-LLM(消融)知识提示输入建立基线,然后使用KG-LLM知识提示进行指令微调。

训练完成后,每个模型都要经过两组推理任务的测试,包括非上下文学习和上下文学习的子测试,主要关注多跳链接预测和多跳关系预测任务。

通过这些测试,我们评估了ICL整合对框架性能的影响。

4 实验

本节旨在通过一系列实验验证KG-LLM框架的有效性,并解答以下关键研究问题:

  • Q1: 在缺乏上下文学习(ICL)的情况下,哪个框架在多跳链接预测任务上表现更优?
  • Q2: ICL的加入是否能提升模型在多跳链接预测任务上的性能?
  • Q3: KG-LLM框架是否赋予模型处理多跳关系预测中未见提示的能力?
  • Q4: ICL的应用是否增强了模型在多跳关系预测任务上的泛化能力?

4.1 实验设置

我们选用了四个由OpenKE库构建的真实世界数据集进行实验,这些数据集在知识表示学习领域内常用于评估知识图谱模型的性能。

实验中,我们从每个数据集中随机选取80%的节点构建训练集,并按照前述步骤生成训练提示。验证集和测试集的构建也遵循了类似的比例划分。

4.2 无上下文学习的多跳链接预测

在没有ICL的情况下,我们对比了传统方法、消融框架和KG-LLM框架的性能。

结果显示,尽管某些传统方法如ConvRot在特定数据集上表现良好,但KG-LLM框架在所有数据集上均展现出更优的性能。

这得益于KG-LLM框架的知识提示,它利用了实体间的复杂关系网络,加之模型在预训练阶段获得的常识知识,显著提升了链接预测的准确性。

4.3 有上下文学习的多跳链接预测

在考虑ICL的情况下,我们发现ICL的引入对模型性能有显著提升,尤其是在KG-LLM框架下,某些模型如LlaMa2和Gemma在特定数据集上的F1和AUC分数超过了80%。

4.4 无上下文学习的多跳关系预测

在没有ICL的情况下,模型在多跳关系预测任务上的表现有限。

尽管KG-LLM框架略胜一筹,但模型在处理未见提示时仍存在挑战。

4.5 有上下文学习的多跳关系预测

ICL的加入显著提升了模型在多跳关系预测任务上的泛化能力,特别是在KG-LLM框架下,LlaMa2和Gemma模型在WN18RR数据集上的准确度超过了70%。

5 结论与未来工作

我们的研究提出了KG-LLM框架,这是一个针对知识图谱分析中多跳生成预测任务的有前景的解决方案。

利用思维链和指令微调等技术,KG-LLM框架显著提高了模型在知识图谱任务中的预测准确性。

未来,我们计划进一步优化模型的指令过程,并通过引入提示质量过滤器来提高模型预测的准确性和可靠性,以推动知识图谱分析领域的发展。