Giter Site home page Giter Site logo

bwittmann / gav Goto Github PK

View Code? Open in Web Editor NEW
17.0 1.0 0.0 8.37 MB

A link prediction algorithm tailored to flow-driven spatial networks. Paper accepted @ WACV24

Home Page: https://openaccess.thecvf.com/content/WACV2024/html/Wittmann_Link_Prediction_for_Flow-Driven_Spatial_Networks_WACV_2024_paper.html

Python 100.00%
geometric-deep-learning graph-neural-networks link-prediction spatial-networks road-networks vessel-graphs

gav's Introduction

Graph Attentive Vectors (GAV) WACV

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.

News

January 24: Link Prediction for Flow-Driven Spatial Networks has been accepted and presented at WACV!

Installation

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.

Training

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.

Testing

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

Road Networks

Preprocessing

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.

Training and Testing

Follow the instructions above and simply state the processed dataset's name after the --dataset flag, omitting ogbl-. E.g., --dataset luxembourg_road.

More Whole-Brain Vessel Graphs

Preprocessing

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.

Training and Testing

Follow the instructions above and simply state the processed dataset's name after the --dataset flag, omitting ogbl-. E.g., --dataset c57_tc_vessel.

Citation

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}
}

gav's People

Contributors

bwittmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.