语音识别方法、装置、电子设备及计算机可读介质转让专利

申请号 : CN202210891670.1

文献号 : CN115064173B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 白烨王晓瑞

申请人 : 北京达佳互联信息技术有限公司

摘要 :

本公开涉及一种语音识别方法、装置、电子设备及计算机可读介质,属于人工智能技术领域。该方法包括:获取待识别的语音特征序列,将语音特征序列输入语音识别系统中;通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列,其中,语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块中的神经网络参数的权重共享;通过语音识别系统中的解码器对语义特征向量序列进行解码处理,得到语音特征序列对应的文本序列。本公开通过将待识别的语音特征序列输入语音识别系统中,该语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块权重共享,可以减少模型的参数量,节约系统资源。

权利要求 :

1.一种语音识别方法,其特征在于,包括:

获取待识别的语音特征序列,将所述语音特征序列输入语音识别系统中;

通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,其中,所述语音识别系统的编码器中包含多组混合专家网络模块,所述混合专家网络模块中包括前馈神经网络、自注意力网络、卷积网络、混合专家网络以及归一化层,所述混合专家网络中包括路由网络,各组所述混合专家网络模块串行连接,不同组的所述混合专家网络模块中,除所述归一化层以及所述路由网络之外的其他网络中的神经网络参数的权重共享;

通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列。

2.根据权利要求1所述的语音识别方法,其特征在于,所述通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,包括:将所述语音特征序列输入所述语音识别系统的编码器中的第一组所述混合专家网络模块中;

依次将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块,得到当前所述混合专家网络模块的输出特征序列;

根据最后一组所述混合专家网络模块的输出特征序列得到所述语音特征序列对应的语义特征向量序列。

3.根据权利要求2所述的语音识别方法,其特征在于,所述依次将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块,得到当前所述混合专家网络模块的输出特征序列,包括:将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块的前馈神经网络中,得到所述前馈神经网络的输出特征序列;

将所述前馈神经网络的输出特征序列输入至所述自注意力网络,得到所述自注意力网络的输出特征序列;

将所述自注意力网络的输出特征序列输入至所述卷积网络,得到所述卷积网络的输出特征序列;

将所述卷积网络的输出特征序列输入至所述混合专家网络,得到所述混合专家网络的输出特征序列;

将所述混合专家网络的输出特征序列在所述归一化层进行归一化处理,得到当前所述混合专家网络模块的输出特征序列。

4.根据权利要求3所述的语音识别方法,其特征在于,所述混合专家网络中包括多个并行的前馈神经网络和路由网络,所述将所述卷积网络的输出特征序列输入至所述混合专家网络,得到所述混合专家网络的输出特征序列,包括:通过所述混合专家网络中的路由网络以及所述混合专家网络的输入特征序列,从所述混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络;

将所述卷积网络的输出特征序列输入至所述混合专家网络中的目标前馈神经网络,得到所述目标前馈神经网络的输出特征序列;

通过所述路由网络得到所述目标前馈神经网络对应的目标激活值,根据所述目标前馈神经网络的输出特征序列和所述目标激活值得到所述混合专家网络的输出特征序列。

5.根据权利要求4所述的语音识别方法,其特征在于,所述通过所述混合专家网络中的路由网络以及所述混合专家网络的输入特征序列,从所述混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络,包括:将所述混合专家网络的输入特征序列输入所述混合专家网络中的路由网络,通过所述路由网络得到所述混合专家网络中的各个所述前馈神经网络对应的激活值;

根据各个所述前馈神经网络对应的激活值确定出所述目标前馈神经网络。

6.根据权利要求1至5任意一项所述的语音识别方法,其特征在于,所述通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列,包括:将所述语义特征向量序列以及当前文本字符对应的文本前缀输入所述语音识别系统的解码器中,得到各个候选文本字符的概率估计值;

根据所述概率估计值,从所述候选文本字符中确定下一文本字符;

根据各个文本字符得到所述语音特征序列对应的文本序列。

7.一种语音识别装置,其特征在于,包括:

语音序列获取模块,被配置为执行获取待识别的语音特征序列,将所述语音特征序列输入语音识别系统中;

语义特征确定模块,被配置为执行通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,其中,所述语音识别系统的编码器中包含多组混合专家网络模块,所述混合专家网络模块中包括前馈神经网络、自注意力网络、卷积网络、混合专家网络以及归一化层,所述混合专家网络中包括路由网络,各组所述混合专家网络模块串行连接,不同组的所述混合专家网络模块中,除所述归一化层以及所述路由网络之外的其他网络中的神经网络参数的权重共享;

文本序列生成模块,被配置为执行通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列。

8.一种电子设备,其特征在于,包括:

处理器;

用于存储所述处理器可执行指令的存储器;

其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的语音识别方法。

9.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的语音识别方法。

说明书 :

语音识别方法、装置、电子设备及计算机可读介质

技术领域

[0001] 本公开涉及人工智能技术领域,具体而言,涉及一种语音识别方法、语音识别装置、电子设备及计算机可读介质。

背景技术

[0002] 语音识别系统能够将人类语音识别为文本,从而便于后续的文本信息处理系统对其进行处理。语音识别系统被广泛地应用于人机交互、多媒体内容理解等系统当中。
[0003] 目前,模块化的语音识别系统的流程一般较为复杂,而现有的端到端语音识别系统存在过参数化的问题,由于模型的参数量过大,导致模型的存储占用量也很大,影响后续系统的部署和应用。
[0004] 鉴于此,本领域亟需一种语音识别方法,能够减少模型的参数量,节约系统资源。
[0005] 需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

[0006] 本公开的目的在于提供一种语音识别方法、语音识别装置、电子设备及计算机可读介质,进而至少在一定程度上能够减少模型的参数量,节约系统资源。
[0007] 根据本公开的第一个方面,提供一种语音识别方法,包括:
[0008] 获取待识别的语音特征序列,将所述语音特征序列输入语音识别系统中;
[0009] 通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,其中,所述语音识别系统的编码器中包含多组混合专家网络模块,不同组的所述混合专家网络模块中的神经网络参数的权重共享;
[0010] 通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列。
[0011] 在本公开的一种示例性实施例中,所述通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,包括:
[0012] 将所述语音特征序列输入所述语音识别系统的编码器中的第一组所述混合专家网络模块中;
[0013] 依次将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块,得到当前所述混合专家网络模块的输出特征序列,其中,各组所述混合专家网络模块串行连接;
[0014] 根据最后一组所述混合专家网络模块的输出特征序列得到所述语音特征序列对应的语义特征向量序列。
[0015] 在本公开的一种示例性实施例中,所述混合专家网络模块中包括前馈神经网络、自注意力网络、卷积网络、混合专家网络以及归一化层,所述依次将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块,得到当前所述混合专家网络模块的输出特征序列,包括:
[0016] 将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块的前馈神经网络中,得到所述前馈神经网络的输出特征序列;
[0017] 将所述前馈神经网络的输出特征序列输入至所述自注意力网络,得到所述自注意力网络的输出特征序列;
[0018] 将所述自注意力网络的输出特征序列输入至所述卷积网络,得到所述卷积网络的输出特征序列;
[0019] 将所述卷积网络的输出特征序列输入至所述混合专家网络,得到所述混合专家网络的输出特征序列;
[0020] 将所述混合专家网络的输出特征序列在所述归一化层进行归一化处理,得到当前所述混合专家网络模块的输出特征序列。
[0021] 在本公开的一种示例性实施例中,所述混合专家网络中包括路由网络,不同组的所述混合专家网络模块中,除所述归一化层以及所述路由网络之外的其他网络中的神经网络参数的权重共享。
[0022] 在本公开的一种示例性实施例中,所述混合专家网络中包括多个并行的前馈神经网络和路由网络,所述将所述卷积网络的输出特征序列输入至所述混合专家网络,得到所述混合专家网络的输出特征序列,包括:
[0023] 通过所述混合专家网络中的路由网络以及所述混合专家网络的输入特征序列,从所述混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络;
[0024] 将所述卷积网络的输出特征序列输入至所述混合专家网络中的目标前馈神经网络,得到所述目标前馈神经网络的输出特征序列;
[0025] 通过所述路由网络得到所述目标前馈神经网络对应的目标激活值,根据所述目标前馈神经网络的输出特征序列和所述目标激活值得到所述混合专家网络的输出特征序列。
[0026] 在本公开的一种示例性实施例中,所述通过所述混合专家网络中的路由网络以及所述混合专家网络的输入特征序列,从所述混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络,包括:
[0027] 将所述混合专家网络的输入特征序列输入所述混合专家网络中的路由网络,通过所述路由网络得到所述混合专家网络中的各个所述前馈神经网络对应的激活值;
[0028] 根据各个所述前馈神经网络对应的激活值确定出所述目标前馈神经网络。
[0029] 在本公开的一种示例性实施例中,所述通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列,包括:
[0030] 将所述语义特征向量序列以及当前文本字符对应的文本前缀输入所述语音识别系统的解码器中,得到各个候选文本字符的概率估计值;
[0031] 根据所述概率估计值,从所述候选文本字符中确定下一文本字符;
[0032] 根据各个文本字符得到所述语音特征序列对应的文本序列。
[0033] 根据本公开的第二方面,提供一种语音识别装置,包括:
[0034] 语音序列获取模块,被配置为执行获取待识别的语音特征序列,将所述语音特征序列输入语音识别系统中;
[0035] 语义特征确定模块,被配置为执行通过所述语音识别系统中的编码器得到所述语音特征序列对应的语义特征向量序列,其中,所述语音识别系统的编码器中包含多组混合专家网络模块,不同组的所述混合专家网络模块中的神经网络参数的权重共享;
[0036] 文本序列生成模块,被配置为执行通过所述语音识别系统中的解码器对所述语义特征向量序列进行解码处理,得到所述语音特征序列对应的文本序列。
[0037] 在本公开的一种示例性实施例中,所述语义特征确定模块包括:
[0038] 语音特征序列输入单元,被配置为执行将所述语音特征序列输入所述语音识别系统的编码器中的第一组所述混合专家网络模块中;
[0039] 输出特征序列确定单元,被配置为执行依次将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块,得到当前所述混合专家网络模块的输出特征序列,其中,各组所述混合专家网络模块串行连接;
[0040] 语义特征向量输出单元,被配置为执行根据最后一组所述混合专家网络模块的输出特征序列得到所述语音特征序列对应的语义特征向量序列。
[0041] 在本公开的一种示例性实施例中,所述输出特征序列确定单元包括:
[0042] 前馈神经网络输出单元,被配置为执行将上一组所述混合专家网络模块的输出特征序列输入至当前所述混合专家网络模块的前馈神经网络中,得到所述前馈神经网络的输出特征序列;
[0043] 自注意力网络输出单元,被配置为执行将所述前馈神经网络的输出特征序列输入至所述自注意力网络,得到所述自注意力网络的输出特征序列;
[0044] 卷积网络输出单元,被配置为执行将所述自注意力网络的输出特征序列输入至所述卷积网络,得到所述卷积网络的输出特征序列;
[0045] 混合专家网络输出单元,被配置为执行将所述卷积网络的输出特征序列输入至所述混合专家网络,得到所述混合专家网络的输出特征序列;
[0046] 归一化处理单元,被配置为执行将所述混合专家网络的输出特征序列在所述归一化层进行归一化处理,得到当前所述混合专家网络模块的输出特征序列。
[0047] 在本公开的一种示例性实施例中,所述混合专家网络输出单元包括:
[0048] 目标前馈网络确定单元,被配置为执行通过所述混合专家网络中的路由网络以及所述混合专家网络的输入特征序列,从所述混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络;
[0049] 目标前馈网络输出单元,被配置为执行将所述卷积网络的输出特征序列输入至所述混合专家网络中的目标前馈神经网络,得到所述目标前馈神经网络的输出特征序列;
[0050] 混合专家网络输出特征确定单元,被配置为执行通过所述路由网络得到所述目标前馈神经网络对应的目标激活值,根据所述目标前馈神经网络的输出特征序列和所述目标激活值得到所述混合专家网络的输出特征序列。
[0051] 在本公开的一种示例性实施例中,所述目标前馈网络确定包括:
[0052] 激活值计算单元,被配置为执行将所述混合专家网络的输入特征序列输入所述混合专家网络中的路由网络,通过所述路由网络得到所述混合专家网络中的各个所述前馈神经网络对应的激活值;
[0053] 目标网络确定单元,被配置为执行根据各个所述前馈神经网络对应的激活值确定出所述目标前馈神经网络。
[0054] 在本公开的一种示例性实施例中,所述文本序列生成模块包括:
[0055] 字符概率估计单元,被配置为执行将所述语义特征向量序列以及当前文本字符对应的文本前缀输入所述语音识别系统的解码器中,得到各个候选文本字符的概率估计值;
[0056] 文本字符确定单元,被配置为执行根据所述概率估计值,从所述候选文本字符中确定下一文本字符;
[0057] 文本序列生成单元,被配置为执行根据各个文本字符得到所述语音特征序列对应的文本序列。
[0058] 根据本公开的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现上述任意一项所述的语音识别方法。
[0059] 根据本公开的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任意一项所述的语音识别方法。
[0060] 本公开示例性实施例可以具有以下有益效果:
[0061] 本公开示例实施方式的语音识别方法中,通过提供一种语音识别系统,该语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块权重共享,将待识别的语音特征序列输入该语音识别系统后,通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列,并输入语音识别系统的解码器中,然后通过解码器得到待识别的语音特征序列对应的文本序列。本公开示例实施方式中的语音识别方法,通过分组共享权重的方式,将混合专家网络模块分为多个组,不同组之间共享权重,从而能够充分利用模型参数,不仅能够保证语音识别的性能和准确性,还能够大大减小整个模型的参数量,提高识别效率,并在一定程度上节约系统的存储资源。
[0062] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

[0063] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0064] 图1示出了本公开示例实施方式的语音识别方法的流程示意图;
[0065] 图2示出了本公开的一个具体实施方式中的语音识别系统的示意图;
[0066] 图3示出了本公开的一个具体实施方式中的混合专家网络模块的示意图;
[0067] 图4示出了本公开的一个具体实施方式中的混合专家网络的示意图;
[0068] 图5示出了本公开示例实施方式的混合专家网络稀疏激活的流程示意图;
[0069] 图6示出了本公开示例实施方式的通过语音识别系统中的解码器输出文本序列的流程示意图;
[0070] 图7示出了本公开的一个具体实施方式中的通过语音识别系统处理数据的示意图;
[0071] 图8示出了本公开示例实施方式的语音识别装置的框图;
[0072] 图9示出了适于用来实现本公开实施方式的电子设备的计算机系统的结构示意图。

具体实施方式

[0073] 为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
[0074] 需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
[0075] 以下示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
[0076] 此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0077] 相比于传统的模块化语音识别系统,端到端语音识别系统采用一个神经网络整体建模语言,其整体流程更为简单,并且由于整个系统统一优化,没有错误累积,语音识别性能更好。端到端语音识别系统可以广泛地应用在自动字幕生成、客服电话、智能机器人等场景。
[0078] 在一些相关的实施例中,端到端语音识别方案是基于Transformer(变换器)及其变种Conformer(Convolution‑augmented Transformer,卷积增强的变换器)的端到端语音识别模型,其可以分为编码器和解码器部分。编码器由多层模块构成,每一个模块由多头自注意力机制、前馈神经网络、归一化层构成。对于其变种Conformer,可以增加卷积神经网络,提升其局部特征捕捉能力。解码器可以为标签同步的自回归解码器,也可以是帧同步的Transducer(转换器)解码器。
[0079] 然而,基于Transformer或Conformer的端到端语音识别系统存在过参数化问题,即其模型的参数量非常巨大,导致模型的存储占用量也很大,影响了系统的部署和应用,特别地,影响了其在资源受限的场景中的应用,如端上系统等。
[0080] 本示例实施方式首先提供了一种语音识别方法。参考图1所示,上述语音识别方法可以包括以下步骤:
[0081] 步骤S110. 获取待识别的语音特征序列,将语音特征序列输入语音识别系统中。
[0082] 步骤S120. 通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列。
[0083] 步骤S130. 通过语音识别系统中的解码器对语义特征向量序列进行解码处理,得到语音特征序列对应的文本序列。
[0084] 其中,语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块中的神经网络参数的权重共享。
[0085] 本公开示例实施方式的语音识别方法中,通过提供一种语音识别系统,该语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块权重共享,将待识别的语音特征序列输入该语音识别系统后,通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列,并输入语音识别系统的解码器中,然后通过解码器得到待识别的语音特征序列对应的文本序列。本公开示例实施方式中的语音识别方法,通过分组共享权重的方式,将混合专家网络模块分为多个组,不同组之间共享权重,从而能够充分利用模型参数,不仅能够保证语音识别的性能和准确性,还能够大大减小整个模型的参数量,提高识别效率,并在一定程度上节约系统的存储资源。
[0086] 下面,结合图2至图7对本示例实施方式的上述步骤进行更加详细的说明。
[0087] 在步骤S110中,获取待识别的语音特征序列,将语音特征序列输入语音识别系统中。
[0088] 本示例实施方式中,语音特征序列是从语音波形提取的一个表示语音特征的向量序列,例如Mel‑Filterbank(梅尔滤波器组)特征和MFCC(梅尔频率倒谱系数)特征。比如以25ms(毫秒)为帧长,10ms为帧移,对10s(秒)语音提取80维Mel‑Filterbank特征,可以得到
100个特征向量。
[0089] 本示例实施方式中,语音识别系统由编码器和解码器组成,语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块中的神经网络参数的权重共享。其中,权重共享是指多个网络采用同一组权重。如图2所示,该语音识别系统采用N(N为大于1的任意正整数)组混合专家网络模块叠加的方式,不同组的混合专家网络模块的权重共享,所以网络的参数量大大减小。
[0090] 本示例实施方式中,如图3所示,混合专家网络模块中包括前馈神经网络、自注意力网络、卷积网络、混合专家网络以及归一化层。其中,如图4所示,混合专家网络由多个并行的前馈神经网络和一个路由网络组成。不同组的混合专家网络模块中,除归一化层以及路由网络之外的其他网络中的神经网络参数的权重共享。
[0091] 语音特征序列首先输入编码器进行编码,然后编码器的输出序列进入解码器,生成文本序列。编码器分为多组,每一组中包含多个混合专家网络模块,不同组的混合专家网络模块的权重共享,但混合专家网络模块中的路由网络和归一化层的权重都不共享,通过使用独立的路由网络和归一化层,可以保证每一个模块的路由选择更为灵活,且归一化统计量更为一致。
[0092] 在步骤S120中,通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列。
[0093] 将待识别的语音特征序列输入语音识别系统的编码器中,编码器可以输出一个向量序列,即语音特征序列对应的语义特征向量序列,该语义特征向量序列带有语音的高层语义表示。
[0094] 本示例实施方式中,各组混合专家网络模块串行连接。在使用编码器得到对应的语义特征向量序列时,首先将语音特征序列输入语音识别系统的编码器中的第一组混合专家网络模块中,接下来依次将上一组混合专家网络模块的输出特征序列输入至当前混合专家网络模块,得到当前混合专家网络模块的输出特征序列,然后根据最后一组混合专家网络模块的输出特征序列得到语音特征序列对应的语义特征向量序列。
[0095] 以基于conformer模型和transformer解码器的端到端语音识别系统为例,混合专家网络模块如图3所示,各组混合专家网络模块中的运算过程为:将上一组混合专家网络模块的输出特征序列输入至当前混合专家网络模块的前馈神经网络中,得到前馈神经网络的输出特征序列;将前馈神经网络的输出特征序列输入至自注意力网络,得到自注意力网络的输出特征序列;将自注意力网络的输出特征序列输入至卷积网络,得到卷积网络的输出特征序列;将卷积网络的输出特征序列输入至混合专家网络,得到混合专家网络的输出特征序列;将混合专家网络的输出特征序列在归一化层进行归一化处理,得到当前混合专家网络模块的输出特征序列。
[0096] 基于上述步骤,各组混合专家网络模块中每一层神经网络模型输出的中间结果可以由如下公式计算:
[0097]
[0098] 其中,FFN表示第一个前馈神经网络,MHSA表示自注意力机制,Conv表示卷积网络,(MoE)FFN 表示混合专家网络,LayerNorm表示归一化层的归一化处理,如果是第一层,则 为。多个混合专家网络模块构成一组,N组构成整个编码器。各组之间的模块权重共享,但(MoE)
组内各混合专家网络模块的权重不共享,且LayerNorm层和FFN 中的路由网络的参数不参与共享。
[0099] 除此之外,编码器还可以替代为其它混合专家网络模型的形式,如没有卷积网络的纯Transformer模块,本示例实施方式中不作具体限定。
[0100] 本示例实施方式中,编码器中的混合专家网络模块在处理语音特征序列时,其中的混合专家网络可以采用稀疏激活的方式,如图5所示,混合专家网络稀疏激活的方法具体可以包括以下几个步骤:
[0101] 步骤S510. 通过混合专家网络中的路由网络以及混合专家网络的输入特征序列,从混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络。
[0102] 在前馈时,如图4所示,混合专家网络的输入特征序列首先进入路由网络,由路由网络计算出激活哪一个前馈神经网络。路由网络是由一个线性变换+softmax(激活函数)构成的,其输入是前一层网络的输出。
[0103] 本示例实施方式中,可以将混合专家网络的输入特征序列输入混合专家网络中的路由网络,通过路由网络得到混合专家网络中的各个前馈神经网络对应的激活值,然后根据各个前馈神经网络对应的激活值确定出目标前馈神经网络,具体而言,可以将激活值最大的前馈神经网络确定为目标前馈神经网络,其对应的激活值即为目标激活值。
[0104] 步骤S520. 将卷积网络的输出特征序列输入至混合专家网络中的目标前馈神经网络,得到目标前馈神经网络的输出特征序列。
[0105] 确定出激活值最大的目标前馈神经网络之后,将卷积网络的输出特征序列作为混合专家网络的输入特征序列,送入激活的目标前馈神经网络,得到目标前馈神经网络的输出特征序列。
[0106] 步骤S530. 通过路由网络得到目标前馈神经网络对应的目标激活值,根据目标前馈神经网络的输出特征序列和目标激活值得到混合专家网络的输出特征序列。
[0107] 本示例实施方式中,路由网络softmax的输出即为激活值,例如,softmax的输出是K维向量,其中第k个值是最大的,则从K维向量中取第k个值作为目标前馈神经网络对应的激活值。
[0108] 确定目标前馈神经网络对应的目标激活值之后,根据目标前馈神经网络的输出特征序列和目标激活值的乘积可以得到混合专家网络的输出特征序列。
[0109] 通过使用混合专家网络稀疏激活的方式,每次运行只激活一小部分参数,所以计算量也大大减小。
[0110] 在步骤S130中,通过语音识别系统中的解码器对语义特征向量序列进行解码处理,得到语音特征序列对应的文本序列。
[0111] 本示例实施方式中,解码器可以采用自回归模型解码器或者转换器模型等各种解码器,除此之外,还可以采用Attention‑based Decoder(基于注意力机制的解码器),也可以采用CTC(Connectionist temporal classification,基于神经网络的时序分类)模型等。通过对编码器输出的语义特征向量序列进行解码,可以生成识别出的文本序列。
[0112] 本示例实施方式中,如图6所示,通过语音识别系统中的解码器对语义特征向量序列进行解码处理,得到语音特征序列对应的文本序列,具体可以包括以下几个步骤:
[0113] 步骤S610. 将语义特征向量序列以及当前文本字符对应的文本前缀输入语音识别系统的解码器中,得到各个候选文本字符的概率估计值。
[0114] 本示例实施方式中,假设解码器采用的是transformer decoder(变换器模型解码器),则transformer decoder的输入包含两部分,一部分是文本前缀,另一部分是编码器的输出,二者采用attention(注意力)机制结合在一起。
[0115] 文本前缀指的是当前文本字符前面的一串字符,例如,对于一个句子  a b c ,字符b的前缀是  a 这两个文本字符。
[0116] 如图7所示,解码器根据当前文本字符对应的文本前缀 和编码器输出的特征h估计下一个文本字符 的概率:
[0117]
[0118] 其中, 表示第s个字符,表示编码器输出,解码器中包括D(D为大于1的任意正整数)个串行连接的解码器模块,编码器输出 分别输入到每个解码器模块中,然后通过最后一个解码器模块输出下一个文本字符 的概率估计结果。
[0119] 步骤S620. 根据概率估计值,从候选文本字符中确定下一文本字符。
[0120] 具体的,可以将候选文本字符中概率估计值最大的作为下一文本字符。
[0121] 步骤S630. 根据各个文本字符得到语音特征序列对应的文本序列。
[0122] 最后,将每一个估计出的概率最大的字符连接起来,得到语音特征序列对应的文本序列。
[0123] 另外,本示例实施方式中的语音识别系统在训练时,可以通过成对的语音‑文本训练数据来训练语音识别系统中的整个网络。训练准则可以采用极大似然估计准则:
[0124]
[0125] 经过训练,语音识别系统就可以估计出在给定前缀和语音的条件下,下一个字符的概率 。识别时,还可以通过束搜索技术寻找概率最大的句子。
[0126] 应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
[0127] 需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等),均为经用户授权或者经过各方充分授权的信息。
[0128] 进一步的,本公开还提供了一种语音识别装置。参考图8所示,该语音识别装置可以包括语音序列获取模块810、语义特征确定模块820以及文本序列生成模块830。其中:
[0129] 语音序列获取模块810被配置为获取待识别的语音特征序列,将语音特征序列输入语音识别系统中;
[0130] 语义特征确定模块820被配置为通过语音识别系统中的编码器得到语音特征序列对应的语义特征向量序列,其中,语音识别系统的编码器中包含多组混合专家网络模块,不同组的混合专家网络模块中的神经网络参数的权重共享;
[0131] 文本序列生成模块830被配置为通过语音识别系统中的解码器对语义特征向量序列进行解码处理,得到语音特征序列对应的文本序列。
[0132] 在本公开的一些示例性实施例中,语义特征确定模块820可以包括语音特征序列输入单元、输出特征序列确定单元以及语义特征向量输出单元。其中:
[0133] 语音特征序列输入单元被配置为将语音特征序列输入语音识别系统的编码器中的第一组混合专家网络模块中;
[0134] 输出特征序列确定单元被配置为依次将上一组混合专家网络模块的输出特征序列输入至当前混合专家网络模块,得到当前混合专家网络模块的输出特征序列,其中,各组混合专家网络模块串行连接;
[0135] 语义特征向量输出单元被配置为根据最后一组混合专家网络模块的输出特征序列得到语音特征序列对应的语义特征向量序列。
[0136] 在本公开的一些示例性实施例中,输出特征序列确定单元可以包括前馈神经网络输出单元、自注意力网络输出单元、卷积网络输出单元、混合专家网络输出单元以及归一化处理单元。其中:
[0137] 前馈神经网络输出单元将上一组混合专家网络模块的输出特征序列输入至当前混合专家网络模块的前馈神经网络中,得到前馈神经网络的输出特征序列;
[0138] 自注意力网络输出单元将前馈神经网络的输出特征序列输入至自注意力网络,得到自注意力网络的输出特征序列;
[0139] 卷积网络输出单元将自注意力网络的输出特征序列输入至卷积网络,得到卷积网络的输出特征序列;
[0140] 混合专家网络输出单元将卷积网络的输出特征序列输入至混合专家网络,得到混合专家网络的输出特征序列;
[0141] 归一化处理单元将混合专家网络的输出特征序列在归一化层进行归一化处理,得到当前混合专家网络模块的输出特征序列。
[0142] 在本公开的一些示例性实施例中,混合专家网络输出单元可以包括目标前馈网络确定单元、目标前馈网络输出单元以及混合专家网络输出特征确定单元。其中:
[0143] 目标前馈网络确定单元被配置为通过混合专家网络中的路由网络以及混合专家网络的输入特征序列,从混合专家网络中的多个前馈神经网络中确定出目标前馈神经网络;
[0144] 目标前馈网络输出单元被配置为将卷积网络的输出特征序列输入至混合专家网络中的目标前馈神经网络,得到目标前馈神经网络的输出特征序列;
[0145] 混合专家网络输出特征确定单元被配置为通过路由网络得到目标前馈神经网络对应的目标激活值,根据目标前馈神经网络的输出特征序列和目标激活值得到混合专家网络的输出特征序列。
[0146] 在本公开的一些示例性实施例中,目标前馈网络确定单元可以包括激活值计算单元以及目标网络确定单元。其中:
[0147] 激活值计算单元被配置为将混合专家网络的输入特征序列输入混合专家网络中的路由网络,通过路由网络得到混合专家网络中的各个前馈神经网络对应的激活值;
[0148] 目标网络确定单元被配置为根据各个前馈神经网络对应的激活值确定出目标前馈神经网络。
[0149] 在本公开的一些示例性实施例中,文本序列生成模块830可以包括字符概率估计单元、文本字符确定单元以及文本序列生成单元。其中:
[0150] 字符概率估计单元被配置为将语义特征向量序列以及当前文本字符对应的文本前缀输入语音识别系统的解码器中,得到各个候选文本字符的概率估计值;
[0151] 文本字符确定单元被配置为根据概率估计值,从候选文本字符中确定下一文本字符;
[0152] 文本序列生成单元被配置为根据各个文本字符得到语音特征序列对应的文本序列。
[0153] 上述语音识别装置中各模块/单元的具体细节在相应的方法实施例部分已有详细的说明,此处不再赘述。
[0154] 图9示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
[0155] 需要说明的是,图9示出的电子设备的计算机系统900仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0156] 如图9所示,计算机系统900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线
904。
[0157] 以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
[0158] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的系统中限定的各种功能。
[0159] 需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0160] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0161] 作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的方法。
[0162] 应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
[0163] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
[0164] 应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。