I have a string which is "The White Horse is hungry
"
Now, I need to match this with the possible pronunciations. Following are examples. (Think these as phonemes, OK I mean the way the user can pronounce)
The White Horse is hungary
The White Horse is not hungry
The White Horse is very hungry
The Horse is hungry
The Horse is hungries
White Horse is hungry
star wars..clone wars
Now you can see how similar the pronunciations could be and how different they could be. I can apply Levenshtein distance
to find the difference. It gave me very accurate results. However, I also found if I can find a way to compare two phonemes for similarity for an example, when the user says the wrong phoneme, instead of adding or deleting phonemes, I can get even better result.
Anyone know a good algorithm for this? And an example/link to the c# implementation?