R-FR-GNNs (and R1+d-GNNs) are evolutions to R2-GNNs, the first models to learn Boolean classifiers on multigraphs.
When combined with a pretransformation step, these models can learn all
Read the full report on Overleaf. Replicate and visualize our results using the below.
Run pip install -r requirements.txt
to install all dependencies.
Download datasets from https://drive.google.com/file/d/1t8oKegE79ctV5aiMKyklmXbV5-fCODgk/view?usp=sharing, then unzip it under src/
Run generate/generate.cpp
for synthetic graphs and generate/generate_trans.cpp
for their transformations.
Create a directory src/logging/results
.
From the src/
directory, run command python main.py [dataset] [time_range] [num_relation]
.
Models will automatically run on static multi-relational equivalents of generated graphs.
Results will be printed to console and logged in src/logging/results
.
A single file will collect the last epoch for each experiment for each dataset.
A description for different datasets and the specific arguments required are as follows:
python src/main.py tp1 2 1 #\varphi_1
python src/main.py tp2 2 1 #\varphi_2
python src/main.py tp3 2 1 #\varphi_3
python src/main.py tp1_trans 1 2 #transformed \varphi_1
python src/main.py tp2_trans 1 2 #transformed \varphi_2
python src/main.py tp3_trans 1 2 #transformed \varphi_3
python src/main.py tp4 10 3 #\varphi_4
python src/main.py tp4_trans 1 30 #transformed \varphi_4
We test vanilla R-GNNs, R2-GNNs, R-FR-GNNs, as well as the latter two with a graph pretransformation step. Tests were conducted on 500 multigraphs with 50-1000 nodes each on the following classifiers using MPS on an Apple Silicon 10-Core M1 Pro. Find more details in our report.