3D-Generative-SBDD 项目使用教程
1. 项目介绍
3D-Generative-SBDD
是一个用于基于结构的药物设计(Structure-Based Drug Design, SBDD)的3D生成模型。该项目在 NeurIPS 2021 上发表,旨在通过生成模型来设计新的药物分子,以适应特定的蛋白质口袋结构。
主要特点:
- 3D生成模型:利用3D信息生成新的药物分子。
- 结构化药物设计:专注于基于蛋白质结构的药物设计。
- 开源:代码完全开源,方便研究人员和开发者使用和扩展。
2. 项目快速启动
环境准备
首先,确保你已经安装了以下依赖:
- 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
你可以通过以下命令安装这些依赖:
conda env create -f env_cuda113.yml
conda activate SBDD-3D
下载预训练模型
在开始使用之前,你需要下载预训练模型。请参考 pretrained
文件夹中的 README.md
文件进行下载。
示例代码
以下是一个简单的示例代码,用于生成一个药物分子:
import os
from utils import sample_molecule
# 配置文件路径
config_path = 'configs/sample.yml'
# 数据索引
data_id = 0
# 生成药物分子
sample_molecule(config_path, data_id)
3. 应用案例和最佳实践
应用案例
- 新药研发:通过生成模型,研究人员可以快速生成符合特定蛋白质结构的新药物分子,加速新药研发过程。
- 药物筛选:在药物筛选过程中,生成模型可以生成大量的候选药物分子,提高筛选效率。
最佳实践
- 数据准备:确保输入的蛋白质结构数据质量高,以提高生成模型的准确性。
- 模型调优:根据具体应用场景,对模型进行适当的调优,以获得更好的生成效果。
4. 典型生态项目
Pocket2Mol
Pocket2Mol
是 3D-Generative-SBDD
的一个扩展项目,专注于基于3D蛋白质口袋的高效分子采样。该项目在 ICML 2022 上发表,提供了更高效的分子生成方法。
项目链接
- Pocket2Mol: GitHub 链接
通过结合 3D-Generative-SBDD
和 Pocket2Mol
,研究人员可以构建更强大的药物设计工具链,进一步推动药物研发领域的发展。