知识蒸馏论文精选——《Graph-less Neural Networks: Teaching Old MLPs New Tricks via Distillation》

GLNN:无图神经网络

《Graph-less Neural Networks: Teaching Old MLPs New Tricks via Distillation》 2022 ICLR

作者是Shichang Zhang、Yozen Liu、Yizhou Sun和Neil Shah

代码和论文地址见文末

摘要

图神经网络( Graph Neural Networks,GNNs )是图机器学习的热门,在广泛的节点分类任务上表现出了很好的效果。然而,由于数据依赖性带来的可扩展性挑战,它们在行业中的实际部署中并不受欢迎。也就是说,GNN推理依赖于距离目标节点多跳的邻居节点,而抓取这些邻居节点会给时延受限应用带来负担。现有的推理加速方法,如剪枝和量化,可以通过减少乘累加( Multiplication-and-ACcumulation,MAC )操作来加速GNNs,但由于没有解决数据依赖问题,这些改进是有限的。相反,多层感知器( MLPs )没有图依赖性,推断速度比GNNs快得多,尽管它们对节点分类的总体精度低于GNNs。基于这些互补的优势和劣势, 我们通过知识蒸馏( KD )将GNNs和MLPs整合在一起 。我们的工作表明,使用GNN KD可以大幅度地提高MLPs的性能。我们称蒸馏后的MLPs为无图神经网络( Graph-less Neural Networks,GLNNs ),因为它们没有推理图依赖。我们发现,具有竞争精度的GLNNs比GNNs推理速度快146 × -273 ×,比其他加速方法推理速度快14 × -27 ×。在包含7个数据集的直推式和归纳式预测的生产环境下,GLNN的准确率比独立的MLPs平均提高了12.36 %,并在6 / 7的数据集上与GNN相匹配。综合分析表明,GLNNs何时以及为何能达到与GNNs相当的精度,并建议GLNN作为时延受限应用的简便选择。

1、引言

图神经网络( Graph Neural Networks,GNNs )最近成为图机器学习( Graph Machine Learning,GML )的研究热点,在联合采购图上的产品预测和引文图上的论文类别预测等节点分类任务( Kipf &韦林, 2016 ; Hamilton et al , 2017 ; Veli ckovi ’ c et al , 2017)上取得了很好的效果。然而,对于大规模的工业应用,MLPs仍然是主要的工作,尽管有共同的(隐式)底层图形和GML形式的适用性。造成这种学术-工业差距的原因之一是GNNs (张杰等, 2020 ; Jia et al , 2020)中数据依赖带来的可扩展性和部署方面的挑战,这使得GNNs难以部署到需要快速推理的时延受限应用中。

图依赖导致的邻域获取是GNN延迟的主要来源之一。对目标节点的推理需要获取多个邻居节点的拓扑和特征,特别是在小世界图(第4节详细讨论)上。常见的推理加速技术如剪枝( Zhou et al , 2021)和量化( Tailor et al . , 2021 ; Zhao et al , 2020)可以通过减少乘累加( MAC )操作在一定程度上加速GNNs。

然而,由于没有解决图依赖问题,它们的改进是有限的。与GNNs不同,MLPs对图数据没有依赖性,并且比GNNs更容易部署。此外,MLPs还具有规避关系数据( Wei et al . , 2020)在线预测过程中经常发生的冷启动问题的辅助优势,即即使在新相遇节点的邻居信息不能立即获得的情况下,MLPs也可以合理地进行推断。另一方面,这种图依赖的缺乏通常会损害关系学习任务,限制了MLP在GML任务上的性能与GNNs相比。由此我们提出疑问:我们能否在两个世界之间架起桥梁,同时享受MLPs的低延迟、无依赖特性和GNNs的图上下文感知特性?

目前的工作

我们的关键发现是,在不损失显著性能的情况下,可以从GNNs提取知识到MLPs,但大大减少了节点分类的推理时间。知识蒸馏( KD )可以离线进行,并与模型训练相耦合。换句话说,我们可以将相当多的工作从时延受限推断步骤(以毫秒为单位的时间减少带来了巨大的差异)转移到不太敏感的训练步骤(以小时或天为单位的时间成本往往是可以容忍的)。我们称这种方法为无图神经网络( Graph-less Neural Network,GLNN )。具体来说, GLNN是一个从GNN教师到学生MLP的涉及KD的建模范式;生成的GLNN是通过KD优化的MLP,因此它在训练中享有图上下文感知的好处,但在推理中没有图依赖。在速度方面,GLNNs具有出色的效率,比GNNs快146 × -273 ×,比其他推理加速方法快14 × -27 ×。在性能方面,在包含7个数据集的直推式和归纳式预测的生产环境下,GLNN的准确率比MLPs平均提高了12.36 %,并在6 / 7的数据集上与GNNs相匹配。我们全面地研究了GLNNs何时以及为何能够像GNNs那样取得具有竞争力的结果。我们的分析表明,实现这种高性能的关键因素是大的MLP尺寸和节点特征与标签之间的高互信息。我们的观察结果与最近在视觉和语言方面的结果一致,这表明足够大的(或稍作修改)MLPs可以取得与CNNs和Transformers ( Liu et al , 2021 ; Tolstikhin et al , 2021 ; Melas-Kyriazi , 2021 ;图夫龙et al , 2021 ; Ding et al , 2021 )相似的结果。

我们的核心贡献如下:

  • 我们提出了GLNN,它通过KD到MLP消除了GNN推理中的邻居提取延迟。
  • 我们展示了GLNN具有与GNN竞争的性能,同时拥有比香草GNN快146 × -273 ×的推理速度和比其他推理加速方法快14 × -27 ×的推理速度。
  • 我们通过考察GLNN在不同设置下的性能,它们作为正则化器的工作方式,它们的归纳偏差,表现力和局限性来全面研究GLNN的性质。

2、相关工作

图神经网络

早期的GNNs将卷积网络泛化为图( Bruna et al . , 2014 ; Defferrard et al , 2017),后来通过GCN ( Kipf &韦林, 2016)简化为消息传输神经网络( MPNN )。之后的大多数GNNs可以统称为MPNNs。例如,GAT使用注意力( Veli ckovi ’ c等, 2017),PPNP使用个性化PageRank (克利茨佩拉et al , 2019),GCNII和DeeperGCN使用残差连接和密集连接( Chen et al . , 2020 ; Li et al . , 2019)。

推理加速

推理加速通过硬件改进和算法改进剪枝、量化提出。对于GNNs,研究了剪枝和量化GNN参数。这些方法在一定程度上加快了GNN的推理速度,但并没有消除邻居获取延迟。相比之下,我们的交叉模型KD解决了这个问题。同时,Graph - MLP也试图通过训练一个带有邻居对比损失的MLP来绕过GNN的邻居获取( Hu et al . , 2021),但它只考虑了直推式,而没有考虑更实际的归纳式设置。一些采样工作专注于加速GNN训练(邹薇等, 2019 ; Chen et al . , 2018),这与我们的推断加速目标是相辅相成的。

GNN蒸馏

现有的GNN KD工作试图将大的GNN提取到更小的GNN中。LSP ( Yang et al , 2021b)和TinyGNN ( Yan et al , 2020)在保留局部信息的同时进行KD。他们的学生是参数较少但不一定层数较少的GNN。因此,这两种设计仍然需要延迟诱导抓取。GFKD ( Deng & Zhang , 2021)通过图生成进行图级KD。在GFKD中,数据实例是独立的图,而我们关注的是图中的依赖节点。Graph SAIL ( Xu et al , 2020)使用KD学习学生在新数据上工作良好,同时保留在旧数据上的性能。CPF ( Yang et al , 2021a)结合了KD和标签传播( LP )。CPF中的学生不是一个GNN,但由于使用了LP,它仍然严重依赖于图。

3、预备知识

注意

对于 GML (图机器学习) 任务,输入通常是一个图及其节点特征,我们记为 G = ( V、E),其中 V 代表所有节点, E 代表所有边。令 N 表示节点总数.我们用 X∈RN×D 表示节点特征,行 xv 表示节点 v∈V 的 D 维特征。我们用邻接矩阵 A 表示边,用 Au 表示边,如果边 ( u , v) ∈ E,则 v = 1,否则为 0。对于 GML 最重要的应用之一的节点分类,其预测目标为 Y∈RN×K,其中行 yv 为节点 v 的 K 维的 one-hot 向量。对于给定的 G,通常会标记一小部分节点,我们用上标 L 来标记。VL,XL 和 YL大多数节点将是未标记的,我们使用上标 U,即。VU,XU 和 YU

图神经网络

大多数 GNN 适用于消息传递框架,其中每个节点 v 的表示 hv 在每层通过收集其邻居的消息来迭代更新,记为 N ( v )。对于第 l 层,h(l)v 由上一层表示 h(l-1)u ( h(0)u = xu ) 通过聚集操作 AGGR 和 UPDATE 操作得到

image-20240517220904045

4、 动机

由于图依赖的存在,GNNs具有相当大的推理延迟。多一个GNN层就意味着多获取一跳的邻居节点在平均度为 R 的图上推断一个具有 L 层 GNN 的节点需要 O(RL) 个抓取。对于真实世界的图,R 可以很大,例如 Twitter ( Ching et al . , 2015)中的 208。此外,由于取层必须顺序进行,总延迟随着L的增加而迅速爆炸

image-20240517225135156

图1:GNNs的取指次数和推理时间都比MLPs多一个数量级,并且随着层数的增加呈指数增长。

左:需要为两个GNN层提取邻居。

中:用于推理的取指总数。

右:总推断时间。( OGB产品上10个随机节点的归纳推理( Hu et al , 2020) )。

图 1 显示了每个 GNN 层添加的依赖关系和推理时间的指数爆炸。相比之下,MLP 推理时间要小得多,且呈线性增长。这一显著的差距极大地促进了 MLPs 相对于 GNNs在工业应用中的实用性。

节点获取延迟的加剧有两个因素:首先,更新的GNN架构越来越深,从64层( Chen et al , 2020)到甚至1001层( Li et al , 2021)。其次,工业规模的图往往过于庞大,不适合存入单机( Jin et al , 2022)的内存中,需要将图分片出主存。例如,截至2015年3月,Twitter每月有288M活跃用户(节点)和60B追随者(边)。截至2014年12月00日,Facebook有1.39 B活跃用户,超过400B条边。即使以稀疏矩阵友好的格式(通常为COO或CSR)存储时,这些图也是TB级的,并且还在不断增长。远离内存存储会导致更慢的邻居获取。

另一方面,MLPs 缺乏利用图拓扑的手段,这损害了它们对节点分类的性能。例如,Graph SAGE在Products上的测试精度为78.61,而同等大小的MLP的测试精度为62.47。尽管如此,最近在视觉和语言方面的结果表明,大型的(或稍作修改) MLPs可以达到与CNNs和Transformers ( Liu et al . , 2021)类似的结果。因此,我们也提出了一个问题:能否将 GNNs 和 MLPs 的优势结合起来,以获得高精度和低延迟的模型 ? 这促使我们从GNNs到MLPs进行跨模型KD。

5、无图神经网络

我们引入GLNN,并回答其性质的探索问题

1 ) GLNN如何与MLP和GNN进行比较?

2 ) GLNNs在直推式和感应式环境下都能正常工作?

3 ) GLNNs与其他推理加速方法的比较?

4 ) GLNNs如何从KD中获益?

5 ) GLNNs是否具有足够的模型表达能力?

6 ) GLNNs何时失效?

5.1 GLNN框架

GLNN的思想是直接的,但正如我们将看到的那样,是非常有效的。简而言之,我们通过教师GNN 的 KD训练了一个"增强"的 MLP 。KD 在 Hinton等人( 2015 )中被介绍,其中知识从一个繁琐的教师转移到一个简单的学生。在我们的例子中,我们用一个教师 GNN 为每个节点 v 生成软目标 zv。然后我们训练一个同时带有真实标签 yv 和 zv 的学生 MLP。目标函数为方程1,λ为权重参数,Llabel 为 yv 和学生预测之间的交叉熵( yv,L Teacher为KL散度)。

image-20240517230534052

KD 之后的模型,即。GLNN 本质上是一种 MLP。因此,GLNNs 在推理过程中没有图依赖,并且与 MLPs 一样快速。另一方面,通过离线 KD,优化 GLNN 参数,与 GNN 一样进行预测和泛化,具有推理速度快、部署方便等优点。

image-20240520224008469

图2:GLNN框架:在离线训练中,针对软目标,在图上应用一个经过训练的GNN教师。然后,在软目标引导的节点特征上训练一个学生MLP。蒸馏的MLP,现在是GLNN,被部署用于在线预测。由于消除了图依赖进行推理,GLNNs比GNNs推理速度快得多,因此被命名为"无图神经网络"

在图2中,我们展示了 GLNNs 的离线 KD 和在线推理步骤。

5.2 实验设置

数据集

我们考虑了CPF论文( Yang et al , 2021a)中使用的所有五个数据集,即。Cora、Citeseer、Pubmed、A - Computer、A - Photo。为了充分评估我们的方法,我们还包括两个更大的OGB数据集( Hu et al , 2020)。Arxiv和产品。

模型架构

为了得到一致的结果,我们使用GCN聚合的Graph SAGE ( Hamilton等, 2017)作为教师。我们在第6节对GCN ( Kipf &韦林, 2016)、GAT ( Veli ckovi ’ c等, 2017)和APPNP (克利茨佩拉等, 2019)等其他GNN教师进行消融研究。

评估协议

对于本节的所有实验,我们报告了不同随机种子下10次试验的平均值和标准差。模型性能以准确性来衡量,并在测试数据上报告结果,使用验证数据选择最佳

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宇直不会放弃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值