Generating from an HMM
It is easy to generate strings if we know the parameters
of the model. At each time step, make two random
choices:
Use the transition probabilities from the current
hidden node to pick the next hidden node.
Use the output probabilities from the current hidden
node to pick the current symbol to output.
We could also generate by first producing a complete
hidden sequence and then allowing each hidden node in
the sequence to produce one symbol.
Hidden nodes only depend on previous hidden nodes
So the probability of generating a hidden sequence
does not depend on the visible sequence that it
generates.