腾讯Angel Graph团队刷新GNN最强榜单OGB世界纪录!

腾讯大数据Angel Graph团队联合北大,在OGB挑战赛中夺得ogbn-papers100M、ogbn-products和ogbn-mag三项任务第一。OGB是图学习性能评估基准,吸引全球顶尖高校和科技公司参与。文章探讨了GNN在大规模数据集上的可扩展性和灵活性问题,提出了图注意力多层感知器(GAMLP)解决方案,以及可信的标签利用(RLU)机制,提高了模型性能。

图片

导读 / Introduction

近日,在国际顶级图学习标准OGB(Open Graph Benchmark)挑战赛中,腾讯大数据Angel Graph团队联合北京大学-腾讯协同创新实验室,以较大优势在三个最大的OGB分类数据集:ogbn-papers100M、ogbn-products和ogbn-mag三项任务榜单第一

图片

OGB是目前公认最权威的图学习通用性能评价基准数据集,由斯坦福大学Jure Leskovec教授团队建立并开源,并吸引了斯坦福大学、康奈尔大学、Facebook、NVIDIA、百度、阿里巴巴和字节跳动等国际顶尖高校与科技巨头参与。该数据集来源广泛——涵盖了生物网络、分子图、学术网络和知识图谱等领域,且囊括了基本的节点预测、边预测、图预测等图学习任务,数据真实、极具挑战性,素有图神经网络领域“ImageNet”之称,已成为全球图神经网络研究者检验自身功力的“试剑石”。

一、问题背景

图结构数据广泛存在于现实生活中。如图1所示,在推荐系统中可以用图来表示用户与商品之间的交互、在社交网络和知识图谱中图可以来表示各个用户或者实体之间的关系,图还可以用来建模各种药物和新材料。随着深度学习的兴起,研究者开始将深度学习应用到图数据,推动了图领域的相关研究蓬勃发展。作为图领域的重要的技术手段,图神经网络(GNN)已经成为解决图问题的重要算法,并受到了学术界和工业界的广泛关注。

图片

图1 常见的图数据类型

二、技术难点

尽管GNN在多个应用场景中取得了巨大的成功,在工业界的大规模数据集上使用GNN还是存在着以下两个问题:

1. 可扩展性低

1.1 单机的存储问题 (High Memory Cost)

传统的GNN层中包含两个操作,特征传播和非线性变换。其中,特征传播操作涉及一个较大的稀疏邻接矩阵和特征矩阵的乘法,需要花费较多的时间;而且,如果在训练时使用GPU加速,那么就必须把稀疏邻接矩阵放置到GPU的显存上,但这一需求对于大图来说是无法被满足的。比如,OGB节点分类数据集中最大的ogbn-papers100M数据集的稀疏邻接矩阵大小超过50GB,目前仅有80GB显存版本的Tesla A100才能存下,而这还不包括存储特征和模型的空间。因此,如果要想在超大规模的图上应用传统的GNN模型,如GCN[1],目前唯一可行的方法是使用分布式训练。

1.2 分布式训练的通信问题 (High Communication Cost)

图片

图2 增加worker数量时两层GraphSAGE的加速比和训练瓶颈

GNN的每一次特征传播都需要拉取邻居特征,对于k层的GNN来说,每个节点需要拉取的k跳以内邻居节点特征随着层数增加以指数增加。对于稠密的连通图,每个节点在每次训练的时候几乎需要拉取全图的节点信息,造成海量的通信开销。尽管有一些采样算法能缓解这个问题,但并不能很好地解决。我们以两层的GraphSAGE[2]为例,图2(a) 显示当增加workers数量之后加速比和理想情况下相差甚远,这是因为当图节点被切分到多个workers上后需要去不同workers节点上拉取邻居的频率也显著增加。如图2(b) 所示,随着workers数量增加,通信开销会明显大于计算开销。因此,如何支持超大规模图数据的分布式训练一直是一个研究热点。

2. 灵活性差 (Low Flexibility)

2.1 约束非线性变换深度恒等于特征传播深度

如图3所示,对于常见的耦合的图神经网络,它在每一层中都强制要求非线性变换紧接着特征传播,去掉特征传播后GCN就退化为MLP。我们之前对深层GNN的评测工作[3]表明,图神经网络存在着两种深度:特征传播的深度D_p和非线性变换的深度D_t,他们分别导致了GNN里的过平滑以及模型退化问题。另外,这个工作还指出我们在图稀疏(标签、特征或者边稀疏)的时候需要增大D_p,在图规模较大的时候需要增大D_t。假设图稀疏且规模较小,这个时候我们需要大的D_p和小的D_t,强行约束D_p=D_t会造成次优效果。  

图片

图3 GCN和MLP的关系示意

2.2 没有考虑节点特异性

图片

图4 感受野扩展速度的示例

图片

图5 不同节点的预测准确性和特征传播步数的关系

我们通过一个简单的示例来说明这个问题。图4中有1个被标蓝的节点并位于

Graph Embedding(图嵌入)和Graph Neural Network(图神经网络)是两种不同的方法用于处理图数据。 Graph Embedding是指将图数据中的节点和边转化为低维向量表示的过程。它的目的是通过学习节点和边的向量表示,将图数据转化为高效且可用于机器学习算法的数值特征。Graph Embedding可以通过多种方式来实现,如DeepWalk、Node2Vec、Line等。它们通常是基于节点之间的邻近关系来学习节点的向量表示,即节点的向量表示尽可能地保留与其邻居节点的相似性。Graph Embedding可以用于图数据的聚类、相似度计算、可视化等任务。 Graph Neural Network是一种基于神经网络的模型,专门用于处理图结构化数据。GNN模型可以通过学习节点的向量表示,并利用节点之间的关系进行信息传递和更新。GNN通过定义节点的邻居节点和自身的聚合函数,将节点信息进行传递和更新。GNN的核心思想是通过多次迭代聚合节点的邻居信息,最终获取节点的全局信息。GNN可以进行节点分类、图分类、链接预测等任务。 因此,Graph Embedding与Graph Neural Network有一些区别。Graph Embedding是一种将图数据转化为低维向量的过程,而GNN是一种通过学习图结构信息进行节点特征传递和更新的模型。Graph Embedding在表示学习上更加注重将节点和边的信息转化为向量形式,而GNN在聚合和传递信息时更加注重节点之间的相互影响。两者可以结合使用,将Graph Embedding的低维向量作为GNN的输入,进一步提高图数据的表示和处理能力。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

腾讯大数据

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

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

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

打赏作者

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

抵扣说明:

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

余额充值