论文标题
TGL:关于数十亿尺度图的时间GNN培训的一般框架
TGL: A General Framework for Temporal GNN Training on Billion-Scale Graphs
论文作者
论文摘要
许多现实世界图包含时域信息。时间图神经网络在生成的动态节点嵌入中捕获时间信息以及结构和上下文信息。研究人员表明,这些嵌入在许多不同的任务中实现了最新的性能。在这项工作中,我们提出了TGL,这是一个统一的离线时间图神经网络训练的统一框架,用户可以在其中使用简单的配置文件组成各种时间图神经网络。 TGL包括五个主要组件,一个临时采样器,一个邮箱,节点内存模块,存储器更新程序和消息传递引擎。我们设计了临时-CSR数据结构和平行采样器,以有效地对颞邻邻居进行制作微型批次。我们提出了一种新颖的随机块调度技术,该技术在训练较大的批次大小时会减轻过时的节点存储器的问题。为了解决仅在小规模数据集上评估当前TGNN的局限性,我们介绍了两个大型现实世界数据集,具有0.2亿和13亿个时间边缘。我们在四个具有单个GPU的小型数据集上评估了TGL的性能,以及两个具有多个GPU的大数据集,用于链接预测和节点分类任务。我们将TGL与五种方法的开源代码进行了比较,并表明TGL平均达到13倍的速度可实现相似或更高的精度。与基准相比,我们的时间平行采样器在多核CPU上平均达到173倍加速。在4-GPU机器上,TGL可以在1-10小时内训练一个超过10亿个时间边缘的时期。据我们所知,这是第一部提出了一个关于多个GPU的大规模时间图神经网络培训的一般框架的工作。
Many real world graphs contain time domain information. Temporal Graph Neural Networks capture temporal information as well as structural and contextual information in the generated dynamic node embeddings. Researchers have shown that these embeddings achieve state-of-the-art performance in many different tasks. In this work, we propose TGL, a unified framework for large-scale offline Temporal Graph Neural Network training where users can compose various Temporal Graph Neural Networks with simple configuration files. TGL comprises five main components, a temporal sampler, a mailbox, a node memory module, a memory updater, and a message passing engine. We design a Temporal-CSR data structure and a parallel sampler to efficiently sample temporal neighbors to formtraining mini-batches. We propose a novel random chunk scheduling technique that mitigates the problem of obsolete node memory when training with a large batch size. To address the limitations of current TGNNs only being evaluated on small-scale datasets, we introduce two large-scale real-world datasets with 0.2 and 1.3 billion temporal edges. We evaluate the performance of TGL on four small-scale datasets with a single GPU and the two large datasets with multiple GPUs for both link prediction and node classification tasks. We compare TGL with the open-sourced code of five methods and show that TGL achieves similar or better accuracy with an average of 13x speedup. Our temporal parallel sampler achieves an average of 173x speedup on a multi-core CPU compared with the baselines. On a 4-GPU machine, TGL can train one epoch of more than one billion temporal edges within 1-10 hours. To the best of our knowledge, this is the first work that proposes a general framework for large-scale Temporal Graph Neural Networks training on multiple GPUs.