Advertisement

【KD】2022 ICLR Graph-Less Neural Networks: Teaching Old MLPs New Tricks Via Distillation

阅读量:

目录

简介

分析

1 Background

2 Motivation

3Method

4 Experiment

1. GLNN与MLPs和GNNs相比如何?

2. GLNN在两种不同的实验设置下都能很好地工作吗?

3. GLNN与其他推理加速方法相比如何?

4. GLNN如何从KD中获益?

5. GLNN是否有足够的模型表现力?

6. GLNN何时会失效?

5 Ablation Study

Noisy node features

Inductive split rate

Teacher GNN architecture

6 Conclusion

参考


简介

论文题目:基于蒸馏的旧MLP新技巧:Graph-Less Neural Networks
第一作者:张三岁、刘雨辰、孙艺卓及尼尔·沙赫
所属机构:加州大学与Snap Inc.
论文链接:https://arxiv.org/abs/2110.08727
代码链接:https://github.com/snap-research/graphless-neural-networks
作者介绍:知乎@张三岁(转载已获授权)
原文链接:https://zhuanlan.zhihu.com/p/521909814

分析

本篇文章聚焦于ICLR 2022的一篇创新性研究,其标题为《Graph-Less Neural Networks: Teaching Old MLPs New Tricks Via Distillation》。研究团队提出了一个具有实际应用价值的科研课题,即如何突破图神经网络(GNN)推理时间过长的瓶颈,使其能够更广泛地应用于现实场景。研究采用知识蒸馏(knowledge distillation)技术,将GNN的知识转移到MLP模型中,从而实现MLP在性能上与GNN相媲美的目标。该模型结构简洁,性能卓越,通过多维度实验全面验证了其有效性。

1 Background

图神经网络(Graph Neural Networks GNNs)最近引起了图机器学习(Graph Machine Learning GML)研究领域的广泛关注,并在节点分类(node classification)任务中展现出显著性能。然而,尽管如此,在大规模工业界应用中,现有的主流模型仍以多层感知机(MLP)为主(注:通常情况下,MLP在性能上不及GNN)。造成这种学术界与工业界差距的主要原因之一是GNNs中的依赖关系(graph dependency)。这种依赖关系使得GNNs在需要满足快速推理(fast inference)需求或对延迟(latency)敏感的应用场景中难以实现有效的部署。

由拓扑依赖性(graph dependency)引发的邻接节点收集(neighborhood fetching)是造成GNN计算延迟性主要原因之一。

2 Motivation

图1:GNN和MLP在不同层数下的所需邻居节点个数和推理时间

与GNNs不同,MLPs因其输入仅基于节点属性(node attribute),因此在图数据处理中不依赖图结构(graph structure),且在部署效率上具有显著优势。此外,MLPs还具有另一个显著优点,即在图数据在线预测过程中通常会遇到的"冷启动问题"(cold start problem)可以有效避免。这表明,即使新节点的邻居信息无法立即获取,MLP仍能合理推断出新节点的特征表示。然而,由于MLP不依赖于邻居信息,其表现通常会低于GNNs。我们提出一个问题:能否在GNN和MLP之间建立一种桥梁,既能继承MLP的低延迟和无图依赖性,又能达到与GNN相当的性能(accuracy)?即,**本文旨在构建一种模型,该模型在保持MLP低延迟和无图依赖性的同时,能够与GNN在预测精度上不相上下,从而解决GNN计算延迟高的问题。**以下将从以下几个方面展开具体分析:

基于图依赖性分析,GNNs在推理过程中会面临显著的延迟问题。具体而言,GNN的层数每增加一层,都需要依次获取更多层的邻居信息。在具有平均度数为R的图中(其中R表示每个节点平均拥有的邻居数量),使用L层的GNN进行推断时,需要依次获取R^L个邻居信息。由于在实际场景中,R往往较大(例如,在Twitter数据集中,R=208),且邻居信息的获取需要逐层进行,这会导致GNN的推理时间随着层数的增加呈指数级增长。相比之下,MLP在相同层数下,推理时间不仅增长幅度较小,而且呈线性增长。这种推理时间的显著差异,可以部分解释为何MLP在实际应用中更受欢迎。进一步分析发现,邻居节点获取延迟的加剧主要源于两个因素:首先,GNN架构趋向于越来越深,层数从64层扩展至甚至1001层;其次,在工业应用中,图的规模往往庞大,无法完全加载到单机内存中,这使得邻居节点的获取不得不依赖内存与磁盘的交互,从而进一步增加了延迟。

另一方面,MLPs在节点分类任务中未充分考虑图的拓扑结构(graph's structural information),这导致其性能表现受到影响。具体而言,GraphSAGE在ogbn-Products数据集上实现了78.61%的准确率,而相同层数的MLP仅能达到62.47%。然而,最近的研究表明,经过适当调整的大型MLPs在计算机视觉(CV)和自然语言处理(NLP)领域已能达到与卷积神经网络(CNN)和Transformer相当的性能水平。

该研究致力于将图神经网络和多层感知机的优点进行融合,旨在实现模型在准确率和延迟两个维度上的优化。

3Method

为了融合GNN和MLP的优势,构建一个高准确率且低延迟的模型,该文章提出了一种名为Graph-less Neural Network (GLNN)的新架构。具体而言,GLNN是一种基于教师GNN与学生MLP之间知识蒸馏的知识传递模型。经过训练后,学生MLP即为最终的GLNN实现,因此该模型在训练阶段受益于图拓扑结构的优势,但在推理过程中完全独立于图依赖性。知识蒸馏(knowledge distillation KD)作为一种范式,由Hinton等人于2015年提出,旨在将复杂教师模型的知识转移到一个更简单的学生模型。该文章旨在通过知识蒸馏从复杂教师GNN中训练出一个优质的学生MLP。具体而言,我们通过教师GNN为每个节点v生成其软目标(soft targets)z_v,然后利用真实标签(true label/ground truth)y_v与教师GNN生成的软目标z_v对学MLP进行训练。GLNN的目标函数如公式1所示,其中

是权重参数, L_1是真实标签 y_v 和学生MLP预测出的标签

的交叉熵(cross-entropy)函数, L_t是KL散度 (KL-divergence)。

通过知识蒸馏(KD)训练后生成的学生模型,即GLNN,本质上等同于一个多层感知机(MLP)。因此,GLNN在推理过程中完全不受图依赖性影响,其推理速度与MLP相当。另一方面,通过KD,GLNN的参数经过优化后具备与GNN同样的预测能力和泛化性能,同时推理速度更快且部署更加便捷。图2详细展示了GLNN框架的结构图。

图2:GLNN框架

4 Experiment

基于GLNN模型结构的简单性特点,实验部分成为本文的核心内容,系统地分析和论证了GLNN模型的有效性及其有效性的原因。实验部分主要针对以下六个问题进行深入探讨。

1. GLNN与MLPs和GNNs相比如何?

首先,我们将GLNN与其具有相同层数和相同的隐藏层宽度的MLPs和GNNs,在标准的推导范式下进行对比分析。

实验结果如表1所示,在所有数据集上,GLNN的表现均较MLP显著提升。就小规模数据集而言(前五行),GLNN的表现甚至超越了教师型GNN。在相同条件下,存在一组MLP参数,其性能可与GNN相媲美。就大规模数据集而言(最后两行),GLNN的表现虽较MLP有所提升,但仍不及教师型GNN。然而,这种GLNN与教师型GNN在大规模数据集上的性能差距可通过增加MLP层数来缩小,如表2所示。如图3(右侧图所示),一方面,逐步增加GLNN的层数可使其性能逼近SAGE的表现。另一方面,当SAGE的层数减少时,其准确率将迅速降至低于GLNN的表现。

表1:GLNN与MLPs和GNNs在常规数据集上的表现比较

表2展示了在对大规模数据集的性能研究中,通过加深网络结构,GLNN与MLPs和GNNs之间的性能对比具有重要意义。在Arxiv数据集上,GLNN的网络深度较MLP提升了4倍;在Product数据集上,GLNN的网络深度较MLP提升了8倍。

图3:加深的GLNN与GNN的表现比较

2. GLNN在两种不同的实验设置下都能很好地工作吗?

直推设置(transductive setting)是一种常见的节点分类方法,但其特点在于仅能预测训练集中出现的节点(即完整地包含所有节点之间的连接信息)。为了全面评估GLNN的表现,本文还探讨了在归纳设置(inductive setting)下的实验方案(即排除了测试集节点及其相关的边信息)。具体实验设置的细节可在原文中找到。实验结果展示在表3中。

在表3的展示中,可以看出GLNN在归纳设置条件下的性能依然显著优于MLP。在6至7个数据集上,GLNN的表现与GNNs接近。值得注意的是,在处理大规模Arxiv数据集时,GLNN的性能明显低于GNNs。文章指出,这一差距的原因在于Arxiv数据集的数据分割方式具有特殊性,导致测试节点与训练节点之间的分布转移现象,从而使GLNN在知识蒸馏过程中难以有效提取邻居节点的信息。

表3:GLNN与MLPs和GNNs在直推(transductive)和归纳(inductive)设置下的表现

3. GLNN与其他推理加速方法相比如何?

常见的推理加速技术(inference acceleration)包括剪枝操作和量化处理。这些方法通过减少模型的乘加运算量(Multiplication-and-Accumulation MAC)来实现加速效果。然而,这类方法未能有效缓解因需要获取邻居信息(neighbor-fetching)而带来的延迟(latency)问题。因此,在GNNs上的加速效果提升相对有限。相比之下,邻居采样操作(neighbor sampling)也被引入以减少延迟。在本实验中,我们采用的基准线(baseline)包括SAGE、QSAGE(一种FP32到INT8量化处理后的SAGE模型)、PSAGE(经过50%权重剪枝操作的SAGE模型)以及邻居采样操作(Neighbor Sample,采样15个邻居节点 fan-out 15)。实验结果如表4所示,GLNN在所有基准线中表现尤为突出。

表4:GLNN及其基线模型在归纳推理场景下的推理耗时

另一种推理加速的方法是基于GNN的KD(即教师和学生网络均为GNN)的策略,如TinyGNN和Graph Augmented-MLPs(GA-MLPs)等。值得注意的是,基于GNN的KD方法在推理速度上会比相同层数的普通GNNs慢,因为通常会引入额外的开销,例如TinyGNN中的Peer-Aware Module(PAM)。GA-MLPs在应用MLPs之前需要先预计算增强的节点特征,这一过程本身不计入推理时间。因此,尽管预计算不计入推理时间,但GA-MLPs的推理时间与MLPs相当。基于此,对于GLNN、GNN-to-GNN和GA-MLPs的推理时间比较,可以等价于对GLNN、GNN和MLP进行比较。实验结果如图3左侧所示,GLNN在推理速度上远超MLP。然而,由于GA-MLPs在归纳设置(inductive setting)中无法完全实现预计算,因此在归纳任务中,GA-MLPs仍需获取邻居节点,这使其比MLP慢得多,甚至可能比剪枝过的GNN和TinyGNN还要慢。因此,GLNN在推理速度上显著优于GNN-to-GNN和GA-MLPs的基线。

4. GLNN如何从KD中获益?

基于损失曲线的可视化图,可以表明KD通过正则化和归纳偏见转移机制,成功地找到了使MLP性能与GNN相媲美的参数设置。进一步地,GLNN能够得益于教师输出中所包含的图拓扑结构信息,从而实现了更高效的特征学习。具体细节,有兴趣的读者可以自行阅读原文。

5. GLNN是否有足够的模型表现力?

从直观角度来看,在节点分类任务中,基于邻居信息的图神经网络(GNN)展现出比多层感知机(MLP)更强的表现力。因此,MLPs是否能够与GNNs在代表图数据方面具有相同的表现力?研究表明,在节点特征(node attribute)高度丰富的条件下,MLPs与GNNs在表示能力上具有相似性。具体而言,当节点特征(node attribute)非常丰富时,MLPs与GNNs在处理图数据时展现出相似的能力。 具体细节,有兴趣的读者可以自行阅读原文。

6. GLNN何时会失效?

当每个节点的度数或是否参与形成三角形来标记时,MLPs在无法捕捉节点间复杂关系时会失效,而GLNNs则能有效处理这些情况。但这种情况在实际应用中非常罕见。在实际应用中,节点的特征与其在拓扑结构中的位置通常具有高度的相关性。因此,即使仅基于节点特征,MLPs也能在许多实际场景中获得合理的效果,而GLNNs则可能在复杂关系中表现出更优的性能。

5 Ablation Study

我们对GLNN在噪声节点特征、归纳设置下的分割率(inductive split rates)以及教师型GNN架构方面进行了消融研究。以下仅展示研究结论,而实验细节对有兴趣的读者则可自行查阅原文。

Noisy node features

我们通过在节点特征(node features)中引入不同强度的高斯噪声来降低其与标签的相关性。采用 α∈[0,1] 的方式表示噪声引入的程度。实验结果显示,如图4-左图所示,**随着 α 值的增大,MLP和GLNN的性能比GNN的下降幅度更大。**当 α 值较小时,GLNN和GNN的性能表现相近。

Inductive split rate

在图5-中图中,我们展示了不同分割率下MLP、GNN、GLNN的性能对比。实验数据显示,随着分割率的增加,即归纳能力的提升,GNN和MLP的性能保持稳定,而GLNN的归纳性能出现了轻微下降。当面临大量新数据时,从业者可能采取基于所有数据重新训练模型的策略以提升模型性能。

Teacher GNN architecture

在图5-右图中,我们呈现了采用其他多种GNN作为教师的实验结果,包括GCN、GAT和APPNP等。观察发现,GLNN能够从不同教师中学习,并在性能上均优于MLP。在四个教师中,基于APPNP的GLNN在表现上略逊于其他教师。一个可能的原因是,APPNP的第一步操作是基于节点自身特征进行预测(在信息传播前),这与MLP的学习方式具有相似性,因此在传递给MLP的额外特征上存在不足,导致其性能稍差。

6 Conclusion

该研究探讨了如何结合图神经网络(GNN)和多层感知机(MLP)的优势,以期实现图机器学习模型的高效部署。通过实验发现,从GNN向MLP迁移的 Knowledge Distillation(KD)策略能够有效消除推理图的依赖性,从而实现GLNN相比GNN快146×至273倍,且性能保持不变。对GLNN的特性进行了系统性研究。通过在7个不同领域的数据集上的实验,我们验证了GLNN在满足延迟约束条件下的高效部署能力,证明其为该类模型部署提供了可靠的选择。

参考

ICLR'22 | Graph-Free Neural Networks via Knowledge Distillation: A Comprehensive Study

全部评论 (0)

还没有任何评论哟~