├── figs └── HOG-Diff-framework.png └── readme.md /figs/HOG-Diff-framework.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Yiminghh/HOG-Diff/c44dbc9cb079e7d8f140528458971bd5e4db6eb8/figs/HOG-Diff-framework.png -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 |

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

2 | 3 | 4 | 5 | 6 | Official Implementations of HOG-Diff. 7 | In this work, we propose a novel Higher-order Guided 8 | 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. 9 | 10 | 🚀 **We are continuously updating this repository and will release the complete code after the paper is accepted.** 11 | 12 | 13 |
14 | Framework 15 |
16 | 17 | --- 18 | 19 | 20 | 21 | 22 | ## Environment Setup 23 | This code was tested with PyTorch 2.0.0, cuda 11.8 and torch_geometrics 2.6.1 24 | 25 | 1️⃣ Download anaconda/miniconda if needed 26 | 27 | 2️⃣ Create and Activate a Python Virtual Environment 28 | ``` 29 | conda create -n HoGD_py39 python=3.9 30 | conda activate HoGD_py39 31 | ``` 32 | 3️⃣ Install Dependencies 33 | 34 | Use the provided requirements.txt file to install all dependencies: 35 | ``` 36 | pip install -r requirements.txt 37 | ``` 38 | 39 | 4️⃣ Compile the ORCA Program (for Graph Generation Evaluation) 40 | 41 | For evaluating generic graph generation tasks, compile the [ORCA](http://www.biolab.si/supp/orca/orca.html) program by running the following command: 42 | 43 | ```sh 44 | cd evaluation/orca 45 | g++ -O2 -std=c++11 -o orca orca.cpp 46 | ``` 47 | 48 | 49 | 50 | # Running Experiments 51 | 52 | To train and sample graphs using HOG-Diff, use the following commands: 53 | 54 | 55 | ```shell 56 | CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode train_ho 57 | CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode train_OU 58 | CUDA_VISIBLE_DEVICES=0 python main.py --config config_name --mode sample 59 | ``` 60 | 61 | Replace config_name with the appropriate configuration file. 62 | 63 | # Citation 64 | Please cite our work if you find our code/paper is useful to your work. : 65 | ```latex 66 | 67 | ``` 68 | 69 | 70 | 71 | 🍀 **Thank you for your interest in our work.** 🍀 72 | 73 | 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. 74 | 75 | --------------------------------------------------------------------------------