Hidden Markov Model functions (Baum-Welch learning, Viterbi state assignment,...)