The Synthetic Graph Generation tool enables users to generate arbitrary graphs based on provided real data.
Our results were obtained by running the demo notebooks directory in the PyTorch NGC container on NVIDIA DGX1 V100 with 8x V100 32GB GPUs. All the notebooks are presented in the table below.
| scope | notebook | description | |
|---|---|---|---|
| 1. | basic_examples | er_demo.ipynb | generating different types of random graphs using Erdős–Rényi model |
| 2. | basic_examples | ieee_demo.ipynb | generating a bipartite graph structure based on provided edge list |
| 3. | basic_examples | cora_demo.ipynb | generating a non-bipartite graph structure based on provided edge list |
| 4. | advanced_examples | e2e_cora_demo.ipynb | a complete process of reconstructing and analyzing a non-bipartite graph dataset with node features |
| 5. | advanced_examples | e2e_ieee_demo.ipynb | a complete process of reconstructing and analyzing a bipartite graph dataset with edge features |
| 6. | advanced_examples | frechet_lastfm_demo.ipynb | SynGen non-bipartite graph structure generators scaling analysis |
| 7. | advanced_examples | frechet_tabformer_demo.ipynb | SynGen bipartite graph structure generators scaling analysis |
| 8. | advanced_examples | edge_classification_pretraining.ipynb | using synthetic data from SynGen for GNN pretraining |
| 9. | performance | struct_generator.ipynb | comparison of SynGen graph structure generators |
| 10. | performance | tabular_generator.ipynb | comparison of SynGen tabular data generators |
Scope refers to the directories in which the notebooks are stored and the functionalities particular notebooks cover . There are
- Basic - basic_examples - notebooks with the examples of basics functionalities
- Advanced - advanced_examples - notebooks with the examples of advanced functionalities
- Performance - performance - notebooks with the performance experiments
To achieve the same results, follow the steps in the Quick Start Guide.
Results
1. Quality of the content of generated dataset vs. original dataset:
The quality of the content comparison was conducted on the IEEE dataset (refer to List of datasets for more details) with corresponding notebook e2e_ieee_demo.ipynb We compared three modalities, that is, quality of generated graph structure, quality of generated tabular data and quality of aligning tabular data to the graph structure.
-
Graph structure quality
-
Comparison of degree distribution for an original graph, properly generated and random (Erdős–Rényi)

-
Comparison of basic graph statistics for an original graph, properly generated and random (Erdős–Rényi) 
-
-
Tabular data quality
-
Comparison of two first components of a PCA of real and generated data

-
Comparison of basic statistics between real and generated data
Generator kl divergence correlation correlation GAN 0.912 0.018 Gaussian 0.065 -0.030 Random 0.617 0.026
-
-
Structure to tabular alignment quality
- Degree centrality for feature distribution

- Degree centrality for feature distribution
2. Performance (speed) of the synthetic dataset generation:
-
Performance of graph structure generation (edges/s)

-
Performance of categorical tabular data generation (samples/s)
Dataset KDE KDE_SK Uniform Gaussian CTGAN ieee 1420600 2640973 1768136 1509729 33202
3. Synthetic dataset use-case specific quality factors:
-
Performance (batches/s) comparison between original vs. synthetic datasets
Dataset Model Synthetic Original ieee gat 0.07173 0.07249