virtual const std::vector<double> calculateObsProb(const vector<pair<double, double> >);
const std::vector<int> decodeViterbi(std::vector<vector<double> > obs,
vector<double> *scale);
virtual const std::vector<double> calculateObsProb(const vector<pair<double, double> >);
const std::vector<int> decodeViterbi(std::vector<vector<double> > obs,
vector<double> *scale);