语音识别中强制对齐的问题 - HTK

时间:2011-07-23 06:10:47

标签: speech-recognition htk

我有一个系统,要求用户在提示后重复一个句子。它使用HTK force-align用户说出的句子到预定义的单词级标签文件(句子)来获得时间对齐的电话级文件。 HMM已经过大量数据的培训,并使用HVite提供非常准确的时间对齐文件。当用户 说出需要说出的确切句子时,就会出现问题。让我举一个例子来说明:

  1. 需要说出的目标句子的单词级标签文件(用户已知):
    这是一个非常好的日子。

  2. 用户说(案例1):这是一个非常好的日子 在这种情况下,用户重复完全相同的句子。时间对齐的文件非常准确,一切都很好。

  3. 用户说(案例2):这是一个很好的日子 在这种情况下,使用如上给出的单词级标签文件来执行强制对齐。生成的时间对齐文件显示用户从未说过的单词的时间瞬间(例如原始句子中存在的VERY,但不在此处)。

  4. HTK内是否有办法检测并可能避免这种情况?

    一种解决方案是某种前端预处理器可以进行语音识别(这本身就是一个非常难的问题,因为它必须有无限的词汇)并让用户知道他们说的是不正确的。

    HTK中是否有允许我这样做的工具/命令行选项?

    P.S:如果需要更多细节,请告诉我。

    谢谢,
    Sriram

1 个答案:

答案 0 :(得分:2)

将文本与可能不正确的转录对齐的任务相当复杂,需要专门的工具。 HTK强制对齐太简单了。而不是使用带有-a的HVite,您需要构建一个适当的wdnet,它将解释由于转录不匹配而可能的插入,删除和替换。

在CMUSphinx,我们目前正在运行一个项目来实现此功能。您已经可以使用它来将文本与不精确的转录对齐。你可以在这里查看它的进展:

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