英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料
卷积,长短期记忆模块,完全连接的深度神经元网络
Tara N. Sainath, Oriol Vinyals, Andrew Senior, Has ̧im Sak
摘要
卷积神经网络(CNNs)和长时间短期记忆模块(LSTM)在各种语音识别任务中都表现出了对深度神经网络(DNNs)的改进。CNNs,LSTM和DNNs在建模能力上是互补的,因为CNNs擅长减少频率变化,LSTM擅长时域建模,而DNNs适合将特征映射到更加可分离的空间。在本文中,我们利用CNN,LSTM和DNN互补的特性将它们组合成一个统一的体系结构。我们探讨这个提议的体系结构,我们称之为CLDNN,运用于从200到2000小时不等的各种大型词汇任务。我们发现CLDNN相比于三个单独模型中最强的模型LSTM提供了4-6%的WER相对改善。
- 绪论
在过去的几年中,与高斯混合模型/隐马尔可夫模型(GMM / HMM)系统[1]相比,深度神经网络(DNN)在大型词汇连续语音识别(LVCSR)任务方面已经取得了巨大的成功。最近,深度神经网络体系结构在结合了可选择类型的神经网络体系结构和卷积神经网络(CNNs)[2]和长期短期记忆递归神经网络(LSTMs)后[3]已经取得了更进一步改进。 CNN,LSTM和DNN在建模能力上各有限制,我们相信通过将这些网络结合成一个统一的架构,语音识别性能将取得一个很大的进步。
[4]中提供了一个对于RNNs(以及LSTM)建模限制的很好概述。LSTM的一个问题是,对输入特征xt进行时域建模(即对数特征)。然而,更高层次的xt建模可以帮助解决输入内部的变化的潜在因素,从而使得在连续时间步骤之间学习其时间结构变得更为简单[4]。例如,已经表明,CNNs通过学习说话者自适应/有区别地训练的特征,从而消除输入的变化[5]。因此,它对于用几个完全连接的CNN层来进行LSTMs可能有益。
实际上,在通过借助HMMs进行时间建模之前,最先进的GMM / HMM系统采用诸如声道长度归一化(VTLN)和特征空间最大似然线性回归(fMLLR)之类的技术进行说话者的自适应。这种方法序列已经被证实适用于LVCSR任务的处理。[7]因此,在将输入xt传递给LSTM层去建模时间序列之前,探索先将其传递给CNN层是合理的,这将减少输入频率的变化。
除此之外,如[4]中所提到的,在LSTMs中ht和输出yt之间的映射也不够紧密,这意味着没有中间的非线性隐藏层。如果可以减少隐藏状态变化的因素,那么模型的隐藏状态可以更有效地总结以前输入的历史。反过来,通过这些可以更好地预测输出。减少隐藏状态的变化可以被建模为先有DNN层然后LSTM层紧随其后的模型。这与[4]中提出的从隐藏层到输出层的模型本质上类似,同时这也通过RNNs对语音进行了测试。
我们提议的模型是将由时间环境包围的输入特征输入到几个CNN层,以减少频谱变化。然后将CNN输出层馈送成几个LSTM层去减少时间变化。接着,最终的LSTM层的输出结果被反馈到几个完全连接到DNN层,这些DNN层将特征转换到空间中,从而使输出更容易被分类。
在[9]中已经探究了CNN,LSTMs和DNNs的结合。然而,在本文中,这三个模型首先被单独训练,然后这三个模型的输出通过一个结合层被结合。本文的不同之处在于我们将CNNs,LSTMs和DNNs结合成一个统一的体系结构并进行共同训练。此外,我们如何组合这些层被[4]的分析所启发,[4]中暗示了LSTM的性能能通过提供更好的特征(CNN层通过减少频谱变化)给LSTM加以提高。同时,通过使隐藏单元和由DNN层提供的输出的映射更加深入提高输出的预测。
每个CNN,LSTM和DNN模块以不同比例捕获输入表示的信息[10]。因此,我们探究是否能通过结合多种比例的信息来获得进一步提高。具体而言,我们探究将长期特征传递给CNN,然后接着将这些特征和短期特征传递给LSTM。此外,我们探究LSTM和DNN建模能力的互补。具体而言,我们研究将CNN层的输出传递给LSTM层和DNN层。我们将参考CLDNN体系结构和这些额外的连接作为多比例的CLDMNN。
我们最初为了明白CLDNN行为的实验由一个200小时的语音搜索任务完成。我们发现CLDNN体系结构相比于LSTM在WER存在着4%的相对提高,同时在多比例特征上有1%的额外提高。接下来,我们在2个语音搜索的大任务中探究了CLDNN体系结构的行为,即一个2000小时干净语音语料库和一个2000小时的噪声语音库。然后我们发现CLDNN相比于LSTM在WER存在着4%-5%的相对提高,同时在多尺度特征上有1%的额外相对提高。这些解释了CLDNN体系结构在处理大数据集和不同环境状况下的健壮性鲁棒性。
本文剩余部分如下。在第2节我们解释CLDNN体系结构和多比例输入添加,在第3节中描述实验步骤,在第4节中展示了最初为了理解CLDNN体系结构的实验,第5节中将讨论基于大数据集的结果。最后,第6节对本文进行总结和前景展望。
- 建模体系结构
本节中图1展示了关于CLDNN体系结构的描述。
图1 CLDNN体系结构
2.1CLDNN
由l左边的上下文向量和r右边的上下文向量包围的帧xt作为输入传递到网络中,这些输入被描述为[xtminus;l , . . . , xt r ]。在我们的实验中,每个帧xt表示一个40维的特征。
首先,我们传递输入通过一系列卷积层来减少输入信号的频率变化,体系结构使用的每个CNN层和[2]中所提出的类似。具体而言,我们使用了2个卷积层,每个卷积层有256个映射。第一个卷积层我们采用9x9频率时间滤波器,第二个卷积层采用4x3滤波器,这些滤波器在整个频率时间空间是共享的。我们的池化策略是不使用重叠的最大池,并且只表现池的频率特性[11]。第一池化层使用容积为3的池,第二层不使用池。
由于特征映射x时间x频率的数量,最后的CNN层的维度很大。因此,如图1所示,我们加入一个线性层去减少特征维度,然后将其传递给LSTM层。在[12]中,我们发现在CNN层后增加线性层导致在准确率不变的情况下参数的减少。在我们的研究中,减少维度,从而导致线性层拥有256个输出是合适的。
频率建模完成之后,我们接下来将CNN的输出传递到LSTM层,对于在时间方面信号的建模这样是合适的。遵循[3]中提出的策略,我们使用2个LSTM层,每个LSTM层为了减少维度由832个单元和512个单元投影层构成。除非另外说明,LSTM将通过时间截断反向传播进行训练(BPTT)循环20个时间节拍。此外,输出状态被延迟5帧,如我们通过学习DNNs已经发现的,未来帧的信息帮助我们预测当前帧。输入CNN的特征拥有l左边的上下文帧和r右边的上下文帧,然后CNN的输出被传递到LSTM。为了确保LSTM不能看到超过5帧未来的上下文信息,我们为CLDNNs设置 r=0提高解码的延迟。
最后,在频率和时间建模已经完成后,我们将LSTM的输出传递到几个完全连接到DNN层。如[5]所展示的,这些较高层适用于生成更高阶的特征表示,也更容易被分离到几个我们想要区分的几个不同类中,每个完全连接层有1024个隐藏单元。
2.2多比例添加
CNN采用长期特征去观察t-1到t的上下文(即在CLDNN中r=0),并且产生一个更高阶的表示传递给LSTM。然后LSTM在20个时间步骤后被展开,从而消耗20 l前后关系。然而,我们察觉这是将短期xt特征传递给LSTM的补充信息。事实上,[3]中LSTM最初的工作着眼于对一个20个连续的没有上下文的短期xt特征序列建模。为了对短期和长期特征建模,我们采用原始的xt作为输入,并且将其和从CNN中得到的长期特征传递给LSTM。这些通过图1的虚线流中展示。
短期和长期特征在神经网络中的的使用先前已经探究过了(即[13,14]),我们的研究与先前研究的主要不同之处在于,即由于LSTM序列建模的能力,我们能将其连接到一个网络中。此外,短期和长期特征的组合几乎没有导致网络参数数量的提高。
此外,我们探究了是否将CNN的输出与LSTM进行时间建模以及和DNN进行区别建模具有互补性。具体而言,受到计算机视觉[10]的启发,我们将探究将CNN的输出传递给LSTM和DNN。图1中的虚线流(2)已经进行了展示。将CNN层和DNN层的信息结合的想法在[11, 15]中已经被探究了,纵然先前的研究增加额外的DNN层来进行组合。我们的研究不同之处在于我们将CNN层的输出直接传递给了DNN层,并没有增加额外层,因此最小化了参数的增加。
- 实验
我们最初为了理解CNN,DNN和LSTM体系结构的实验是在一个由300k英文口语发音(大约200小时)构成的中等容量的训练集上完成的,接下来进一步的实验是在3m发音(2000小时)大型训练集上完成的。此外,为了探究我们的模型对于噪声的健壮性,我们进行了使用了3m发音(2000小时)噪音训练集的测试。这个数据集是使用一个房间模拟器人为干扰干净的发音,增加不同程度的噪声和混响,从而使总体的信噪比SNR处于5dB和30dB之间。噪音的资源来自于YouTube和日常生活中环境噪声的记录。所有的训练集都是匿名和手写的,并且代表了Google的语音流量。干净语音的模型训练通过一个包含30000语音(20小时)的干净语音测试集评估。此外,关于噪声的模型训练相应地通过一个包含30000语音的含噪音语音测试集评估,这些不同信噪比SNR的噪声被添加到干净语音测试集中。值得指出的是,本文中使用的训练和测试集与[3]中使用的那些数据不同,因此数据不能直接进行比较。
所有模型的输入特征都是40维度滤波器特征,每隔10s计算一次。除非特别指出,所有的神经网络均采用交叉熵准则进行训练,训练采用[16]中所描述的异步随机梯度下降(ASGD)优化策略。本文中一系列的训练序列实验也使用分布式ASGD,[17]中更详细地进行了描述。所有的网络拥有13522CD的输出目标。所有CNN和DNN层的权重借助[18]中描述的Glorot-Bengio策略进行初始化。除非特别指出,所有的LSTM层被随机初始化为方差为1 /(#输入)高斯。此外,学习速率针对具体的网络进行选择,选择最大价值的学习速率,从而使训练维持高稳定性。学习率呈指数衰减。
- 结果
本节将展示理解CLDNN模型的结合的最初结果以及它的变体。所有的模型在中等容量200小时的干净训练集上被训练,并且展示的结果是基于干净语音测试集。
4.1基准
首先,如表1所示,我们为CNNs和LSTMs设置了基准数据。与论文[2]中所展现的结果一致,CNN使用2个拥有256个特征映射的卷积层和4个由1024个隐藏单元构成的完全连接层进行训练,DNN由拥有1024个隐藏单元的6层进行训练[1]。CNN和DNN的输入特征均是40维度的滤波器特征,被20个过去帧和5个未来帧的上下文所包围。LSTM由2个832个单元构成的层和512维度的课题层所训练。向模型配置中增加额外的LSTM层被发现并没有帮助[3]。LSTM的输入是一个单独的40维度特征,LSTM每次经过20步被展开,输出延迟5帧。
表1 DNN, CNN, LSTM基准
Method |
WER |
DNN |
18.4 |
CNN |
18.0 |
LSTM |
18.0 |
-
- CNN LSTM
在本节,我们将分析在LSTM层前加入CNN层后的影响。为了去表达CNNs优于DNNs,我们也将展示在LSTM层前加入DNN层后的实验结果。表2对CNNs和DNNs进行了比较,即通过向CNN和DNN模型输入不同数量的左上下文(即l)。值得注意的是,对于CNNs和DNNs,获得最好结果的输入变量均是输入一个10帧的左输入上下文。一个更大的背景下可能会损害20个性能,可能是因为LSTM每隔20时间步才被展开,因此LSTM关于所有上下文的处理过程是40时间步骤。同时需要注意的是,即使将其与LSTM层相结合,CNNs仍然优于DNNs[2]。
表2 WER, CNN LSTM vs, DNN LSTM
Input Context |
# Steps Unroll |
WER CNN |
WER DNN |
l=0,r=0 |
20 |
17.8 |
18.2 |
l=10,r=0 |
20 |
17.6 |
18.2 |
l=20,r=0 全文共11053字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[11766],资料为PDF文档或Word文档,PDF文档可免费转换为Word |
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。