conda create -n ppflow python==3.9
conda activate ppflow
# install requirements
pip install -r requirements.txt
pip install easydict
pip install biopython
# mmseq
conda install bioconda::mmseqs2
# Alternative: obabel and RDkit
conda install -c openbabel openbabel
conda install conda-forge::rdkit
# Alternative for visualization: py3dmol
conda install conda-forge::py3dmol
# torch-geomstats
conda install -c conda-forge geomstats
# torch-scatter
pip install torch-scatter -f https://data.pyg.org/whl/torch-1.13.0+cu117.html
# OR: stable torch-scatter
pip install ./temp/torch_scatter-2.1.1+pt113cu117-cp39-cp39-linux_x86_64.whl
我们通过Google Drive以及处理后的“ PPDBench”提供了PPBench2024的处理后数据集。
请下载data.zip并解压缩它,导致数据文件目录作为
- data
- processed
cluster_result_all_seqs.fasta
cluster_result_cluster.tsv
cluster_result_rep_seq.fasta
parsed_pair.pt
receptor_sequences.fasta
split.pt
- processed_bench
cluster_result_all_seqs.fasta
cluster_result_cluster.tsv
cluster_result_rep_seq.fasta
parsed_pair.pt
receptor_sequences.fasta
split.pt
pdb_benchmark.pt
pdb_filtered.pt
如果您需要用于预处理的RAW数据集,请通过Google Drive下载它们。解开datasets_raw.zip的文件,导致目录为目录
- dataset
- PPDbench
- 1cjr
peptide.pdb
recepotor.pdb
- 1cka
peptide.pdb
recepotor.pdb
...
- ppbench2024
- 1a0m_A
peptide.pdb
recepotor.pdb
运行以下命令进行PPFlow培训:
python train_ppf.py
运行以下命令进行DIFFPP培训:
python train_diffpp.py
对于RDE Finetuning,您应该首先从Google驱动器下载验证的RDE.pt型号,然后将其保存为./pretrained/RDE.pt ,最后运行以下命令以进行finetuning:
python train_rde.py --fine_tune ./pretrained/RDE.pt
python codesign_diffpp.py -ckpt {where-the-trained-ckpt-is}
python codesign_ppflow.py -ckpt {where-the-trained-ckpt-is}
在这里,我们给出了验证的检查点,该检查点被命名为ppflow_pretrained.pt ,可以从Google驱动器下载。您可以将其直接下载并将其复制到./pretrained/ppflow_pretrained.pt 。此外,一代运行以下内容:
python codesign_diffpp.py -ckpt ./pretrained/ppflow_pretrained.pt
如果要直接评估肽,我们将肽作为codesign_results.tar.gz提供的Google Drive,该肽由100个样品 /蛋白质结构组成,以进行更稳定的评估,结果给出了
| imp%-s(↑) | 有效性(↑) | 新奇(↑) | 多样性 |
|---|---|---|---|
| 12.50% | 1.00 | 0.99 | 0.92 |
您应该评估以_bb3.pdb为生成的PDB的文件,因为_bb4.pdb中的O元素在我们的重建函数中不稳定。
conda install conda-forge::vina
pip install meeko
pip install git+https://github.com/Valdes-Tresanco-MS/AutoDockTools_py3.git@aee55d50d5bdcfdbcd80220499df8cde2a8f4b2a
pip install pdb2pqr
./tools/dock/vinadock.py给出了Vinadock的Python界面的示例。
apt-get install -y libfftw3-3 Hdock需要Libfftw3。此外,可以通过以下方式下载Hdock软件:http://huanglab.phys.hust.edu.cn/software/hdocklite/。下载后,安装或解压缩到./bin目录,导致文件结构作为 - bin
- hdock
1CGl_l_b.pdb
1CGl_r_b.pdb
createpl
hdock
./tools/dock/hdock.py给出了我们的python接口的示例。
conda config --add channels https://yourauthorizedid:[email protected]
conda install pyrosetta
./tools/relax/rosetta_packing.py给出了Rosetta侧链包装的python接口的示例。
./bin 。然后,解开它,这将导致目录看起来像 - bin
- FoldX
foldx
foldx是软件。 ./tools/score/foldx_energy.py给出了我们的Python接口以进行foldx稳定性的示例。
./bin中提供可用的ADFRSUITE软件。如果它与系统不兼容,请通过https://ccsb.scripps.edu/adcp/downloads/安装它。将ADFRsuite_x86_64Linux_1.0.tar复制到./bin中。最后,安装的ADCP中的./bin bin应该看起来像 - bin
- ADFRsuite_x86_64Linux_1.0
- Tools
CCSBpckgs.tar.gz
...
ADFRsuite_Linux-x86_64_1.0_install.run
uninstall
记住将其添加到您的env-path中
export PATH={Absolute-path-of-ppfolw}/bin/ADFRsuite_x86_64Linux_1.0/bin:$PATH
./tools/dock/adcpdock.py给出了我们用于adcpdocking的Python接口的示例。
./bin中提供 - bin
- TMscore
TMscore
TMscore.cpp
首先,克隆到./bin
cd ./bin
git clone https://github.com/pharmai/plip.git
cd plip
python setup.py install
alias plip='python {Absolute-path-of-ppfolw}/bin/plip/plip/plipcmd.py'
./tools/interaction/interaction_analysis.py给出了我们的Python接口进行PLIP交互分析的示例。
评估脚本以./evaluation评估目录给出,您可以在主要实验中运行以下评估:
# Evaluting the docking energy
python eval_bind.py --gen_dir {where-the-generated-peptide-is} --ref_dir {where-the-protein-pdb-is} --save_path {where-you-want-the-docked-peptide-to-be-saved-in}
# Evaluating the sequence and structure
python eval_bind.py --gen_dir {where-the-generated-peptide-is} --ref_dir {where-the-protein-pdb-is} --save_path {where-you-want-the-docked-peptide-to-be-saved-in}
我们给出一个示例文件对,因此gen_dir可以是./results/ppflow/codesign_ppflow/0008_3tzy_2024_01_19__19_16_21 save_path ppflow/codesign_ppflow/0008_3TZY_2024_01_19_19_19_19_16_21, ref_dir可以是./PPDbench/3tzy/可以是./results/ppflow/codesign_ppflow/0008_3tzy_2024_01_19__19_16_21 。
如果我们的论文或存储库中的代码对您有所帮助,请引用以下内容:
@inproceedings{lin2024ppflow,
author = {Lin, Haitao and Zhang, Odin and Zhao, Huifeng and Jiang, Dejun and Wu, Lirong and Liu, Zicheng and Huang, Yufei and Li, Stan Z.},
title = {PPFlow: Target-Aware Peptide Design with Torsional Flow Matching},
year = {2024},
booktitle={International Conference on Machine Learning},
URL = {https://www.biorxiv.org/content/early/2024/03/08/2024.03.07.583831},
eprint = {https://www.biorxiv.org/content/early/2024/03/08/2024.03.07.583831.full.pdf},
}