使用 LSTM 进行语音识别,具有在 MFCC 中提取的特征



研究深度神经网络,特别是LSTM,我决定遵循此链接中提出的想法:为LSTM二元分类构建语音数据集以构建分类器。

我有一个基于音频的,其中提取MFCC的功能,其中每个数组是13x56每个单词的音素。训练数据如下所示:

X = [[phon1fram[1][1], phon1fram[1][2],..., phon1fram[1][56]], 
     [phon1fram[2][1], phon1fram[2][2],..., phon1fram[2][56]], ....   
     [phon1fram[15][1], phon1fram[15][2], ..., phon1fram[15][56] ] ]
     ...
     ...
     [[phon5fram[1][1], phon5fram[1][2],..., phon5fram[1][56]], ... ,
     [phon5fram[15][1], phon5fram[15][2], ..., phon5fram[15][56]] ]

在字母中,哪个肯定是第一帧标签会说成"中介",只有最后一帧实际上代表音素?

Y = [[0, 0, ..., 0],        #intermediary
     [0, 0, ..., 0], ... ,  #intermediary
     [1, 0, ..., 0]]        # is one phoneme
    [[0, 0, ..., 0], ...    #intermediary
     [0, 1, ..., 0]         # other phoneme

这真的正确吗?在第一次测试中,我执行了所有预期的网点,倾向于将这个"中间人"标记为最普遍。可以使用任何其他方法吗?

我正在做同样的任务。我正在使用 http://keras.io/layers/recurrent/来完成任务。使用带有 theano 后端的 keras 来完成此任务。您可以按照以下步骤操作:

  1. 将 Mfcc 值存储在 TXT 文件中。
  2. 读取 TXT 文件并将所有值存储到 Numpy 数组中。
  3. 将此 numpy 数组传递给神经网络的输入。
  4. 在馈送输入之前应用填充

您可以使用超参数(batch_size,优化器,损失函数,顺序大小)来评估结果。

相关内容

  • 没有找到相关文章

最新更新