Skip to main content

Graph Neural Networks for Molecular Machine Learning

Project description

molcraft-logo

Deep Learning on Molecules: A Minimalistic GNN package for Molecular ML.

[!NOTE]
In progress.

Installation

For CPU users:

pip install molcraft

For GPU users:

pip install molcraft[gpu]

Examples

from molcraft import features
from molcraft import descriptors
from molcraft import featurizers 
from molcraft import layers
from molcraft import models 
import keras

featurizer = featurizers.MolGraphFeaturizer(
    atom_features=[
        features.AtomType(),
        features.NumHydrogens(),
        features.Degree(),
    ],
    bond_features=[
        features.BondType(),
        features.IsRotatable(),
    ],
    super_node=True,
    self_loops=True,
    include_hydrogens=False,
)

graph = featurizer([('N[C@@H](C)C(=O)O', 2.5), ('N[C@@H](CS)C(=O)O', 1.5)])
print(graph)

model = models.GraphModel.from_layers(
    [
        layers.Input(graph.spec),
        layers.NodeEmbedding(dim=128),
        layers.EdgeEmbedding(dim=128),
        layers.GraphConv(units=128),
        layers.GraphConv(units=128),
        layers.GraphConv(units=128),
        layers.GraphConv(units=128),
        layers.Readout(),
        keras.layers.Dense(units=1024, activation='elu'),
        keras.layers.Dense(units=1024, activation='elu'),
        keras.layers.Dense(1)
    ]
)

pred = model(graph)
print(pred)

# featurizers.save_featurizer(featurizer, '/tmp/featurizer.json')
# models.save_model(model, '/tmp/model.keras')

# loaded_featurizer = featurizers.load_featurizer('/tmp/featurizer.json')
# loaded_model = models.load_model('/tmp/model.keras')

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

molcraft-0.1.0rc7.tar.gz (47.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

molcraft-0.1.0rc7-py3-none-any.whl (47.4 kB view details)

Uploaded Python 3

File details

Details for the file molcraft-0.1.0rc7.tar.gz.

File metadata

  • Download URL: molcraft-0.1.0rc7.tar.gz
  • Upload date:
  • Size: 47.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for molcraft-0.1.0rc7.tar.gz
Algorithm Hash digest
SHA256 c32b88f26e4279b431c5f5b96d21cf70b4340e61cf84a61f753fab179afb7a83
MD5 f7c412c2acb6b70cacf935ad73a60b01
BLAKE2b-256 803c459b4a182852897951c1ee6b68e1f524e66df197e034c89f35cf16d6c22b

See more details on using hashes here.

File details

Details for the file molcraft-0.1.0rc7-py3-none-any.whl.

File metadata

  • Download URL: molcraft-0.1.0rc7-py3-none-any.whl
  • Upload date:
  • Size: 47.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for molcraft-0.1.0rc7-py3-none-any.whl
Algorithm Hash digest
SHA256 934988fd54b002541d6aac5303651111c555fd653abf8f31a1dc26b5ca513031
MD5 1037f3c29b86eb626d3c44e8da103cdd
BLAKE2b-256 393fd04f0dfe1b8172a051d47b718a8ed48331564000c0cc912f69c468e68b4a

See more details on using hashes here.

Supported by

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