基于跨层连接注意力的语音识别网络、方法、设备及介质与流程

文档序号:29695997发布日期:2022-04-16 13:02阅读:143来源:国知局
基于跨层连接注意力的语音识别网络、方法、设备及介质与流程

1.本发明属于语音识别技术领域,尤其涉及一种基于跨层连接注意力的语音识别网络、方法、设备及存储介质。


背景技术:

2.随着近几年深度学习技术的快速起势,语音识别技术的发展速度达到了新的高度,尤其是端到端的语音识别技术成为了近几年研究的热点问题。端到端的语音识别系统将声学模块、语言模块、发音词典融合为一个深度神经网络结构,使得模型更为简洁并更加有利于参数的优化。端到端的语音识别系统主要分为基于ctc(graves, alex, et al. "connectionist temporal classification: labelling unsegmented sequence data with recurrent neural networks." proceedings of the 23rd international conference on machine learning. 2006.)的神经网络结构、rnn transducer(graves, alex, abdel-rahman mohamed, and geoffrey hinton. "speech recognition with deep recurrent neural networks." 2013 ieee international conference on acoustics, speech and signal processing. ieee, 2013.)结构和基于注意力机制的编解码器(chan, william, et al. "listen, attend and spell." arxiv preprint arxiv:1508.01211 (2015).)结构。transformer(vaswani, ashish, et al. "attention is all you need." advances in neural information processing systems. 2017.)是一种基于自注意力机制的编解码器结构,最早在机器翻译领域被提出,近些年在语音识别领域也取得了突出的效果。transformer结构有效的关键因素在于多头自注意力机制,多头自注意力会计算生成注意图来表示输入序列中每个特征之间的相关依赖性强度。因此,注意力图的有效性在很大程度上决定了transformer的效果。然而近期很多相关研究表明,传统transformer的注意力图不足以表示更精确的上下文关系。为了更好的捕获上下文关系,conformer(gulati, anmol, et al. "conformer: convolution-augmented transformer for speech recognition." arxiv preprint arxiv:2005.08100 (2020).)在自注意力层后面增加了卷积神经网络层以增强网络对局部信息的学习,然而这种方式并没有直接对注意力图进行优化,并且额外增加的卷积神经网络层带来了参数量的增加。xu等人的方法(xu, menglong, shengqiang li, and xiao-lei zhang. "transformer-based end-to-end speech recognition with local dense synthesizer attention." icassp 2021-2021 ieee international conference on acoustics, speech and signal processing (icassp). ieee, 2021.)则直接通过两层前馈神经网络直接生成注意力图,但是这种通过固定参数生成注意力图的方式不如由注意力机制自适应生成的方式鲁棒性更强。


技术实现要素:

3.本发明的目的在于提供一种基于跨层连接注意力的语音识别网络、方法、设备及存储介质,旨在解决由于现有技术中基于transformer的语音识别系统存在的注意力图不
够有效、不能精准地表示输入特征上下文关系的问题。
4.一方面,本发明提供一种基于跨层连接注意力的语音识别网络,所述语音识别网络基于transformer的编码器-解码器结构构建,所述语音识别网络的transformer编码器包含多个编码层,相邻所述编码层之间连接有跨层连接模块,所述编码层用于在生成注意图时通过所述跨层连接模块学习前一编码层的中间注意力图的信息。
5.具体地,每个所述编码层包括注意力图生成模块,所述编码层的注意力图生成模块用于通过所述跨层连接模块学习前一编码层的中间注意力图的卷积归纳偏置,基于所述卷积归纳偏置、该编码层的中间注意力图以及预设参数,利用softmax函数得到该编码层的注意力图,每个所述编码层的中间注意力图为该编码层的注意力图生成模块在softmax函数之前的中间输出。
6.优选地,所述跨层连接模块为一个卷积核大小为的二维卷积层。
7.优选地,所述语音识别网络包括依次连接的下采样层、所述transformer编码器、transformer解码器和softmax分类层,所述transformer编码器包括12层所述编码层,相邻所述编码层之间连接有所述跨层连接模块,所述transformer解码器包括6层解码层。
8.另一方面,本发明提供了一种基于以上所述语音识别网络的语音识别方法,所述方法包括:对待识别语音进行预处理,得到所述待识别语音的语音特征;将所述语音特征输入到训练好的所述语音识别网络,得到语音识别结果。
9.优选地,所述预处理包括倒谱均值方差归一化操作,所述语音特征包括80维的fbank特征和3维音调特征,所述语音识别网络中的transformer解码器采用束宽为5的集束搜索算法进行解码,以得到所述语音识别结果。
10.具体地,所述方法还包括:获取训练集;对所述训练集中的语音进行预处理,得到每个语音的语音特征;基于所述每个语音的语音特征,对所述语音识别网络进行训练,得到训练好的所述语音识别网络。
11.优选地,训练所述述语音识别网络使用的损失函数为交叉熵损失函数,对所述语音识别网络进行训练的步骤之前,包括:对所述语音特征进行增强处理,以根据增强后的语音特征对所述语音识别网络进行训练,所述增强处理包括速度扰动和specaugment处理。
12.另一方面,本发明还提供了一种语音识别设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
13.另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
14.本发明语音识别网络基于transformer的编码器-解码器结构构建,该语音识别网络的transformer编码器包含多个编码层,相邻编码层之间连接有跨层连接模块,编码层用于在生成注意图时通过跨层连接模块学习前一编码层的中间注意力图的信息,从而使得每个编码层所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音
识别网络在增加了几乎可以忽视的参数量的情况下,其语音识别准确率得到显著提升。
附图说明
15.图1是本发明实施例一提供的基于跨层连接注意力的语音识别网络的结构示意图;图2是本发明实施例二提供的基于跨层连接注意力的语音识别网络的网络训练方法的实现流程图;图3是本发明实施例三提供的基于跨层连接注意力的语音识别网络的语音识别方法的实现流程图;图4a是本发明实施例四提供的不同下基于跨层连接注意力的语音识别网络在验证集上的字符错误率表现;图4b是本发明实施例四提供的不同模型下的注意力图的可视化效果图;以及图5是本发明实施例五提供的语音识别设备的结构示意图。
具体实施方式
16.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
17.以下结合具体实施例对本发明的具体实现进行详细描述:实施例一:图1为本发明实施例一提供的基于跨层连接注意力的语音识别网络的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:本发明实施例提供的基于跨层连接注意力的语音识别网络,基于transformer的编码器-解码器结构构建,该语音识别网络1的transformer编码器10包含多个编码层101,如图1所示,该语音识别网络1的相邻编码层101之间连接有跨层连接模块102,编码层101用于在生成注意图时通过跨层连接模块102学习前一编码层的中间注意力图的信息,从而使得每个编码层101所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音识别网络在增加了几乎可以忽视的参数量的情况下,语音识别准确率得到显著提升。
18.优选地,该语音识别网络包括依次连接的下采样层、transformer编码器、transformer解码器和softmax分类层,该transformer编码器包括12层编码层,相邻编码层之间连接有跨层连接模块,该transformer解码器包括6层解码层,以通过实验数据确定该语音识别网络中编码器和解码器的具体组成。其中,下采样层用于对输入的语音特征下采样,以缩小语音特征的长度。具体地,下采样层通常可由2个步长为2的卷积层组成。
19.具体地,每个编码层包括注意力图生成模块,每个编码层的注意力图生成模块用于通过跨层连接模块学习前一编码层的中间注意力图的卷积归纳偏置,基于该卷积归纳偏置、该编码层的中间注意力图以及预设参数,利用softmax函数得到该编码层的注意力图,每个编码层的中间注意力图为该编码层的注意力图生成模块在softmax函数之前的中间输出。具体地,该预设参数为该编码层的中间注意力图的权重参数,该卷积归纳偏置的权重参
数和该编码层的中间注意力图的权重参数之和为1。优选地,该预设参数为0.8,以根据实验结果设置上述预设参数。
20.优选地,每个跨层连接模块为一个卷积核大小为的二维卷积层,以根据实验效果设置卷积核的大小,使得语音识别网络的性能最优。
21.若所述跨层连接模型为一个卷积层,则对于除第一个编码层之外的任一编码层的注意力图生成模块,其生成的注意力图计算方式如下:生成的注意力图计算方式如下:其中,a表示注意力图生成模块生成的注意力图,表示函数,函数用来对注意力分数进行归一化并让其和为1,以防止出现梯度消失问题,表示上述预设参数,表示上述卷积归纳偏置,表示该编码层的中间注意力图,表示该编码层的前一编码层的中间注意力图,表示卷积操作。
22.具体实施中,每个编码层可包括注意力图生成模块、值预测模块和前馈神经网络模块。其中,注意力图生成模块通常采用多头自注意力机制,通过向量点积的方式生成用来表征上下文关系的注意力图,注意力图的计算方式如下:注意力图的计算方式如下:注意力图的计算方式如下:注意力图的计算方式如下:其中,、表示第个注意力头对应的查询向量和键向量,,表示线性投影层的参数,表示模型维度,表示第个注意力头,取,表示注意力头的数量,表示第个注意力头学习到的中间注意力图,表示缩放因子,表示拼接操作,最终的中间注意力图由每个注意力头得到的中间注意力图拼接而成,之后,基于当前层及前一层的中间特征图,利用函数即可得到注意力图。
23.在得到注意力图之后,值预测模块进行如下计算:值预测模块进行如下计算:值预测模块进行如下计算:其中,表示第个注意力头对应的值向量,是线性映射层的参数,由多个注意力头的拼接得到,值预测模块的输出由和注意力图点乘后,经过参数为的线性层得到。
24.最后,整个编码层的输出由值预测模块的输出经过前馈神经网络模块后得到,其中,前馈神经网络模块由两层中间带有relu激活函数的线性层组成,整个编码层的输出计算过程如下:其中,表示编码层的输出,,,,,代表中间特征维度。
25.在本发明实施例中,语音识别网络基于transformer的编码器-解码器结构构建,该语音识别网络的transformer编码器包含多个编码层,相邻编码层之间连接有跨层连接模块,编码层用于在生成注意图时通过跨层连接模块学习前一编码层的中间注意力图的信息,从而使得每个编码层所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音识别网络在增加了几乎可以忽视的参数量的情况下,其语音识别准确率得到显著提升。
26.实施例二:图2示出了本发明实施例二提供的基于跨层连接注意力的语音识别网络的网络训练方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:在步骤s201中,获取训练集。
27.本发明实施例适用于语音识别设备,该语音识别设备可以为手机、平板电脑、可穿戴设备、智能音箱、车载设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)等设备,本技术实施例对语音识别设备的具体类型不作任何限制。
28.在本发明实施例中,上述的训练集可基于aishell-1(bu, hui, et al. "aishell-1: an open-source mandarin speech corpus and a speech recognition baseline." 2017 20th conference of the oriental chapter of the international coordinating committee on speech databases and speech i/o systems and assessment (o-cocosda). ieee, 2017.)数据集、magicdata数据集等得到。
29.在步骤s202中,对训练集中的语音进行预处理,得到每个语音的语音特征。
30.在本发明实施例中,可以先使用kaldi语音工具包等对音频进行处理,得到由80维fbank特征和3维音调特征组成的语音特征。语音的帧长度和时间位移可设置为25ms和10ms,然后可使用全局倒谱均值方差归一化操作(cmvn)对上述语音特征进行归一化,得到最终的语音特征。当然,上述的语音特征也可以为mfcc(mel frequency cepstrum coef

cient,mel频率倒谱系数)特征等,在此不作限定。
31.在将上述语音特征输入到语音识别网络之前,优选地,对该语音特征进行增强处理,以根据增强后的语音特征对该语音识别网络进行训练,从而提高了语音识别网络的鲁棒性。其中,该增强处理包括速度扰动和specaugment处理。
32.在步骤s203中,基于每个语音的语音特征,对语音识别网络进行训练,得到训练好的语音识别网络。
33.在本发明实施例中,该语音识别网络为实施例一提供的基于跨层连接的语音识别网络。训练语音识别网络使用的损失函数可以为交叉熵损失函数。当然,也可以采用由时序
分类损失(ctc)函数和交叉熵损失(ce)函数构成的损失函数对语音识别网络进行联合训练。具体地,transformer编码器可采用连接时序分类损失,transformer解码器可采用交叉熵损失,并分别为两种损失分配相应的参数。
34.在本发明实施例中,获取训练集,对训练集中的语音进行预处理,得到每个语音的语音特征,基于每个语音的语音特征,对语音识别网络进行训练,得到训练好的语音识别网络,从而实现了基于跨层连接注意力的语音识别网络的训练。
35.实施例三:图3示出了本发明实施例三提供的基于跨层连接注意力的语音识别方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:在步骤s301中,对待识别语音进行预处理,得到待识别语音的语音特征。
36.在本发明实施例中,可以先使用kaldi语音工具包等对音频进行处理,得到由80维fbank特征和3维音调特征组成的语音特征。语音的帧长度和时间位移可设置为25ms和10ms,然后可使用全局倒谱均值方差归一化操作(cmvn)对语音特征进行归一化,以提高语音特征的抗噪鲁棒性。当然,上述的语音特征也可以为mfcc(melfrequencycepstrumcoef

cient,mel频率倒谱系数)特征等,在此不作限定。
37.在步骤s302中,将语音特征输入到训练好的语音识别网络,得到语音识别结果。
38.在本发明实施例中,可采用实施例二描述的方法得到训练好的语音识别网络。transformer解码器采用集束搜索算法进行解码时,束宽可根据实际需要设置,优选地,该语音识别网络中的transformer解码器采用束宽为5的集束搜索算法进行解码,以根据实验结果确定集束搜索算法的束宽,以得到较好的语音识别结果。
39.在本发明实施例中,对待识别语音进行预处理,得到待识别语音的语音特征,将语音特征输入到训练好的语音识别网络,得到语音识别结果,其中,该语音识别网络基于transformer的编码器-解码器结构构建,语音识别网络的相邻编码层之间连接有跨层连接模块,编码层用于在生成注意图时通过跨层连接模块学习前一编码层的中间注意力图的信息,从而使得每个编码层所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音识别网络在增加了几乎可以忽视的参数量的情况下,语音识别准确率得到显著提升。
40.实施例四:本实施例结合实验例对上述的基于跨层连接注意力的语音识别网络进行进一步地验证说明。
41.(1)本实验例使用的数据集aishell-1(bu,hui,etal."aishell-1:anopen-sourcemandarinspeechcorpusandaspeechrecognitionbaseline."201720thconferenceoftheorientalchapteroftheinternationalcoordinatingcommitteeonspeechdatabasesandspeechi/osystemsandassessment(o-cocosda).ieee,2017.)数据集共包含智能家居、无人驾驶、工业生产等11个场景。录制过程在安静室内环境中进行,同时使用3种不同设备进行采集:高保真麦克风(44.1khz,16-bit);android系统手机(16khz,16-bit);ios系统手机(16khz,16-bit)。数据集共有约400名来自中国不同区域的400名演讲者参与录制,约包含150小时训练集,10小时验证集和5小时测试集。
42.magicdata数据集共包含互动问答、音乐搜索、sns信息、家庭指挥和控制等多个场景。录制过程在安静的室内环境中进行,约有1080名来自中国不同口音区域的发言人参与录制,约包含710小时训练集,15小时验证集和30小时测试集。
43.(2)实验描述本实验例中的实验和测试均使用基于pytorch的深度学习框架。基于跨层连接注意力的语音识别网络由12层编码层和6层解码层组成。所有的多头自注意力均设置头为4。模型维度为256,跨层连接模块中卷积层的卷积核大小为,前馈神经网络模块中间特征维度为2048。在训练中采用adam(kingma, diederik p., and jimmy ba. "adam: a method for stochastic optimization." arxiv preprint arxiv:1412.6980 (2014).)优化算法进行模型参数优化。具体地,预热步数设置为25000,。在aishell-1数据集上总的迭代轮数为50,magicdata数据集上总迭代轮数为30。在训练过程中,根据输入音频序列的长度动态确定批量大小,以提高训练效率。本实验例中使用字符错误率(cer)作为衡量不同方法性能优劣的评估指标。所有的实验都是在一台含有3块nvidia geforce rtx 3090 gpu的机器上完成。
44.(3)实验结果为确定超参数对识别准确率的影响,首先在aishell-1数据集上试验了在不同下实施例一提供的语音识别网络在验证集上的字符错误率表现,并选取cer最低时的用于后续试验。将从0.6到1以0.1为间隔进行取值,当等于1时等同于普通的transformer结构。试验结果如图4a所示,当等于0.8时,基于跨层连接注意力的语音识别网络在aishell-1验证集上表现出了最低的字符错误率。因此,后续试验均取值为0.8。
45.表1:不同模型在aishell-1数据集上的实验效果对比如表1所示,本实验例将基于跨层连接注意力的语音识别网络与aishell-1数据集上的其他先进方法进行了比较。本实验例中语音识别的基准模型是在espnet语音工具包上实现的transformer语音识别模型(表1中的“transformer(我们实现)”行),除了没有使用跨层连接注意力机制外,其他所有设置都与本发明的跨层连接注意力transformer相同。在没有额外语言模型的情况下,其在aishell-1测试集上字符错误率达到6.78%,其识别效果优于tdnn-lfmmi(bu, hui, et al. "aishell-1: an open-source mandarin speech corpus and a speech recognition baseline." 2017 20th conference of the oriental chapter of the international coordinating committee on speech databases and speech i/o systems and assessment (o-cocosda). ieee, 2017.),相
对降低了11.02%。由于跨层连接注意力所带来的注意力图有效性的提升,实施例一提出的语音识别网络(表1中的“跨层连接注意力transformer”行)相比上述基准模型字符错误率显著降低(测试集cer从6.78%降至6.46%),相对降低了4.72%。
46.表2:不同模型在magicdata数据集上的实验效果对比magicdata数据集上的结果如表2所示。实施例一提供的语音识别网络实现了5.27%的验证集cer和5.61%的测试集cer。与上述基准模型相比,实施例一提供的语音识别网络可以在测试集上实现相对2.94%的cer降低。
47.如表3所示,跨层连接模块对于实施例一提供的语音识别网络实现良好的性能至关重要。当移除卷积模块或用的卷积核替代卷积核时,性能会明显下降。的卷积核相比较上述基准模型也有明显的字符错误率降低,但是会造成较大的参数量增加。整体来说,卷积模块只增加了很少的参数,但带来了字符错误率的显著降低。
48.表3:跨层连接模块对于实施例一提供的语音识别网络的性能影响此外,本实验例还对注意力图进行了可视化分析。图4b中分别展示了上述基准模型(a图)和实施例一描述的语音识别网络(b图)的最低层(第1层)、中间层(第6层)和最高层(第12层)的注意力图。由图可知,实施例一描述的语音识别网络的最高层的注意力图明显得到改善。此外,可以看到上述基准模型(传统transformer模型)的最低层没有成功地捕获输入特征不同时刻之间的依赖关系,其注意力图非常混乱。相比之下,实施例一描述的语音识别网络的最低层已经可以很好的进行局部信息的学习,从而为后续层中的注意力图预测提供更好的基础。同样,实施例一描述的语音识别网络的中间编码层也更倾向于关注局部信息。由实验结果可知,实施例一描述的语音识别网络正确地识别了这条输入的语音,但上述基准模型却产生了一些错误。
49.实施例五:图5示出了本发明实施例五提供的语音识别设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
50.本发明实施例的语音识别设备5包括处理器50、存储器51以及存储在存储器51中并可在处理器50上运行的计算机程序52。该处理器50执行计算机程序52时实现上述各方法实施例中的步骤,例如图3所示的步骤s301至s302。或者,处理器50执行计算机程序52时实现上述实施例一描述的语音识别网络的功能,例如图1所示基于跨层连接注意力的语音识
别网络的功能。
51.在本发明实施例中,语音识别网络基于transformer的编码器-解码器结构构建,该语音识别网络的transformer编码器包含多个编码层,相邻编码层之间连接有跨层连接模块,编码层用于在生成注意图时通过跨层连接模块学习前一编码层的中间注意力图的信息,从而使得每个编码层所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音识别网络在增加了几乎可以忽视的参数量的情况下,其语音识别准确率得到显著提升。
52.实施例六:在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法实施例中的步骤,例如图3所示的步骤s301至s302。或者,该计算机程序被处理器执行时实现实施例一描述的语音识别网络的功能,例如图1所示基于跨层连接注意力的语音识别网络的功能。
53.在本发明实施例中,语音识别网络基于transformer的编码器-解码器结构构建,该语音识别网络的transformer编码器包含多个编码层,相邻编码层之间连接有跨层连接模块,编码层用于在生成注意图时通过跨层连接模块学习前一编码层的中间注意力图的信息,从而使得每个编码层所产生的注意力图能够更加精准地对上下文的依赖关系进行表示,进而使得语音识别网络在增加了几乎可以忽视的参数量的情况下,其语音识别准确率得到显著提升。
54.本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,rom/ram、磁盘、光盘、闪存等存储器。
55.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1