A problem with forced alignment in speech recognition - HTK

删除回忆录丶 提交于 2019-12-06 14:15:57

问题


I have a system where a user is asked to repeat a sentence after a prompt. It uses HTK to force-align the user-spoken-sentence to the pre-defined word level label file (of the sentence) to get a time-aligned phone level file. The HMMs have been trained on a large amount of data and give very accurate time-aligned files with HVite. My problem arises when the user does not speak the exact sentence that is required to be spoken. Let me illustrate with an example:

  1. Word level label file of the target sentence that needs to be spoken (known to the user):
    THIS IS A VERY GOOD DAY.

  2. User says (Case 1): THIS IS A VERY GOOD DAY.
    In this case, the user has repeated the exact same sentence. The time aligned file is very accurate and all is well.

  3. User says (Case 2): THIS IS A GOOD DAY.
    In this case, the forced alignment is carried out with the word level label file as given above. The resulting time-aligned file shows time instants for words that were never spoken by the user (such as VERY which exists in the original sentence but not here).

Is there a way within HTK to detect and possibly avoid this?

One solution would be some sort of a front-end pre-processor that would do speech-recognition (itself a very hard problem because it would have to have infinite vocab) and let the user know that what they have spoken is incorrect.

Are there any tools/command line options within HTK that allow me to do this?

P.S: Please let me know in case more details are needed.

Thanks,
Sriram


回答1:


The task of alignment of the text to possibly incorrect transcription is rather complex and require specialized tools. HTK forced alignment is too simplistic for that. Instead of using HVite with -a you need to build a proper wdnet which will account for possible insertions, deletion and substitutions due to the transcription mismatch.

At CMUSphinx we are currently running a project to implement this functionality. You can already use it to align text to the imprecise transcription. You can check it's progress here:

http://cmusphinx.sourceforge.net/?s=long+audio+alignment



来源:https://stackoverflow.com/questions/6798609/a-problem-with-forced-alignment-in-speech-recognition-htk

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!