PyTorch-BigGraph: A Large-scale Graph Embedding System

Graph embedding methods produce unsupervised node features from graphs that can then be used for a variety of machine learning tasks. Modern graphs, particularly in industrial applications, contain billions of nodes and trillions of edges, which exceeds the capability of existing embedding systems. We present PyTorch-BigGraph (PBG), an embedding system that incorporates several modifications to traditional multi-relation embedding systems that allow it to scale to graphs with billions of nodes and trillions of edges. PBG uses graph partitioning to train arbitrarily large embeddings on either a single machine or in a distributed environment. We demonstrate comparable performance with existing embedding systems on common benchmarks, while allowing for scaling to arbitrarily large graphs and parallelization on multiple machines. We train and evaluate embeddings on several large social network graphs as well as the full Freebase dataset, which contains over 100 million nodes and 2 billion edges.

PDF Abstract

Datasets


Results from the Paper


 Ranked #1 on Link Prediction on YouTube (Macro F1 metric)

     Get a GitHub badge
Task Dataset Model Metric Name Metric Value Global Rank Result Benchmark
Link Prediction FB15k PyTorch BigGraph (ComplEx) Hits@10 0.872 # 4
MRR 0.79 # 4
MRR raw 0.242 # 1
Link Prediction LiveJournal PyTorch BigGraph MRR 0.749 # 1
Link Prediction LiveJournal PBG (1 partition) Hits@10 0.857 # 1
MR 245.9 # 1
Link Prediction YouTube PyTorch BigGraph Macro F1 40.9 # 1
Micro F1 48 # 1

Methods


No methods listed for this paper. Add relevant methods here