36 #ifndef OPENMS_ANALYSIS_ID_HIDDENMARKOVMODEL_H
37 #define OPENMS_ANALYSIS_ID_HIDDENMARKOVMODEL_H
80 void setName(
const String & name);
84 const String & getName()
const;
87 void setHidden(
bool hidden);
90 bool isHidden()
const;
93 void addPredecessorState(
HMMState * state);
96 void deletePredecessorState(
HMMState * state);
99 void addSuccessorState(
HMMState * state);
102 void deleteSuccessorState(
HMMState * state);
105 const std::set<HMMState *> & getPredecessorStates()
const;
108 const std::set<HMMState *> & getSuccessorStates()
const;
162 void writeGraphMLFile(
const String & filename);
165 void write(std::ostream & out)
const;
174 Size getNumberOfStates()
const;
180 void addNewState(
const String & name);
183 void addSynonymTransition(
const String & name1,
const String & name2,
const String & synonym1,
const String & synonym2);
192 void setInitialTransitionProbability(
const String & state,
DoubleReal prob);
195 void clearInitialTransitionProbabilities();
201 void clearTrainingEmissionProbabilities();
204 void enableTransition(
const String & s1,
const String & s2);
207 void disableTransition(
const String & s1,
const String & s2);
210 void disableTransitions();
225 void estimateUntrainedTransitions();
237 void setPseudoCounts(
DoubleReal pseudo_counts);
242 void setVariableModifications(
const StringList & modifications);
264 void calculateForwardPart_();
267 void calculateBackwardPart_();
StringList var_modifications_
Definition: HiddenMarkovModel.h:327
A more convenient string class.
Definition: String.h:56
bool hidden_
Definition: HiddenMarkovModel.h:114
std::set< HMMState * > succ_states_
Definition: HiddenMarkovModel.h:123
std::set< HMMState * > pre_states_
Definition: HiddenMarkovModel.h:120
Map< HMMState *, Map< HMMState *, std::pair< HMMState *, HMMState * > > > synonym_trans_
Definition: HiddenMarkovModel.h:316
std::set< HMMState * > states_
Definition: HiddenMarkovModel.h:307
Map< HMMState *, Map< HMMState *, std::vector< DoubleReal > > > train_count_trans_all_
Definition: HiddenMarkovModel.h:286
Map< HMMState *, DoubleReal > init_prob_
Definition: HiddenMarkovModel.h:304
Map< HMMState *, Map< HMMState *, DoubleReal > > trans_
Definition: HiddenMarkovModel.h:278
Map< String, Map< String, std::pair< String, String > > > synonym_trans_names_
Definition: HiddenMarkovModel.h:313
String name_
Definition: HiddenMarkovModel.h:117
std::set< std::pair< HMMState *, HMMState * > > trained_trans_
Definition: HiddenMarkovModel.h:310
Hidden Markov Model State class for the Hidden Markov Model.
Definition: HiddenMarkovModel.h:54
Map< String, HMMState * > name_to_state_
Definition: HiddenMarkovModel.h:298
int evaluate(const gsl_vector *x, void *params, gsl_vector *f, gsl_matrix *J)
Driver function for the evaluation of function and jacobian.
Map< HMMState *, Map< HMMState *, DoubleReal > > count_trans_
Definition: HiddenMarkovModel.h:281
Map< HMMState *, DoubleReal > forward_
Definition: HiddenMarkovModel.h:292
Map< HMMState *, std::set< HMMState * > > enabled_trans_
Definition: HiddenMarkovModel.h:319
String list.
Definition: StringList.h:56
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:144
DoubleReal pseudo_counts_
Definition: HiddenMarkovModel.h:322
Map< HMMState *, DoubleReal > backward_
Definition: HiddenMarkovModel.h:295
Hidden Markov Model implementation of PILIS.
Definition: HiddenMarkovModel.h:134
Map< HMMState *, DoubleReal > train_emission_prob_
Definition: HiddenMarkovModel.h:301
Map class based on the STL map (containing serveral convenience functions)
Definition: Map.h:50
Map< HMMState *, Map< HMMState *, Size > > training_steps_count_
Definition: HiddenMarkovModel.h:289
Map< HMMState *, Map< HMMState *, std::vector< DoubleReal > > > count_trans_all_
Definition: HiddenMarkovModel.h:283