Hidden Markov Model

What is a Hidden Markov Model?

Hidden Markov Model (HMM) is a statistical Markov model in which the model states are hidden. It is important to understand that the state of the model, and not the parameters of the model, are hidden. A Markov model with fully known parameters is still called a HMM. While the model state may be hidden, the state-dependent output of the model is visible. Information about the state of the model can be gleaned from the probability distribution over possible output tokens because each model state creates a different distribution. A sequence of output tokens will provide insight into the sequence of states in a process known as pattern theory.

Why is this Useful?

The main usefulness of HMM is the recovery of a data sequence that is hidden by observing the output which is dependent on that hidden data sequence.


Two people, let’s call them Isla and Donnie, talk about food they like to eat. Donnie likes to eat pizza, pasta and pie. He tends to choose which to eat depending on his emotions. Isla has a rough understanding of the likelihood that Donnie is happy or upset and his tendency to pick food based on those emotions. Donnie’s food choice is the Markov process and Isla knows the parameters but she does not know the state of Donnie’s emotions; this is a hidden Markov model. When they talk, Isla can determine the probability of Donnie being either happy or upset based on which of the three foods he chose to eat at a given moment.

Applications of Hidden Markov Model

  • Computational finance
  • Cryptanalysis
  • Speech recognition – Notably Apple’s Siri
  • Handwriting recognition
  • Time series analysis