Skip to content

Yiminghh/HOG-Diff

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

HOG-Diff: Higher-Order Guided Diffusion for Graph Generation

Official Implementations of HOG-Diff. In this work, we propose a novel Higher-order Guided Diffusion (HOG-Diff) model that follows a coarse-to-fine generation curriculum and is guided by higher-order information, enabling the progressive generation of authentic graphs with inherent topological structures.

🚀 We are continuously updating this repository and will release the complete code after the paper is accepted.

Framework

Environment Setup

This code was tested with PyTorch 2.0.0, cuda 11.8 and torch_geometrics 2.6.1

1️⃣ Download anaconda/miniconda if needed

2️⃣ Create and Activate a Python Virtual Environment

conda create -n HoGD_py39 python=3.9
conda activate HoGD_py39

3️⃣ Install Dependencies

Use the provided requirements.txt file to install all dependencies:

pip install -r requirements.txt

4️⃣ Compile the ORCA Program (for Graph Generation Evaluation)

For evaluating generic graph generation tasks, compile the ORCA program by running the following command:

cd evaluation/orca 
g++ -O2 -std=c++11 -o orca orca.cpp

Running Experiments

To train and sample graphs using HOG-Diff, use the following commands:

CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode train_ho
CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode train_OU
CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode sample

Replace config_name with the appropriate configuration file.

Citation

Please cite our work if you find our code/paper is useful to your work. :

🍀 Thank you for your interest in our work. 🍀

If you have any questions or encounter any issues while using our code, please don't hesitate to raise an issue or reach out to us directly.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published