专题解读 | 多层GNN训练如何提升效率?

文摘   2024-11-27 13:52   安徽  

多层GNN训练如何提升效率?

随着图数据在多个领域的广泛应用,图神经网络(GNN)已成为处理图结构数据的强大工具。然而,随着网络层数的增加,GNN的训练效率和计算成本急剧上升,这限制了其在大规模图数据上的应用。因此,研究者们一直在探索如何提高GNN的效率,同时保持或提升其性能。

Fast and Deep Graph Neural Networks (AAAI 2020)

本文提出了一种名为 Fast and Deep Graph Neural Networks (FDGNN) 的模型,旨在提高图神经网络(GNN)的效率和性能。FDGNN 通过将每个输入图表示为动态系统的一个固定点,并利用递归神经网络(RNN)来实现这一表示。该模型的核心在于利用深层架构组织递归单元,并通过稳定性条件来初始化权重,从而避免了对递归单元权重的训练,显著提高了模型的训练效率。

关键特点

  • 动态系统表示:FDGNN 将每个输入图表示为一个动态系统的固定点,这个动态系统通过递归神经网络实现,允许模型捕捉图的结构信息。

    其中 ( A ) 是邻接矩阵,( X ) 是节点特征,( W ) 是投影系数,( P = \varphi(A) ) 是 ( A ) 的一个函数。

  • 深层架构:模型采用深层架构组织递归单元,使得网络能够学习输入图的层次化抽象表示。

  • 稳定性条件:在初始化权重时,FDGNN 引入了稳定性条件,确保了动态系统的稳定性,从而保证了图嵌入的唯一性和鲁棒性。

    其中 表示谱半径, 是递归权重矩阵, 是图的度。

  • 无训练的权重:与常规的 GNN 模型不同,FDGNN 在稳定性条件下初始化权重后,不再对这些权重进行训练,这大大减少了模型的训练成本。

  • 稀疏连接:FDGNN 使用小型且非常稀疏的网络,其中递归单元的权重在稳定性条件下未经训练,这有助于提高计算效率。

实验结果

通过在多个图分类基准数据集上的实验,FDGNN 显示出与最先进的图神经网络模型和图核方法相竞争的性能,同时在训练效率上有显著提升。

Decouple Graph Neural Networks: Train Multiple Simple GNNs Simultaneously In (TPAMI 2024)

这篇论文提出了一种名为 Decouple Graph Neural Networks (GNNs) 的方法,通过将多层 GNN 分解为多个简单模块来提升训练效率,同时保留图结构信息。传统 GNN 随着层数增加会导致节点依赖指数增长,使得训练变得低效且耗时。作者通过引入正向训练(FT)和反向训练(BT),实现了模块之间的双向信息传递,从而解决了单向传递带来的性能局限。

本提出了Stacked Graph Neural Networks (SGNN)方法。SGNN的核心思想是将多层图神经网络(GNN)解耦为多个简单的GNN模块,并同时训练这些模块,而不是随着深度的增加而连接它们。框架如图所示。

关键特点

  • 解耦架构:SGNN将复杂的多层GNN解耦为多个简单模块,每个模块可以独立训练,同时保留图结构信息。

    其中 ( A ) 是邻接矩阵,( X ) 是节点特征,( W ) 是权重矩阵。

  • 正向训练(FT):每个模块 ( M_t ) 通过正向训练独立学习,利用图结构信息进行特征提取。

    表示度量函数, 是映射函数。

  • 反向训练(BT):通过反向训练机制,前面的模块能够根据后面的模块反馈的信息进行调整,增强模型的表示能力。

    是第 个模块的输出, 是预期输入特征。

  • 效率与性能平衡:SGNN在保持合理性能的同时,显著提高了训练效率,适用于大规模图数据的处理。

  • 理论证明:文章还提供了理论分析,证明了在无监督任务中,线性SGNN模块的误差在大多数情况下不会累积。

算法流程

以下为SGNN的算法流程:

实验结果

本文通过实验验证了SGNN的性能和效率。实验包括节点聚类和半监督节点分类任务,使用了四个常见的数据集:Cora、Citeseer、Pubmed和Reddit。

在节点聚类任务中,本文比较了包括基线聚类模型K-means、三种不考虑训练效率的GCN模型(GAE、ARGA、MGAE)以及六种快速GCN模型(GraphSAGE、FastGAE、ClusterGAE、AGC、S2GC和GAE-S2GC)等共10种方法。实验结果表明,SGNN在大多数数据集上表现优于其他方法。

此外,本文还提供了SGNN在节点分类任务上的可视化结果,展示了SGNN的非线性和后向训练对特征的影响。

总结

这两篇论文都致力于解决多层GNN以及大规模图训练的效率和计算成本问题。FDGNN 证明了在不牺牲性能的情况下,可以通过简化模型的训练过程来提高 GNN 的效率。而SGNN框架通过将多层GNN解耦为多个简单模块,并采用正向与反向训练策略,显著提升了模型的训练效率和性能。这些实验方法都为多层GNN的提效提供了解决方案,具有一定的理论和实践意义。


北邮 GAMMA Lab
北邮图数据挖掘与机器学习实验室
 最新文章