标签: matlab neural-network speech-recognition mfcc
我目前正在尝试创建和训练神经网络,以使用MFCC进行简单的语音分类。
目前,我正在为每个样本使用26个系数,总共有5个不同的类 - 这是五个不同的单词,具有不同数量的音节。
虽然每个样本长达2秒,但我不确定如何处理用户可以非常缓慢或非常快速地发音的情况。例如,在1秒内说出的“电视”一词产生的系数与在两秒钟内说出的字不同。
非常感谢有关如何解决这个问题的任何建议!
答案 0 :(得分:3)
简单的神经网络没有输入长度不变性,也不允许分析时间序列。
对于像一系列MFCC帧这样的时间序列分类,您可以使用具有时间不变性的分类器。例如,您可以使用神经网络结合隐马尔可夫模型(ANN-HMM),高斯混合模型与隐马尔可夫模型(GMM-HMM)或递归神经网络(RNN)。 RNN的Matlab实现是here。 Theano的实施也是available。您可以在Google中找到这些结构的详细说明。
语音识别不是一件容易实现的事情,最好使用现有的软件,如CMUSphinx