Skip to main content

Distributed PyTorch implementation of multi-headed graph convolutional neural networks

Project description

HydraGNN

Distributed PyTorch implementation of multi-headed graph convolutional neural networks

HydraGNN_QRcode

Dependencies

To install required packages with only basic capability (torch, torch_geometric, and related packages) and to serialize+store the processed data for later sessions (pickle5):

pip install -r requirements.txt
pip install -r requirements-torchdep.txt

If you plan to modify the code, include packages for formatting (black) and testing (pytest) the code:

pip install -r requirements-dev.txt

Detailed dependency installation instructions are available on the Wiki

Installation

After checking out HydgraGNN, we recommend to install HydraGNN in a developer mode so that you can use the files in your current location and update them if needed:

python -m pip install -e .

Or, simply type the following in the HydraGNN directory:

export PYTHONPATH=$PWD:$PYTHONPATH

Alternatively, if you have no plane to update, you can install HydraGNN in your python tree as a static package:

python setup.py install

Running the code

There are two main options for running the code; both require a JSON input file for configurable options.

  1. Training a model, including continuing from a previously trained model using configuration options:
import hydragnn
hydragnn.run_training("examples/configuration.json")
  1. Making predictions from a previously trained model:
import hydragnn
hydragnn.run_prediction("examples/configuration.json", model)

Datasets

Built in examples are provided for testing purposes only. One source of data to create HydraGNN surrogate predictions is DFT output on the OLCF Constellation: https://doi.ccs.ornl.gov/

Detailed instructions are available on the Wiki

Configurable settings

HydraGNN uses a JSON configuration file (examples in examples/):

There are many options for HydraGNN; the dataset and model type are particularly important:

  • ["Verbosity"]["level"]: 0, 1, 2, 3, 4
  • ["Dataset"]["name"]: CuAu_32atoms, FePt_32atoms, FeSi_1024atoms
  • ["NeuralNetwork"]["Architecture"]["model_type"]: PNA, MFC, GIN, GAT, CGCNN, SchNet, DimeNet, EGNN

Citations

"HydraGNN: Distributed PyTorch implementation of multi-headed graph convolutional neural networks", Copyright ID#: 81929619 https://doi.org/10.11578/dc.20211019.2

Contributing

We encourage you to contribute to HydraGNN! Please check the guidelines on how to do so.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

HydraGNN-3.0.tar.gz (77.6 kB view details)

Uploaded Source

File details

Details for the file HydraGNN-3.0.tar.gz.

File metadata

  • Download URL: HydraGNN-3.0.tar.gz
  • Upload date:
  • Size: 77.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.7

File hashes

Hashes for HydraGNN-3.0.tar.gz
Algorithm Hash digest
SHA256 2e6d26ed24a4be5f7805d5e1c514b592caa0ea11a80c9ec2e694e67c19772bc2
MD5 7ba7c70518fd36331d1fac100ebc02e6
BLAKE2b-256 17f79e2b4256e0c09f374ef07dcd89478e15b950ae440ec132847de356302220

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page