OpenMS
|
#include <OpenMS/ANALYSIS/ID/MessagePasserFactory.h>
Public Member Functions | |
evergreen::TableDependency< Label > | createProteinFactor (Label id, int nrMissingPeps=0) |
Protein Factor initialized with model prior (missing peps are experimental) More... | |
evergreen::TableDependency< Label > | createProteinFactor (Label id, double prior, int nrMissingPeps=0) |
Protein Factor initialized with user prior (missing peps are experimental) More... | |
evergreen::TableDependency< Label > | createPeptideEvidenceFactor (Label id, double prob) |
evergreen::TableDependency< Label > | createRegularizingSumEvidenceFactor (size_t nrParents, Label nId, Label pepId) |
evergreen::TableDependency< Label > | createSumEvidenceFactor (size_t nrParents, Label nId, Label pepId) |
evergreen::TableDependency< Label > | createSumFactor (size_t nrParents, Label nId) |
evergreen::TableDependency< Label > | createReplicateFactor (Label seqId, Label repId) |
evergreen::TableDependency< Label > | createChargeFactor (Label repId, Label chargeId, int chg) |
evergreen::AdditiveDependency< Label > | createPeptideProbabilisticAdderFactor (const std::set< Label > &parentProteinIDs, Label nId) |
To sum up distributions for the number of parent proteins of a peptide with convolution trees. More... | |
evergreen::AdditiveDependency< Label > | createPeptideProbabilisticAdderFactor (const std::vector< Label > &parentProteinIDs, Label nId) |
To sum up distributions for the number of parent proteins of a peptide with convolution trees. More... | |
evergreen::PseudoAdditiveDependency< Label > | createBFPeptideProbabilisticAdderFactor (const std::set< Label > &parentProteinIDs, Label nId, const std::vector< evergreen::TableDependency< Label > > &deps) |
To sum up distributions for the number of parent proteins of a peptide brute-force. More... | |
MessagePasserFactory (double alpha, double beta, double gamma, double p, double pep_prior) | |
Constructor. More... | |
void | fillVectorsOfMessagePassers (const std::vector< Label > &protIDs, const std::vector< std::vector< Label >> &parentsOfPeps, const std::vector< double > &pepEvidences, evergreen::InferenceGraphBuilder< Label > &igb) |
Works on a vector of protein indices (potentially not consecutive) More... | |
Private Member Functions | |
double | notConditionalGivenSum (unsigned long summ) |
Private Attributes | |
double | alpha_ |
the model parameters More... | |
double | beta_ |
double | gamma_ |
double | p_ |
double | pepPrior_ |
std::map< int, double > | chgLLhoods = {{1, 0.7}, {2, 0.9}, {3, 0.7}, {4, 0.5}, {5, 0.5}} |
Produces MessagePassers (nodes in a factor graph = bayesian network) for use with Evergreen library, based on a parameterization of the Protein-Peptide Bayesian network. Those MessagePassers can be tables or convolution trees. Labels are used to associate the variables they are working on. They can be integers (for speed) or strings (for readability/debug)
MessagePasserFactory | ( | double | alpha, |
double | beta, | ||
double | gamma, | ||
double | p, | ||
double | pep_prior | ||
) |
Constructor.
alpha | Peptide emission probability |
beta | Spurious peptide emission probability |
gamma | Protein prior |
p | Marginalization norm |
pep_prior | Peptide prior (defines at which evidence probability, additional evidence is beneficial) |
evergreen::PseudoAdditiveDependency< Label > createBFPeptideProbabilisticAdderFactor | ( | const std::set< Label > & | parentProteinIDs, |
Label | nId, | ||
const std::vector< evergreen::TableDependency< Label > > & | deps | ||
) |
To sum up distributions for the number of parent proteins of a peptide brute-force.
evergreen::TableDependency< Label > createChargeFactor | ( | Label | repId, |
Label | chargeId, | ||
int | chg | ||
) |
evergreen::TableDependency< Label > createPeptideEvidenceFactor | ( | Label | id, |
double | prob | ||
) |
Peptide Factor initialized with:
prob | peptide evidence probability |
evergreen::AdditiveDependency< Label > createPeptideProbabilisticAdderFactor | ( | const std::set< Label > & | parentProteinIDs, |
Label | nId | ||
) |
To sum up distributions for the number of parent proteins of a peptide with convolution trees.
evergreen::AdditiveDependency< Label > createPeptideProbabilisticAdderFactor | ( | const std::vector< Label > & | parentProteinIDs, |
Label | nId | ||
) |
To sum up distributions for the number of parent proteins of a peptide with convolution trees.
evergreen::TableDependency< Label > createProteinFactor | ( | Label | id, |
double | prior, | ||
int | nrMissingPeps = 0 |
||
) |
Protein Factor initialized with user prior (missing peps are experimental)
evergreen::TableDependency< Label > createProteinFactor | ( | Label | id, |
int | nrMissingPeps = 0 |
||
) |
Protein Factor initialized with model prior (missing peps are experimental)
evergreen::TableDependency< Label > createRegularizingSumEvidenceFactor | ( | size_t | nrParents, |
Label | nId, | ||
Label | pepId | ||
) |
Conditional probability table of peptide given number of parent proteins, based on model params. Additionally regularizes on the amount of parent proteins.
nrParents | (maximum) number of parent proteins |
evergreen::TableDependency< Label > createReplicateFactor | ( | Label | seqId, |
Label | repId | ||
) |
evergreen::TableDependency< Label > createSumEvidenceFactor | ( | size_t | nrParents, |
Label | nId, | ||
Label | pepId | ||
) |
Conditional probability table of peptide given number of parent proteins, based on model params.
nrParents | (maximum) number of parent proteins |
evergreen::TableDependency< Label > createSumFactor | ( | size_t | nrParents, |
Label | nId | ||
) |
void fillVectorsOfMessagePassers | ( | const std::vector< Label > & | protIDs, |
const std::vector< std::vector< Label >> & | parentsOfPeps, | ||
const std::vector< double > & | pepEvidences, | ||
evergreen::InferenceGraphBuilder< Label > & | igb | ||
) |
Works on a vector of protein indices (potentially not consecutive)
|
inlineprivate |
to fill the noisy-OR table for a peptide given parent proteins TODO pre-compute for like a hundred parent proteins TODO introduce special case for alpha or beta = 1. The log formula does not work otherwise.
References MessagePasserFactory< Label >::alpha_, and MessagePasserFactory< Label >::beta_.
|
private |
the model parameters
Referenced by MessagePasserFactory< Label >::notConditionalGivenSum().
|
private |
Referenced by MessagePasserFactory< Label >::notConditionalGivenSum().
|
private |
Likelihoods for the charge states given presence of the peptide sequence (
|
private |
|
private |
|
private |