语音识别-声学模型
关于声学模型,主要有两个问题,分别是特征向量序列的可变长和音频信号的丰富变化性。可变长特征向量序列问题在学术上通常有动态时间规划(Dynamic Time Warping, DTW)和隐马尔科夫模型(Hidden Markov Model, HMM)方法来解决。而音频信号的丰富变化性是由说话人的各种复杂特性或者说话风格与语速、环境噪声、信道干扰、方言差异等因素引起的。声学模型需要足够的鲁棒性来处理以上的情况。
在过去,主流的语音识别系统通常使用梅尔倒谱系数(Mel-Frequency Cepstral Coefficient, MFCC)或者线性感知预测(Perceptual Linear Prediction, PLP)作为特征,使用混合高斯模型-隐马尔科夫模型(GMM-HMM)作为声学模型。在近些年,区分性模型,比如深度神经网络(Deep Neural Network, DNN)在对声学特征建模上表现出更好的效果。基于深度神经网络的声学模型,比如上下文相关的深度神经网络-隐马尔科夫模型(CD-DNN-HMM)在语音识别领域已经大幅度超越了过去的GMM-HMM模型。
我们首先介绍传统的GMM-HMM声学模型,然后介绍基于深度神经网络的声学模型。
1.3. 传统声学模型(GMM-HMM)
HMM模型对时序信息进行建模,在给定HMM的一个状态后,GMM对属于该状态的语音特征向量的概率分布进行建模。
1.3.1. 混合高斯模型
如果一个连续随机变量服从混合高斯分布,则它的概率密度函数为
混合高斯模型分布最明显的性质是它的多模态,这使得混合高斯模型可以描述很多显示出多模态性质的屋里数据,比如语音数据,而单高斯分布则不合适。数据中的多模态性质可能来自多种潜在因素,每一个因素决定分布中特定的混合成分。如果因素被识别出来,那么混合分布就可以被分解成有多个因素独立分布的集合。
那么将上面公式推广到多变量的多元混合高斯分布,就是语音识别上使用的混合高斯模型,其联合概率密度函数的形式如下:
在得到混合高斯模型的形式后,需要估计混合高斯模型的一系列参数变量:=,我们主要采用最大期望值算法(Expectation Maximization, EM)进行参数估计,公式如下:
其中,j是当前迭代轮数, 为t时刻的特征向量。GMM参数通过EM算法进行估计,可以使其在训练数据上生成语音观察特征的概率最大化。此外,GMM模型只要混合的高斯分布数目足够多,GMM可以拟合任意精度的概率分布。
1.3.2. 隐马尔可夫模型
为了描述语音数据,在马尔可夫链的基础上进行了扩展,用一个观测的概率分布与马尔可夫链上的每个状态进行对应,这样引入双重随机性,使得马尔可夫链不能被直接观察,故称为隐马尔可夫模型。隐马尔可夫模型能够描述语音信号中不平稳但有规律可学习的空间变量。具体的来说,隐马尔可夫模型具有顺序排列的马尔可夫状态,使得模型能够分段的处理短时平稳的语音特征,并以此来逼近全局非平稳的语音特征序列。
隐马尔可夫模型主要有三部分组成。对于状态序列···,
1. 转移概率矩阵A
2. 马尔可夫链的初始概率
3. 每个状态的观察概率分布
隐马尔可夫模型的参数通过Baum-Welch算法(在HMM上EM算法的推广)进行估计。
1.4. CD-DNN-HMM
虽然GMM-HMM在以往取得了很多成功,但是随着深度学习的发展,DNN模型展现出了明显超越GMM模型的性能,替代了GMM进行HMM状态建模。不同于GMM模型,DNN模型为了获得更好的性能提升,引入了上下文信息(也即前后特征帧信息),所以被称为CD-DNN-HMM(Context-Dependent DNN-HMM)模型。在很多测试集上CD-DNN-HMM模型都大幅度超越了GMM-HMM模型。
首先简单介绍一下DNN模型,DNN模型是有一个有很多隐层的多层感知机,下图就是具有5层的DNN,模型结构上包括输入层、隐层和输出层。对于第层,有公式
其中 分别表示,L层的输出向量,权重矩阵,输入向量以及偏差向量(bias); f(·) 一般称为激活函数,常用的激活函数有sigmoid函数
或者整流线性单元(Rectifier Linear Unit)ReLU(x)=max(0,x)。在语音识别上应用的DNN模型一般采用softmax将模型输出向量进行归一化,假设模型有 L 层,在特征向量为 O,输出分类数为 C,则第 i 类的输出概率为
相比于GMM模型,DNN模型具有一些明显的优势:首先,DNN是一种判别模型,自身便带有区分性,可以更好区分标注类别;其次,DNN在大数据上有非常优异的表现,伴随着数据量的不断增加,GMM模型在2000小时左右便会出现性能的饱和,而DNN模型在数据量增加到1万小时以上时还能有性能的提升;另外,DNN模型有更强的对环境噪声的鲁棒性,通过加噪训练等方式,DNN模型在复杂环境下的识别性能甚至可以超过使用语音增强算法处理的GMM模型。
除此之外,DNN还有一些有趣的性质,比如,在一定程度上,随着DNN网络深度的增加,模型的性能会持续提升,说明DNN伴随模型深度的增加,可以提取更有表达性、更利于分类的特征;人们利用这一性质,提取DNN模型的Bottle-neck特征,然后在训练GMM-HMM模型,可以取得和DNN模型相当的语音识别效果。
DNN应用到语音识别领域后取得了非常明显的效果,DNN技术的成功,鼓舞着业内人员不断将新的深度学习工具应用到语音识别上,从CNN到RNN再到RNN与CTC的结合等等,伴随着这个过程,语音识别的性能也在持续提升,未来我们可以期望将可以和机器进行无障碍的对话。
- 点赞
- 收藏
- 关注作者
评论(0)