GraphRNN: Generating Realistic Graphs with Deep Auto-regressive Models
About
Modeling and generating graphs is fundamental for studying networks in biology, engineering, and social sciences. However, modeling complex distributions over graphs and then efficiently sampling from these distributions is challenging due to the non-unique, high-dimensional nature of graphs and the complex, non-local dependencies that exist between edges in a given graph. Here we propose GraphRNN, a deep autoregressive model that addresses the above challenges and approximates any distribution of graphs with minimal assumptions about their structure. GraphRNN learns to generate graphs by training on a representative set of graphs and decomposes the graph generation process into a sequence of node and edge formations, conditioned on the graph structure generated so far. In order to quantitatively evaluate the performance of GraphRNN, we introduce a benchmark suite of datasets, baselines and novel evaluation metrics based on Maximum Mean Discrepancy, which measure distances between sets of graphs. Our experiments show that GraphRNN significantly outperforms all baselines, learning to generate diverse graphs that match the structural characteristics of a target set, while also scaling to graphs 50 times larger than previous deep models.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Graph generation | SBM | VUN0.05 | 51 | |
| Graph generation | Planar | V.U.N.0.00e+0 | 48 | |
| Graph generation | ENZYMES | Clustering0.062 | 45 | |
| Graph generation | Tree | A.Ratio607 | 36 | |
| Synthetic Graph Generation | Planar Dataset | Degree Statistic0.0049 | 27 | |
| Abstract graph generation | Ego small | Average MMD0.104 | 27 | |
| Graph generation | Community small | MMD (Degree)0.08 | 26 | |
| Graph generation | Planar Graphs (test) | Unique Node %100 | 25 | |
| Graph generation | GRID | Degree Similarity0.064 | 19 | |
| Graph generation | Vertex-labeled Synthetic Graphs (test) | Edge Count (N_|E|)500 | 18 |