Package Bio :: Package HMM :: Module Trainer :: Class AbstractTrainer
[show private | hide private]
[frames | no frames]

Class AbstractTrainer

Known Subclasses:
BaumWelchTrainer, KnownStateTrainer

Provide generic functionality needed in all trainers.
Method Summary
  __init__(self, markov_model)
  estimate_params(self, transition_counts, emission_counts)
Get a maximum likelihood estimation of transition and emmission.
  log_likelihood(self, probabilities)
Calculate the log likelihood of the training seqs.
  ml_estimator(self, counts)
Calculate the maximum likelihood estimator.

Method Details

estimate_params(self, transition_counts, emission_counts)

Get a maximum likelihood estimation of transition and emmission.

Arguments:

o transition_counts -- A dictionary with the total number of counts of transitions between two states.

o emissions_counts -- A dictionary with the total number of counts of emmissions of a particular emission letter by a state letter.

This then returns the maximum likelihood estimators for the transitions and emissions, estimated by formulas 3.18 in Durbin et al:

a_{kl} = A_{kl} / sum(A_{kl'}) e_{k}(b) = E_{k}(b) / sum(E_{k}(b'))

Returns: Transition and emission dictionaries containing the maximum likelihood estimators.

log_likelihood(self, probabilities)

Calculate the log likelihood of the training seqs.

Arguments:

o probabilities -- A list of the probabilities of each training sequence under the current paramters, calculated using the forward algorithm.

ml_estimator(self, counts)

Calculate the maximum likelihood estimator.

This can calculate maximum likelihoods for both transitions and emissions.

Arguments:

o counts -- A dictionary of the counts for each item.

See estimate_params for a description of the formula used for calculation.

Generated by Epydoc 2.1 on Mon Aug 27 16:43:44 2007 http://epydoc.sf.net