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)
- Generative models
- 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.5 or newer (we recommend Anaconda distribution)
- CUDA 9.0 or newer
If you installed your Python with Anaconda you can run the following commands to get started:
git clone https://github.com/Mariewelt/OpenChem.git cd OpenChem conda create --name OpenChem python=3.7 conda activate OpenChem conda install --yes --file requirements.txt conda install -c rdkit rdkit nox cairo conda install pytorch torchvision -c pytorch pip install -e .
If your CUDA version is older than 9.0, check Pytorch website 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.
If you use OpenChem in your projects, please cite:
Korshunova, Maria, et al. "OpenChem: A Deep Learning Toolkit for Computational Chemistry and Drug Design." Journal of Chemical Information and Modeling 61.1 (2021): 7-13.
MolecularRNN model paper:
Popova, Mariya, et al. "MolecularRNN: Generating realistic molecular graphs with optimized properties." arXiv preprint arXiv:1905.13372 (2019).