A generic GNN framework to enable rapid research and development with DGL.
Meant for general purpose graph learning tasks, specifically those which require large graphs and assays.
Documentation follows Google's Python style guidelines, with TODOs and supporting comments scattered throughout on an as needed basis. Entry point for the entire codebase is in main.py. 3 pipelines are available to run, as described in main.py documentation. Configuration files are stored as json files in config directory.
Stored in directory.txt (use Get-ChildItem | tree /F > foo.txt in PowerShell to create your own)
First you'll want to create a new conda (or pip) env with Python 3.7
conda create -n env_name python=3.7 anaconda
source activate env_nameBefore cloning into this repository:
git clone https://github.com/flawnson/Generic_GNN.git
OR
pip install git+https://github.com/flawnson/Generic_GNN.gitThen you can run setup.py
python setup.pyand install depedencies in the requirements.txt
pip install -r requirements.txtThen you'll need to create an empty directory for model outputs (including saved models)
cd Generic_GNN && mkdir outputsFinally you can run a demo version of the pipeline (default configs in configs directory)
python -c path/to/config/files/file.json -s path/to/schema/files/file.jsonYou can see the logged results using TensorBoard
tensorboard --logdir=logs/GAT_tuning/tune_modelNone of the above will work without the correct data files, all of which are not publically available as of currently.
Change directories into the one with Dockerfile and run (add tags as necessary):
docker build .Copy the container ID and run the container by executing:
docker run -p port_number:8000 container_idBe sure to stop (or kill if necessary) the container when not in use.
To my mentors and my friends whom have taught and inspired me all these years. Thanks to PyTorch Geometric for providing me with the background to use DGL, and DGL for providing me with a kick ass library.