语音识别模型生成方法、装置、设备以及存储介质

文档序号:344508 发布日期:2021-12-03 浏览:4次 >En<

阅读说明:本技术 语音识别模型生成方法、装置、设备以及存储介质 (Speech recognition model generation method, device, equipment and storage medium ) 是由 朱文涛 陆顺 孔天龙 李吉祥 张大威 邓峰 王晓瑞 杨森 刘霁 于 2021-09-17 设计创作,主要内容包括:本公开提供一种语音识别模型生成方法、装置、设备以及存储介质,涉及网络信息处理技术领域,以得到更优的语音识别模型。该方法包括:获取语音样本数据;构建第一语音识别超网络,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;搜索特征包括分支个数、网络层维度和通道选择维度;基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络;语音样本标签作为语音样本对应的期望识别值;对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络;对目标语音识别子网络进行重训练,得到语音识别模型。(The disclosure provides a method, a device, equipment and a storage medium for generating a voice recognition model, and relates to the technical field of network information processing to obtain a better voice recognition model. The method comprises the following steps: acquiring voice sample data; constructing a first voice recognition super network, wherein the first voice recognition super network comprises a plurality of layers of network structures, each layer of network structure corresponds to a plurality of different combinations of values of search characteristics, and the search characteristics comprise the number of branches, network layer dimensions and channel selection dimensions; the search features comprise the number of branches, network layer dimensions and channel selection dimensions; based on the voice sample and the voice sample label, training operation is carried out on the first voice recognition hyper-network to obtain a second voice recognition hyper-network; the voice sample label is used as an expected identification value corresponding to the voice sample; performing network search on the second voice recognition super network to obtain a target voice recognition sub network; and retraining the target speech recognition sub-network to obtain a speech recognition model.)

语音识别模型生成方法、装置、设备以及存储介质

技术领域

本公开涉及网络信息处理技术领域,尤其涉及一种语音识别模型生成方法、装置、设备以及存储介质。

背景技术

相较于其它生物识别技术,如:人脸识别,指纹识别和虹膜识别,语音信息更容易被被采集,同时,对于语音信息识别的应用,也逐步延伸到各个领域。

目前的语音识别技术可通过基于深度学习的时延神经网络(Time-Delay NeuralNetwork,TDNN)模型,以及延伸时延神经网络(extended Time-Delay Neural Network,E-TDNN)模型等等进行语音识别,然而,现有的语音识别的错误率较高,从而影响最终语音识别效果。

发明内容

本公开提供一种语音识别模型生成方法、装置、设备以及存储介质,以提供一种更优的语音识别模型。本公开的技术方案如下:

根据本公开的第一方面,提供一种语音识别模型生成方法,该语音识别模型生成方法包括:电子设备获取语音样本数据;语音样本数据包括语音样本和语音样本标签;构建第一语音识别超网络,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络;语音样本标签作为语音样本对应的期望识别值;对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络;目标语音识别子网络包括多层网络结构,每层网络结构对应搜索特征取值的一个组合;对目标语音识别子网络进行重训练,得到语音识别模型。

可选的,方法还包括:确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的分支模块;对每层网络结构的分支模块的特征进行第一数据处理,得到每层网络结构的多个网络层维度,第一数据处理包括合并处理、多阶处理或拼接处理中的至少一个。

可选的,方法还包括:确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的多个分支模块;对每层网络结构的分支模块的通道选择层进行第二数据处理,得到每层网络结构的多个通道选择维度,第二数据处理包括全连接处理和/或矩阵处理。

可选的,基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络,包括:步骤A:对第一语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,得到每层网络结构对应搜索特征取值的一个组合;基于每层网络结构对应搜索特征取值的一个组合,得到第一语音识别子网络;步骤B:根据语音样本和语音样本标签训练第一语音识别子网络,得到第二语音识别子网络;步骤C:将第二语音识别子网络中的参数同步至第一语音识别超网络中;迭代执行步骤A-步骤C,得到第二语音识别超网络。

可选的,语音样本包括多组语音子样本,步骤B,包括:根据语音样本和语音样本标签,多批次训练第一语音识别子网络,得到多个第二语音识别子网络;其中,每批次训练采用一组语音子样本。

可选的,对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络,包括:对第二语音识别超网络进行多次抽样处理,得到多个第三语音识别子网络,抽样处理包括对第二语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,根据随机采样获得的每层网络结构对应搜索特征取值的一个组合,得到第三语音识别子网络;确定多个第三语音识别子网络的错误率;将多个第三语音识别子网络中,错误率满足预设条件的第三语音识别子网络确定为目标语音识别子网络。

可选的,确定多个第三语音识别子网络的错误率,包括:确定多个第三语音识别子网络的初始错误率;基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络;确定优化后的第三语音识别子网络的错误率;将多个第三语音识别子网络中,错误率满足预设条件的第三语音识别子网络确定为目标语音识别子网络,包括:将多个优化后的第三语音识别子网络中,错误率满足预设条件的多个优化后的第三语音识别子网络确定为目标语音识别子网络。

可选的,确定多个第三语音识别子网络的初始错误率,包括:将多个第三语音识别子网络的每层网络结构对应搜索特征取值的组合输入错误率预测模型中,得到多个第三语音识别子网络的初始错误率,初始错误率用于表征第三语音识别子网络识别语音样本的能力。

可选的,基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络,包括:对多个第三语音识别子网络进行调参操作,得到多个优化后的第三语音识别子网络,调参操作包括:根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向;根据更新方向,对多个第三语音识别子网络中的参数进行更新。

可选的,根据第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向,包括:采用多变量高斯分布函数处理目标参数对,使得目标参数对服从多变量高斯分布;目标参数对包括目标参数的值和目标参数对应的初始错误率,目标参数为多个第三语音识别子网络中每个第三语音识别子网络中的每个参数;结合多变量高斯分布函数,在预设的采集函数最大化的情况下,得出目标参数的值的更新方向。

可选的,对目标语音识别子网络进行重训练,得到语音识别模型,包括:将语音样本输入目标语音识别子网络中,得到语音样本的识别标签;基于损失函数,确定识别标签和语音样本标签之间的损失值;根据损失值,迭代更新目标语音识别子网络的参数,得到语音识别模型。

可选的,该方法还包括:获取待识别语音信号;将待识别语音信号输入语音识别模型,得到待识别语音信号对应的语音样本标签。

根据本公开的第二方面,提供一种语音识别模型生成装置,该语音识别模型生成装置包括获取模块和处理模块。获取模块,被配置为获取语音样本数据;语音样本数据包括语音样本和语音样本标签;处理模块,被配置为构建第一语音识别超网络,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;处理模块,还被配置为基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络;语音样本标签作为语音样本对应的期望识别值;处理模块,还被配置为对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络;目标语音识别子网络包括多层网络结构,每层网络结构对应搜索特征取值的一个组合;处理模块,还被配置为对目标语音识别子网络进行重训练,得到语音识别模型。

可选的,处理模块,还被配置为确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的分支模块;处理模块,还被配置为对每层网络结构的分支模块的特征进行第一数据处理,得到每层网络结构的多个网络层维度,第一数据处理包括合并处理、多阶处理或拼接处理中的至少一个。可选的,处理模块,还被配置为确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的多个分支模块;处理模块,还被配置为对每层网络结构的分支模块的通道选择层进行第二数据处理,得到每层网络结构的多个通道选择维度,第二数据处理包括全连接处理和/或矩阵处理。

可选的,处理模块,还被配置为执行步骤A:对第一语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,得到每层网络结构对应搜索特征取值的一个组合;基于每层网络结构对应搜索特征取值的一个组合,得到第一语音识别子网络;处理模块,还被配置为执行步骤B:根据语音样本和语音样本标签训练第一语音识别子网络,得到第二语音识别子网络;处理模块,还被配置为执行步骤C:将第二语音识别子网络中的参数同步至第一语音识别超网络中;处理模块,还被配置为执行迭代执行步骤A-步骤C,得到第二语音识别超网络。

可选的,处理模块,还被配置为根据语音样本和语音样本标签,多批次训练第一语音识别子网络,得到多个第二语音识别子网络;其中,每批次训练采用一组语音子样本。

可选的,处理模块,还被配置为对第二语音识别超网络进行多次抽样处理,得到多个第三语音识别子网络,抽样处理包括对第二语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,根据随机采样获得的每层网络结构对应搜索特征取值的一个组合,得到第三语音识别子网络;处理模块,还被配置为确定多个第三语音识别子网络的错误率;处理模块,还被配置为将多个第三语音识别子网络中,错误率满足预设条件的第三语音识别子网络确定为目标语音识别子网络。

可选的,处理模块,还被配置为确定多个第三语音识别子网络的初始错误率;处理模块,还被配置为基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络;处理模块,还被配置为确定优化后的第三语音识别子网络的错误率;处理模块,还被配置为将多个优化后的第三语音识别子网络中,错误率满足预设条件的多个优化后的第三语音识别子网络确定为目标语音识别子网络。

可选的,处理模块,还被配置为将多个第三语音识别子网络的每层网络结构对应搜索特征取值的组合输入错误率预测模型中,得到多个第三语音识别子网络的初始错误率,初始错误率用于表征第三语音识别子网络识别语音样本的能力。

可选的,处理模块,还被配置为对多个第三语音识别子网络进行调参操作,得到多个优化后的第三语音识别子网络,调参操作包括:根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向;根据更新方向,对多个第三语音识别子网络中的参数进行更新。

可选的,处理模块,还被配置为采用多变量高斯分布函数处理目标参数对,使得目标参数对服从多变量高斯分布;目标参数对包括目标参数的值和目标参数对应的初始错误率,目标参数为多个第三语音识别子网络中每个第三语音识别子网络中的每个参数;处理模块,还被配置为结合多变量高斯分布函数,在预设的采集函数最大化的情况下,得出目标参数的值的更新方向。

可选的,处理模块,还被配置为将语音样本输入目标语音识别子网络中,得到语音样本的识别标签;处理模块,还被配置为基于损失函数,确定识别标签和语音样本标签之间的损失值;处理模块,还被配置为根据损失值,迭代更新目标语音识别子网络的参数,得到语音识别模型。

可选的,处理模块,还被配置为获取待识别语音信号;处理模块,还被配置为将待识别语音信号输入语音识别模型,得到待识别语音信号对应的语音样本标签。

根据本公开的第三方面,提供一种电子设备,包括:处理器和用于存储处理器可执行的指令的存储器;其中,处理器被配置为执行指令,以实现如上述第一方面中任一种可选的语音识别模型生成方法。

根据本公开的第四方面,提供一种计算机可读存储介质,计算机可读存储介质上存储有指令,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述第一方面中任一种可选的语音识别模型生成方法。

根据本公开的第五方面,提供一种计算机程序产品,包含指令,当该计算机程序产品中的指令由电子设备的处理器执行时,实现如上述第一方面中任一种可选的语音识别模型生成方法。

本公开实施例提供的技术方案至少带来以下有益效果:

上述方案中,构建的第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;基于语音样本数据,对第一语音识别超网络进行训练,得到第二语音识别超网络,对第二语音识别超网络进行网络搜索,得到目标语音识别子网络,以及对目标识别子网络进行训练,得到语音识别模型。分支个数代表了每层网络结构中并行子网络的个数,不同数量的并行子网络对应不同的数据处理能力;网络层维度决定了学习到的特征的复杂程度,可直接影响学习难度;通道数维度决定了每层网络学习的深度,可使网络结构学习到更加准确的表达。因此,分支个数、网络层维度和通道选择维度不仅影响到网络结构的复杂度,还与网络结构的性能直接相关。本公开通过确定合适的与性能相关的分支个数、网络层维度以及通道选择维度,创建复杂度较低且性能较好的第一语音识别超网络,进而可以从该杂度较低且性能较好的第二语音识别超网络中通过网络搜索获得具有更优性能的语音识别模型。而且,分支个数、网络层维度和通道选择维度的具体数值是从多个可能的数值中确定的合适的数值,并不是固定的,该合适的数值可以获得更优的网络性能。也就是说,可以从多个可能的数值对应的多种可能的网络结构中获得性能更优的网络结构。相较于现有技术中每层网络结构都是固定参数的模型;本公开的网络结构设计更加合理,且带来更好的语音识别效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之一;

图2是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之二;

图3示出了搜索特征的确定示意图;

图4是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之三;

图5A是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之四;

图5B是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之五;

图6A示出了随机采样应用示意图;

图6B示出了贝叶斯优化应用示意图;

图6C示出了目标语音识别自网络重训练应用示意图;

图7是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之六;

图8示出了对于不同模型参数量和错误率的走势图;

图9是根据一示例性实施例示出的一种语音识别模型生成方法的流程图之七;

图10是根据一示例性实施例示出的一种语音识别模型生成装置的结构框图;

图11是根据一示例性实施例示出的电子设备的结构示意图。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。本公开所涉及的数据可以为经用户授权或者经过各方充分授权的数据。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

还应当理解的是,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元素和/或组件的存在或添加。

基于背景技术,本公开实施例提供一种语音识别模型生成方法,通过构建第一语音识别超网络,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;基于语音样本数据,对第一语音识别超网络进行训练,得到第二语音识别超网络,对第二语音识别超网络进行网络搜索,得到目标语音识别子网络,以及对目标识别子网络进行训练,得到语音识别模型。该语音识别模型可以使用较少的参数量,得到更优的处理效果。

以下对本公开实施例提供的语音识别模型生成方法进行示例性说明:

本公开提供的语音识别模型生成方法可以应用于电子设备。

在一些实施例中,电子设备可以是服务器,也可以是终端,还可以是其他用于进行语音识别的电子设备,本公开对此不作限定。

其中,服务器可以是单独的一个服务器,或者,也可以是由多个服务器构成的服务器集群。部分实施方式中,服务器集群还可以是分布式集群。本公开对服务器的具体实现方式也不作限制。

终端可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备等可以安装并使用内容社区应用(如快手)的设备,本公开对该电子设备的具体形态不作特殊限制。其可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。

如图1所示,当语音识别模型生成方法应用于电子设备时,该语音识别模型生成方法可以包括:

步骤11、电子设备获取语音样本数据。

其中,语音样本数据包括语音样本和语音样本标签。

在一些实施例中,电子设备使用kaldi框架对原始语音数据进行预处理,预处理后每隔10ms提取语音样本的梅尔倒谱系数(Mel-scale Frequency Cepstral Coefficients,MFCC)特征,然后使用倒谱均值归一化(cepstral mean normalization,CMN)对MFCC特征进行静音消除,消除静音后,将MFCC特征的频谱分割为200帧或者400帧的语音样本。示例性的,该MFCC特征可以是30维,还可以是80维。语音样本为各种需要进行识别的音频信号,如:说话音频、歌声音频等。语音样本标签为语音样本对应的真实用户。

步骤12、电子设备构建第一语音识别超网络。

其中,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度。

在一些实施例中,基于语音样本数据,在搜索空间中进行搜索,根据搜索结果构建第一语言识别网络。该搜索空间为用户通过神经网络架构搜索技术(Neural ArchitectureSearch,NAS)想要搜索到的目标模型对应的搜索空间。在确定出搜索空间后,结合语音样本数据,在搜索空间中搜索出第一语言识别网络的多层网络结构。第一语音识别网络中的每层网络结构都对应着搜索特征取值的多个不同组合,搜索特征取值的一个组合对应一个节点。第一语音识别网络中的每层网络结构包括多个节点。该目标模型可以是任意具有语音识别功能的模型,本公开对此不作限制。

示例性的,目标模型可以是双重注意力机制(Dual attention)、ARET-25、FastRestNet-34、TDNN、E-TDNN、F-TDNN、D-TDNN和自动语音(AutoSpeech)等等,初始搜索空间为TDNN模型对应的搜索空间。

可选的,结合图2,语音识别模型生成方法还包括:

步骤21、电子设备确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的分支模块。

在一些实施例中,基于语音样本数据,在搜索空间中搜索,以确定出第一语音识别超网络中第一层网络结构的多个分支个数,在确定出每个分支个数的具体数值后,根据具体数值,创建出第一层网络结构中每个分支个数对应的分支模块(分支模块的个数与分支个数一致)。具体的,一个分支模块为一个分支网络,且每个分支网络的网络参数各不相同。网络参数具体是指每个分支模块的膨胀率不同,膨胀率用于决定上下文数据的处理窗口大小,同时增加特征的多样性,从而训练出最佳的网络结构。若膨胀率较小,则该分支可以提取精细化的特征;若膨胀率较大,则该分支可以处理粗粒度的特征。这样的话,每层网络结构的多个分支可以提取更多具有差异化的特征,从而可以提升网络的判别能力。

示例性的,搜索空间为18层网络结构,基于语音样本数据,在搜索空间中搜索出的分支个数b∈{2,3}。结合图3,在搜索空间中,若搜索出的第一语音识别超网络的某层网络结构的分支个数为2时,则该层网络结构输出2个分支模块,然后将这2个分支的膨胀率的设置为1和3。膨胀率的为1的分支模块用于提取精细化的特征;膨胀率的为3的分支模块用于处理粗粒度的特征。若搜索出的第一语音识别超网络的某层网络结构的分支个数为3时,则该层网络结构输出3个分支模块,并将这3个分支的膨胀率设置为1,3,5。膨胀率的为1的分支模块用于提取精细化的特征;膨胀率的为3的分支模块用于处理较粗粒度的特征,膨胀率的为5的分支模块用于处理最粗粒度的特征。

步骤22、电子设备对每层网络结构的分支模块的特征进行第一数据处理,得到每层网络结构的网络层维度。

其中,第一数据处理包括合并处理、多阶处理或拼接处理中的至少一个。

在一些实施例中,网络层维度为第一语音识别超网络中每层网络结构中核心特征的维度,它决定了该层网络结构的学习能力,以及特征的判别能力。网络层维度越大,特征学习的复杂度越高,越能学习到更加复杂的特征,同时学习难度也越大;网络层维度越小,学习难度小,学习到的特征简单。通过对第一语音识别超网络中每层网络结构的多个分支模块进行第一数据处理,从而可以得到每层网络结构的多个网络层维度。

在确定出第一语音识别超网络中每层网络结构的多个分支个数后,就某一层而言,对第一语音识别超网络中该层网络结构的多个分支个数中每个分支个数对应的分支模块执行下述操作,以得到每个分支个数对应的网络层维度;具体的,将一个分支个数对应的所有分支模块的特征进行合并处理;如下公式1所示,合并处理之后,计算所有分支模块的特征均值,所有分支模块的特征方差,所有分支模块的特征三阶特征和所有分支模块的特征四阶特征;如下公式2-公式5所示,最后将所有分支模块的特征均值、所有分支模块的特征方差,所有分支模块的特征三阶特征和所有分支模块的特征四阶特征进行拼接处理,拼接处理后,利用该层网络结构中的全连接层计算出该分支对应的网络层特征,如公式6所示网络层特征对应的维度为网络层维度c。示例性的,网络层维度c∈{64,96,128,192}。其中,网络层维度的计算可通过如下表达式实现:

z=f([μ,σ,s,k]) 公式(6)

上述表达式中,其中,h为语音样本数据(第一层)或初始搜索空间中上一层通道选择维度对应的特征;b为分支个数;TDNNi为初始搜索空间中该层第i分支的时延神经网络(Time-Delay Neural Network,TDNN)网络;T为当前输入语音样本数据的总长度;f是全连接层;μ为该层TDNN的均值特征,σ分别为该层TDNN的方差特征;s是该层TDNN的三阶多项式特征;k是该层TDNN的四阶多项式特征;z表示网络层特征;f是该层网络结构中的全连接层,全连接层的维度即为该层的网络层维度;ht为前一层的第t个时刻的特征;为该层第t个时刻,第i个分支的TDNN特征;为该层第t个时刻的TDNN特征。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤21-步骤22提供一种计算分支个数和网络层维度的计算方法,由于分支个数的多少和网络层维度的大小,不仅直接影响到创建语音识别超网络的复杂度和学习能力,而且也间接影响到最终的语音识别模型的性能。相较于现有技术中的分支个数和网络层维度都是固定的数值,该方法基于语音样本数据,确定出合适的分支个数和网络层维度,从而为后续确定出更优性能的语音识别模型提供数据基础。

可选的,结合图2,语音识别模型生成方法还包括:

步骤21、电子设备确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的分支模块。

步骤23、电子设备对每层网络结构的分支模块的通道选择层进行第二数据处理,得到每层网络结构的通道选择维度,第二数据处理包括矩阵处理和/或归一处理。

在一些实施例中,通道选择维度用于学习通道选择的判别能力,即加强对语音识别最具表征意义的通道特征进行判定。示例性的,在确定出每层网络结构的多个分支个数后,就某一层,将该层网络结构中多个分支个数中的第i个分支个数对应的所有分支模块的通道选择层特征输入到全连接层,计算求导后第i个分支个数对应的所有分支模块的通道选择的评定;如下公式7所示,然后对所有分支模块的通道选择的评定进行归一;如下公式8所示,得出通道选择矩阵,最后对通道选择矩阵和第t个时刻第i个分支的TDNN特征进行矩阵处理,得到该层密集连接的时延神经网络的特征;如下公式9所示,该层密集连接的时延神经网络的特征对应的维度为通道选择维度d。示例性的,通道选择维度d∈{32,64}。通道选择维度的计算,可通过如下表达式实现:

ti=f′i(z) 公式(7)

ui=softmax(ti) 公式(8)

上述表达式中,z为网络层特征;fi为该层的全连接层,全连接层的维度为通道选择维度d;ti为第i个分支的通道选择的评定;ui为第i分支的通道选择矩阵;为该层第t个时刻,第i个分支的TDNN特征;h′t为该层密集连接的时延神经网络(Distributed Time-Delay Neural Network,D-TDNN)的特征;z为提取的该层的网络层特征。

结合图3,将语音样本数据输入到搜索空间中进行搜索,搜索出第一语音识别超网络的第一层的多个分支个数,然后分别输出与第一层中每个分支个数对应的分支模块,然后对这分支模块进行第一数据处理,得到每个分支个数对应的每个网络层维度;同时,将分支模块的通道选择层进行第二数据处理,得到每个分支个数对应的每个通道选择维度。接着将基于第一层多个通道选择维度对应的多个数据特征,输入到第二层网络结构,得到第二层网络结构的多个分支个数,多个网络层维度和多个通道选择维度;然后重复上述步骤,直到得到最后一层的多个分支个数、多个网络层维度和多个通道选择维度;这样,将获得第一语音识别超网络中多层网络机构,以及每层网络结构对应的搜索特征取值的所有组合。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤121和步骤123提供了一种计算通道选择维度的计算方法,由于通道选择维度与通道特征的判别能力直接相关,从而间接影响到语音识别模型的性能。相较于现有技术中的通道选择维度是固定的数值,该方法确定出合适的通道选择维度,为后续得出更优性能的语音识别模型提供基础。

步骤13、电子设备基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络。

其中,语音样本标签作为语音样本对应的期望识别值。

在一些实施例中,通过语音样本以及语音样本标签,对第一语音识别超网络执行训练操作,以更新第一语音识别超网络中的参数,从而得到具有更高语音识别准确率的第二语音识别超网络。

可选的,结合图4,步骤13基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络,包括:

步骤41:电子设备对第一语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,得到每层网络结构对应搜索特征取值的一个组合;基于每层网络结构对应搜索特征取值的一个组合,得到第一语音识别子网络。

步骤41用于执行本公开中的步骤A。

在一些实施例中,结合图6A,电子设备结合随机梯度下降技术,对第一语音识别超网络中第一层网络结构对应搜索特征取值的多个不同组合进行随机采样,得到第一层网络结构对应搜索特征取值的一个组合。即,对第一语音识别超网络中第一层网络结构对应的多个节点进行随机采样,得到第一层网络结构中的一个节点。采用同样的方法,对第二层网络结构也进行随机采样,直到对最后一层网络结构进行随机采样完后,将所有层采样到的所有搜索特征取值的一个组合按照第一语音识别超网络的层级结构进行连接,得到第一语音识别子网络。即,将所有层采样到的节点按照第一语音识别超网络的层级结构进行连接,得到第一语音识别子网络。示例性的,电子设备按照单条路径均匀采样方法进行随机采样。使用单路径均匀采样,可以保证每个算子都有均匀的训练机会,同时减少权重之间的耦合度。示例性的,单条路径均匀采样满足如下表达式:

wA=argminwEa~U(A)[Ltrain(N(a,W(a)))] 公式(10)

上述表达式中,A代表初始搜索空间,W代表超网权重,N(A,W)代表超网中编码的搜索空间。

步骤42、电子设备根据语音样本和语音样本标签训练第一语音识别子网络,得到第二语音识别子网络。

步骤42用于执行本公开中的步骤B。

在一些实施例中,电子设备利用语音样本和语音样本标签对第一语音识别子网络进行训练,具体是对第一语音识别子网络中的参数进行更新,从而第二语音识别子网络。

进一步的,结合图4,语音样本包括多组语音子样本,步骤42电子设备根据语音样本和语音样本标签训练第一语音识别子网络,得到第二语音识别子网络,包括:

步骤421、电子设备根据语音样本和语音样本标签,多批次训练第一语音识别子网络,得到多个第二语音识别子网络。

其中,每批次训练采用一组语音子样本。

在一些实施例中,语音样本包括多组语音子样本,在一轮训练中,电子设备按照每组语音子样本将第一语音识别子网络的训练分成多个批次。在第一批训练,将第一组语音子样本输入第一语音识别子网络,得到第一组语音子样本的识别标签;基于第一组语音子样本的识别标签和第一组语音子样本的语音样本标签,对第一语音识别子网络中的参数进行更新,得到一个第二语音识别子网络;然后对其它组的语音子样本,也采用同样的方式进行多批训练,直到将每组语音子样本都训练一遍,以得到多个第二语音识别子网络。具体的,在利用语音样本和语音样本标签对第一语音识别子网络进行训练时,使用交叉熵损失函数更新语音识别子网络的参数,从而得到多个第二语音识别子网路。其中,交叉熵损失函数满足如下表达式:

上述表达式中,N是语音样本的个数,w为学习参数,T是转置,gi是为语音样本数据的输出特征,yi语音样本标签,C为所有的语音样本对应的用户数目。

示例性的,获取100000个语音样本数据;语音样本数据分别包括语音样本和语音样本标签;以32个语音样本为一组,共3125组数据。将第一组的32个样本数据,输入第一语音识别子网络中,第一语音识别子网络输出这32个语音样本的识别标签,根据这32个识别标签和这32个语音样本对应的语音样本标签计算损失,根据损失结果结合误差反向传播算法,更新第一语音识别子网络的参数,从而得到第二语音识别子网络,重复上述操作,直到使用完3125组语音样本,最终得到3125个第二语音识别子网路。

上述实施例提供的技术方案至少能够带来以下有益效果:由步骤421可知,电子设备对语音样本进行分批,一批数据训练一个第一语音识别子网络,通过多批训练,可以得到性能更优的第二语音识别子网络。

步骤43、电子设备将第二语音识别子网络中的参数同步至第一语音识别超网络中。

步骤43用于执行本公开中的步骤C。

在一些实施例中,基于超网络的参数值共享规则,在训练完第二语音识别子网络后,第二语音识别子网络会自动将参数共享至第一语音识别超网络,从而得到参数更新后的第一语音识别超网络。

步骤44、电子设备迭代执行步骤A-步骤C,得到第二语音识别超网络。

在一些实施例中,电子设备经过步骤A得到一个第一语音识别子网络后,然后通过步骤B对第一语音识别子网络进行多批次训练,得到多个第二语音识别子网络,接着基于步骤C然后将多个第二语音识别子网络的参数更新至第一语音识别超网络中,最后,在参数更新后的第一语音识别超网络中,再次执行步骤A-步骤C,迭代多次这样的操作,最终得到第二语音识别超网络。

示例性的,在第一语音识别超网络中随机采样得到一个第一语音识别子网络;基于上述100000个语音样本数据,以32个语音样本数据为一个批次,将第一语音识别子网络训练3125次,得到3125个第二语音识别子网络;将这3125个第二语音识别子网络的参数同步至第一语音识别超网络中;接着继续在参数更新后的第一语音识别超网络中进行随机采样,这样重复30轮,总共将随机训练93750次。这样,可以使第一语音识别超网络中的参数进行充分更新,最终得到第二语音识别超网络。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤41-步骤44提供了一种训练第一语音识别超网络的方法,通过在第一语音识别超网络中进行随机采样,对随机采样后第一语音识别子网络进行训练得到第二语音识别子网络,最后将第二语音识别子网络的参数更新至第一语音识别超网络中,通过多轮迭代,对训练后得到的第二语音识别超网络的性能会更优,基于性能更优的第二语音识别超网络,将得到识别能力更强的语音识别模型。

步骤14、电子设备对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络。

其中,目标语音识别子网络包括多层网络结构,每层网络结构对应搜索特征取值的一个组合。

在一些实施例中,在得到第二语音识别超网络后,通过对第二语音识别超网络进行网络搜索,从而得到目标语音识别子网络。

可选的,结合图1-图2,如图5A所示,步骤14对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络,包括:

步骤51、电子设备对第二语音识别超网络进行多次抽样处理,得到多个第三语音识别子网络。

其中,抽样处理包括对第二语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,根据随机采样获得的每层网络结构对应搜索特征取值的一个组合,得到第三语音识别子网络。

在一些实施例中,结合步骤41,电子设备对第二语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机选择,选择出一个搜索特征取值的组合,并将所有层的搜索特征取值的组合按照网络结构的层级结构组合形成第三语音识别子网络,重复上述操作多次,以得到多个第三语音识别子网络。

步骤52、电子设备确定多个第三语音识别子网络的错误率。

具体的,多个第三语音识别子网络的错误率可通过错误率预测模型计算得到。在得到每个第三语音识别子网络的错误率后,根据错误率对第三语音识别子网络进行筛选,从而为后续确定出目标语音识别子网络提供参考依据。

可选的,结合图1-图2,如图5A所示,步骤52、电子设备确定多个第三语音识别子网络的错误率,包括:

步骤521、电子设备确定多个第三语音识别子网络的初始错误率。

在一些实施例中,结合步骤52,基于错误率预测模型计算多个第三语音识别子网络的初始错误率。

可选的,如图5B所示,步骤521电子设备确定多个第三语音识别子网络的初始错误率包括:

步骤5211、电子设备将多个第三语音识别子网络的每层网络结构对应搜索特征取值的组合输入错误率预测模型中,得到多个第三语音识别子网络的错误率。

其中,错误率用于表征第三语音识别子网络识别语音样本的能力。

在一些实施例中,对第二语音识别超网络进行多次抽样处理,得到的多个第三语音识别子网络后,将多个第三语音识别子网络中每个第三语音识别子网络中每层网络结构对应搜索特征取值的一个组合输入错误率预测模型,从而得到每个第三语音识别子网络的初始错误率。错误率预测模型可以是多种回归模型中的一种。示例性的,电子设备在第二语音识别超网络中,随机抽样了64次,得到64个第三语音识别子网络,然后将选出的64个第三语音识别子网络中每层网络结构对应搜索特征取值的一个组合输入高斯回归模型中,高斯回归模型输出第三语音识别子网络的错误率;根据高斯回归模型输出的每个第三语音识别子网络的错误率,从而为后续搜索出最佳的网络提供参考依据。其中,高斯回归过程使用最大log似然估计,确定错误率(EER)。高斯回归模型满足如下表达式:

p|a~N(μ,K),EER|p,σ2~N(p,σ2I) 公式(12)

上述表达式中,p表示隐变量,a是每个训练后的语音识别子网络,N表示高斯概率分布,K为汉明核函数,EER为对应的说话人识别的错误率指标。

在使用高斯回归模型对多个第三语音识别子网络进行错误率预测时,首先需要对高斯回归模型进行训练。高斯回归模型的训练过程为:电子设备获取初始网络结构和预设的优化函数,基于预设的优化函数和初始网络结构,确定新的网络结构a1,然后评测新的网络结构的错误率,重复多轮,得到多个新的网络结构ai和多个新的网络结构的错误率,最后基于多个新的网络结构ai和多个新的网络结构的错误率对初始高斯回归模型中的参数进行更新,以得到可以用于评测第三语音识别子网络错误率的高斯回归模型。

上述实施例提供的技术方案至少能够带来以下有益效果:在得到多个第三语音识别子网络后,需要对多个第三语音识别子网络进行筛选。本公开通过第三语音识别子网络的性能来进行筛选,第三语音识别子网络的性能具体通过高斯回归模型计算,根据计算结果进行筛选,相较于其它回归模型,高斯回归模型计算的结果更加准确,最终筛选出的目标语音识别子网络也性能更优。

步骤522、电子设备基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络。

在一些实施例中,在得到多个第三语音识别子网络的初始错误率后,若初始错误率过高或者初始错误率超过预设阈值,需要对多个第三语音识别子网络中的参数进行调整,从而得到优化后的第三语音识别子网络。现有的调参方法有多种,如:网格搜索(GirdSearch)、随机选择(Random Search)和贝叶斯优化(Bayesian Optimization)。

其中,网格搜索是最常见的,具体就是对于每种参数,确定好几个要尝试的值,然后像一个网格一样,把所有参数值的组合遍历一下。优点是实现简单暴力,如果能全部遍历的话,结果比较可靠。缺点是太费时间了,特别像神经网络,一般无法尝试太多参数组合。随机选择比网格搜索更有效。实际操作的时候,一般也是先用网格搜索的方法,得到所有候选参数,然后每次从中随机选择进行训练。贝叶斯优化,由于考虑到了不同参数对应的实验结果值,因此更节省时间。

可选的,如图5B所示,步骤522基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络,包括:

步骤5221、电子设备对多个第三语音识别子网络进行调参操作,得到多个优化后的第三语音识别子网络。

其中,调参操作包括:根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向;根据更新方向,对多个第三语音识别子网络中的参数进行更新。

在一些实施例中,结合步骤522可知,对于网络模型的调参而言,可以有多种实现方式,相对而言,贝叶斯优化是一种更高效的调参手段。结合图6B,在获知多个第三语音识别子网络的初始错误率后,结合贝叶斯优化的预设采集函数,可以确定出下一次参数的调整方向;根据下一次参数的调整方向确定出下一个参数,基于下一个参数的表现,进行多轮调整,从而确定出网络模型最终的参数。示例性的,采集函数可以是可信性概率函数(probability of feasibility,PoF),预设的优化轮数是100轮。

上述实施例提供的技术方案至少能够带来以下有益效果:本公开提供一种基于贝叶斯优化进行调参的方法,具体是根据多个第三语音识别子网络中的初始错误率以及预设的采集函数,确定第三语音识别子网络中参数的更新方向,从而进行调参。由于贝叶斯优化的调参方式是基于上一次调参的结果进行调整的,这样可以实现参数的快速调整。

可选的,如图5B所示,步骤5221根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向,包括:

步骤52211、电子设备采用多变量高斯分布函数处理目标参数对,使得目标参数对服从多变量高斯分布。

其中,目标参数对包括目标参数的值和目标参数对应的初始错误率,目标参数为多个第三语音识别子网络中每个第三语音识别子网络中的每个参数。

在一些实施例中,若要对多个第三语音识别子网络中的参数进行训练,电子设备首先需要获取针对目标参数的多个目标参数对,并且使多个目标参数对服务多变量高斯分布。

步骤52212、电子设备结合多变量高斯分布函数,在预设的采集函数最大化的情况下,得出目标参数的更新方向。

在一些实施例中,在多个目标参数对服从多变量高斯分布函数的情况下,电子设备结合多变量高斯分布函数中多个目标参数对中每个目标参数对的目标参数的值,以及目标参数的值对应的初始错误率,在预设采集函数最大化的情况下,确定出目标参数的更新方向,基于目标参数的更新方向,确定出目标参数对应的下一个采样点。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤52211-步骤52212提供一种确定参数调整更新方向方法,具体通过多个目标参数对对参数的调整方向提供依据,这样不仅调整速度快,而且准确度更高。

步骤523、电子设备确定优化后的第三语音识别子网络的错误率。

在一些实施例中,结合步骤5211,电子设备基于错误率预测模型,确定出优化后的第三语音识别子网络的错误率。

步骤53、电子设备将多个第三语音识别子网络中,错误率满足预设条件的第三语音识别子网络确定为目标语音识别子网络。

在一些实施例中,电子设备在得到多个第三语音识别子网络的错误率后,对错误率进行排序。在错误率满足预设条件后,将相应的语音识别子网络确定为最终的目标语音识别子网络。其中,预设条件可以是排序后错误率最低,还可以是错误率小于等于目标阈值。只要选择出最优的目标语音识别子网络络即可,本公开对预设条件不作限制。

上述实施例提供的技术方案至少能够带来以下有益效果:由步骤51-步骤53可知,通过对第二语音识别超网络进行多次抽样,得到多个第三语音识别子网络,基于第三语音识别子网络的错误率,筛选出符合要求的目标语音识别子网络。这种实现方式不仅易于操作,同时由于筛选的依据是第三语音识别子网络的错误率,因此选择出的目标语音识别子网络的错误率将更低。

可选的,如图5A所示,在步骤521-步骤523的情况下,步骤53根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向,包括:

步骤531、将多个优化后的第三语音识别子网络中,错误率满足预设条件的多个优化后的第三语音识别子网络确定为目标语音识别子网络。

在一些实施例中,结合步骤53,若对第三语音识别子网络进行过优化后,需要在多个优化后的第三语音识别子网络对应的错误率中选择出符合预设要求的错误率对应的目标语音识别子网络。

上述实施例提供的技术方案至少能够带来以下有益效果:由上述可知,在得到第三语音识别子网络的错误率后,根据错误率表现对第三语音识别子网络进行优化,优化后的第三语音识别子网络的错误率更低,在优化后的第三语音识别子网络中选出的目标语音识别子网络将错误率更低。

步骤15、电子设备对目标语音识别子网络进行重训练,得到语音识别模型。

在一些实施例中,在得到目标语音识别子网络后,对目标语音识别子网络进行重训练,以得到最终的语音识别模型。

上述实施例提供的的技术方案至少能够带来以下有益效果:构建的第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;基于语音样本数据,对第一语音识别超网络进行训练,得到第二语音识别超网络,对第二语音识别超网络进行网络搜索,得到目标语音识别子网络,以及对目标识别子网络进行训练,得到语音识别模型。分支个数代表了每层网络结构中并行子网络的个数,不同数量的并行子网络对应不同的数据处理能力;网络层维度决定了学习到的特征的复杂程度,可直接影响学习难度;通道数维度决定了每层网络学习的深度,可使网络结构学习到更加准确的表达。因此,分支个数、网络层维度和通道选择维度不仅影响到网络结构的复杂度,还与网络结构的性能直接相关。本公开通过确定合适的与性能相关的分支个数、网络层维度以及通道选择维度,创建复杂度较低且性能较好的第一语音识别超网络,进而可以从该杂度较低且性能较好的第二语音识别超网络中通过网络搜索获得具有更优性能的语音识别模型。而且,分支个数、网络层维度和通道选择维度的具体数值是从多个可能的数值中确定的合适的数值,并不是固定的,该合适的数值可以获得更优的网络性能。也就是说,可以从多个可能的数值对应的多种可能的网络结构中获得性能更优的网络结构。相较于现有技术中每层网络结构都是固定参数的模型;本公开的网络结构设计更加合理,且带来更好的语音识别效果。

可选的,如图7所示,步骤15对目标语音识别子网络进行重训练,得到语音识别模型,包括:

步骤71、电子设备将语音样本输入目标语音识别子网络中,得到语音样本的识别标签。

步骤72、电子设备将基于损失函数,确定识别标签和语音样本标签之间的损失值。

在一些实施例中,电子设备可以计算每个语音样本的识别标签和每个语音样本的语音样本标签之间的差值(即,损失值)。示例性的,该损失函数为基于加性角度间隔最大损失和最小超球面能量的混合损失。具体的,损失函数可通过如下表达式计算:

上述表达式中,s一般设为30,m一般设为0.2,λ设为0.01,θ为w和g的夹角,gi是为语音样本数据的输出特征,yi为语音样本标签,N是语音样本的个数,w为学习参数,C为所有的语音样本对应的用户数目。

步骤73、电子设备将根据损失值,迭代更新目标语音识别子网络的参数,得到语音识别模型。

在一些实施例中,电子设备根据语音样本的识别标签和语音样本的语音样本标签之间的差值,得到损失值,根据损失值调整目标语音识别子网络的参数;再用下一个语音样本的识别标签和语音样本标签训练调整后的目标语音识别子网络,直至损失值小于预设阈值,得到最终的语音识别模型。结合图6C,电子设备根据语音样本数据创建语音识别超网络,然后基于语音识别超网络得到目标语音识别子网络,最终对目标语音识别子网络进行重训练,得到语音识别模型。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤71-步骤73提供一种基于加性角度间隔最大损失和最小超球面能量的混合损失对目标语音识别子网络进行训练得到语音识别模型的方法,采用这种新的损失函数,能够目标语音识别子网络的训练更加深入,得到错误率更低的语音识别模型。

示例性的,结合上述语音识别模型的生成方法,训练出如表1所示的3种不同的语音识别模型,以及每种语音识别模型中每层网络结构对应的搜索特征取值的组合。

表1

将表1中的3种语音识别模型和现有的其它语音识别模型(如:Dual attention、ARET-25、Fast RestNet-34、TDNN、E-TDNN、F-TDNN、D-TDNN、D-TDNN-SS

512、D-TDNN-SS 128、AutoSpeech)进行比较,结合表2和图8可知,本公开搜索得到的语音识别模型(SpeechNAS-1、SpeechNAS-2、SpeechNAS-3、SpeechNAS-4、SpeechNAS-5、SpeechNAS-5*)可以使用较少的参数量,达到较高的准确率。当使用3.1M的参数量,本公开的语音识别模型语音识别模型达到的错误率更低(如:1.14vs 1.22%);再增加一点的参数量(4.3M),本公开的语音识别模型可以极大地降低错误率(如:1.02vs 1.22%),同时,本公开的语音识别模型具有非常好的泛化性能,在其他数据集上,仍然能够获得非常好的准确率。

表2

可选的,如图9所示,该语音识别模型生成方法,还包括:

步骤91、电子设备获取待识别语音信号。

步骤92、电子设备将待识别语音信号语音识别模型,得到语音信号对应的语音标签。

在一些实施例中,通过语音识别模型生成方法得到语音识别模型后,可以将该语音识别模型用于语音信号的识别场景中,具体的,将待识别的语音信号输入语音识别模型中,该语音识别模型直接输入待识别的语音信号对应的语音标签。

上述实施例提供的技术方案至少能够带来以下有益效果:步骤91-步骤92提供一种基于语音识别模型对待识别语音信号进行语音识别的方法,由于该语音识别模型是基于合适的分支个数、网络层维度和通道选择维度创建的,分支个数、网络层维度和通道选择维度与语音识别模型识别的错误率直接相关,因此,基于本公开的语音识别模型识别出的结果对应的错误率更低。

示例性的,本公开可以通过如下计算机代码实现:

algorithm:The SpeechNAS algorithm//初始搜索空间

Input:Dataset D=Dtrain∪Dval={(Xi,yi)|i=1,…,n},search space A,thenumber of epochs n1 and the number ofcandidates n2 in BO,and hyper-parametersin the training//输入:数据集D={语音样本数据Xi,语音样本标签yi},初始搜索空间,贝叶斯优化搜索轮数和候选网络数,训练的超参数

Output:Optimal architectures a*of low EERs on the validation set//输出:在验证集上表现好的最优网络结构a*

/*supernet training*///超网络训练

Construct a supernet based on the search space A;//依据搜索空间构造超网络

Train the supernet using equation(5)and the loss function in equation(4)with SGD;//使用随机梯度下降和交叉墒损失,以及单条路径均匀采样训练超网络

/*Architecture search*///网络搜索

Randomly explore n2 candidates a0;//随机训练网络候选a0

Evaluate EERs for a0 with weight sharing;//使用权值共享评测a0的错误率

Add a0 and EERs into queue Q;//将a0和错误率加入到队列Q

Learn GP based on equation(7);//学习高斯回归模型

For i=1,2,…,n1 do

Select new architectures ai by optimizing//基于优化采集函数,获取新的网络结构ai

Acquisition functionα,ai=argmaxaα(ai-1;Q),Evaluate EERs for ai;//评测ai的错误率

Append ai and the EERs to queue Q;//将ai和错误率拼接到队列Q中

End

/*candidate networks retraining*///目标语音识别子网络重训练

For a in an1 do

Train networks a with SGD and equation(6);//使用随机梯度下降来训练子网络a

Save the best trained model and evaluate the EER;//保存训练模型,并评测错误率

End

Return Optimal architectures a*of low EERs and trained models。//返回较小错误率的最优结构a*以及训练后的模型。

以上结合图1-图9详细说明了本公开实施例提供的方法。为了实现上述功能,语音识别模型生成装置包含了执行各个功能相应的硬件结构和/或软件模块,这些执行各个功能相应的硬件结构和/或软件模块可以构成一个语音识别模型生成装置。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。

本公开实施例可以根据上述方法示例对语音识别模型生成装置进行功能模块的划分,例如,语音识别模型生成装置可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本公开实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

以下,结合图10详细说明本公开实施例提供的语音识别模型生成装置。应理解,装置实施例的描述与方法实施例的描述相互对应,因此,未详细描述的内容可以参见上文方法实施例,为了简洁,这里不再赘述。

图10是根据一示例性实施例示出的一种语音识别模型生成装置的逻辑结构框图。参照图10,该语音识别模型生成装置包括:获取模块1010和处理模块1020。获取模块1010,被配置为获取语音样本数据;语音样本数据包括语音样本和语音样本标签;例如,结合图1,获取模块1010可以用于执行步骤11。处理模块1020,被配置为构建第一语音识别超网络,第一语音识别超网络包括多层网络结构,每层网络结构对应搜索特征取值的多个不同组合,搜索特征包括分支个数、网络层维度和通道选择维度;例如,结合图1,处理模块1020可以用于执行步骤12。处理模块1020,还被配置为基于语音样本和语音样本标签,对第一语音识别超网络执行训练操作,得到第二语音识别超网络;语音样本标签作为语音样本对应的期望识别值;例如,结合图1,处理模块1020可以用于执行步骤13。处理模块1020,还被配置为对第二语音识别超网络进行网络搜索,以得到目标语音识别子网络;目标语音识别子网络包括多层网络结构,每层网络结构对应搜索特征取值的一个组合;例如,结合图1,处理模块1020可以用于执行步骤14。处理模块1020,还被配置为对目标语音识别子网络进行重训练,得到语音识别模型。例如,结合图1,处理模块1020可以用于执行步骤15。

可选的,处理模块1020,还被配置为确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的分支模块;例如,结合图2,处理模块1020可以用于执行步骤21。处理模块1020,还被配置为对每层网络结构的分支模块的特征进行第一数据处理,得到每层网络结构的多个网络层维度,第一数据处理包括合并处理、多阶处理或拼接处理中的至少一个。例如,结合图2,处理模块1020可以用于执行步骤22。

可选的,处理模块1020,还被配置为确定第一语音识别超网络中每层网络结构的多个分支个数,并根据每个分支个数,构建每层网络结构的多个分支模块;例如,结合图2,处理模块1020可以用于执行步骤21。处理模块1020,还被配置为对每层网络结构的分支模块的通道选择层进行第二数据处理,得到每层网络结构的多个通道选择维度,第二数据处理包括全连接处理和/或矩阵处理。例如,结合图2,处理模块1020可以用于执行步骤23。

可选的,处理模块1020,还被配置为执行步骤A:对第一语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,得到每层网络结构对应搜索特征取值的一个组合;基于每层网络结构对应搜索特征取值的一个组合,得到第一语音识别子网络;例如,结合图4,处理模块1020可以用于执行步骤41。处理模块1020,还被配置为执行步骤B:根据语音样本和语音样本标签训练第一语音识别子网络,得到第二语音识别子网络;例如,结合图4,处理模块1020可以用于执行步骤42。处理模块1020,还被配置为执行步骤C:将第二语音识别子网络中的参数同步至第一语音识别超网络中;例如,结合图4,处理模块1020可以用于执行步骤43。处理模块1020,还被配置为执行迭代执行步骤A-步骤C,得到第二语音识别超网络;例如,结合图4,处理模块1020可以用于执行步骤44。

可选的,处理模块1020,还被配置为根据语音样本和语音样本标签,多批次训练第一语音识别子网络,得到多个第二语音识别子网络;其中,每批次训练采用一组语音子样本。例如,结合图1,处理模块1020可以用于执行步骤421。

可选的,处理模块1020,还被配置为对第二语音识别超网络进行多次抽样处理,得到多个第三语音识别子网络,抽样处理包括对第二语音识别超网络中每层网络结构对应搜索特征取值的多个不同组合进行随机采样,根据随机采样获得的每层网络结构对应搜索特征取值的一个组合,得到第三语音识别子网络;例如,结合图5A,处理模块1020可以用于执行步骤51。处理模块1020,还被配置为确定多个第三语音识别子网络的错误率;例如,结合图5A,处理模块1020可以用于执行步骤52。处理模块1020,还被配置为将多个第三语音识别子网络中,错误率满足预设条件的第三语音识别子网络确定为目标语音识别子网络。例如,结合图5A,处理模块1020可以用于执行步骤53。

可选的,处理模块1020,还被配置为确定多个第三语音识别子网络的初始错误率;例如,结合5A,处理模块1020可以用于执行步骤521。处理模块1020,还被配置为基于初始错误率,对多个第三语音识别子网络中的参数进行调整,得到多个优化后的第三语音识别子网络;例如,结合图5A,处理模块1020可以用于执行步骤522。处理模块1020,还被配置为确定优化后的第三语音识别子网络的错误率;例如,结合图5A,处理模块1020可以用于执行步骤523。处理模块1020,还被配置为将多个优化后的第三语音识别子网络中,错误率满足预设条件的多个优化后的第三语音识别子网络确定为目标语音识别子网络。例如,结合图5A,处理模块1020可以用于执行步骤531。

可选的,处理模块1020,还被配置为将多个第三语音识别子网络的每层网络结构对应搜索特征取值的组合输入错误率预测模型中,得到多个第三语音识别子网络的初始错误率,初始错误率用于表征第三语音识别子网络识别语音样本的能力。例如,结合图5B,处理模块1020可以用于执行步骤5211。

可选的,处理模块1020,还被配置为对多个第三语音识别子网络进行调参操作,得到多个优化后的第三语音识别子网络,调参操作包括:根据多个第三语音识别子网络的初始错误率和预设的采集函数,确定多个第三语音识别子网络中参数的更新方向;根据更新方向,对多个第三语音识别子网络中的参数进行更新。例如,结合图5B,处理模块1020可以用于执行步骤5221。

可选的,处理模块1020,还被配置为采用多变量高斯分布函数处理目标参数对,使得目标参数对服从多变量高斯分布;目标参数对包括目标参数的值和目标参数对应的初始错误率,目标参数为多个第三语音识别子网络中每个第三语音识别子网络中的每个参数;例如,结合图5B,处理模块1020可以用于执行步骤52211。处理模块1020,还被配置为结合多变量高斯分布函数,在预设的采集函数最大化的情况下,得出目标参数的值的更新方向。例如,结合图5B,处理模块1020可以用于执行步骤52212。

可选的,处理模块1020,还被配置为将语音样本输入目标语音识别子网络中,得到语音样本的识别标签;例如,结合图7,处理模块1020可以用于执行步骤71。处理模块1020,还被配置为基于损失函数,确定识别标签和语音样本标签之间的损失值;例如,结合图7,处理模块1020可以用于执行步骤72。处理模块1020,还被配置为根据损失值,迭代更新目标语音识别子网络的参数,得到语音识别模型。例如,结合图7,处理模块1020可以用于执行步骤73。

可选的,处理模块1020,还被配置为获取待识别语音信号;例如,结合图9,处理模块1020可以用于执行步骤91。处理模块1020,还被配置为将待识别语音信号输入如权利要求1-11中任一项的装置生成的语音识别模型,得到待识别语音信号对应的语音样本标签。例如,结合图9,处理模块1020可以用于执行步骤92。

当然,本公开实施例提供的路径选择装置包括但不限于上述模块,例如路径选择装置还可以包括存储模块1030。存储模块1030可以用于存储该写路径选择装置的程序代码,还可以用于存储写路径选择装置在运行过程中生成的数据,如写请求中的数据等。

图11示出了上述实施例中所涉及的电子设备的一种可能的结构示意图。如图11所示,电子设备110包括有处理器1101和存储器1102。

可以理解,图11所示的电子设备110可以实现上述语音识别模型生成方法的所有功能。上述语音识别模型生成装置中各个模块的功能可以在电子设备110的处理器1101中实现。语音识别模型生成装置的存储模块相当于电子设备110的存储器1102。

其中,处理器1101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。

存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1101所执行以实现本公开方法实施例提供的语音识别模型生成方法。

在一些实施例中,电子设备110还可选包括有:外围设备接口1103和至少一个外围设备。处理器1101、存储器1102和外围设备接口1103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1103相连。具体地,外围设备包括:射频电路1104、触摸显示屏1105、摄像头1106、音频电路1107、定位组件1108和电源11011中的至少一种。

外围设备接口1103可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1101和存储器1102。在一些实施例中,处理器1101、存储器1102和外围设备接口1103被集成在同一芯片或电路板上;在一些其他实施例中,处理器1101、存储器1102和外围设备接口1103中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不予限定。

射频电路1104用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1104通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1104将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路404包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1104可以通过至少一种无线通信协议来与其它语音识别模型生成装置进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及6G)、无线局域网和/或Wi-Fi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1104还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本公开对此不加以限定。

显示屏1105用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1105是触摸显示屏时,显示屏1105还具有采集在显示屏1105的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1101进行处理。此时,显示屏1105还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1105可以为一个,设置电子设备110的前面板;显示屏1105可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。

摄像头组件1106用于采集图像或视频。可选地,摄像头组件1106包括前置摄像头和后置摄像头。通常,前置摄像头设置在语音识别模型生成装置的前面板,后置摄像头设置在语音识别模型生成装置的背面。音频电路1107可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1101进行处理,或者输入至射频电路404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在电子设备110的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1101或射频电路1104的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1107还可以包括耳机插孔。

定位组件1108用于定位电子设备110的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1108可以是基于美国的GPS(Global Positioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源1109用于为电子设备110中的各个组件进行供电。电源11011可以是交流电、直流电、一次性电池或可充电电池。当电源1109包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,电子设备110还包括有一个或多个传感器1110。该一个或多个传感器1110包括但不限于:加速度传感器、陀螺仪传感器、压力传感器、指纹传感器、光学传感器以及接近传感器。

加速度传感器可以检测以电子设备110建立的坐标系的三个坐标轴上的加速度大小。陀螺仪传感器可以检测电子设备110的机体方向及转动角度,陀螺仪传感器可以与加速度传感器协同采集用户对电子设备110的3D动作。压力传感器可以设置在电子设备110的侧边框和/或触摸显示屏1106的下层。当压力传感器设置在电子设备110的侧边框时,可以检测用户对电子设备110的握持信号。指纹传感器用于采集用户的指纹。光学传感器用于采集环境光强度。接近传感器,也称距离传感器,通常设置在电子设备110的前面板。接近传感器用于采集用户与电子设备110的正面之间的距离。

本公开还提供了一种计算机可读存储介质,计算机可读存储介质上存储有指令,当存储介质中的指令由语音识别模型生成装置的处理器执行时,使得语音识别模型生成装置能够执行上述本公开提供的语音识别模型生成方法。

本公开实施例还提供了一种包含指令的计算机程序产品,当其在语音识别模型生成装置上运行时,使得语音识别模型生成装置执行上述本公开提供的语音识别模型生成方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为各示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

34页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:声音检测方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!