语音识别模型的训练方法、语音识别方法、装置和设备转让专利

申请号 : CN202110821913.X

文献号 : CN113380239B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵情恩

申请人 : 北京百度网讯科技有限公司

摘要 :

一种语音识别方法、装置和设备。本公开提供了一种语音识别模型的训练方法,涉及人工智能领域,尤其涉及语音识别和自然语言处理领域。具体实现方案为:上述语音识别模型包括流式语音识别模型和非流式语音识别模型,上述方法包括:使用上述流式语音识别模型,基于样本语音的特征序列以及上述特征序列中各个特征的上文特征生成第一文本;使用上述非流式语音识别模型,基于上述样本语音的特征序列以及上述特征序列中各个特征的上文特征和下文特征生成第二文本;基于上述第一文本

权利要求 :

1.一种语音识别模型的训练方法,所述语音识别模型包括流式语音识别模型和非流式语音识别模型,所述方法包括:使用所述流式语音识别模型,基于样本语音的特征序列以及所述特征序列中各个特征的上文特征生成第一文本;

使用所述非流式语音识别模型,基于所述样本语音的特征序列以及所述特征序列中各个特征的上文特征和下文特征生成第二文本;

基于所述第一文本计算第一损失,并基于所述第二文本计算第二损失;以及根据所述第一损失和所述第二损失调整所述流式语音识别模型的参数。

2.根据权利要求1所述的方法,其中,所述根据所述第一损失和所述第二损失调整所述流式语音识别模型包括:计算所述第一损失和所述第二损失之间的差异;以及根据所述差异,调整所述流式语音识别模型的参数。

3.根据权利要求2所述的方法,其中,所述计算所述第一损失和所述第二损失之间的差异包括:计算所述第一损失和所述第二损失之间的相对熵。

4.根据权利要求1所述的方法,还包括:生成所述样本语音的第一语音频谱图;

选取所述第一语音频谱图中的至少一个目标区域;

屏蔽所述至少一个目标区域,得到处理后的第一语音频谱图;以及对所述处理后的第一语音频谱图进行特征提取,得到所述样本语音的特征序列。

5.根据权利要求4所述的方法,其中,所述屏蔽所述至少一个目标区域,得到处理后的第一语音频谱图包括:将所述至少一个目标区域的能量值设置为预设值。

6.一种语音识别方法,包括:

提取待识别语音的特征序列;以及

将所述待识别语音的特征序列输入到语音识别模型,得到所述待识别语音的文本识别结果;

其中,所述语音识别模型是根据权利要求1至5中任一项所述的方法训练得到的。

7.根据权利要求6所述的方法,其中,所述提取待识别语音的特征序列包括:生成所述待识别语音的第二语音频谱图;

对所述第二语音频谱图进行特征提取,得到所述待识别语音的特征序列。

8.一种语音识别模型的训练装置,所述语音识别模型包括流式语音识别模型和非流式语音识别模型,所述装置包括:第一生成模块,用于使用所述流式语音识别模型,基于样本语音的特征序列以及所述特征序列中各个特征的上文特征生成第一文本;

第二生成模块,用于使用所述非流式语音识别模型,基于所述样本语音的特征序列以及所述特征序列中各个特征的上文特征和下文特征生成第二文本;

计算模块,用于基于所述第一文本计算第一损失,并基于所述第二文本计算第二损失;

以及

调整模块,用于根据所述第一损失和所述第二损失调整所述流式语音识别模型的参数。

9.根据权利要求8所述的装置,其中,所述调整模块包括:计算单元,用于计算所述第一损失和所述第二损失之间的差异;以及调整单元,用于根据所述差异,调整所述流式语音识别模型的参数。

10.根据权利要求9所述的装置,其中,所述计算单元还用于计算所述第一损失和所述第二损失之间的相对熵。

11.根据权利要求8所述的装置,还包括:第三生成模块,用于生成所述样本语音的第一语音频谱图;

选取模块,用于选取所述第一语音频谱图中的至少一个目标区域;

屏蔽模块,用于屏蔽所述至少一个目标区域,得到处理后的第一语音频谱图;以及第一提取模块,用于对所述处理后的第一语音频谱图进行特征提取,得到所述样本语音的特征序列。

12.根据权利要求11所述的装置,所述屏蔽模块用于将所述至少一个目标区域的能量值设置为预设值。

13.一种语音识别装置,包括:

第二提取模块,用于提取待识别语音的特征序列;以及识别模块,用于将所述待识别语音的特征序列输入到语音识别模型,得到所述待识别语音的文本识别结果;

其中,所述语音识别模型是根据权利要求1至5中任一项所述的方法训练得到的。

14.根据权利要求13所述的装置,所述第二提取模块包括:生成单元,用于生成所述待识别语音的第二语音频谱图;

提取单元,用于对所述第二语音频谱图进行特征提取,得到所述待识别语音的特征序列。

15.一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7中任一项所述的方法。

16.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1至7中任一项所述的方法。

说明书 :

语音识别模型的训练方法、语音识别方法、装置和设备

技术领域

[0001] 本公开涉及人工智能领域,尤其涉及语音识别和自然语言处理领域。更具体地,本公开提供了一种语音识别模型的训练方法、语音识别方法、装置和设备。

背景技术

[0002] 语音识别可以采用流式语音识别模型,也可以采用非流式语音识别模型。在处理音频流的过程中,流式语音识别模型支持实时返回识别结果,而非流式语音识别模型需要处理完整句后返回识别结果。

发明内容

[0003] 本公开提供了一种语音识别模型的训练方法、语音识别方法、装置、电子设备、存储介质以及计算机程序产品。
[0004] 根据第一方面,提供了一种语音识别模型的训练方法,上述语音识别模型包括流式语音识别模型和非流式语音识别模型,该方法包括:使用上述流式语音识别模型,基于样本语音的特征序列以及上述特征序列中各个特征的上文特征生成第一文本;使用上述非流式语音识别模型,基于上述样本语音的特征序列以及上述特征序列中各个特征的上文特征和下文特征生成第二文本;基于上述第一文本计算第一损失,并基于上述第二文本计算第二损失;以及根据上述第一损失和上述第二损失调整上述流式语音识别模型的参数。
[0005] 根据第二方面,提供了一种语音识别方法,该方法包括:提取待识别语音的特征序列;以及将上述待识别语音的特征序列输入到语音识别模型,得到上述待识别语音的文本识别结果;其中,上述语音识别模型是根据本公开提供的语音识别模型的训练方法训练得到的。
[0006] 根据第三方面,提供了一种语音识别模型的训练装置,上述语音识别模型包括流式语音识别模型和非流式语音识别模型,该装置包括:第一生成模块,用于使用上述流式语音识别模型,基于样本语音的特征序列以及上述特征序列中各个特征的上文特征生成第一文本;第二生成模块,用于使用上述非流式语音识别模型,基于上述样本语音的特征序列以及上述特征序列中各个特征的上文特征和下文特征生成第二文本;计算模块,用于基于上述第一文本计算第一损失,并基于上述第二文本计算第二损失;以及调整模块,用于根据上述第一损失和上述第二损失调整上述流式语音识别模型的参数。
[0007] 根据第四方面,提供了一种语音识别装置,该装置包括:第二提取模块,用于提取待识别语音的特征序列;以及识别模块,用于将上述待识别语音的特征序列输入到语音识别模型,得到上述待识别语音的文本识别结果;其中,上述语音识别模型是根据本公开提供的语音识别模型的训练方法训练得到的。
[0008] 根据第五方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行根据本公开提供的方法。
[0009] 根据第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行根据本公开提供的方法。
[0010] 根据第七方面,提供了一种计算机程序产品,包括计算机程序,上述计算机程序在被处理器执行时实现根据本公开提供的方法。
[0011] 应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

[0012] 附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0013] 图1是根据本公开的一个实施例的语音识别模型训练方法的流程图;
[0014] 图2是根据本公开的另一个实施例的语音识别模型的训练方法的流程图;
[0015] 图3A是根据本公开的一个实施例的处理后的第一语音频谱图的示意图;
[0016] 图3B是根据本公开的另一个实施例的处理后的第一语音频谱图的示意图;
[0017] 图4A是根据本公开一个实施例的语音识别模型的示意图;
[0018] 图4B是根据本公开一个实施例的语音识别模型的原理图;
[0019] 图5是根据本公开一个实施例的语音识别方法的流程图;
[0020] 图6是根据本公开另一个实施例的语音识别方法的流程图;
[0021] 图7是根据本公开的一个实施例的语音识别模型的训练装置的框图;
[0022] 图8是根据本公开的另一个实施例的语音识别装置的框图;以及图9示出了可以用来实施本公开的实施例的示例电子设备的示意性框图。

具体实施方式

[0023] 以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0024] 流式语音识别模型与非流式语音识别模型具有不同的模型结构。流式语音识别模型与非流式语音识别模型可以处理的音频数据也有所不同。
[0025] 非流式语音识别模型可以处理非流式语音,比如整句的音频数据,根据较多的信息得出识别结果。非流式语音识别模型可以包括双向LSTM(Long‑Short Term Memory,长短期记忆模型)、全局注意力机制模型以及CNN(Convolutional Neural Network,卷积神经网络)等模型。
[0026] 流式语音识别模型可以处理流式语音,比如存在间断的语音片段,可以根据较少的信息得出语音识别结果。流式语音识别模型可以通过将历史信息保存在缓存中或者限定使用局部少量的历史信息的方式减少输出识别结果所需的时间。
[0027] 由于流式语音识别模型的结构与非流式语音识别模型的结构有较大的差别,流式语音识别模型与非流式语音识别模型是各自训练的,因此需要较高的维护成本。训练流式语音识别模型与训练非流式语音识别模型时,可以采用同样的原始训练样本。例如,可以将整句的语音样本输入流式语音识别模型中,输出时进行分片流式解码,但这样训练和测试的方式不一致,没有进一步挖掘模型的价值,识别效果无法进一步提高。又例如,可以将整句的语音样本分成若干个语音片段输入流式语音识别模型,输出时进行分片流式解码。但是这种训练方式采用的是片段的信息,没有充分利用整句的语音样本的全部信息,导致识别结果难以进一步提高。
[0028] 本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
[0029] 图1是根据本公开的一个实施例的语音识别模型训练方法的流程图。
[0030] 如图1所示,上述语音识别模型可以包括流式语音识别模型和非流式语音识别模型,该语音识别模型训练方法100可以包括操作S110~操作S140。
[0031] 在操作S110,使用上述流式语音识别模型,基于样本语音的特征序列以及上述特征序列中各个特征的上文特征生成第一文本。
[0032] 根据本公开实施例,针对上述特征序列中任一个特征,上文特征可以是在上述任一个特征之前的至少一个特征。
[0033] 例如,第t时刻的特征的上文特征可以是在第t时刻前的M个特征数据,M≥1。在一个示例中,第5时刻的特征的上文特征可以是第4时刻的特征。在一个示例中,第5时刻的特征的上文特征可以是第2时刻的特征、第3时刻的特征及第4时刻的特征。其中,第5时刻可以是第5秒,也可以是第5毫秒。
[0034] 在操作S120,使用上述非流式语音识别模型,基于上述样本语音的特征序列以及上述特征序列中各个特征的上文特征和下文特征生成第二文本。
[0035] 根据本公开实施例,针对上述特征序列中任一个特征,下文特征可以是在上述任一个特征之后的至少一个特征。
[0036] 例如,第t时刻的特征的下文特征可以是在第t时刻后的N个特征数据,N≥1。在一个示例中,第5时刻的特征的下文特征可以是第6时刻的特征,在一个示例中,第5时刻的特征的下文特征可以是第6时刻的特征、第7时刻的特征及第8时刻的特征。其中,第5时刻可以是第5秒,也可以是第5毫秒。
[0037] 例如,计算第t时刻的模型输出时,需要第t时刻的特征、第t时刻的上文特征及第t时刻的下文特征。在一个示例中,计算第5时刻的模型输出,需要第5时刻的特征,第2时刻的特征、第3时刻的特征及第4时刻的特征,以及第6时刻的特征、第7时刻的特征及第8时刻的特征。
[0038] 在操作S130,基于上述第一文本计算第一损失,并基于上述第二文本计算第二损失。
[0039] 根据本公开实施例,可以根据第一文本与样本语音的文本标注计算第一损失,以及可以根据第二文本与样本语音的文本标注计算第一损失。
[0040] 例如,样本语音的文本标注为“hello”,第一文本为“aello”,第二文本为“helle”,进而可以计算第一损失、第二损失。
[0041] 在操作S140,根据上述第一损失和上述第二损失调整上述流式语音识别模型的参数。
[0042] 根据本公开实施例,可以计算上述第一损失和上述第二损失之间的差异。
[0043] 例如,可以根据第一损失和第二损失进行任意数学运算,得到二者的差异。在一个示例中,可以计算损失第一损失和损失第二损失的相对熵(Relative Entropy;又称为Kullback‑Leibler Divergence)。
[0044] 根据本公开实施例,可以根据上述差异,调整上述流式语音识别模型的参数。
[0045] 例如,可以根据第一损失和第二损失进行任意数学运算得到的差异,调整流式语音识别模型的参数,使得差异小于预设阈值。在一个示例中,可以调整流式语音识别模型的参数,使得第一损失和第二损失的相对熵小于预设阈值。
[0046] 通过本公开实施例,针对不同长度的音频输入,都能够有效地学习样本语音数据,提升了模型的整体性能。相对于分别训练流式语音识别模型和非流式语音识别模型的传统方式,降低了模型训练的复杂度,节约了训练成本。
[0047] 图2是根据本公开的另一个实施例的语音识别模型的训练方法的流程图。
[0048] 如图2所示,该语音识别模型的训练方法200可以在例如图1的操作S110之前执行,提取样本语音的特征序列。下面将参考下述操作S201~操作S204进行详细说明。
[0049] 在操作S201,生成上述样本语音的第一语音频谱图。
[0050] 根据本公开实施例,可以对样本语音进行去噪处理后,生成样本语音的第一语音频谱图。
[0051] 例如,可以去除样本语音中的环境噪音、忙音、彩铃声等,生成较为干净的去噪后的样本语音。再根据去噪后的样本语音,生成第一语音频谱图。
[0052] 根据本公开实施例,可以调整样本语音的语速。
[0053] 例如,针对语速较快的样本语音,可以降低语速。在一个示例中,可以将语速调整为原来的90%。
[0054] 例如,针对语速较慢的样本语音,可以加快语速。在一个示例中,可以将语速调整为原来的110%。
[0055] 在操作S202,选取上述第一语音频谱图中的至少一个目标区域。
[0056] 根据本公开实施例,目标区域可以是上述第一语音频谱图上的横向区域,也可以是上述第一语音频谱图上的纵向区域。
[0057] 例如,所选取的至少一个目标区域可以是在第一语音频谱图中随机选取的,也可以是按照预设尺寸要求来选取的。第一语音频谱图的轮廓是一个长为L、高为H的矩形。目标区域可以是一个或多个长为A、高为B的矩形,其中,B<A,A≤L;或者,目标区域为多个大小不同的矩形,这些矩形的长大于高。目标区域的长边可以与上述第一语音频谱图的轮廓的长边平行。在一个示例中,H>5B,共有3个目标区域,分别位于第一语音频谱图的上部、中部及下部。
[0058] 例如,第一语音频谱图的轮廓是一个长为L、高为H的矩形。目标区域可以是一个或多个长为C、高为D的矩形,其中,C<D,D≤H;或者,目标区域为多个大小不同的矩形,这些矩形的长小于高。目标区域的长边可以与上述第一语音频谱图的轮廓的长边平行。在一个示例中,L>5C,共有3个目标区域,分别位于第一语音频谱图的左部、中部及右部。
[0059] 在操作S203,屏蔽上述至少一个目标区域,得到处理后的第一语音频谱图。
[0060] 根据本公开实施例,可以将上述至少一个目标区域的能量值设置为预设值,进而屏蔽上述至少一个目标区域。
[0061] 例如,第一语音频谱图的轮廓是一个长为L、高为H的矩形。目标区域可以是一个或多个长为A、高为B的矩形,其中,B<A,A≤L。目标区域的长边可以与上述第一语音频谱图的轮廓的长边平行。其中,H>5B,且共有3个目标区域,分别位于第一语音频谱图的上部、中部及下部。在一个示例中,可以将位于第一语音频谱图中部的目标区域的能量设置为预设值,比如0。在一个示例中,可以将位于第一语音频谱图上部、中部及下部的目标区域的能量设置为预设值,比如0。
[0062] 例如,第一语音频谱图的轮廓是一个长为L、高为H的矩形。目标区域可以是一个或多个长为C、高为D的矩形,其中,C<D,D≤H。目标区域的长边可以与上述第一语音频谱图的轮廓的长边平行。其中,L>5C,且共有3个目标区域,分别位于第一语音频谱图的左部、中部及右部。可以将位于第一语音频谱图中部的目标区域的能量设置为预设值,比如0。也可以将位于第一语音频谱图左部、中部及右部的目标区域的能量设置为预设值,比如0。
[0063] 在操作S204,对上述处理后的第一语音频谱图进行特征提取,得到上述样本语音的特征序列
[0064] 例如,可以进行MFCC(Mel‑frequency Cepstral Coefficients,梅尔频率倒谱系数)特征提取,也可以进行FBank(Log‑mel Filter Bank,对数梅尔滤波器组)特征提取。
[0065] 根据本公开的实施例,在第一语音频谱图上屏蔽至少一个目标区域,则输入到语音识别模型中的部分特征被掩盖(mask),在训练过程中基于mask机制进行上下文特征的学习,能够提升特征的鲁棒性,进而提高语音识别模型的整体识别效果。
[0066] 图3A是根据本公开的一个实施例的处理后的第一语音频谱图的示意图。
[0067] 如图3A所示,该处理后的第一语音频谱图301上有3个被屏蔽的目标区域,分别为目标区域301、目标区域302及目标区域303。3个目标区域均为矩形,该矩形的长大于矩形的高。目标区域301位于处理后的第一语音频谱图301的上部,目标区域302位于处理后的第一语音频谱图301的中部,目标区域303位于处理后的第一语音频谱图301的下部。3个目标区域的能量值均为0。
[0068] 图3B是根据本公开的一个实施例的处理后的第一语音频谱图的示意图。
[0069] 如图3B所示,该处理后的第一语音频谱图301上有三个被屏蔽的目标区域,分别为目标区域304、目标区域305及目标区域306。3个目标区域均为矩形,该矩形的长小于矩形的高。目标区域304位于处理后的第一语音频谱图301的左部,目标区域305位于处理后的第一语音频谱图301的中部,目标区域306位于处理后的第一语音频谱图301的右部。3个目标区域的能量值均为0。
[0070] 图4A是根据本公开一个实施例的语音识别模型的示意图。
[0071] 如图4A所示,该语音处理模型可以包括编码器410和解码器420。
[0072] 编码器420以语音频谱图402的特征序列为输入,输出文本信息特征序列。其中,语音频谱图402是根据语音波形图401生成的。解码器420以文本信息特征序列为输入,输出文本403。语音频谱图402可以是例如图1或图2中的第一语音频谱图。
[0073] 图4B是根据本公开一个实施例的语音识别模型的原理图。
[0074] 编码器410包括流式语音识别模型的编码器,上述流式语音识别模型的编码器包括第一前馈层、第一卷积层、第二前馈层以及第一自注意力层。
[0075] 第一前馈层用于进行特征转换,以从语音频谱图402提取的第一特征序列4111为输入,输出第一转换特征序列4112,该第一转换特征序列4112内包括多个第一转换特征,比如5个第一转换特征。
[0076] 第一卷积层用于对特征进行高级映射,以第一转换特征序列4112为输入,输出卷积后的第一转换特征序列4113。卷积后的第一转换特征序列4113包括多个卷积后的第一转换特征,比如5个卷积后的第一转换特征。如图4B所示,卷积处理过程中,第一转换特征序列4112中,一个左侧的第一转换特征可以作为与之相邻的右侧的第一转换特征的上文特征。
第一卷积层可以基于上文特征和一个第一转换特征生成卷积后的第一转换特征。例如,左侧第1个第一转换特征可以作为左侧第2个第一转换特征的上文特征,进而第一卷积层可以基于二者生成卷积后的第一转换特征序列4113中的左侧第2个卷积后的第一转换特征。
[0077] 第二前馈层用户进行特征转换,以卷积后的第一转换特征序列4113为输入,输出第二转换特征序列4114。该第二转换特征序列4114内包括多个第二转换特征,比如5个第二转换特征。
[0078] 第一自注意力层用于计算各个特征的贡献度,以第二转换特征序列4114为输入,输出第一文本信息特征序列4115。如图4B所示,处理过程中,第二转换特征序列4114中任一个第二转换特征可以将其左侧的第二转换特征作为上文特征。例如,可以将左侧第1个第二转换特征至左侧第3个第二转换特征作为左侧第4个第二转换特征的上文特征,进而第一自注意力层可以基于前述4个第二转换特征生成第一文本信息特征序列4115中的左侧第4个第一文本信息特征。
[0079] 本领域技术人员可以理解,生成左侧第1个第一文本信息特征时,只基于左侧第1个第二转换特征生成。因为左侧第1个第二转换特征的左侧没有特征。
[0080] 解码器420包括流式语音识别模型的解码器。流式语音识别模型的解码器可以包括至少一个transformer层和至少一个注意力层,比如6个transformer层和4个多头注意力(Multi‑Head Attention)层。流式语音识别模型的解码器以第一文本信息特征序列4115为输入,输出第一文本4031。其中,流式语音识别模型的解码器的transformer层和注意力层对第一文本信息特征序列4115进行处理,得到第一解码特征序列4211,并基于第一解码特征序列4211输出第一文本4031。
[0081] 编码器410包括非流式语音识别模型的编码器,上述非流式语音识别模型的编码器包括第三前馈层、第二卷积层、第四前馈层以及第二自注意力层。
[0082] 第三前馈层用于进行特征转换,以从语音频谱图402提取的第二特征序列4121为输入,输出第三转换特征序列4122,该第三转换特征序列4122内包括多个第三转换特征,比如5个第三转换特征。
[0083] 第二卷积层用于对特征进行高级映射,以第三转换特征序列4122为输入,输出卷积后的第二转换特征序列4123。卷积后的第三转换特征序列4123包括多个卷积后的第三转换特征,比如5个卷积后的第三转换特征。如图4B所示,卷积处理过程中,第三转换特征序列4122中,一个左侧的第三转换特征可以作为与之相邻的右侧的第三转换特征的上文特征,一个右侧的第三转换特征可以作为与之相邻的左侧的第三转换特征的下文特征。第二卷积层可以基于一个第三转换特征、该第三转换特征的上文特征和该第三转换特征的下文特征生成相应的卷积后的第三转换特征。例如,左侧第1个第三转换特征可以作为左侧第2个第三转换特征的上文特征,左侧第3个第三转换特征可以作为左侧第2个第三转换特征的下文特征,进而第二卷积层可以基于这3个特征生成卷积后的第三转换特征序列4123中的左侧第2个卷积后的第三转换特征。
[0084] 第四前馈层用户进行特征转换,以卷积后的第三转换特征序列4123为输入,输出第四转换特征序列4124。该第四转换特征序列4124内包括多个第四转换特征,比如5个第四转换特征。
[0085] 第二自注意力层用于计算各个特征的贡献度,以第四转换特征序列4124为输入,输出第二文本信息特征序列4125。如图4B所示,处理过程中,第二转换特征序列4124中,一个第四转换特征可以将其左侧的第四转换特征作为上文特征,一个第四转换特征可以将其右侧的第四转换特征作为下文特征。例如,左侧第1个第四转换特征至左侧第3个第四转换特征可以作为左侧第4个第四转换特征的上文特征,左侧第五个第四转换特征可以作为左侧第4个第四转换特征的下文特征,进而第二自注意力层可以基于前述5个第四转换特征生成第二文本信息特征序列4115中的左侧第4个第二文本信息特征。
[0086] 本领域技术人员可以理解,生成左侧第1个第二文本信息特征时,只基于左侧第1个第二转换特征和其下文特征生成。因为左侧第1个第二转换特征的左侧没有特征,也就没有上文特征。
[0087] 本领域技术人员可以理解,生成左侧第5个第二文本信息特征时,只基于左侧第5个第二转换特征和其上文特征生成。因为左侧第1个第二转换特征的右侧没有特征,也就没有下文特征。
[0088] 解码器420包括非流式语音识别模型的解码器。非流式语音识别模型的解码器可以包括至少一个transformer层和至少一个注意力层,比如6个transformer层和4个多头注意力(Multi‑Head Attention)层。非流式语音识别模型的解码器以第二文本信息特征序列4125为输入,输出第二文本4032。其中,非流式语音识别模型的解码器的transformer层和注意力层对第二文本信息特征序列4125进行处理,得到第二解码特征序列4221,并基于第二解码特征序列4221输出第二文本4032。
[0089] 根据第一文本4031与文本标注,可以得到第一差异;根据第二文本4032与文本标注,可以得到第二差异。根据第一差异和第二差异调整流式语音识别模型的编码器和流式语音识别模型的解码器,可以使得流式语音识别模型借鉴并学习非流式语音识别模型的优点,提升流式语音识别模型的性能,进而可以处理流式语音或非流式语音。
[0090] 图5是根据本公开一个实施例的语音识别方法的流程图。
[0091] 如图5所示,该语音识别方法500可以包括操作S510~操作S520。
[0092] 在操作S510,提取待识别语音的特征序列。
[0093] 根据本公开实施例,待识别语音的特征序列可以是流式语音,也可以是非流式语音。
[0094] 例如,可以提取流式语音的特征序列,比如提取陆陆续续接收到的语音片段的特征序列。例如,可以提取非流式语音的特征序列,比如提取整句的音频数据的特征序列。
[0095] 在操作S520,将上述待识别语音的特征序列输入到语音识别模型,得到上述待识别语音的文本识别结果。其中,上述语音识别模型是根据本公开的提供的语音识别模型的训练方法训练得到的。
[0096] 例如,利用借鉴了非流式语音识别模型优点的流式语音识别模型处理待识别语音的特征序列,得到相应的文本识别结果。
[0097] 通过本公开实施例,利用训练好的流式语音识别模型可以识别流式语音,也可以识别非流式语音。
[0098] 图6是根据本公开另一个实施例的语音识别方法的流程图。
[0099] 如图6所示,该语音识别方法610可以提取待识别语音的特征序列,下面将参考下述操作S611~操作S612进行详细说明。
[0100] 在操作S611,生成上述待识别语音的第二语音频谱图。
[0101] 根据本公开实施例,可以对待识别语音进行去噪处理后,生成待识别语音的第二语音频谱图。
[0102] 例如,可以去除待识别语音中的环境噪音、忙音、彩铃声等,生成较为干净的去噪后的待识别语音。再根据去噪后的待识别语音,生成第二语音频谱图。
[0103] 根据本公开实施例,可以调整待识别语音的语速。
[0104] 例如,针对语速较快的待识别语音,可以降低语速。在一个示例中,可以将语速调整为原来的90%。
[0105] 例如,针对语速较慢的待识别语音,可以加快语速。在一个示例中,可以将语速调整为原来的110%。
[0106] 在操作S612,对上述第二语音频谱图进行特征提取,得到上述待识别语音的特征序列。
[0107] 例如,可以进行MFCC(Mel‑frequency Cepstral Coefficients,梅尔频率倒谱系数)特征提取,也可以进行FBank(Log‑mel Filter Bank,对数梅尔滤波器组)特征提取。
[0108] 根据本公开的实施例,根据待识别语音的第二语音频谱图提取待识别语音的特征序列,能够基于所提取的特征序列进行语音识别。
[0109] 图7是根据本公开的一个实施例的语音识别模型的训练装置的框图。
[0110] 如图7所示,上述语音识别模型可以包括流式语音识别模型和非流式语音识别模型,该语音识别模型的训练装置700可以包括第一生成模块710、第二生成模块720、计算模块730以及调整模块740。
[0111] 第一生成模块710,用于使用上述流式语音识别模型,基于样本语音的特征序列以及上述特征序列中各个特征的上文特征生成第一文本。
[0112] 第二生成模块720,用于使用上述非流式语音识别模型,基于上述样本语音的特征序列以及上述特征序列中各个特征的上文特征和下文特征生成第二文本。
[0113] 计算模块730,用于基于上述第一文本计算第一损失,并基于上述第二文本计算第二损失。
[0114] 调整模块740,用于根据上述第一损失和上述第二损失调整上述流式语音识别模型的参数。
[0115] 在一些实施例中,上述调整模块包括:计算单元,用于计算上述第一损失和上述第二损失之间的差异;以及调整单元,用于根据上述差异,调整上述流式语音识别模型的参数。
[0116] 在一些实施例中,上述计算单元用于计算上述第一损失和上述第二损失之间的相对熵。
[0117] 在一些实施例中,上述语音识别模型的训练装置还包括:第三生成模块,用于生成上述样本语音的第一语音频谱图;选取模块,用于选取上述第一语音频谱图中的至少一个目标区域;屏蔽模块,用于屏蔽上述至少一个目标区域,得到处理后的第一语音频谱图;以及第一提取模块,用于对上述处理后的第一语音频谱图进行特征提取,得到上述样本语音的特征序列。
[0118] 在一些实施例中,上述屏蔽模块用于将上述至少一个目标区域的能量值设置为预设值。
[0119] 图8是根据本公开的另一个实施例的语音识别装置的框图。
[0120] 如图8所示,该语音识别装置800可以包括第二提取模块810以及识别模块820。
[0121] 第二提取模块810,用于提取待识别语音的特征序列。
[0122] 识别模块820,用于将上述待识别语音的特征序列输入到语音识别模型,得到上述待识别语音的文本识别结果。其中,上述语音识别模型是根据本公开提供的语音识别模型的训练方法训练得到的。
[0123] 在一些实施例中,上述第二提取模块包括:生成单元,用于生成上述待识别语音的第二语音频谱图;以及提取单元,用于对上述第二语音频谱图进行特征提取,得到上述待识别语音的特征序列。
[0124] 应该理解,本公开装置部分的实施例与本公开方法部分的实施例对应相同或类似,所解决的技术问题和所达到的技术效果也对应相同或者类似,本公开在此不再赘述。
[0125] 根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0126] 图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0127] 如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
[0128] 设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0129] 计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如语音识别模型的训练方法。例如,在一些实施例中,语音识别模型的训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的语音识别模型的训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行语音识别模型的训练方法。
[0130] 本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0131] 用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0132] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0133] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0134] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
[0135] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计算机程序来产生客户端和服务器的关系。
[0136] 应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0137] 上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。