Skip to main content

Keras layers for machine learning on graph structures

Project description

Build Status PyPI version DOI

Neural fingerprint (nfp)

Keras layers for end-to-end learning on molecular structure. Based on Keras, Tensorflow, and RDKit. Source code used in the study Message-passing neural networks for high-throughput polymer screening

Related Work

  1. Convolutional Networks on Graphs for Learning Molecular Fingerprints
  2. Neural Message Passing for Quantum Chemistry
  3. Relational inductive biases, deep learning, and graph networks
  4. Neural Message Passing with Edge Updates for Predicting Properties of Molecules and Materials

(Main) Requirements

Getting started

This library extends Keras with additional layers for handling molecular structures (i.e., graph-based inputs). There a strong familiarity with Keras is recommended.

An overview of how to build a model is shown in examples/solubility_test_graph_output.ipynb. Models can optionally include 3D molecular geometry; a simple example of a network using 3D geometry is found in examples/model_3d_coordinates.ipynb.

The current state-of-the-art architecture on QM9 (published in [4]) is included in examples/schnet_edgeupdate.py. This script requires qm9 preprocessing to be run before the model is evaluated with examples/preprocess_qm9.py.

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

nfp-0.3.12.tar.gz (32.1 kB view hashes)

Uploaded Source

Built Distribution

nfp-0.3.12-py3-none-any.whl (19.4 kB view hashes)

Uploaded Python 3

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