如何使用语音识别数据集训练HMM以进行语音识别?

时间:2018-07-04 03:22:10

标签: python tensorflow speech-recognition mfcc hmmlearn

我已经阅读了HMM和MFCC的一些期刊和论文,但是我仍然对如何逐步使用我的数据集(句子数据集的音频)感到困惑。

我的数据集示例(音频表格):

  • 你好早上好
  • 祝你考试顺利!
  • 等 大约343个音频数据和20个扬声器(6800个音频数据)

我所知道的:

  1. 我的句子数据集用于获取过渡概率
  2. 嗯状态是音素
  3. 39种MFCC功能用于训练HMM模型

我的问题:

  1. 我需要把句子切成单词还是只用句子训练 HMM模型?
  2. 我需要火车的音素数据集吗?如果是,我是否也需要使用HMM对其进行培训?如果不是,我的程序如何识别HMM的音素来预测输入?
  3. 我必须首先执行哪些步骤?

注意:我正在使用python,我使用hmmlearn和python_speech_features作为我的库。

1 个答案:

答案 0 :(得分:1)

  1. 我需要将句子切成单词还是仅将句子用于火车HMM模型?

理论上,您只需要句子和音素。但是使用孤立的单词可能对您的模型有用(这会增加训练数据的大小)

  1. 我需要火车的音素数据集吗?如果是,我是否也需要使用HMM对其进行培训?如果不是,我的程序如何识别HMM的音素来预测输入?

您需要音素,否则,如果模型没有任何孤立音素的示例,那么您的模型将很难找到正确的音素分割。您应该首先在隔离的音素上训练HMM状态,然后添加其余数据。如果您有足够的数据,那么您的模型可能不需要单独的音素示例就可以学习,但我不会对此予以反对。

  1. 我必须首先执行哪些步骤?

构建您的音素示例,并使用它们来训练简单的HMM模型,而无需为音素之间的过渡建模。一旦您的隐藏状态掌握了有关音素的信息,您就可以继续对孤立的单词和句子进行训练。