OpenChem is a deep learning toolkit for Computational Chemistry with PyTorch backend. The goal of OpenChem is to make Deep Learning models an easy-to-use tool for Computational Chemistry and Drug Design Researchers.
- Modular design with unified API, modules can be easily combined with each other.
- OpenChem is easy-to-use: new models are built with only configuration file.
- Fast training with multi-gpu support.
- Utilities for data preprocessing.
- Tensorboard support.
Check out OpenChem documentation here.
- Classification (binary or multi-class)
- Multi-task (such as N binary classification tasks)
- Sequences of characters such as SMILES strings or amino-acid sequences
- Molecular graphs. OpenChem takes care of converting SMILES strings into molecular graphs
- Token embeddings
- Recurrent neural network encoders
- Graph convolution neural network encoders
- Multi-layer perceptrons
We are working on populating OpenChem with more models and other building blocks.
In order to get started you need:
If you installed your Python with Anacoda you can run the following commands to get started:
git clone https://github.com/Mariewelt/OpenChem.git
conda install --yes --file requirements.txt
conda install -c rdkit rdkit nox cairo
conda install pytorch torchvision -c pytorch
pip install tensorflow-gpu
If your CUDA version is other than 9.0, check Pytorch and Tensorflow websites for different installation instructions.
Installation with Docker
Alternative way of installation is with Docker. We provide a Dockerfile, so you can run your models in a container that already has all the necessary packages installed. You will also need nvidia-docker in order to run models on GPU.
OpenChem is sponsored by the University of North Carolina at Chapel Hill and NVIDIA Corp.