Skip to content

💊 A 3D Generative Model for Structure-Based Drug Design (NeurIPS 2021)

License

Notifications You must be signed in to change notification settings

deargen/3D-Generative-SBDD

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A 3D Generative Model for Structure-Based Drug Design

teaser

[Paper] [Slides]

📢 News

Installation

Dependency

The code has been tested in the following environment:

Package Version
Python 3.8.12
PyTorch 1.10.1
CUDA 11.3.1
PyTorch Geometric 2.0.3
RDKit 2020.09.5
OpenBabel 3.1.0
BioPython 1.79

Install via Conda YML FIle (CUDA 11.3)

conda env create -f env_cuda113.yml
conda activate SBDD-3D

To use in mol_gen repository

cd {molgen project path}
bash scripts/install_dev.sh

Install Manually

conda create --name SBDD-3D python=3.8
conda activate SBDD-3D

conda install pytorch=1.10.1 torchvision torchaudio cudatoolkit=11.3 -c pytorch
conda install pyg -c pyg -c conda-forge
conda install easydict -c conda-forge
conda install biopython -c conda-forge
conda install rdkit openbabel python-lmdb -c conda-forge
conda install tensorboard -c conda-forge

Datasets

Please refer to README.md in the data folder.

Sampling

Sampling for Pockets in the Testset

To sample molecules for the i-th pocket in the testset, please first download the trained models following README.md in the pretrained folder. Then, run the following command:

python sample.py ./configs/sample.yml --data_id {i}  # Replace {i} with the index of the data. i is between 0 and 99 for the testset.

Sampling for PDB Structures

To generate ligands for your own pocket, you need to provide the PDB structure file of the protein, the center coordinate of the pocket bounding box, and optionally the side length of the bounding box (default: 22Ã…).

Example:

python sample_for_pdb.py \
    --pdb_path ./example/4yhj.pdb \
    --center 32.0,28.0,36.0

bounding box

Training

The open source repo of our latest work Pocket2Mol: Efficient Molecular Sampling Based on 3D Protein Pockets (ICML 2022) is tested for training. You may check it out here: https://github.com/pengxingang/Pocket2Mol

Citation

@inproceedings{luo2021sbdd,
    title={A 3D Generative Model for Structure-Based Drug Design},
    author={Shitong Luo and Jiaqi Guan and Jianzhu Ma and Jian Peng},
    booktitle={Thirty-Fifth Conference on Neural Information Processing Systems},
    year={2021}
}

About

💊 A 3D Generative Model for Structure-Based Drug Design (NeurIPS 2021)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%