⛰️ Rotamer Density Estimator is an Unsupervised Learner of the Effect of Mutations on Protein-Protein Interaction (ICLR 2023)
conda env create -f env.yml -n RDE
conda activate RDEThe default PyTorch version is 1.12.1 and cudatoolkit version is 11.3. They can be changed in env.yml.
| Dataset | Download Script |
|---|---|
| PDB-REDO | data/get_pdbredo.sh |
| SKEMPI v2 | data/get_skempi_v2.sh |
python test_rde_network_skempi.py --ckpt ./trained_models/DDG_RDE_Network_30k.ptpython test_rde_linear_skempi.py --ckpt ./trained_models/RDE.pt
Using the black-box RDE-Net model
python pointmut_analysis_rdenet.py ./configs/inference/7FAE_RBD_Fv_mutation.ymlor using the entropy-based RDE-Linear model
python pointmut_analysis_entropy.py ./configs/inference/7FAE_RBD_Fv_mutation.yml💡 The script can also predict mutational effects for other protein complexes. Please refer to the example configuration file 7FAE_RBD_Fv_mutation.yml to create your own mutation instruction.
python train.py ./configs/train/rde.ymlpython train_rde_network_skempi.py ./configs/train/rde_ddg_skempi.ymlFirst, generate un-calibrated entropy for each mutation entry in the SKEMPI dataset:
python -m rde.linear.entropyThen, train the coefficients in the linear model for ddG prediction, using the whole SKEMPI dataset for training (--num_folds 1):
python -m rde.linear.calibrate --num_folds 1Finally, export the coefficients to data/rdelinear_params.csv:
python -m rde.linear.export_paramsWith the exported coefficients, you can predict ddG values using the pointmut_analysis_entropy.py script.
@inproceedings{luo2023rotamer,
title={Rotamer Density Estimator is an Unsupervised Learner of the Effect of Mutations on Protein-Protein Interaction},
author={Shitong Luo and Yufeng Su and Zuofan Wu and Chenpeng Su and Jian Peng and Jianzhu Ma},
booktitle={The Eleventh International Conference on Learning Representations },
year={2023},
url={https://openreview.net/forum?id=_X9Yl1K2mD}
}