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:
- Modern NVIDIA GPU, compute capability 3.5 or newer.
- Python 3.6 (we recommend Anaconda distribution)
- CUDA 9.0
- Pytorch 0.4.1
- Tensorflow 1.8.0 with GPU support
If you installed your Python with Anacoda you can run the following commands to get started:
git clone https://github.com/Mariewelt/OpenChem.git cd Openchem conda install --yes --file requirements.txt conda install -c rdkit rdkit nox cairo conda install pytorch torchvision -c pytorch pip install tensorflow-gpu
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.