// Copyright 2014 Thomas Müller
// This file is part of HMMLA, which is licensed under GPLv3.
package hmmla.splitmerge;
import hmmla.hmm.HmmModel;
import hmmla.hmm.HmmTrainer;
import hmmla.hmm.Model;
import hmmla.io.Sentence;
public abstract class EmTrainer {
public double estep(HmmTrainer hmm_trainer, Model model, Iterable<Sentence> reader) {
HmmModel normalizedStatistics = hmm_trainer.train(model);
double ll = estep(model, normalizedStatistics, reader, true);
return ll;
}
abstract public double estep(Model model, HmmModel hmm_model,
Iterable<Sentence> reader, boolean update) ;
}