在大型语言模型(LLMs)相关的人工智能突破中,图神经网络(GNNs)与LLMs的融合已成为一个极具前景的研究方向。这两类模型的结合展现出显著的互补性,能够协同增强LLMs的推理能力和上下文理解能力。通过从知识图谱(KGs)存储的海量信息中进行智能化检索,该结合能够生成准确且不含幻觉的答案。
本文对面向知识图谱问答(Q&A)的GNN-LLM组合架构进行了多维度探索。研究重点关注了两种用于LLM检索增强生成(RAG)的GNN架构:He等人提出的G-Retriever,以及Mavromatis和Karypis提出的最新GNN检索增强生成(GNN-RAG)框架。后者采用RAG方式实现了基于ReaRev GNN架构的知识图谱问答。
我们首先运用PyTorch Geometric和G-Retriever构建GNN-LLM架构的探索性模型,从理论和实现两个维度建立对核心问题的基础认知。然后研究聚焦于最新提出的GNN-RAG架构,通过敏感性研究和架构改进,探索提升其知识图谱问答性能的方法。最后研究通过引入反思机制和教师网络的概念,对上述两种GNN-LLM架构的图推理能力进行了创新性扩展。这些概念基于GNN实现,并与近期语言模型研究中的思维链概念存在关联。本文主要聚焦于架构中GNN部分的优化与分析。
基线模型架构
在开始之前,我们首先简要概述G-Retriever和ReaRev(GNN-RAG模型的GNN组件)的原始架构,以此作为背景并引出本文的创新贡献。
G-Retriever
G-Retriever是He等人开发的基于图的LLM RAG模型架构。该架构首先使用预训练语言模型对现有知识图谱的节点、边和子图进行嵌入表示。随后将这些嵌入向量索引并存储在数据结构中,以实现高效的近邻检索。此步骤被称为索引阶段。在检索阶段,系统使用相同的语言模型对问题q进行编码,并通过k近邻算法识别与该问题最相关的节点和边。在子图构建阶段,系统采用PCST(Prize-Collecting Steiner Tree)优化算法进一步筛选这些选定的节点和边,构建与问题最相关的原始知识图谱的最优子图。
在最后的答案生成阶段,系统使用图神经网络(通常采用Graph Attention Transformer)对构造的子图进行编码,得到子图的向量嵌入表示(即GNN GAT输出)。同时系统独立生成包含所有子图节点/边/文本及查询问题q的文本嵌入。最终系统将GNN GAT输出的子图向量嵌入与文本嵌入组合,通过LLM提示调优输入到Llama LLM中生成最终答案。
GNN-RAG
在原始GNN-RAG论文中,采用ReaRev模型作为架构的GNN组件。关于ReaRev架构的详细说明将在后续章节介绍。
ReaRev模型的核心输入包含两个部分:(1)查询语句和(2)从大规模知识图谱中提取的与查询相关的子图。为实现输入的生成和预处理,ReaRev整合了多种方法:采用RelBERT等预训练语言模型进行查询编码;应用He等(2021)的方法从大规模知识图谱中识别与目标查询相关的子图;对于CWQ数据集的查询(详细说明见后文),采用Talmor等(2018)的方法从子图中识别与查询相关的种子实体。基于这些信息,ReaRev从子图中生成可能作为查询答案的候选实体集合。
系统使用现有的图处理算法(如NetworkX中实现的算法)从子图中提取种子查询实体到候选答案实体之间的最短路径。这些路径被转换为文本格式(如图左下角所示)并与经过优化的提示一起输入LLM,该提示本质上要求LLM基于输入的推理路径生成查询答案。在图中所示的"+RA"(检索增强)可选步骤中,系统通过直接向LLM提交查询,并行生成额外的推理路径,以探索在不具备子图信息情况下LLM的推理结果。当启用RA时,系统将GNN生成的推理路径与LLM初步生成的推理路径合并,作为最终推理步骤的输入。
ReaRev
GNN的核心计算过程可概括为三个主要步骤:
- 相邻节点间的消息传递
- 邻居消息的聚合运算
- 基于聚合后的邻居消息更新节点表示
ReaRev通过引入针对深度知识图谱推理优化的注意力机制,增强了传统GNN结构(消息传递、聚合、层间组合/更新)的性能。
知识图谱(KG)通过事实三元组(v, r, v')进行编码,其中关系边r定义了两个节点实体v和v'之间的关联。通常将v'称为目标节点v的邻接节点。如前所述系统接收三个基本输入:(1)经预训练语言模型编码的问题q,(2)与问题相关的子图,以及(3)子图中与问题相关的一个或多个种子问题实体。
ReaRev的一个关键创新在于将初始问题表示为K个指令的集合,其中K为超参数(本文将对此进行深入探讨)。GNN本身由L层组成(另一个超参数)。最后一个关键参数是自适应阶段数T。本质上ReaRev将完整的L层GNN运行T次。在每个自适应阶段结束时,系统基于底层知识图谱的信息(特别是问题种子实体的嵌入)更新指令嵌入。这种设计的原因在于,仅基于问题的指令条件不足以生成必须从给定子图推导的准确答案。
在GNN的每一层中,消息传递、聚合和更新机制的具体实现如下:
- 对目标节点的每个邻接节点,系统为每条指令生成一条消息。特定于指令的消息是第k条指令、可学习参数以及连接节点v和v'的关系嵌入的函数(详细说明见后文)。
- 这些消息通过加权和进行聚合,其中消息特定权重是上一层节点嵌入的可学习线性函数。
- 将所有指令的加权消息与目标节点上一层的嵌入进行拼接。
- 通过非线性函数处理拼接后的嵌入,得到更新后的目标节点嵌入。
在整个过程完成后,系统将子图的最终节点嵌入通过softmax函数处理,并基于预设的概率阈值识别相关实体作为候选答案。下图展示了原作者描述的ReaRev模型推理算法的伪代码。
性能评估指标
本文采用了多个知识图谱问答领域的标准评估指标来全面衡量模型性能。这些评估指标与Mavromatis和Karypis的研究保持一致。
Hit:表示真实答案是否出现在模型返回的答案集合中,用于评估模型的基本召回能力。
Hits@1(简写为H@1或H1):衡量模型预测置信度最高的答案的准确率,反映模型的精确预测能力。
精确率(Precision):量化模型正向预测的准确性,计算方式为正确预测为正的答案数量与预测为正的答案总数的比值。
召回率(Recall):也称为真阳性率,计算方式为正确预测为正的答案数量与实际正确答案总数的比值,反映模型发现正确答案的完整性。
F1分数:精确率和召回率的调和平均值,提供了模型性能的综合评估指标。
第一部分:G-Retriever探索性建模研究
为深入理解GNN-LLM架构,我们首先基于PyTorch Geometric开发了一个基于G-Retriever的基线GNN-RAG模型。在此框架下可以探索不同GNN编码器的性能表现(包括图注意力转换器(GAT)、GraphSAGE和图同构网络(GIN)),采用Tiny-Llama作为LLM组件,并对网络层数进行了初步的敏感性分析。
数据集
第一部分采用PyTorch Geometric数据集模块提供的WebQuestionsSP(WebQSP)数据集。WebQSP是一个广泛应用于KGQA任务评估的标准数据集,源自Freebase知识图谱,包含需要最多2跳推理的简单问题。下表列举了本文中使用的WebQSP数据集的关键特征。
模型实现
下面的代码片段展示了PyTorch Geometric中G-Retriever模型的基本定义,包括GNN编码器的指定和LLM提示微调的配置。如前所述,研究在三种主流架构(GAT、GraphSAGE和GIN)之间进行了对比实验,并探索了不同的网络层数配置(2层或4层)。
完整的实验代码会在最后给出。通过Google Cloud Platform的Vertex AI Workbench和TensorDock平台进行实验。在A100 GPU上,每个模型的训练时间约为2-2.5小时。为了完整加载训练数据集,需要将GPU内存从24GB升级至80GB。
实验结果与分析
下表总结了G-Retriever模型的实验结果。所有模型配置均采用WebQSP数据集进行了50轮训练,批量大小设置为4。
基于G-Retriever模型的实验结果(训练轮数:50轮)
实验结果表明,在与Tiny Llama组合时,图同构网络(GIN)编码器在我们的G-Retriever框架中展现出最优性能。尽管这不是一个完整的敏感性研究,但实验数据揭示了层数增加对不同GNN架构的差异化影响:对于GAT,从2层增加到4层导致hit、recall和F1指标的提升;对于GraphSAGE,仅观察到recall的改善;而对于GIN,未观察到显著改善。虽然"过度平滑"现象(将在第二部分详细讨论)是GNN中的普遍问题,但其影响程度因架构而异。
就整体性能而言,可以通过以下方式进一步优化上述结果:增加梯度下降过程中的批量大小,以及使用更强大的预训练LLM(如Google的Gemma或标准的7B参数Llama LLM)替代相对较小的Tiny Llama(1B参数)。
尽管G-Retriever是一个新发表的精细架构,但利用PyG的预置模型抽象了部分复杂性,这使我们能够专注于理解高层模型结构、超参数配置和标准数据集的应用。接下来,我们将深入探讨另一个最新发布的复杂架构GNN-RAG,并在研究的后续部分对其性能进行更深入的分析。
第二部分:GNN-RAG模型架构改进与敏感性研究
通过前期对G-Retriever的探索性研究,我们对GNN-LLM组合架构建立了基础认知。本文的第二阶段聚焦于Mavromatis和Karypis在2024年提出的GNN-RAG架构。GNN-RAG在多个关键方面区别于G-Retriever,包括GNN架构设计、相关子图生成方法,以及信息格式化和LLM输入策略。鉴于GNN-RAG方法声称具有优于G-Retriever的性能,本文选择深入探索其优化和扩展潜力。
数据集选择与处理
为便于与现有研究进行性能对比,我们采用了原始GNN-RAG论文作者预处理的Complex Web Questions (CWQ)数据集。CWQ数据集通过向WebQSP问题增加实体或向答案添加约束条件构建而成,包含需要最多4跳推理的复杂问题。该数据集提供了多样化的KGQA任务场景,适合用于模型性能的全面评估。本文的第二部分和第三部分均采用CWQ数据集进行实验。
下图展示了经预处理的CWQ数据集样例。每个数据样本包含以下关键元素:唯一标识符、正确答案的标识符及完整文本、查询文本、知识图谱中对应查询的种子实体(图中橙色标注),以及由实体(节点)列表和关系(事实)元组列表描述的知识图谱子图。
数据集预处理主要包含两个核心步骤:
- 种子实体识别:针对每个查询,系统需要识别知识图谱中与查询相关的种子实体。这些种子实体在GNN-RAG框架中具有双重作用:一方面作为传递给LLM的推理路径的起点(终点为GNN生成的候选答案实体),另一方面在整个GNN架构中参与查询的嵌入表示(即指令)的更新过程。本文采用了Talmor和Berant的研究成果来获取种子实体。
- 子图构建:针对每个查询,系统需要从完整的FreeBase知识图谱中提取相关子图。本文遵循He等(2021)提出的方法,采用Andersen等(2006)的PageRank-Nibble算法,从知识图谱中选取与查询种子实体最相关的前m个实体。对于CWQ数据集,m值设定为2000。
预处理后的CWQ数据集示例。完整数据集可通过原始GNN-RAG作者的GitHub仓库获取。
基于现有架构的超参数优化研究
虽然ReaRev GNN模型的原作者在其发表的论文中提供了部分关键超参数的敏感性研究结果(主要基于CWQ以外的数据集),为了进一步扩展了这些研究,更全面地理解和探索原始架构的表达能力极限,为后续更深层次的架构改进奠定基础,我们研究设计了三类敏感性分析:
- GNN层数(L)影响研究:增加GNN层数通常能提升模型的表达能力,但同时也会增加"过度平滑"的风险。本文重点探索ReaRev模型在CWQ数据集上的最优层数配置及其性能转折点。
- 自适应阶段数(T)影响研究:如前所述,在每个自适应阶段结束时,系统基于知识图谱信息更新查询指令的嵌入表示。原作者通过少量示例证明了较大的T值能提升模型性能。本文在CWQ数据集上系统性地验证和扩展了这一发现。
- 指令数量(K)影响研究:ReaRev的一个创新点是将查询的嵌入表示(指令)数量K与GNN层数L解耦。理论上,更多的指令能够使GNN捕获查询信息的更多维度。本文对这一假设进行了实证分析。
ReaRev架构改进研究
经过对ReaRev模型架构的深入分析,我们可以使用多项架构改进方案并检验了它们对模型性能的影响。本节详细阐述各项改进的理论基础和技术实现,相关性能分析将在后续"结果"部分展开讨论。
实验1A:层级指令更新机制
根据对原始ReaRev架构的分析,将输入查询表示为K个指令嵌入的集合是决定模型性能的关键因素之一。在ReaRev框架中,自适应阶段的核心功能是迭代更新指令嵌入,使其能够反映用于答案推导的底层知识图谱信息。每个自适应阶段都需要将知识图谱通过完整的GNN模型(所有层)进行处理。因此如原作者指出,ReaRev的计算复杂度与自适应阶段数T呈正比。原始研究表明T=2已能达到较好的效果。
基于这一观察,可以提出一个创新性假设:通过在每个GNN层之后(而非每个自适应阶段之后)更新指令嵌入,可能使较小的自适应阶段数(如T=1,即单次GNN遍历)在性能上具有可行性。实验1A通过设置T=1并修改ReaRev代码实现了这一设想,具体实现如下所示:
实验1B:指令更新的跳跃连接
对原始ReaRev架构中的指令更新机制提出了另一项改进。在原始架构中,更新后的指令是可学习参数和问题种子实体嵌入的函数,同时结合门控循环单元计算的输出门向量:
其中:
- i⁽ᵏ⁾ 表示第k个指令嵌入
- g⁽ᵏ⁾ 表示第k个指令的输出门向量
- W_q 表示可学习参数张量
- h_ᵥ⁽ᴸ⁾ 表示第L层末端的问题种子嵌入
实验1B提出引入跳跃连接机制来改进指令表示的更新方案。这一改进借鉴了GNN领域的经典思想:跳跃连接常用于缓解深层网络中的节点表示"过度平滑"问题,其核心思想是保留早期层的表示信息,因为这些信息可能包含在后续层处理中丢失的重要特征。将这一思想应用于自适应阶段间的指令嵌入更新过程。通过在指令更新中添加跳跃连接,系统可以保持早期阶段指令表示中的关键信息。具体实现如下,本质上是对前一阶段指令和新阶段指令进行加权平均:
实验2A:增强型消息传递机制
实验2A和2B聚焦于改进ReaRev架构的消息传递机制。在原始模型中,从邻接节点v'到目标节点v在GNN第l层对第k条指令的消息传递函数定义如下:
通过对整体架构的分析,可以认为在消息函数中纳入更多邻接节点信息可能是有益的。例如,目标节点可能与多个邻接节点通过相同类型的关系连接,此时邻接节点本身的嵌入信息对于消息传递可能具有重要价值。基于此,本文提出了如下改进的消息函数:
其中:
- hᵥ,⁽ˡ⁻¹⁾ 表示邻接节点v'在l-1层的嵌入(维度与rᵥ,ᵥ相同)
- 引入了两个可学习的线性投影矩阵
具体实现代码如下:
实验2B:注意力增强的消息函数
基于实验2A的结果分析,还可以进一步提出了一个具有更强表达能力的消息函数改进方案:
其中:
这里的||运算符表示垂直拼接操作,这一点从W_R3线性投影张量的维度设计中可以明确看出。这一改进的核心思想是为指令嵌入i⁽ᵏ⁾与关系嵌入和邻接节点嵌入的交互提供多样化的注意力计算方式,从而增强模型的表达能力。该设计部分受到了原始模型架构中其他融合/注意力计算(如实验1B中的等式(11))的启发。具体实现代码如下:
实验结果与分析
对所有模型配置均进行了100轮训练,在保持其他关键超参数不变的情况下,对敏感性研究和架构改进进行了系统性评估。表中以"S"结尾的实验标识表示敏感性研究,1A至2B对应前述的架构改进实验。值得注意的是,实验1S来自原始GNN-RAG论文,作为本文的基准配置。(补充说明:本文第二部分的所有实验均采用RelBERT作为预训练语言模型来生成查询和关系相关的嵌入表示,而原作者使用SBERT。RelBERT因采用了更大的嵌入维度,在性能上略有优势。)
在第二部分进行的实验中,如下表所示,实验1B和2B在五个评估指标上均达到了最优表现。下文将对实验结果进行详细分析和讨论。
ReaRev架构敏感性研究和改进实验的性能评估结果(训练轮数:100)。表中加粗值表示各指标的最优性能,下划线值表示次优性能。
*注:S1为原始GNN-RAG作者工作的基准配置。
实验结果详细分析
GNN层数对模型性能的影响
下表和图表展示了GNN层数敏感性研究的详细结果。
实验结果表明,更深的GNN架构具有更强的表达能力,这使得具有更多推理层的模型能够更快地定位相关实体并实现训练收敛。从整体性能指标(精确率、召回率、F1、H@1)来看,将GNN层数从3增加到5确实带来了性能提升。然而当层数从5增加到7时,观察到了"过度平滑"效应的影响,导致性能略有下降。这种现象在GNN研究中已有广泛认知:过深的GNN可能导致所有嵌入趋于相似,从而降低模型的表达能力和实用性。尽管原作者的设计中已经集成了减少过度平滑的技术手段,但在超过5层后,这种机制的效果似乎变得有限。
此外,计算成本也是一个重要的考虑因素。在RTX 3090显卡上进行实验时,将层数从5增加到7导致运行时间从27小时延长到33小时(约20%的增加)。考虑到性能提升的边际效应,可能存在更高效的方法来实现同等程度的性能改进。
不同层数配置下的训练损失、F1和H1(H@1)指标演化曲线
自适应阶段数的影响分析
考虑到增加自适应阶段数所带来的显著计算开销,本文主要探索了减少自适应阶段数的可行性(这也为实验1A提供了有效的比较基准),结果如下表所示。
实验数据显示,当自适应阶段数从2减少到1时,模型性能出现了预期中的下降,这验证了原作者关于更新指令嵌入以反映底层知识图谱信息对提升答案质量的重要性的论述。特别值得注意的是,精确率的下降幅度明显大于召回率。这一现象从反面说明,增加自适应阶段数最显著的改进效果体现在提高模型的精确率和降低假阳性预测方面。然而,仅通过增加自适应阶段数似乎难以显著改善假阴性预测的问题。这一发现将在后续讨论实验1A时进行更深入的分析。
指令数量的影响研究
对原始GNN-RAG实现中指定的指令数量进行增减实验,结果如下表所示。
查询指令数量变化的敏感性研究结果汇总
根据实验数据,可以得出以下关键发现:
- 精确率、F1和H@1指标在K=3时达到最优值,无论增加还是减少指令数量都会导致这些指标的下降。
- 召回率和命中率在K=2(实验中尝试的最小指令数)时达到最优值,并随着指令数量的增加而降低。
这些结果揭示了指令数量对模型性能的多维度影响。根据现有数据,较少的指令数量有利于提高召回率,而精确率则随着指令数量的增加而提升,但这种提升存在上限。为深入理解这一现象,按问题类型(基于问题实体到真实答案实体的最短路径跳数)对性能进行了细分分析。下表分别展示了三组敏感性研究的精确率和召回率在不同问题类型上的表现。
不同问题类型的精确率分析结果
不同问题类型的召回率分析结果
在精确率方面,1跳和2跳问题在K=3时表现最佳,而3跳及以上问题在K=4时达到最优。这表明,对于需要在知识图谱中遍历更长路径的查询,增加指令数量能带来更显著的益处。相比之下,召回率分析显示,对于所有跳数长度的问题,K=2配置均能获得最佳性能。这一发现揭示了指令数量选择时需要权衡精确率和召回率的关系。研究表明,较大的指令数量主要有助于提高长路径查询的答案精确率。
架构改进实验的详细分析
为全面评估架构改进的效果,将实验1A和1B(针对指令更新方案的改进)以及实验2A和2B(针对消息传递方案的改进)的结果与关键敏感性研究进行对比分析,详细结果如下表所示:
指令更新机制的改进效果分析
实验1A与基准模型的对比
通过比较实验4S(T=1的敏感性研究)和实验1A的结果,可以发现实验1A导致了模型整体性能的下降,且在精确率相关指标上的下降幅度明显大于召回率相关指标。这一现象可能源于以下两个方面的原因:
- 在每个GNN层后更新指令查询可能导致指令中包含的信息出现混淆。
- 三层GNN结构可能不足以同时完成指令嵌入和节点嵌入的优化。
推测的原因可能是:通过额外的架构改进可能提升实验1A的性能,例如在每次更新时为指令添加跳跃连接(即结合1A和1B的设计理念)。然而,这种改进可能仍难以超越本文中其他模型配置的性能表现。
实验1B的性能分析
实验1B最适合与基准实验1S进行对比,因为两者采用了相同的超参数配置。实验结果显示,1B相对于1S在召回率和命中率上实现了超过1%的提升,但同时导致精确率和F1分数出现明显下降,而H@1指标仅有轻微降低。这表明在指令更新方案中引入跳跃连接确实能够保留有助于提高召回率的关键信息。尽管这种改进会导致精确率的一定损失,但对H@1指标的影响相对有限。这一发现启示我们,如果能将指令嵌入跳跃连接与其他提升精确率的改进措施相结合,可能为基准模型架构带来更全面的性能提升。
消息传递机制的改进效果分析
实验2A的性能评估
通过比较实验2A和基准实验1S的结果,可以观察到:在消息函数中直接引入邻居嵌入信息的初步尝试导致精确率和F1分数下降,仅在召回率上实现轻微改善,同时H@1和命中率出现小幅下降。这一结果表明,虽然邻居嵌入中确实包含有价值的信息可供消息函数利用,但实验2A中采用的具体实现方式可能不是最优的。
实验2B的突破性进展
基于实验2A的结果分析,实验2B重新设计了消息函数,旨在为指令嵌入与关系和邻居节点嵌入的交互提供更多样化的注意力计算方式。这一设计允许模型通过可学习的权重参数更灵活地选择和强调关系与邻居嵌入中的关键信息。实验结果有力地支持了这一设计理念:相比基准模型,精确率、F1分数和H@1指标均提升了1-1.5%以上,仅在召回率和命中率上出现轻微下降。
研究结论与未来展望
通过对ReaRev GNN模型架构(GNN-RAG架构的核心组件)的深入研究,探索了模型的行为特征并提出了多项有效的改进方案。研究工作主要包括:
- 通过敏感性研究深入分析了GNN层数、自适应阶段数和指令数量这三个关键超参数对模型性能的影响
- 揭示了增加GNN层数导致的过度平滑现象及其对不同类型问题的差异化影响
- 提出并实现了四项架构改进方案,分别针对指令更新方案和消息传递方案进行优化
特别值得注意的是,实验1B(指令跳跃连接)和实验2B(增强型消息传递)分别在召回率和精确率方面取得了最佳表现,这为未来的研究指明了方向。
基于本文的发现,可以提出以下几个有价值的未来研究方向:
- 集成优势互补的改进方案:考虑到实验1B和2B在精确率和召回率方面的互补优势,研究它们的组合实现可能带来更优的综合性能。
- 深化层级指令更新研究:进一步探索更频繁的指令更新机制(如每层更新),同时结合跳跃连接等其他架构改进措施。
- 验证极小指令数配置:执行K=1的实验,以确认是否能够超越K=2配置的召回率表现。
- 探索多配置融合方案:研究如何结合不同K值配置的优势,以提升模型在各类问题类型和跳长度上的整体表现。
- 优化计算效率:探索提升模型计算效率和降低复杂度的方案。
- 架构整合评估:将改进后的ReaRev GNN重新整合到GNN-RAG架构中,评估对LLM性能的影响。
- 数据质量提升:尽管CWQ是广泛使用的标准数据集,但我们发现其测试样本中存在一小部分异常失败案例。虽然为保持与原始论文的可比性,本文未对数据进行清洗,但提升数据质量对未来研究的稳健性具有重要价值。
第三部分:GNN-RAG架构的创新性扩展
本文的第三部分探索了通过反思机制和教师网络两种创新性概念来扩展GNN-RAG架构的可能性。这两种方法都旨在提升模型的推理能力和答案质量。
原始GNN-RAG模型在知识图谱中主要依赖问题和答案之间的单一最短路径进行推理。为增强这一基本假设,可以提出了三种可能的改进方向:
- 路径排序机制:为潜在的推理路径建立排序体系
- 多路径聚合策略:开发针对多个推理路径结果的聚合方法(可能采用注意力机制或池化方案)
- 反向推理增强:在GNN训练和推理过程中利用反向推理路径的信息(参考He等人2021的研究思路)
本文重点探索了第三种方案,并提出了一种创新性的"反思"或"反事实"推理机制,该机制可以在预训练模型上直接应用,无需额外的训练过程。如图所示,当系统确认某个答案错误时(例如在生产环境中通过用户反馈),该机制能够基于GNN的原始推理路径,指导模型从错误答案节点开始反向探索,在某个前序步骤启动束搜索,或利用原始答案路径的补集(即负采样)进行推理,这一过程仍然使用预训练模型完成。
值得注意的是,在本文的实验设置中,使用的是预处理数据集,其中每个正确答案都确保存在于传递给GNN的子图中。未来研究可以将这一机制扩展到开放集问题场景(即GNN需要在推理答案之前选择合适的子图),可能的方向包括通过比较不同采样子图中节点/实体嵌入的相似性来指导多重图上的遍历策略。
反思机制的实验实现
失败案例分析
为了有针对性地提升模型性能,首先对失败案例进行了系统性分析。重点考察了在不同GNN层配置下,错误候选答案到正确答案的(跳)距离分布。采用networkX库中的最短路径算法(类似BFS搜索)来计算这一距离指标。表中展示了跳距离的详细分布情况。实验数据显示,相比L=3和L=5的配置,L=7的GNN模型生成的错误候选答案与正确答案之间的平均跳数更小。这一现象可以解释为:更深的GNN结构能够获取更远距离的节点信息,从而在推理过程中更接近正确答案。
不同GNN层数配置下错误候选答案与正确答案间跳距离的对比分析
图结构上的反思实现
基于前述分析,我们针对3、5和7三种不同的GNN层数配置进行了实验,目标是在较小的(跳)距离范围内定位正确答案。考虑到大多数有价值的失败案例与正确答案之间仅相距几跳,采用了以下创新性方法:重用预训练GNN架构,保持查询文本不变,但将问题实体替换为当前错误候选答案的全局实体ID。实验结果如表所示。
数据显示,3层GNN配置在此项改进中获得了最显著的性能提升,提升幅度达52%。为简化实验复杂度,在每个案例中仅选择一个与正确答案具有最短跳距离的错误候选答案进行分析。实验结果的合理性可以从以下角度理解:3层GNN从第二次"反思"调用中获得最大收益,这是因为仅有3层的GNN结构无法像更深层的网络那样获取远距离的跳跃信息(3层结构最多获取3跳信息),而L=7的配置本身就具备较强的远距离信息获取能力。这一解释与表中结果分布的趋势相符。
下表总结了引入反思机制后模型的整体性能表现。实验表明,L=5的GNN配置达到了最优性能,这种结果可以类比于传统BFS和DFS算法的平衡点。这一发现也与第二部分中关于层数的敏感性研究所揭示的"过度平滑"效应相呼应。与原始论文的结果(使用作者发布的默认设置和SBERT重新运行)相比,本文提出的反思机制在F1、H@1和Hit三个指标上分别实现了2.95%、1.33%和2.04%的性能提升。
反思机制的潜在优化方向
基于当前研究成果,我们识别出两个可能的优化方向,有望进一步提升反思机制带来的性能增益:
- 多层配置融合:实验观察发现,L=3、L=5和L=7三种配置在整体案例中表现出不同的失败模式,这启示我们可以探索某种方式组合这三种GNN配置的优势,potentially获得更好的整体性能。
- 负向信息利用:本文使用的CWQ数据集基于无向知识图谱,这使得通过将当前节点作为问题实体重新运行GNN来实现"反向推理"变得相对简单。然而还是尚未充分利用已知的候选答案结果信息(即我们知道原始GNN生成的候选答案是错误的这一事实)。一个可能的改进方向是在生成问题的嵌入表示之前,将相关信息(如"候选A不是答案"或"排除候选A及其高相关邻居")作为额外的文本信息附加到查询中,这可能进一步提升模型性能。
基于教师网络的GNN推理监督优化研究
使用教师神经网络(如OpenAI的o1模型)来分析预训练GNN模型在推理过程中的具体失败步骤。具体来说我们向LLM提供子图作为提示,要求其采用步骤式思维方式,从给定的可能选项中选择最合理的答案(类似于多选题的形式),从而为模型微调提供指导。这种方法在计算效率上具有优势,因为它在推理阶段执行,无需对GNN进行重新训练。
LLM生成的推理路径可以作为监督信号,用于增强GNN的训练过程。
实验实现与结果分析
LLM提示设计
我们选择GPT-o1和Gemini Advanced 1.5 Pro作为教师网络,用于生成推理路径。这些路径随后与GNN的输出进行比较,以定位GNN推理路径开始偏离LLM生成路径的具体节点(实体)。实验采用以下三步提示策略:
- 知识图谱构建说明:"我们正在构建一个关系知识图谱。这里是图的边的json格式。"
- 数据提供:"这里是json格式的边:" [附加RoG数据集graph字段中的子图文本]
- 问题提出:"Country Nation World Tour音乐会艺术家在哪所大学就读?请使用知识图谱回答这个问题,并列出到达最终答案的推理路径。"
GPT-o1的推理路径分析
GPT-O1模型的响应如下:
基于提供的知识图谱分析表明,该图中不包含将Country Nation World Tour的演出艺术家(Brad Paisley)与其就读的具体学院或大学关联的信息。因此,仅凭给定的图无法确定准确答案。
推理路径分析:
1. 确认演出艺术家信息:
搜索到的相关三元组:
['Country Nation World Tour', 'music.concert_tour.artist', 'Brad Paisley']
由此确认Country Nation World Tour的表演者为Brad Paisley。
2. 查找教育背景信息:
与Brad Paisley教育相关的三元组:
['Brad Paisley', 'people.person.education', 'm.0h3d7qb']
['m.0h3d7qb', 'education.education.student', 'Brad Paisley']
['m.0h3d7qj', 'education.education.student', 'Brad Paisley']
['m.0h3d7qj', 'education.education.degree', "Bachelor's degree"]
['m.0n1dd_6', 'education.education.student', 'Brad Paisley']
分析表明存在至少两到三个与教育相关的节点(m.0h3d7qb, m.0h3d7qj, m.0n1dd_6)与Brad Paisley相关联,其中一个节点(m.0h3d7qj)关联了学士学位信息。
然而,在所有提供的三元组中,未发现将Brad Paisley的教育节点与具体院校名称关联的信息,如['Brad Paisley', 'education.education.institution', 'Belmont University']这样的关联关系。
Gemini的推理路径分析
Gemini Advanced 1.5 Pro模型给出了以下分析:
Country Nation World Tour的演出艺术家Brad Paisley就读于Belmont University。
推理路径:
1. 演出者识别:
- 'Country Nation World Tour' 'music.concert_tour.artist' 'Brad Paisley'
2. 院校信息查找:
- 'Brad Paisley' 'people.person.education' 'm.0h3d7qb'
- 'm.0h3d7qb' 'education.education.student' 'Brad Paisley'
- 'm.0h3d7qb' 'education.education.degree' "Bachelor's degree"
- "Bachelor's degree" 'common.topic.subject_of' 'Europäische Fernhochschule Hamburg'
- 'Europäische Fernhochschule Hamburg' 'education.educational_institution.parent_institution' 'Klett Gruppe'
3. 院校信息补充路径:
- "Bachelor's degree" 'common.topic.webpage' 'm.09wyykm'
- 'm.09wyykm' 'common.webpage.resource' "Linkin Park's Delson replaces Franco for UCLA graduation speech"
对比分析显示,两个模型都能通过两次跳转定位到关键信息:首先识别Country Nation World Tour的演出者是Brad Paisley(第一跳),然后关联到Bachelor's degree信息(第二跳)。相比之下,独立运行的ReaRev GNN架构未能得出正确结论。分析表明,GNN成功完成了第一跳推理,但在第二跳时出现偏差,过分关注了notable_types或nationality等属性信息。
总结
本文采用多层次方法探索了GNN-LLM架构领域的最新发展。我们对最新提出的GNN-RAG架构进行了深入研究,通过敏感性分析、架构改进和创新性方法扩展,在标准评测数据集上取得了显著的性能提升。正如研究过程中所揭示的,GNN-LLM架构的优化仍存在诸多富有前景的研究方向。GNN将在推动LLM研究和性能提升方面发挥重要作用,我们期待该领域未来的进一步发展。
本文代码:
https://avoid.overfit.cn/post/0fcd46db11c845ffac9bbcbeccad55d9
作者:Tamika Bassman
热门跟贴