https://github.com/ml-postech/reverse-gnn
https://github.com/ml-postech/reverse-gnn
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/ml-postech/reverse-gnn
- Owner: ml-postech
- Created: 2024-03-20T17:00:32.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-14T00:43:06.000Z (over 1 year ago)
- Last Synced: 2024-06-14T02:13:07.414Z (over 1 year ago)
- Language: Python
- Size: 92.3 MB
- Stars: 2
- Watchers: 6
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Mitigating Oversmoothing Through Reverse Process of GNNs for Heterophilic Graphs
This repository contains a PyTorch implementation of ["Mitigating Oversmoothing Through Reverse Process of GNNs for Heterophilic Graphs"](https://arxiv.org/abs/2403.10543) (ICML, 2024).
### Python environment setup with Conda
```bash
conda create --name rep python=3.8
conda activate rep
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.6 -c pytorch -c nvidia
conda install pyg -c pyg
pip install seaborn
pip install wandb
conda install pytorch-sparse -c pyg
pip install torchdiffeq
pip install networkx
```
### Running the code
You can run the code using script files in `script/` directory.
For example, you can run GRAND-rep for the squirrel dataset with `./script/grand_rep.sh`.
Also, you can run GCN-rep for the squirrel dataset with `./script/gcn_rep.sh`.
### Plot the graph
If you want to plot the graph smoothing level, use the `--plot-gsl` argument.
If you want to visualize a result for the minesweeper dataset, use the `--plot-ms` argument.
You can directly run `./script/plot.sh`.