This is an official implementation of our paper "Diffusion Probabilistic Models for Graph Structured predictions."
We provide the PyTorch implementation for DPM-GSP framework here. The repository is organised as follows:
|-- DPM-GSP-{fully-supervised, semi-supervised, reasoning} # DPM-GSP for supervised node classification, semi-supervised node classification, and reasoning tasks
|-- config/ # configurations (Hyperparameters used in the experiments are specified in the Appendix C of our paper.)
|-- parsers/ # the argument parser
|-- models/ # model definition
|-- method_series/ # training method
|-- data/ # dataset
|-- logs_train/ # training logs
|-- utils/ # data process and others
|-- main.py # the training code
You can set up the environment by following commands.
conda create -n DPM-GSP python=3.10
conda activate DPM-GSP
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch
pip install tqdm pyyaml easydict torch-sparse torch-scatter==2.0.9
You also need to install torch-geometric package. Each experiment requires a different version.
pip install torch-geometric==1.7.1
pip install torch-geometric==2.1.0
At each directory, you can use the following command to obtain the results of our paper.
CUDA_VISIBLE_DEVICES=$GPU_DEVICE python main.py \
--config config_name