
Conda 환경은 구성 env.yaml 로 구성 할 수 있습니다.
conda env create -f env.yaml 코드는 Cuda 버전 11.7 및 Pytorch 버전 1.13.1 로 테스트됩니다.
코드를 실행하기 전에 환경을 활성화하는 것을 잊지 마십시오.
conda activate PepGLADPyrosetta는 생성 된 펩티드의 계면 에너지를 계산하는 데 사용됩니다. 관심이 있으시면 여기에 지침을 따라 설치하십시오.
이 데이터 세트는 벤치마킹 모델에만 사용됩니다. 사례를 추론하기 위해 훈련 된 가중치를 사용하려면이 데이터 세트를 다운로드 할 필요가 없습니다.
이 백서에서 원래 소개 된 데이터 세트는이 URL에서 Zenodo에 업로드됩니다. 다음과 같이 다운로드 할 수 있습니다.
mkdir datasets # all datasets will be put into this directory
wget https://zenodo.org/records/13373108/files/train_valid.tar.gz ? download=1 -O ./datasets/train_valid.tar.gz # training/validation
wget https://zenodo.org/records/13373108/files/LNR.tar.gz ? download=1 -O ./datasets/LNR.tar.gz # test set
wget https://zenodo.org/records/13373108/files/ProtFrag.tar.gz ? download=1 -O ./datasets/ProtFrag.tar.gz # augmentation datasettar zxvf ./datasets/train_valid.tar.gz -C ./datasets
tar zxvf ./datasets/LNR.tar.gz -C ./datasets
tar zxvf ./datasets/ProtFrag.tar.gz -C ./datasetspython -m scripts.data_process.process --index ./datasets/train_valid/all.txt --out_dir ./datasets/train_valid/processed # train/validation set
python -m scripts.data_process.process --index ./datasets/LNR/test.txt --out_dir ./datasets/LNR/processed # test set
python -m scripts.data_process.process --index ./datasets/ProtFrag/all.txt --out_dir ./datasets/ProtFrag/processed # augmentation dataset 열차/검증 스플릿에 대한 처리 된 데이터의 색인은 다음과 같이 생성되어야하며, 이로 인해 datasets/train_valid/processed/train_index.txt 및 datasets/train_valid/processed/valid_index.txt 가 생성됩니다.
python -m scripts.data_process.split --train_index datasets/train_valid/train.txt --valid_index datasets/train_valid/valid.txt --processed_dir datasets/train_valid/processed/wget http://huanglab.phys.hust.edu.cn/pepbdb/db/download/pepbdb-20200318.tgz -O ./datasets/pepbdb.tgztar zxvf ./datasets/pepbdb.tgz -C ./datasets/pepbdbpython -m scripts.data_process.pepbdb --index ./datasets/pepbdb/peptidelist.txt --out_dir ./datasets/pepbdb/processed
python -m scripts.data_process.split --train_index ./datasets/pepbdb/train.txt --valid_index ./datasets/pepbdb/valid.txt --test_index ./datasets/pepbdb/test.txt --processed_dir datasets/pepbdb/processed/
mv ./datasets/pepbdb/processed/pdbs ./dataset/pepbdb # re-locate./checkpoint/codesign.ckpt./checkpoints/fixseq.ckpt둘 다 릴리스 페이지에서 다운로드 할 수 있습니다. 이 체크 포인트는 Pepbench에서 훈련되었습니다.
./assets/1ssc_A_B.pdb 예로 들어, 사슬 A는 표적 단백질입니다.
# obtain the binding site, which might also be manually crafted or from other ligands (e.g. small molecule, antibodies)
python -m api.detect_pocket --pdb assets/1ssc_A_B.pdb --target_chains A --ligand_chains B --out assets/1ssc_A_pocket.json
# sequence-structure codesign with length in [8, 15)
CUDA_VISIBLE_DEVICES=0 python -m api.run
--mode codesign
--pdb assets/1ssc_A_B.pdb
--pocket assets/1ssc_A_pocket.json
--out_dir ./output/codesign
--length_min 8
--length_max 15
--n_samples 10 그런 다음 10 세대가 폴더 ./output/codesign 에서 출력됩니다.
./assets/1ssc_A_B.pdb 예로 들어, 사슬 A는 표적 단백질입니다.
# obtain the binding site, which might also be manually crafted or from other ligands (e.g. small molecule, antibodies)
python -m api.detect_pocket --pdb assets/1ssc_A_B.pdb --target_chains A --ligand_chains B --out assets/1ssc_A_pocket.json
# generate binding conformation
CUDA_VISIBLE_DEVICES=0 python -m api.run
--mode struct_pred
--pdb assets/1ssc_A_B.pdb
--pocket assets/1ssc_A_pocket.json
--out_dir ./output/struct_pred
--peptide_seq PYVPVHFDASV
--n_samples 10 그런 다음 10 개의 형태가 폴더에서 출력됩니다 ./output/struct_pred .
각 작업에는 다음 단계가 필요합니다. 다음 단계가 필요합니다. 여기에는 스크립트에 통합 된 다음 단계가 필요합니다 ./scripts/run_exp_pipe.sh :
반면에 기존 체크 포인트를 평가하려면 아래 지침 (예 : 형태 생성)을 따르십시오.
# generate results on the test set and save to ./results/fixseq
python generate.py --config configs/pepbench/test_fixseq.yaml --ckpt checkpoints/fixseq.ckpt --gpu 0 --save_dir ./results/fixseq
# calculate metrics
python cal_metrics.py --results ./results/fixseq/results.jsonlPepbench에 대한 Codesign 실험 :
GPU=0 bash scripts/run_exp_pipe.sh pepbench_codesign configs/pepbench/autoencoder/train_codesign.yaml configs/pepbench/ldm/train_codesign.yaml configs/pepbench/ldm/setup_latent_guidance.yaml configs/pepbench/test_codesign.yamlPepbench에 대한 형태 생성 실험 :
GPU=0 bash scripts/run_exp_pipe.sh pepbench_fixseq configs/pepbench/autoencoder/train_fixseq.yaml configs/pepbench/ldm/train_fixseq.yaml configs/pepbench/ldm/setup_latent_guidance.yaml configs/pepbench/test_fixseq.yaml우리의 일에 관심을 가져 주셔서 감사합니다!
알고리즘, 코드 및 실행에 발생하는 문제뿐만 아니라 알고리즘, 코드에 대한 질문에 대해 자유롭게 문의하십시오. Github Repo에서 문제를 만들거나 [email protected]으로 문의하십시오.
@article { kong2024full ,
title = { Full-atom peptide design with geometric latent diffusion } ,
author = { Kong, Xiangzhe and Huang, Wenbing and Liu, Yang } ,
journal = { arXiv preprint arXiv:2402.13555 } ,
year = { 2024 }
}