PETIMOT (Protein sEquence and sTructure-based Inference of MOTions) predicts protein conformational changes using SE(3)-equivariant graph neural networks and pre-trained protein language models.
# Create and activate conda environment
conda create -n petimot python=3.9
conda activate petimot
# Clone and install
git clone https://github.com/PhyloSofS-Team/PETIMOT.git
cd petimot
pip install -r requirements.txt
- Download resources from Figshare:
- Download
default_2025-02-07_21-54-02_epoch_33.pt
into theweights/
directory - Download and extract
ground_truth.zip
into theground_truth/
directory
- Run inference and evaluation:
python -m petimot infer_and_evaluate \
--model-path weights/default_2025-02-07_21-54-02_epoch_33.pt \
--list-path eval_list.txt \
--ground-truth-path ground_truth/ \
--prediction-path predictions/ \
--evaluation-path evaluation/
- Download baseline predictions from Figshare :
- Download and extract
baseline_predictions.zip
into thebaselines/
directory
- Run evaluation:
python -m petimot evaluate \
--prediction-path baselines/alphaflow_pdb_distilled/ \
--ground-truth-path ground_truth/ \
--output-path evaluation/
Available baseline predictions:
- AlphaFlow (distilled)
- ESMFlow (distilled)
- Normal Mode Analysis
# Single PDB structure
python -m petimot infer \
--model-path weights/default_2025-02-07_21-54-02_epoch_33.pt \
--list-path protein.pdb \
--output-path predictions/
# Multiple structures (provide paths in a text file)
python -m petimot infer \
--model-path weights/default_2025-02-07_21-54-02_epoch_33.pt \
--list-path protein_list.txt \
--output-path predictions/