开发用于训练图形的可扩展解决方案,用于链路预测任务的Neural网络(GNNS)由于具有高计算成本和巨大内存占用的高数据依赖性,因此由于高数据依赖性而具有挑战性。我们提出了一种新的方法,用于缩放知识图形嵌入模型的培训,以满足这些挑战。为此,我们提出了以下算法策略:自给自足的分区,基于约束的负采样和边缘迷你批量培训。两者都是分区策略和基于约束的负面采样,避免在训练期间交叉分区数据传输。在我们的实验评估中,我们表明,我们基于GNN的知识图形嵌入模型的缩放解决方案在基准数据集中实现了16倍的加速,同时将可比的模型性能作为标准度量的非分布式方法。
translated by 谷歌翻译
图形神经网络(GNN)已被证明是分析非欧国人图数据的强大工具。但是,缺乏有效的分布图学习(GL)系统极大地阻碍了GNN的应用,尤其是当图形大且GNN相对深时。本文中,我们提出了GraphTheta,这是一种以顶点为中心的图形编程模型实现的新颖分布式和可扩展的GL系统。 GraphTheta是第一个基于分布式图处理的GL系统,其神经网络运算符以用户定义的功能实现。该系统支持多种培训策略,并在分布式(虚拟)机器上启用高度可扩展的大图学习。为了促进图形卷积实现,GraphTheta提出了一个名为NN-Tgar的新的GL抽象,以弥合图形处理和图形深度学习之间的差距。提出了分布式图引擎,以通过混合平行执行进行随机梯度下降优化。此外,除了全球批次和迷你批次外,我们还为新的集群批次培训策略提供了支持。我们使用许多网络大小的数据集评估GraphTheta,范围从小,适度到大规模。实验结果表明,GraphTheta可以很好地扩展到1,024名工人,用于培训内部开发的GNN,该工业尺度的Aripay数据集为14亿个节点和41亿个属性边缘,并带有CPU虚拟机(Dockers)群的小群。 (5 $ \ sim $ 12GB)。此外,GraphTheta比最先进的GNN实现获得了可比或更好的预测结果,证明其学习GNN和现有框架的能力,并且可以超过多达$ 2.02 \ tims $ $ 2.02 \ times $,具有更好的可扩展性。据我们所知,这项工作介绍了文献中最大的边缘属性GNN学习任务。
translated by 谷歌翻译
Graph neural networks (GNNs) have been demonstrated to be a powerful algorithmic model in broad application fields for their effectiveness in learning over graphs. To scale GNN training up for large-scale and ever-growing graphs, the most promising solution is distributed training which distributes the workload of training across multiple computing nodes. However, the workflows, computational patterns, communication patterns, and optimization techniques of distributed GNN training remain preliminarily understood. In this paper, we provide a comprehensive survey of distributed GNN training by investigating various optimization techniques used in distributed GNN training. First, distributed GNN training is classified into several categories according to their workflows. In addition, their computational patterns and communication patterns, as well as the optimization techniques proposed by recent work are introduced. Second, the software frameworks and hardware platforms of distributed GNN training are also introduced for a deeper understanding. Third, distributed GNN training is compared with distributed training of deep neural networks, emphasizing the uniqueness of distributed GNN training. Finally, interesting issues and opportunities in this field are discussed.
translated by 谷歌翻译
Graph Convolutional Networks (GCNs) are extensively utilized for deep learning on graphs. The large data sizes of graphs and their vertex features make scalable training algorithms and distributed memory systems necessary. Since the convolution operation on graphs induces irregular memory access patterns, designing a memory- and communication-efficient parallel algorithm for GCN training poses unique challenges. We propose a highly parallel training algorithm that scales to large processor counts. In our solution, the large adjacency and vertex-feature matrices are partitioned among processors. We exploit the vertex-partitioning of the graph to use non-blocking point-to-point communication operations between processors for better scalability. To further minimize the parallelization overheads, we introduce a sparse matrix partitioning scheme based on a hypergraph partitioning model for full-batch training. We also propose a novel stochastic hypergraph model to encode the expected communication volume in mini-batch training. We show the merits of the hypergraph model, previously unexplored for GCN training, over the standard graph partitioning model which does not accurately encode the communication costs. Experiments performed on real-world graph datasets demonstrate that the proposed algorithms achieve considerable speedups over alternative solutions. The optimizations achieved on communication costs become even more pronounced at high scalability with many processors. The performance benefits are preserved in deeper GCNs having more layers as well as on billion-scale graphs.
translated by 谷歌翻译
Training Graph Neural Networks, on graphs containing billions of vertices and edges, at scale using minibatch sampling poses a key challenge: strong-scaling graphs and training examples results in lower compute and higher communication volume and potential performance loss. DistGNN-MB employs a novel Historical Embedding Cache combined with compute-communication overlap to address this challenge. On a 32-node (64-socket) cluster of $3^{rd}$ generation Intel Xeon Scalable Processors with 36 cores per socket, DistGNN-MB trains 3-layer GraphSAGE and GAT models on OGBN-Papers100M to convergence with epoch times of 2 seconds and 4.9 seconds, respectively, on 32 compute nodes. At this scale, DistGNN-MB trains GraphSAGE 5.2x faster than the widely-used DistDGL. DistGNN-MB trains GraphSAGE and GAT 10x and 17.2x faster, respectively, as compute nodes scale from 2 to 32.
translated by 谷歌翻译
许多现实世界图包含时域信息。时间图神经网络在生成的动态节点嵌入中捕获时间信息以及结构和上下文信息。研究人员表明,这些嵌入在许多不同的任务中实现了最先进的表现。在这项工作中,我们提出了TGL,这是一个用于大规模脱机时间图神经网络训练的统一框架,用户可以使用简单的配置文件组成各种时间图神经网络。 TGL包括五个主要组件,一个临时采样器,一个邮箱,节点内存模块,存储器更新程序和消息传递引擎。我们设计了临时CSR数据结构和平行采样器,以有效地对颞邻邻居进行制作微型批次。我们提出了一种新颖的随机块调度技术,该技术可以减轻大批量训练时过时的节点存储器的问题。为了解决仅在小规模数据集上评估当前TGNN的局限性,我们介绍了两个具有0.2亿和13亿个时间边缘的大型现实世界数据集。我们在四个具有单个GPU的小规模数据集上评估了TGL的性能,以及两个具有多个GPU的大数据集,用于链接预测和节点分类任务。我们将TGL与五种方法的开源代码进行了比较,并表明TGL平均达到13倍的速度可实现相似或更高的精度。与基准相比,我们的时间平行采样器在多核CPU上平均达到173倍加速。在4-GPU机器上,TGL可以在1-10小时内训练一个超过10亿个时间边缘的时期。据我们所知,这是第一项提出了一个关于多个GPU的大规模时间图神经网络培训的一般框架的工作。
translated by 谷歌翻译
基于分解的模型(FMS),例如Distmult,在知识图完成(KGC)任务中享有持久的成功,通常优于图形神经网络(GNNS)。但是,与GNN不同,FMS难以合并节点特征并概括在归纳环境中看不见的节点。我们的工作通过提出重构GNN来弥合FMS和GNN之间的差距。这种新的体系结构借鉴了两种建模范式,以前在很大程度上被认为是不结合的。具体地说,使用消息通讯的形式主义,我们通过将梯度下降程序重新定义为消息传播操作来展示如何将FMS施加为GNN,这构成了我们重构GNN的基础。在众多成熟的KGC基准测试中,我们的重构GNN可以实现与FMS相当的转导性能以及最先进的归纳性能,同时使用较少的参数阶数。
translated by 谷歌翻译
知识图表(kgs)以头部关系的形式捕获知识 - 尾部三元组,是许多AI系统中的重要组成部分。 KGS上有两个重要的推理任务:(1)单跳知识图完成,涉及预测公斤中的各个环节; (2),多跳推理,目标是预测哪个kg实体满足给定的逻辑查询。基于嵌入的方法通过首先计算每个实体和关系的嵌入来解决两个任务,然后使用它们形成预测。但是,现有可扩展的KG嵌入框架仅支持单跳知识图完成,并且不能应用于更具挑战性的多跳推理任务。在这里,我们呈现可扩展的多跳推理(SMORE),这是KGS中单跳和多跳推理的第一个总框架。使用单机略微闪烁可以在FreeBase KG(86米实体,338M边缘)中执行多跳推理,比以前考虑的KGs大1,500倍。粉刷运行时性能的关键是一种新的双向抑制采样,实现了在线培训数据生成的复杂性的平方根降低。此外,SMORE利用异步调度,基于CPU的数据采样,基于GPU的嵌入计算和频繁CPU - GPU IO。 Smore通过2.2倍提高了82倍的吞吐量(即,训练速度),以最小的GPU存储器要求(2GB用于训练86M节点FreeBase上的400微米嵌入),并达到与GPU的数量接近线性加速。此外,在更简单的单跳知识图形完成任务中,Smore实现了对单个GPU和多GPU设置的最先进框架的可比或更好的运行时间性能。
translated by 谷歌翻译
通过提取和利用来自异构信息网络(HIN)的高阶信息的提取和利用模拟异质性,近年来一直在吸引巨大的研究关注。这种异构网络嵌入(HNE)方法有效地利用小规模旋流的异质性。然而,在现实世界中,随着新节点和不同类型的链路的连续引入,何种素数量呈指数级增长,使其成为十亿尺度的网络。在这种关链接上的学习节点嵌入式为现有的HNE方法进行了性能瓶颈,这些方法通常是集中的,即完成数据,并且模型都在单机上。为了满足强大的效率和有效性保障的大型HNE任务,我们呈现\纺织{分散嵌入框架的异构信息网络}(Dehin)。在Dehin中,我们生成一个分布式并行管道,它利用超图来注入到HNE任务中的并行化。 Dehin呈现了一种上下文保留的分区机制,可创新地将大HIN作为超图制定,其超高频连接语义相似的节点。我们的框架然后采用分散的策略来通过采用类似的树形管道来有效地分隔帖。然后,每个结果的子网被分配给分布式工作人员,该工作者采用深度信息最大化定理,从其接收的分区本地学习节点嵌入。我们进一步设计了一种新颖的嵌入对准方案,将独立学习的节点嵌入从所有子网嵌入到公共向量空间上的新颖嵌入对准方案,从而允许下游任务等链路预测和节点分类。
translated by 谷歌翻译
知识图(kgs)由于能够存储适用于许多领域的关系知识的能力,因此有助于多种应用。尽管在创造和维护方面进行了巨大的努力,但即使是最大的公斤也远非完整。因此,KG完成(KGC)已成为KG研究最关键的任务之一。最近,该领域的大量文献围绕着使用图神经网络(GNN)学习强大的嵌入,从而利用KGS中的拓扑结构。具体而言,已经做出了专门的努力,以扩展GNN,通常是为简单的同质和单一相关图设计的,以通过设计更复杂的聚合方案而不是相邻节点(关键的节点)(通过设计更复杂的聚合方案)(为GNN绩效)适当利用多关系信息。这些方法的成功自然归因于GNN在简单的多层感知器(MLP)模型上使用,这是由于它们的附加聚合功能。在这项工作中,我们发现简单的MLP模型能够达到与GNN的可比性能,这表明聚集可能并不像以前那样重要。通过进一步的探索,我们显示出仔细的评分功能和损失功能设计对KGC模型性能的影响要大得多,并且实际上不需要聚集。这表明了评分功能设计,损失功能设计和先前工作中的聚集结合,并有很有希望的见解当今最先进的KGC方法的可伸缩性,以及对KGC任务更合适的聚合设计的仔细注意明天。该实现可在线获得:https://github.com/juanhui28/are_mpnns_helpful。
translated by 谷歌翻译
图形神经网络(GNNS)将深度神经网络(DNN)的成功扩展到非欧几里德图数据,实现了各种任务的接地性能,例如节点分类和图形属性预测。尽管如此,现有系统效率低,培训数十亿节点和GPU的节点和边缘训练大图。主要瓶颈是准备GPU数据的过程 - 子图采样和特征检索。本文提出了一个分布式GNN培训系统的BGL,旨在解决一些关键思想的瓶颈。首先,我们提出了一种动态缓存引擎,以最小化特征检索流量。通过协同设计缓存政策和抽样顺序,我们发现低开销和高缓存命中率的精美斑点。其次,我们改善了曲线图分区算法,以减少子图采样期间的交叉分区通信。最后,仔细资源隔离减少了不同数据预处理阶段之间的争用。关于各种GNN模型和大图数据集的广泛实验表明,BGL平均明显优于现有的GNN训练系统20.68倍。
translated by 谷歌翻译
Graph convolutional network (GCN) has been successfully applied to many graph-based applications; however, training a large-scale GCN remains challenging. Current SGD-based algorithms suffer from either a high computational cost that exponentially grows with number of GCN layers, or a large space requirement for keeping the entire graph and the embedding of each node in memory. In this paper, we propose Cluster-GCN, a novel GCN algorithm that is suitable for SGD-based training by exploiting the graph clustering structure. Cluster-GCN works as the following: at each step, it samples a block of nodes that associate with a dense subgraph identified by a graph clustering algorithm, and restricts the neighborhood search within this subgraph. This simple but effective strategy leads to significantly improved memory and computational efficiency while being able to achieve comparable test accuracy with previous algorithms. To test the scalability of our algorithm, we create a new Amazon2M data with 2 million nodes and 61 million edges which is more than 5 times larger than the previous largest publicly available dataset (Reddit). For training a 3-layer GCN on this data, Cluster-GCN is faster than the previous state-of-the-art VR-GCN (1523 seconds vs 1961 seconds) and using much less memory (2.2GB vs 11.2GB). Furthermore, for training 4 layer GCN on this data, our algorithm can finish in around 36 minutes while all the existing GCN training algorithms fail to train due to the out-of-memory issue. Furthermore, Cluster-GCN allows us to train much deeper GCN without much time and memory overhead, which leads to improved prediction accuracy-using a 5-layer Cluster-GCN, we achieve state-of-the-art test F1 score 99.36 on the PPI dataset, while the previous best result was 98.71 by [16]. Our codes are publicly available at https://github.com/google-research/google-research/ tree/master/cluster_gcn.
translated by 谷歌翻译
图表表示学习是一种快速增长的领域,其中一个主要目标是在低维空间中产生有意义的图形表示。已经成功地应用了学习的嵌入式来执行各种预测任务,例如链路预测,节点分类,群集和可视化。图表社区的集体努力提供了数百种方法,但在所有评估指标下没有单一方法擅长,例如预测准确性,运行时间,可扩展性等。该调查旨在通过考虑算法来评估嵌入方法的所有主要类别的图表变体,参数选择,可伸缩性,硬件和软件平台,下游ML任务和多样化数据集。我们使用包含手动特征工程,矩阵分解,浅神经网络和深图卷积网络的分类法组织了图形嵌入技术。我们使用广泛使用的基准图表评估了节点分类,链路预测,群集和可视化任务的这些类别算法。我们在Pytorch几何和DGL库上设计了我们的实验,并在不同的多核CPU和GPU平台上运行实验。我们严格地审查了各种性能指标下嵌入方法的性能,并总结了结果。因此,本文可以作为比较指南,以帮助用户选择最适合其任务的方法。
translated by 谷歌翻译
Graph neural networks (GNNs) have received great attention due to their success in various graph-related learning tasks. Several GNN frameworks have then been developed for fast and easy implementation of GNN models. Despite their popularity, they are not well documented, and their implementations and system performance have not been well understood. In particular, unlike the traditional GNNs that are trained based on the entire graph in a full-batch manner, recent GNNs have been developed with different graph sampling techniques for mini-batch training of GNNs on large graphs. While they improve the scalability, their training times still depend on the implementations in the frameworks as sampling and its associated operations can introduce non-negligible overhead and computational cost. In addition, it is unknown how much the frameworks are 'eco-friendly' from a green computing perspective. In this paper, we provide an in-depth study of two mainstream GNN frameworks along with three state-of-the-art GNNs to analyze their performance in terms of runtime and power/energy consumption. We conduct extensive benchmark experiments at several different levels and present detailed analysis results and observations, which could be helpful for further improvement and optimization.
translated by 谷歌翻译
我们可以将异源图结构与文本结合在一起以学习高质量的语义和行为表示吗?图形神经网络(GNN)S编码数值节点属性和图形结构,以在各种监督的学习任务中实现令人印象深刻的性能。当前的GNN方法受到文本特征的挑战,文本特征通常需要编码为数值向量,然后再提供给GNN,这可能会导致一些信息损失。在本文中,我们提出了一个有效有效的框架,称为语言模型GNN(LM-GNN),以共同训练大型语言模型和图形神经网络。我们的框架中的有效性是通过首先使用异质图信息,然后使用GNN模型应用BERT模型的阶段微调来实现的。提出了几种系统和设计优化,以实现可扩展有效的培训。 LM-GNN可容纳节点和边缘分类以及链接预测任务。我们在不同数据集的性能中评估了LM-GNN框架,并展示了所提出方法的有效性。 LM-GNN在亚马逊查询购买应用程序中提供竞争结果。
translated by 谷歌翻译
事实证明,信息提取方法可有效从结构化或非结构化数据中提取三重。以(头部实体,关系,尾部实体)形式组织这样的三元组的组织称为知识图(kgs)。当前的大多数知识图都是不完整的。为了在下游任务中使用kgs,希望预测kgs中缺少链接。最近,通过将实体和关系嵌入到低维的矢量空间中,旨在根据先前访问的三元组来预测三元组,从而对KGS表示不同的方法。根据如何独立或依赖对三元组进行处理,我们将知识图完成的任务分为传统和图形神经网络表示学习,并更详细地讨论它们。在传统的方法中,每个三重三倍将独立处理,并在基于GNN的方法中进行处理,三倍也考虑了他们的当地社区。查看全文
translated by 谷歌翻译
图表可以表示实体之间的关系信息,图形结构广泛用于许多智能任务,例如搜索,推荐和问题应答。然而,实际上大多数图形结构数据都遭受了不完整性,因此链路预测成为一个重要的研究问题。虽然提出了许多模型来用于链路预测,但以下两个问题仍然仍然较少:(1)大多数方法在不利用相关链路中使用丰富的信息,大多数方法都独立模型,并且(2)现有型号主要基于关联设计学习并没有考虑推理。通过这些问题,在本文中,我们提出了图表协作推理(GCR),它可以使用邻居与逻辑推理视角的关系中的关系推理。我们提供了一种简单的方法来将图形结构转换为逻辑表达式,以便链路预测任务可以转换为神经逻辑推理问题。我们应用逻辑受限的神经模块根据逻辑表达式构建网络架构,并使用反向传播以有效地学习模型参数,这在统一架构中桥接可分辨率的学习和象征性推理。为了展示我们工作的有效性,我们对图形相关任务进行实验,例如基于常用的基准数据集的链路预测和推荐,我们的图表合作推理方法实现了最先进的性能。
translated by 谷歌翻译
We present the OPEN GRAPH BENCHMARK (OGB), a diverse set of challenging and realistic benchmark datasets to facilitate scalable, robust, and reproducible graph machine learning (ML) research. OGB datasets are large-scale, encompass multiple important graph ML tasks, and cover a diverse range of domains, ranging from social and information networks to biological networks, molecular graphs, source code ASTs, and knowledge graphs. For each dataset, we provide a unified evaluation protocol using meaningful application-specific data splits and evaluation metrics. In addition to building the datasets, we also perform extensive benchmark experiments for each dataset. Our experiments suggest that OGB datasets present significant challenges of scalability to large-scale graphs and out-of-distribution generalization under realistic data splits, indicating fruitful opportunities for future research. Finally, OGB provides an automated end-to-end graph ML pipeline that simplifies and standardizes the process of graph data loading, experimental setup, and model evaluation. OGB will be regularly updated and welcomes inputs from the community. OGB datasets as well as data loaders, evaluation scripts, baseline code, and leaderboards are publicly available at https://ogb.stanford.edu.
translated by 谷歌翻译
最近提出了基于子图的图表学习(SGRL)来应对规范图神经网络(GNNS)遇到的一些基本挑战,并在许多重要的数据科学应用(例如链接,关系和主题预测)中证明了优势。但是,当前的SGRL方法遇到了可伸缩性问题,因为它们需要为每个培训或测试查询提取子图。扩大规范GNN的最新解决方案可能不适用于SGRL。在这里,我们通过共同设计学习算法及其系统支持,为可扩展的SGRL提出了一种新颖的框架Surel。 Surel采用基于步行的子图表分解,并将步行重新形成子图,从而大大降低了子图提取的冗余并支持并行计算。具有数百万个节点和边缘的六个同质,异质和高阶图的实验证明了Surel的有效性和可扩展性。特别是,与SGRL基线相比,Surel可以实现10 $ \ times $ Quad-Up,具有可比甚至更好的预测性能;与规范GNN相比,Surel可实现50%的预测准确性。
translated by 谷歌翻译
本文介绍了$ \ mu \ text {kg} $,一个开源python库,用于在知识图上进行表示。 $ \ mu \ text {kg} $支持通过多源知识图(以及单个知识图),多个深度学习库(Pytorch和Tensorflow2),多个嵌入任务(链接预​​测,实体对准,实体键入,实体键入),支持联合表示。 ,以及多源链接预测)以及多个并行计算模式(多进程和多GPU计算)。它目前实现26个流行知识图嵌入模型,并支持16个基准数据集。 $ \ mu \ text {kg} $提供了具有不同任务的简化管道的嵌入技术的高级实现。它还带有高质量的文档,以易于使用。 $ \ mu \ text {kg} $比现有的知识图嵌入库更全面。它对于对各种嵌入模型和任务进行彻底比较和分析非常有用。我们表明,共同学习的嵌入可以极大地帮助知识驱动的下游任务,例如多跳知识图形答案。我们将与相关字段中的最新发展保持一致,并将其纳入$ \ mu \ text {kg} $中。
translated by 谷歌翻译