To run our proposed GAV framework on the ogbl-vessel benchmark, please follow the instructions below. The ogbl-vessel benchmark's data will be automatically downloaded and stored under ./dataset
.
For details, please check our paper and its extensive supplementary material.
January 24: Link Prediction for Flow-Driven Spatial Networks has been accepted and presented at WACV!
Please create a new virtual environment using, e.g., anaconda:
conda create --name gav python=3.8.15
Subsequently, install the required packages:
pip install torch==1.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv torch_geometric -f https://data.pyg.org/whl/torch-1.13.0+cu116.html
pip install ogb tensorboard tqdm networkit
The installation was tested using Ubuntu 16.04 and CUDA 11.6.
To train GAV, please run:
python gav_link_pred.py --save_appendix <appendix> --gpu_id <gpu_id> --dataset ogbl-vessel
Checkpoints and tensorboard log files will be stored under ./results
.
To test GAV's performance on an individual checkpoint, please run:
python gav_link_pred.py --save_appendix <appendix_of_run_of_ckpt> --gpu_id <gpu_id> --dataset ogbl-vessel --only_test --continue_from <ckpt_epoch_nr>
To test GAV's performance on our provided checkpoint, please run:
python gav_link_pred.py --save_appendix _gav --gpu_id <gpu_id> --dataset ogbl-vessel --only_test --continue_from 34
To preprocess the road network datasets, please download the graph and coordinates from here. The downloaded file from Graph should be called edges.graph
, while the downloaded file from Coordinates should be called nodes.graph
. Both files should be stored in an individual directory located at <path_to_downloaded_files>
. Finally, run:
python create_dataset.py --path <path_to_downloaded_files> --gpu_id <gpu_id> --dataset_name <e.g., ogbl-luxembourg_road>
Please note that in the preprocessing step, the --dataset_name
has to start with ogbl-
and should not include additional hyphens.
Follow the instructions above and simply state the processed dataset's name after the --dataset
flag, omitting ogbl-
. E.g., --dataset luxembourg_road
.
To preprocess additional whole-brain vessel graphs, please download the raw data from here.
The downloaded files should be stored in an individual directory located at <path_to_downloaded_files>
Finally, run:
python create_dataset.py --path <path_to_downloaded_files> --gpu_id <gpu_id> --dataset_name <e.g., ogbl-c57_tc_vessel>
Please note that in the preprocessing step, the --dataset_name
has to start with ogbl-
and should not include additional hyphens.
Follow the instructions above and simply state the processed dataset's name after the --dataset
flag, omitting ogbl-
. E.g., --dataset c57_tc_vessel
.
If you find our work useful for your research, please consider citing:
@InProceedings{Wittmann_2024_WACV,
author = {Wittmann, Bastian and Paetzold, Johannes C. and Prabhakar, Chinmay and Rueckert, Daniel and Menze, Bjoern},
title = {Link Prediction for Flow-Driven Spatial Networks},
booktitle = {Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision (WACV)},
month = {January},
year = {2024},
pages = {2472-2481}
}