An Empirical Exploration of Hidden Markov Models:
From Spelling Recognition to Speech Recognition
1. Before you work on the following two steps, you should
have read this paper and this power
point slide set regarding spelling recognition in the context of a one-dimensional
keyboard and the conceptual connection between spelling recognition and speech
recognition.
2. Download and play with a spelling
recognition demo program (open demo.exe in the zip file):
·
Note that you can
modify the vocabulary set in testVocabulary.txt
in the folder as you want.
·
The file realMessage.txt contains words randomly selected
from the vocabulary set on the fly.
·
The file corruptedMessage.txt contains the resulting
outputs generated by simulating a person using the circular one-dimensional
keyboard to key in the words in realMessage.txt.
·
The file recoveredTestMessage.txt contains, for each
corrupted output on each row of corruptedMessage.txt, the top 4 most likely
words from the vocabulary set.
·
Compare each
realMessage.txt with recoveredTestMessage.txt row by row and you’ll see the
accuracy of the spelling recognition in this process.
3. Download and unzip this
zip file to browse the C++ source code in a Visual C++ project folder for
the spelling recognition demo program. Examine the parameter settings of the
spelling model and the keyboard model in model.cpp
and see three sample results 1, 2, and 3 (with explanation) when a person with certain tendency of typing
try to type the message in BiolaVision.txt.