基于DNN-HMM的语音识别声学模型结构如下图所示,与传统的基于GMM-HMM的声学模型相比,唯一不同点在于用DNN替换了GMM来对输入语音信号的观察概率进行建模。DNN与GMM相比具有如下优点:
- DNN不需要对声学特征所服从的分布进行假设;
- DNN的输入可以采用连续的拼接帧,因而可以更好地利用上下文的信息;
- DNN的训练过程可以采用随机优化算法来实现,而不是采用传统的批优化算法,因此当训练数据规模较大时也能进行非常高效的训练,显然,训练数据规模越大,所得到的声学模型就越精确,也就越有利于提高语音识别的性能;
-
在发音模式分类上,DNN这种区分式模型也要比GMM这种产生式模型更加合适。
DNN的输入是传统的语音波形经过加窗、分帧,然后提取出来的频谱特征,如MFCC、PLP或更底层的滤波器组(filter bank,FBK)声学特征等。FBK特征多利用Mel滤波器组在功率谱上进行滤波并计算对数能量,然后采用其规整值来表示。目前,FBK特征获得了广泛的成功,证明了原始语音频率对于基于DNN的语音识别技术的重要性。与传统的GMM采用单帧特征作为输入不同,DNN将相邻的若干帧进行拼接来得到一个包含更多信息的输入向量。研究表明,采用拼接帧作为输入是DNN相比GMM能获得明显性能提升的关键因素之一。
DNN输出向量的维度对应HMM中状态的个数,通常每一维输出对应一个绑定的triphone状态。训练时,为了得到每一帧语音在DNN上的目标输出值(标准值),需要通过事先训练好的GMM-HMM识别系统在训练语料上进行强制对齐。即要训练一个DNN-HMM声学模型,首先需要训练一个GMM-HMM声学模型,并通过基于Viterbi算法的强制对其方法给每个语音帧打上一个HMM状态标签,然后以此状态标签,训练一个基于DNN训练算法的DNN模型。最后用DNN模型替换HMM模型中计算观察概率的GMM部分,但保留转移概率和初始概率等其他部分。
早期的DNN一般采用前馈神经网络结构,其本质上是一个包含多个隐层的多层感知机。它采用层级的结构,分为输入层、隐层和输出层。相邻层的神经