Back to SimpleMetrics page.
Autogenerated Tag Syntax Documentation:
A metric for estimating the probability of an amino acid at a given position, as predicted by ProteinMPNN.
References and author information for the ProteinMPNNProbabilitiesMetric simple metric:
ProteinMPNNProbabilitiesMetric SimpleMetric's author(s): Moritz Ertelt, University of Leipzig [moritz.ertelt@gmail.com]
<ProteinMPNNProbabilitiesMetric name="(&string;)" custom_type="(&string;)"
write_pssm="(&string;)" residue_selector="(&string;)"
coord_selector="(&string;)" sequence_mask_selector="(&string;)" >
<TiedPositions residue_selectors="(&string;)" />
</ProteinMPNNProbabilitiesMetric>
Subtag TiedPositions:
A metric for estimating the probability of an amino acid at a given position, as predicted by the ProteinMPNN model. This metric requires to be build with extras=torch
, see Building Rosetta with TensorFlow and Torch for the compilation setup.
By default, the ProteinMPNNProbabilitiesMetric will use multiple processors during prediction. (The number of processors to use is autodetermined by Torch, based on the number of processors on the machine.)
To limit the number of processors being used, set the following environment variables prior to running Rosetta (commands assuming Bash, and assuming one CPU used):
export OMP_NUM_THREADS=1
export MKL_NUM_THREADS=1
export TORCH_NUM_THREADS=1
export TORCH_INTRAOP_NUM_THREADS=1
export TORCH_INTEROP_NUM_THREADS=1
This, of course, will increase the runtime, but may be necessary when running on systems where you explicitly need to control CPU usage.
The example predicts the amino acid identities for chain A using only the coordinates of chain A, while masking the sequence of position 25 and uses the predicted probabilities to score the sequence.
<ROSETTASCRIPTS>
<RESIDUE_SELECTORS>
<Chain name="res" chains="A" />
<Index name="mask" resnums="25"/>
</RESIDUE_SELECTORS>
<SIMPLE_METRICS>
<ProteinMPNNProbabilitiesMetric name="prediction" residue_selector="res" coord_selector="res" sequence_mask_selector="mask" write_pssm="mpnn.pssm"/>
<PseudoPerplexityMetric name="perplex" metric="prediction"/>
</SIMPLE_METRICS>
<FILTERS>
</FILTERS>
<MOVERS>
<RunSimpleMetrics name="run" metrics="perplex"/>
</MOVERS>
<PROTOCOLS>
<Add mover_name="run"/>
</PROTOCOLS>
</ROSETTASCRIPTS>
@article{dauparas2022robust,
title={Robust deep learning--based protein sequence design using ProteinMPNN},
author={Dauparas, Justas and Anishchenko, Ivan and Bennett, Nathaniel and Bai, Hua and Ragotte, Robert J and Milles, Lukas F and Wicky, Basile IM and Courbet, Alexis and de Haas, Rob J and Bethel, Neville and others},
journal={Science},
volume={378},
number={6615},
pages={49--56},
year={2022},
publisher={American Association for the Advancement of Science}
}