Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/luost26/3D-Generative-SBDD
💊 A 3D Generative Model for Structure-Based Drug Design (NeurIPS 2021)
https://github.com/luost26/3D-Generative-SBDD
Last synced: 24 days ago
JSON representation
💊 A 3D Generative Model for Structure-Based Drug Design (NeurIPS 2021)
- Host: GitHub
- URL: https://github.com/luost26/3D-Generative-SBDD
- Owner: luost26
- License: mit
- Created: 2021-10-25T11:57:45.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-12T03:41:05.000Z (almost 2 years ago)
- Last Synced: 2024-11-18T01:05:34.325Z (about 1 month ago)
- Language: Python
- Homepage:
- Size: 4.59 MB
- Stars: 183
- Watchers: 15
- Forks: 43
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- StarryDivineSky - luost26/3D-Generative-SBDD
README
# A 3D Generative Model for Structure-Based Drug Design
[[Paper](https://arxiv.org/abs/2203.10446)]
[[Slides](https://drive.google.com/file/d/1PnypgrWqZAnaONy_Ccq-fmTDo4IRJpX1/view?usp=sharing)]## 📢 News
- Please check out our latest work on structure-based drug design: *Pocket2Mol: Efficient Molecular Sampling Based on 3D Protein Pockets* (ICML 2022)
- Code: https://github.com/pengxingang/Pocket2Mol
- Paper: https://arxiv.org/abs/2205.07249## 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)
```bash
conda env create -f env_cuda113.yml
conda activate SBDD-3D
```### Install Manually
```bash
conda create --name SBDD-3D python=3.8
conda activate SBDD-3Dconda 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`](./data/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`](./pretrained/README.md) in the `pretrained` folder. Then, run the following command:
```bash
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:
```bash
python sample_for_pdb.py \
--pdb_path ./example/4yhj.pdb \
--center 32.0,28.0,36.0
```## Training
The open source repo of our latest work [Pocket2Mol: Efficient Molecular Sampling Based on 3D Protein Pockets](https://arxiv.org/abs/2205.07249) (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}
}
```