DeepDock
Code related to: O. Mendez-Lucio, M. Ahmad, E.A. del Rio-Chanona, J.K. Wegner, A Geometric Deep Learning Approach to Predict Binding Conformations of Bioactive Molecules, Nature Machine Intelligence volume 3, pages1033–1039 (2021)
Open access preprint available here
Use v1.0.0 to reproduce results reported in the paper
https://user-images.githubusercontent.com/48085126/116097409-68553d80-a6aa-11eb-9426-91713394c3c3.mp4
Table of Contents
- About The Project
-
Getting Started
- Usage
- License
- Contact
- Acknowledgements
About The Project
This method is based on geometric deep learning and is capable of predicting the binding conformations of ligands to protein targets. Concretely, the model learns a statistical potential based on distance likelihood which is tailor-made for each ligand-target pair. This potential can be coupled with global optimization algorithms to reproduce experimental binding conformations of ligands.
We showed that:
- Geometric deep learning can learn a potential based on distance likelihood for ligand-target interactions
- This potential performs similar or better than well-established scoring functions for docking and screening tasks
- It can be coupled with global optimization algorithms to reproduce experimental binding conformations of ligands
Getting Started
Prerequisites
This package runs using Pytorch and Pytorch Geometric. On top it uses standard packages such as pandas and numpy. For the complete list have a look into the requirements.txt file
Using Docker image
- Install docker
- Pull docker image from DockerHub
docker pull omendezlucio/deepdock
- Launch the container.
docker run -it omendezlucio/deepdock:latest
Using Dockerfile
To build an image and run it from scratch:
- Install docker
- Clone repo and move into project folder.
git clone https://github.com/OptiMaL-PSE-Lab/DeepDock.git
cd DeepDock
- Build the docker image. This takes 20-30 mins to build
docker build -t deepdock:latest .
- Launch the container.
docker run -it --rm --name deepdock-env deepdock:latest
From source
- Clone the repo
git clone https://github.com/OptiMaL-PSE-Lab/DeepDock.git
- Move into the project folder and update submodules
cd DeepDock
git submodule update --init --recursive
- Install prerequisite packages
conda install -c conda-forge rdkit=2019.09.1
pip install -r requirements.txt
- Install DeepDock pacakge
pip install -e .
Data
You can get training and testing data following the next steps.
- Move into the project data folder
cd DeepDock/data
- Use the following line to download the preprocessed data used to train and test the model. This will download two files, one containing PDBbind (2.3 GB) used for training and another containing CASF-2016 (32 MB) used for testing. These two files are enough to run all examples.
source get_deepdock_data.sh
- In case you want to reproduce all results of the paper you will need to download the complete CASF-2016 set (~1.5 GB). You can do so with this command line from the data folder.
source get_CASF_2016.sh
Usage
Usage examples can be seen directly in the jupyter notebooks included in the repo. We added examples for:
License
Distributed under the MIT License. See LICENSE
for more information.
Contact
@omendezl and @AntonioE89
Project Link: DeepDock
Acknowledgements