Skip to main content
QUICK REVIEW

[论文解读] Graph Embeddings at Scale

C. Bayan Bruss, Anish Khazane|arXiv (Cornell University)|Jul 3, 2019
Advanced Graph Neural Networks参考文献 17被引用 4
一句话总结

该论文提出了一种基于参数服务器的分布式系统,用于在无需图划分的情况下大规模训练图嵌入。通过使用基于实体的参数服务器和动态、大小受限的计算图,该系统实现了GPU/CPU的高效利用,并在包含5000万顶点的异构图上实现了90%的高链接预测准确率,同时在Friendster(6800万顶点)上实现了快速收敛,且随着工作节点数量的增加,性能持续提升。

ABSTRACT

Graph embedding is a popular algorithmic approach for creating vector representations for individual vertices in networks. Training these algorithms at scale is important for creating embeddings that can be used for classification, ranking, recommendation and other common applications in industry. While industrial systems exist for training graph embeddings on large datasets, many of these distributed architectures are forced to partition copious amounts of data and model logic across many worker nodes. In this paper, we propose a distributed infrastructure that completely avoids graph partitioning, dynamically creates size constrained computational graphs across worker nodes, and uses highly efficient indexing operations for updating embeddings that allow the system to function at scale. We show that our system can scale an existing embeddings algorithm - skip-gram - to train on the open-source Friendster network (68 million vertices) and on an internal heterogeneous graph (50 million vertices). We measure the performance of our system on two key quantitative metrics: link-prediction accuracy and rate of convergence. We conclude this work by analyzing how a greater number of worker nodes actually improves our system's performance on the aforementioned metrics and discuss our next steps for rigorously evaluating the embedding vectors produced by our system.

研究动机与目标

  • 解决将图嵌入训练扩展到包含数百万个顶点的超大规模图的挑战。
  • 消除分布式训练系统中昂贵的图划分需求。
  • 通过基于实体的参数服务器实现在工作节点之间的高效、动态计算。
  • 通过异步、分布式训练提高收敛速度和链接预测准确率。
  • 评估增加工作节点数量对训练性能和嵌入质量的影响。

提出的方法

  • 系统将输入图转换为固定大小的随机游走矩阵,实现无需图划分的行级分区,跨工作节点分发。
  • 每个工作节点在每轮训练迭代中动态创建TensorFlow计算图,限制GPU内存使用。
  • 基于实体的参数服务器存储并提供嵌入,允许工作节点通过高效索引仅获取所需的顶点嵌入。
  • 使用噪声对比估计(NCE)损失实现异步嵌入更新,支持在异构图上进行可扩展训练。
  • 该架构将计算密集型训练与基于CPU/RAM的参数存储分离,优化资源利用。
  • 系统支持任意数量的工作节点,并通过在所有节点间分发梯度更新实现高效扩展。

实验结果

研究问题

  • RQ1如何在无需图划分的情况下高效扩展图嵌入训练?
  • RQ2增加工作节点数量对收敛速度和链接预测准确率有何影响?
  • RQ3该系统能否在大规模、异构图上保持高质量的嵌入?
  • RQ4动态计算图创建如何提升训练效率和GPU利用率?
  • RQ5异步、基于实体的参数服务器通信在多大程度上提升了可扩展性和性能?

主要发现

  • 在包含5000万顶点和2.8亿条边的内部异构图上,该系统实现了90%的链接预测准确率。
  • 在Friendster数据集(6800万顶点)上,系统表现出快速收敛和高链接预测准确率,且随着工作节点数量的增加,性能持续提升。
  • 增加工作节点数量可加快收敛速度并提高最终准确率,尤其在第300步之后,归因于更丰富的拓扑信号整合。
  • 即使在大规模下,系统仍能保持高质量嵌入,且随着工作节点数量增加,性能无下降。
  • 动态计算图与高效索引的结合,实现了有效的GPU利用,同时最小化内存开销。
  • 基于实体的参数服务器实现异步训练,支持全局正则化更新,提升了嵌入的泛化能力。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。