pythonspeech-recognitioncmusphinxhtkautoencoder

Already trained HMM model for word recognition


I've implemented a phoneme classifier using an autoencoder (Given an audio file array it returns all the recognized phonemes). I want to extend this project so that word recognition is possible. Does there exist an already trained HMM model (in English) that will recognize a word given a list of phonemes?

Thanks everybody.


Solution

  • I am not aware of any decoder that could help you. Speech recognition software does not work this way.

    Usually such thing requires custom implementation for dynamic beam search. That is not a huge task, maybe 100 lines of code. It also depends on what your phonetic decoder produces. Is it phonetic lattice (ideally) or is it a 1-best result with scores or simply 1-best result without scores.

    In case you have a proper lattice you might want to try openfst toolkit where you convert LM and dictionary to FST, then compose with lattice FST and then use fstbestpath to find the best path. Still, instead of all those phonetic conversions you can simply write a dynamic search.

    Baidu in their projects also convert speech to letters and then use language model to fix letter sequence. But they say that without langauge model it works equally well.