语音分离网络生成方法、装置、电子设备以及存储介质与流程

文档序号:32164463发布日期:2022-11-12 03:50阅读:71来源:国知局
技术简介:
本专利针对传统语音分离网络需人工调整结构参数导致效率低的问题,提出通过构建含结构参数的搜索空间,迭代训练语音分离超网络自动生成目标子网络,实现无需人工干预的高效网络生成。
关键词:语音分离网络生成,自动参数调整

1.本公开涉及语音处理技术领域,尤其涉及一种语音分离网络生成方法、装置、电子设备以及存储介质。


背景技术:

2.语音分离技术作为一种能够将来自不同声源的混合音频信号进行分离的语音处理技术,在语音识别、音乐信息检索以及关键字定位等方面起到十分重要的作用。
3.相关技术中,往往基于收集到的样本音频信号,对人工设计的语音分离网络进行训练,得到训练好的语音分离网络,以实现语音分离功能。
4.然而,人工设计语音分离网络时,往往需要手动调节网络中不同网络层的结构参数,这一过程依赖于开发人员的专业知识和大量的实验资源,导致语音分离网络的生成过程耗时耗力且效率低下。


技术实现要素:

5.本公开提供一种语音分离网络生成方法、装置、电子设备以及存储介质,能够提高语音分离网络的生成效率。本公开的技术方案如下:
6.根据本公开实施例的第一方面,提供一种语音分离网络生成方法,该方法包括:
7.获取语音分离超网络,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和搜索空间,该搜索空间配置有该多个网络层的结构参数,该结构参数包括下述至少一项:网络层的个数、网络层的多头自注意力机制模块中自注意力头的个数、网络层的前向感知模块中隐藏层的神经元个数;
8.基于多个样本音频信号,迭代训练该语音分离超网络,其中,在第i次迭代过程中,基于该编码器和该解码器对应的搜索空间,确定该语音分离超网络在本次迭代过程中的多个语音分离子网络,该多个语音分离子网络的结构参数是基于多种不同的结构参数组合方式从该编码器和该解码器对应的搜索空间中确定的,基于该多个语音分离子网络和本次迭代过程中输入的样本音频信号,获取本次迭代过程中输入的样本音频信号的语音分离结果,基于该语音分离结果和标注音频信号,确定该语音分离超网络的损失值,基于该损失值,更新该语音分离超网络的网络参数,i为正整数;
9.基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。
10.通过上述方法,在给定多个样本音频信号的基础上,迭代训练获取到的语音分离超网络,其中,该语音分离超网络包括编码器和解码器,编码器和解码器均包括多个网络层和搜索空间,该搜索空间配置有多个网络层的结构参数。进一步地,基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。在上述过程中,通过设计一种配置有结构参数的搜索空间,实现了基于语音分离超网络,自动生成符合目标条件的目标语音分离子网络,避免了手动调节网络中不同网络层的结构参数,提高了语音分离网络的生成效率,实现了网络轻量化和泛化性的平衡。
11.在一些实施例中,该方法还包括:
12.从该多个样本音频信号中确定多组样本音频信号,每组样本音频信号包括至少一个样本音频信号;
13.该基于该多个语音分离子网络和本次迭代过程中输入的样本音频信号,获取本次迭代过程中输入的样本音频信号的语音分离结果,包括:
14.将各组样本音频信号按照各个语音分离子网络对应的传播路径在该语音分离超网络中进行前向传播,得到各组样本音频信号的语音分离结果,其中,一组样本音频信号对应一个语音分离子网络。
15.在一些实施例中,基于该语音分离结果和标注音频信号,确定该语音分离超网络的损失值,基于该损失值,更新该语音分离超网络的网络参数,包括:
16.基于各组样本音频信号的语音分离结果和标注音频信号,确定该语音分离超网络的损失值;
17.若该损失值或本次迭代满足迭代截止条件,输出训练后的该语音分离超网络;
18.若不满足,更新该语音分离超网络的网络参数,基于更新后的该语音分离超网络,进行第i+1次迭代。
19.通过这种方式,能够在一次迭代中基于多个语音分离子网络来训练语音分离超网络,从而加速网络收敛,提高了网络训练效率。
20.在一些实施例中,该将各组样本音频信号按照各个语音分离子网络对应的传播路径在该语音分离超网络中进行前向传播,得到各组样本音频信号的语音分离结果,包括:
21.将第n组样本音频信号输入该语音分离超网络,基于第n个语音分离子网络对应的掩膜在该语音分离超网络中进行前向传播,得到该第n组样本音频信号的语音分离结果,该第n个语音分离子网络对应的掩膜指示该第n个语音分离子网络的传播路径上参与训练的神经元个数,n为正整数。
22.其中,掩膜能够表示多大比例的神经元输出是有效的,因此,掩膜也即间接指示了参与训练的神经元个数,从而起到了动态训练的作用。或者说,语音分离超网络中神经元的个数其实是固定的(即编码器和解码器对应的结构参数均为最大值),但通过掩膜能够决定哪些神经元参与训练,从而实现一次迭代过程中按照多条传播路径进行前向传播,也即实现了所有可学习的结构参数均参与网络训练。
23.在一些实施例中,该基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络,包括:
24.基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,生成多个候选语音分离子网络;
25.基于验证集对该多个候选语音分离子网络的网络性能进行评估,得到该多个候选语音分离子网络的网络评估结果;
26.基于该多个候选语音分离子网络的网络评估结果,从该多个候选语音分离子网络中确定该目标语音分离子网络。
27.通过上述方式,服务器基于验证集对该多个候选语音分离子网络的网络性能进行评估,从中确定符合目标条件的目标语音分离子网络,该目标语音分离子网络也即是语音分离超网络中网络性能最符合要求的子网络,提高了网络准确度。
28.在一些实施例中,该基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,生成多个候选语音分离子网络,包括:
29.对于任一个候选语音分离子网络,基于该编码器和该解码器对应的搜索空间,确定该候选语音分离子网络中编码器和解码器的结构参数;
30.基于训练后的该语音分离超网络的网络参数和该候选语音分离子网络中编码器和解码器的结构参数,生成该候选语音分离子网络。
31.通过上述方式,该多个候选语音分离子网络能够直接继承语音分离超网络的网络参数,无需再次训练,因此,服务器能够基于验证集直接对该多个候选语音分离子网络的网络性能进行评估,提高了网络训练效率。
32.在一些实施例中,该基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络,包括:
33.应用进化算法,在第q次迭代过程中,基于网络集群中多个第一语音分离子网络的网络评估结果,从该网络集群中确定符合进化条件的至少一个第二语音分离子网络,该第一语音分离子网络基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间生成,q为正整数;
34.对该至少一个第二语音分离子网络进行交叉变异,生成至少一个第三语音分离子网络,基于该至少一个第三语音分离子网络更新该网络集群;
35.若本次迭代满足进化截止条件,从更新后的该网络集群中确定该目标语音子分离网络,若不满足,基于更新后的该网络集群进行第q+1次迭代。
36.通过上述方式,应用进化算法来生成目标语音分离子网络,能够扩大候选语音分离子网络的范围,尽可能基于语音分离超网络生成网络性能符合要求的子网络,有效确保了目标语音分离子网络的准确度。
37.在一些实施例中,该方法还包括:
38.基于多个样本音频信号和标注音频信号,训练该目标语音分离子网络。
39.通过重新训练目标语音分离子网络,能够进一步提高目标语音分离子网络的准确度。
40.在一些实施例中,该方法还包括:
41.对待处理的混合音频信号进行短时傅里叶变换,得到该混合音频信号的频谱特征;
42.将该频谱特征输入该目标语音分离子网络,通过该目标语音分离子网络中的编码器对该混合音频信号进行编码,得到该混合音频信号的编码特征;
43.通过该目标语音分离子网络中的多个解码器,对该编码特征进行解码,得到该混合音频信号的干净语音信号和至少一个背景音频信号。
44.通过上述方法,在将该训练后的目标语音分离子网络应用于语音分离时,能够有效提升语音分离结果的准确度,而且,在目标语音分离子网络包括多个解码器的情况下,能够实现多任务语音分离功能。
45.根据本公开实施例的第二方面,提供一种语音分离网络生成装置,该装置包括:
46.获取单元,被配置为执行获取语音分离超网络,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和搜索空间,该搜索空间配置有该多个网
络层的结构参数,该结构参数包括下述至少一项:网络层的个数、网络层的多头自注意力机制模块中自注意力头的个数、网络层的前向感知模块中隐藏层的神经元个数;
47.训练单元,被配置为执行基于多个样本音频信号,迭代训练该语音分离超网络,其中,在第i次迭代过程中,基于该编码器和该解码器对应的搜索空间,确定该语音分离超网络在本次迭代过程中的多个语音分离子网络,该多个语音分离子网络的结构参数是基于多种不同的结构参数组合方式从该编码器和该解码器对应的搜索空间中确定的,基于该多个语音分离子网络和本次迭代过程中输入的样本音频信号,获取本次迭代过程中输入的样本音频信号的语音分离结果,基于该语音分离结果和标注音频信号,确定该语音分离超网络的损失值,基于该损失值,更新该语音分离超网络的网络参数,i为正整数;
48.生成单元,被配置为执行基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。
49.在一些实施例中,该装置还包括:确定单元,被配置为执行:
50.从该多个样本音频信号中确定多组样本音频信号,每组样本音频信号包括至少一个样本音频信号;
51.该训练单元,被配置为执行:
52.将各组样本音频信号按照各个语音分离子网络对应的传播路径在该语音分离超网络中进行前向传播,得到各组样本音频信号的语音分离结果,其中,一组样本音频信号对应一个语音分离子网络。
53.在一些实施例中,该训练单元,被配置为执行:
54.基于各组样本音频信号的语音分离结果和标注音频信号,确定该语音分离超网络的损失值;
55.若该损失值或本次迭代满足迭代截止条件,输出训练后的该语音分离超网络;
56.若不满足,更新该语音分离超网络的网络参数,基于更新后的该语音分离超网络,进行第i+1次迭代。
57.在一些实施例中,该训练单元,被配置为执行:
58.将第n组样本音频信号输入该语音分离超网络,基于第n个语音分离子网络对应的掩膜在该语音分离超网络中进行前向传播,得到该第n组样本音频信号的语音分离结果,该第n个语音分离子网络对应的掩膜指示该第n个语音分离子网络的传播路径上参与训练的神经元个数,n为正整数。
59.在一些实施例中,该生成单元被配置为执行:
60.基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,生成多个候选语音分离子网络;
61.基于验证集对该多个候选语音分离子网络的网络性能进行评估,得到该多个候选语音分离子网络的网络评估结果;
62.基于该多个候选语音分离子网络的网络评估结果,从该多个候选语音分离子网络中确定该目标语音分离子网络。
63.在一些实施例中,该生成单元被配置为执行:
64.对于任一个候选语音分离子网络,基于该编码器和该解码器对应的搜索空间,确定该候选语音分离子网络中编码器和解码器的结构参数;
65.基于训练后的该语音分离超网络的网络参数和该候选语音分离子网络中编码器和解码器的结构参数,生成该候选语音分离子网络。
66.在一些实施例中,该生成单元被配置为执行:
67.应用进化算法,在第q次迭代过程中,基于网络集群中多个第一语音分离子网络的网络评估结果,从该网络集群中确定符合进化条件的至少一个第二语音分离子网络,该第一语音分离子网络基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间生成,q为正整数;
68.对该至少一个第二语音分离子网络进行交叉变异,生成至少一个第三语音分离子网络,基于该至少一个第三语音分离子网络更新该网络集群;
69.若本次迭代满足进化截止条件,从更新后的该网络集群中确定该目标语音子分离网络,若不满足,基于更新后的该网络集群进行第q+1次迭代。
70.在一些实施例中,该训练单元,还被配置为执行:
71.基于多个样本音频信号和标注音频信号,训练该目标语音分离子网络。
72.在一些实施例中,该装置还包括:语音分离单元,被配置为执行:
73.对待处理的混合音频信号进行短时傅里叶变换,得到该混合音频信号的频谱特征;
74.将该频谱特征输入该目标语音分离子网络,通过该目标语音分离子网络中的编码器对该混合音频信号进行编码,得到该混合音频信号的编码特征;
75.通过该目标语音分离子网络中的多个解码器,对该编码特征进行解码,得到该混合音频信号的干净语音信号和至少一个背景音频信号。
76.根据本公开实施例的第三方面,提供一种电子设备,该电子设备包括:
77.一个或多个处理器;
78.用于存储该处理器可执行程序代码的存储器;
79.其中,该处理器被配置为执行该程序代码,以实现上述语音分离网络生成方法。
80.根据本公开实施例的第四方面,提供一种计算机可读存储介质,该计算机可读存储介质包括:当该计算机可读存储介质中的程序代码由电子设备的处理器执行时,使得电子设备能够执行上述语音分离网络生成方法。
81.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述语音分离网络生成方法。
82.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
83.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
84.图1是本公开实施例提供的一种语音分离网络生成方法的实施环境示意图;
85.图2是本公开实施例提供的一种语音分离网络生成方法的流程图;
86.图3是本公开实施例提供的一种语音分离超网络的结构示意图;
87.图4是本公开实施例提供的一种搜索空间的结构示意图;
88.图5是本公开实施例提供的一种语音分离网络生成方法的流程图;
89.图6是本公开实施例提供的一种语音分离网络生成装置的框图;
90.图7是本公开实施例提供的一种服务器的框图。
具体实施方式
91.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
92.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
93.需要说明的是,本公开所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本公开实施例中涉及到的样本音频信号等都是在充分授权的情况下获取的。在一些实施例中,本公开实施例提供有权限询问页面,该权限询问页面用于询问是否授予上述信息的获取权限,在该权限询问页面中,显示同意授权控件和拒绝授权控件,在检测到对该同意授权控件的触发操作的情况下,利用本公开实施例所提供的语音分离网络生成方法来获取上述信息。
94.图1是本公开实施例提供的一种语音分离网络生成方法的实施环境示意图。参见图1,该实施环境包括:终端101和服务器102。
95.终端101可以为智能手机、智能手表、台式电脑、手提电脑、虚拟现实终端、增强现实终端、无线终端和膝上型便携计算机等设备中的至少一种。终端101具有通信功能,可以接入有线网络或无线网络。终端101可以泛指多个终端中的一个,本实施例仅以终端101来举例说明。本领域技术人员可以知晓,上述终端的数量可以更多或更少。示意性地,终端101能够安装和运行有应用程序,该应用程序是视频录制类应用程序、社交类应用程序、在线会议类应用程序、语音通话类应用程序或者直播类应用程序等等。在一些实施例中,终端101能够向服务器102提供语音分离网络生成方法所需的信息,如训练参数、样本音频信号以及初始神经网络等。
96.服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式文件系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。在一些实施例中,服务器102与终端101通过有线或无线通信方式进行直接或间接的连接,本公开实施例对此不作限定。可选地,上述服务器102的数量可以更多或更少,本公开实施例对此不加以限定。示意性地,服务器102用于为终端上运行的应用程序提供后台服务。当然,服务器102还可以包括其他功能服务器,以便提供更全面且多样化的服务。在一些实施例中,服务器102用于执行
本公开实施例提供的语音分离网络生成方法,基于终端101提供的信息生成符合条件的语音分离网络。
97.在一些实施例中,在该语音分离网络生成方法中,服务器102承担主要计算工作,终端101承担次要计算工作;或者,服务器102承担次要计算工作,终端101承担主要计算工作;或者,服务器102或终端101分别能够单独承担计算工作,本技术实施例对此不作限定。
98.图2是本公开实施例提供的一种语音分离网络生成方法的流程图。如图2所示,在本公开实施例中以应用于服务器为例进行说明。该方法包括下述步骤201至步骤203。
99.在步骤201中,服务器获取语音分离超网络。
100.在本公开实施例中,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和搜索空间,该搜索空间配置有该多个网络层的结构参数。在一些实施例中,该编码器也称为混合音频编码器,用于对混合音频信号进行编码以得到编码特征,该解码器也称为分离源音频解码器,用于对编码特征进行解码以得到来自指定声源的音频信号。需要说明的是,本公开实施例对于语音分离超网络中编码器和解码器的数量不作限定,能够根据实际需求进行设置。
101.下面对编码器和解码器所对应的搜索空间进行介绍。示意性地,编码器和解码器均包括顺序连接的多个网络层,每个网络层包括至少一个多头自注意力机制(multi-head self attention,mhsa)模块和至少一个前向感知(feed forward networks,ffn)模块。在一些实施例中,每个网络层也称为构象异构体处理块(conformer block)。基于此,搜索空间中配置的结构参数包括下述至少一项:
102.1、网络层的个数。
103.对于编码器和解码器来说,编码器和解码器中网络层的个数越多,编码器和解码器的深度越深,通过将编码器和解码器中网络层的个数设计为可搜索的结构参数,能够实现对编码器和解码器深度的动态训练,从而有效降低编码器和解码器的冗余性。而且,对于解码器来说,由于来自不同声源的音频信号的强度和纯净度均有所不同(如语音信号的特征为短时平稳性,音乐信号的特征为周期性和高频成分丰富,噪声信号的特征为噪声类高斯性等),因此,通过将解码器中网络层的个数设计为可搜索的结构参数,在语音分离超网络包括多个解码器的情况下,在实现多任务语音分离功能的基础上,还能够挖掘来自不同声源的音频信号的特性,从而提高语音分离网络的准确度。
104.2、网络层的mhsa模块中自注意力头的个数。
105.由于自注意力头的数量对编码器和解码器的运行性能影响较大,因此,通过将每个网络层中mhsa模块的自注意力头的个数设计为可搜索的结构参数,能够自动搜索出最适合编码器和解码器的自注意力头的个数,从而改善编码器和解码器的运行性能。
106.3、网络层的ffn模块中隐藏层的神经元个数。
107.由于ffn模块中隐藏层的神经元个数往往决定了编码器和解码器的拟合能力,因此,通过将每个网络层中ffn模块中隐藏层的神经元个数设计为可搜索超参数,能够自动搜索出最适合编码器和解码器的神经元个数,从而改善编码器和解码器的拟合能力。
108.示意性地,下面参考图3和图4,对服务器获取到的语音分离超网络进行举例说明。
109.图3是本公开实施例提供的一种语音分离超网络的结构示意图。如图3所示,以混合音频信号包括语音信号、音乐信号以及背景噪声信号为例进行介绍,该语音分离超网络
包括编码器和多个解码器,混合音频信号经过短时傅里叶变换(short-time fourier transform,stft)后得到频谱特征,该频谱特征作为编码器的输入特征,其中,编码器的输出层分别与多个解码器的输入层连接,解码器的输出特征经过短时傅里叶逆变换(inverse short-time fourier transform,istft)后得到相应的音频信号。编码器和解码器均包括顺序连接的多个网络层,即conformer block,该编码器和解码器所对应的搜索空间如图4所示。
110.图4是本公开实施例提供的一种搜索空间的结构示意图。如图4所示,编码器和解码器中每个网络层由顺序连接的四个模块组成,即第一ffn模块、mhsa模块、卷积模块以及第二ffn模块。其中,网络层的个数、第一ffn模块中隐藏层的神经元个数、mhsa模块中自注意力头的个数以及第二ffn模块中隐藏层的神经元个数均配置为可搜索的。示意性地,以编码器为例,该编码器对应的搜索空间中配置的结构参数包括:网络层的个数{6,7,8,9,10,11,12};mhsa模块中自注意力头的个数{2,3,4,5,6};ffn模块中隐藏层的神经元个数{512,768,1024,1280,1536}。以解码器为例,该解码器对应的搜索空间中配置的结构参数包括:网络层的个数{4,5,6,7,8};mhsa模块中自注意力头的个数{2,3,4};ffn模块中隐藏层的神经元个数{128,256,512,640,768}。需要说明的是,此处举例仅为示意性说明,结构参数能够根据需求进行设置,而且,网络层中各个模块的具体结构也能够根据实际需求进行设置,对此不作限定。
111.经过上述步骤201,服务器获取到语音分离超网络,该语音分离超网络中编码器和解码器的结构参数均为可搜索的,换言之,通过在编码器和解码器对应的搜索空间中进行搜索,能够从该语音分离超网络中采样得到多个语音分离子网络,在基于样本音频信号迭代训练该语音分离超网络之后,能够基于该语音分离超网络生成网络性能最符合要求的目标语音分离子网络。
112.在步骤202中,服务器基于多个样本音频信号,迭代训练该语音分离超网络。
113.在本公开实施例中,该多个样本音频信号携带标注音频信号。示意性地,样本音频信号为来自不同声源的多个音频信号的混合音频信号,相应地,该样本音频信号的标注音频信号为该多个音频信号。例如,该样本音频信号为语音信号、音乐信号和噪声信号的混合音频信号,该样本音频信号的标注音频信号分别为语音信号、音乐信号和噪声信号。在一些实施例中,以任一样本音频信号为例,服务器获取来自不同声源的多个音频信号,对该多个音频信号进行混合,得到混合音频信号,将该混合音频信号作为样本音频信号,将该多个音频信号作为该样本音频信号的标注音频信号。需要说明的是,本公开实施例对于样本音频信号的标注音频信号的种类及数量不作限定。
114.示意性地,在服务器训练语音分离超网络的第i次迭代过程中,基于该编码器和该解码器对应的搜索空间,确定该语音分离超网络在本次迭代过程中的多个语音分离子网络,该多个语音分离子网络的结构参数是基于多种不同的结构参数组合方式从编码器和解码器对应的搜索空间中确定的,基于该多个语音分离子网络和本次迭代过程中输入的样本音频信号,获取本次迭代过程中输入的样本音频信号的语音分离结果,基于该语音分离结果和标注音频信号,确定该语音分离超网络的损失值,基于该损失值,更新该语音分离超网络的网络参数,其中,i为正整数。通过这种方式,能够在一次迭代中基于多个语音分离子网络来训练语音分离超网络,从而加速网络收敛,提高了网络训练效率。另外,这一过程的可
选实施方式会在后续图5所示实施例中进行详细介绍,在此不再赘述。
115.在步骤203中,服务器基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。
116.在本公开实施例中,该目标语音分离子网络用于对混合音频信号进行分离以得到干净语音信号。服务器基于该语音分离超网络的网络参数和该语音分离超网络中编码器和解码器对应的搜索空间,生成多个候选语音分离子网络,从该多个候选语音分离子网络中确定符合目标条件的目标语音分离子网络。需要说明的是,该多个候选语音分离子网络能够直接继承语音分离超网络的网络参数,无需再次训练,因此,服务器能够基于验证集直接对该多个候选语音分离子网络的网络性能进行评估,得到该多个候选语音分离子网络的网络评估结果,基于该多个候选语音分离子网络的网络评估结果,从该多个候选语音分离子网络中确定该目标语音分离子网络。这一过程也可以理解为在语音分离超网络中搜索子网络的过程,上述确定出的目标语音分离子网络也即是语音分离超网络中网络性能最符合要求的子网络。
117.进一步地,在一些实施例中,服务器基于该多个样本音频信号和标注音频信号,训练该目标语音分离子网络,在将训练后的目标语音分离子网络应用于语音分离时,能够准确地对混合音频信号进行分离,得到干净语音信号和至少一个背景音频信号。例如,以服务器为视频录制类应用程序提供后台服务为例,用户在通过该视频录制类应用程序录制视频时,服务器往往会接收到来自不同声源的混合音频信号,如人声、音乐声以及噪声,通过该目标语音分离子网络,能够将该混合音频信号进行分离,得到人声对应的干净语音信号、音乐声对应的音乐信号以及噪声对应的噪声信号,从而为视频录制类应用程序的其他功能提供基础。
118.经过上述步骤201至步骤203,本公开实施例通过设计一种语音分离超网络中编码器和解码器对应的搜索空间,将编码器和解码器的结构参数配置为可搜索的结构参数,从而便于服务器应用神经网络结构搜索(neural architecture search,nas)算法(一种用来设计神经网络的算法,该算法通过设计一定的搜索空间,构建一个超网络,在训练超网络之后,基于搜索空间在超网络中寻找在验证集上表现最好的子网络),基于语音分离超网络自动生成符合条件的目标语音分离子网络。
119.反观相关技术,在生成语音分离网络时,往往需要手动调节网络中不同网络层的结构参数,这一过程依赖于开发人员的专业知识和大量的实验资源,导致语音分离网络的生成过程耗时耗力且效率低下。又例如,通过简单堆叠多个网络层的方式,搭建编码器和解码器,生成语音分离网络,其中,往往会基于相同的结构参数配置编码器和解码器中的多个网络层,导致网络整体存在一定的冗余性。
120.综上,在本公开实施例中,在给定多个样本音频信号的基础上,训练获取到的语音分离超网络,其中,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和搜索空间,该搜索空间配置有多个网络层的结构参数。进一步地,基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。在上述过程中,通过设计一种配置有结构参数的搜索空间,实现了基于语音分离超网络,自动生成符合目标条件的目标语音分离子网络,避免了手动调节网络中不同网络层的结构参数,提高了语音分离网络的生成效率。
121.根据上述图2所示的实施例,对本公开提供的语音分离网络生成方法进行了简要说明。下面基于图5所示实施例,对该语音分离网络生成方法进行详细介绍。
122.图5是本公开实施例提供的一种语音分离网络生成方法的流程图。如图5所示,以该方法由服务器执行为例进行说明,示意性地,该方法包括下述步骤501至步骤510。
123.在步骤501中,服务器获取语音分离超网络。
124.在本公开实施例中,本步骤与上述步骤201同理,故不再赘述。
125.下面通过步骤502至步骤504,以训练语音分离超网络的第i次迭代过程为例(i为正整数),对服务器基于多个样本音频信号,迭代训练语音分离超网络的过程进行介绍。
126.在步骤502中,服务器从多个样本音频信号中确定多组样本音频信号,每组样本音频信号包括至少一个样本音频信号。
127.在本公开实施例中,服务器获取多个样本音频信号,基于目标数量,从该多个样本语音信号中确定多组样本音频信号,即该多组样本音频信号的组数等于该目标数量。该目标数量为预设数量,能够根据需求进行设置,对此不作限定。
128.在步骤503中,服务器基于该编码器和该解码器对应的搜索空间,确定该语音分离超网络在本次迭代过程中的多个语音分离子网络。
129.在本公开实施例中,服务器在该编码器和该解码器对应的搜索空间中进行搜索,基于多种不同的结构参数组合方式,确定多个语音分离子网络的结构参数,该多个语音分离子网络的个数等于前述目标数量。即,前述多组样本音频信号的组数和该多个语音分离子网络的个数相同,通过这种方式,为一次迭代过程中有多个语音分离子网络参与训练提供技术支撑。在一些实施例中,该多个语音分离子网络的结构参数是从搜索空间中随机采样而确定的,对此不作限定。
130.在步骤504中,服务器将各组样本音频信号按照各个语音分离子网络对应的传播路径在该语音分离超网络中进行前向传播,得到各组样本音频信号的语音分离结果。
131.在本公开实施例中,一组样本音频信号对应一个语音分离子网络。服务器基于各个语音分离子网络对应的掩膜来实现样本音频信号在语音分离超网络中的前向传播。其中,掩膜是由0或者1组成的向量,其维度与网络层输出数据的维度相同,示意性地,掩膜能够表示多大比例的神经元输出是有效的,因此,掩膜也即间接指示了参与训练的神经元个数,从而起到了动态训练的作用。或者说,语音分离超网络中神经元的个数其实是固定的(即编码器和解码器对应的结构参数均为最大值),但通过掩膜能够决定哪些神经元参与训练,从而实现一次迭代过程中按照多条传播路径进行前向传播,也即实现了所有可学习的结构参数均参与网络训练。
132.示意性地,以多组样本音频信号中的第n组样本音频信号为例(n为正整数),服务器将该第n组样本音频信号输入该语音分离超网络,基于第n个语音分离子网络对应的掩膜在该语音分离超网络中进行前向传播,得到该第n组样本音频信号的语音分离结果,该第n语音分离子网络对应的掩膜指示该第n个语音分离子网络的传播路径上参与训练的神经元个数。
133.在步骤505中,服务器基于各组样本音频信号的语音分离结果和标注音频信号,确定语音分离超网络的损失值。
134.在本公开实施例中,服务器基于各组样本音频信号的语音分离结果和标注音频信
号之间的差值来构建损失函数,基于该损失函数,计算得到本次迭代过程的损失值。需要说明的是,本公开实施例中的损失函数可以是神经网络训练过程中常用的各种损失函数,例如绝对值损失函数、余弦相似度损失函数、平方损失函数、交叉熵损失函数等,本公开实施例对此不作限定。
135.在步骤506中,若损失值或本次迭代满足迭代截止条件,输出训练后的语音分离超网络,若不满足,更新该语音分离超网络的网络参数,基于更新后的语音分离超网络,进行第i+1次迭代。
136.在本公开实施例中,迭代截止条件为损失值(也称为误差值)小于设定阈值,该设定阈值能够根据实际需求进行设置,比如根据语音分离超网络的准确度进行设置。在另一些实施例中,迭代截止条件为迭代次数达到目标次数,或者训练时长达到目标时长,本公开实施例对于迭代截止条件的具体内容不作限定。在本次迭代过程中,若损失值或本次迭代满足迭代截止条件,表明本次迭代的语音分离超网络符合要求,输出该语音分离超网络。若不满足,服务器更新该语音分离超网络的网络参数,基于更新后的语音分离超网络,进行第i+1次迭代,也即是再次从上述步骤502开始执行,直至满足迭代截止条件时停止训练,得到训练好的语音分离超网络。
137.另外,需要说明的是,本公开实施例对于上述步骤502至步骤506的执行顺序不作限定,在一些实施例中,服务器同步执行上述步骤502和步骤503,或者,服务器先执行步骤503再执行步骤502,等等。应理解,在上述第i次迭代中,样本音频信号的组数、语音分离子网络的个数、掩膜个数以及传播路径的条数均相同,从而实现了一次迭代过程中有多个语音分离子网络参与训练,能够加速收敛,提高网络训练效率。
138.在步骤507中,服务器基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,生成多个候选语音分离子网络。
139.在本公开实施例中,对于任一个候选语音分离子网络,服务器基于该编码器和该解码器对应的搜索空间,确定该候选语音分离子网络中编码器和解码器的结构参数;基于训练后的该语音分离超网络的网络参数和该候选语音分离子网络中编码器和解码器的结构参数,生成该候选语音分离子网络。也即是,候选语音分离子网络能够直接继承训练后的语音分离超网络的网络参数。
140.在一些实施例中,该多个候选语音分离子网络是从语音分离超网络中采样得到的全部语音分离子网络。在另一些实施例中,该多个候选语音分离子网络是从语音分离超网络中采样得到的部分语音分离子网络,例如,服务器基于预设数量,基于该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,随机生成预设数量个候选语音分离子网络,本公开实施例对此不作限定。
141.在步骤508中,服务器基于验证集对该多个候选语音分离子网络的网络性能进行评估,得到该多个候选语音分离子网络的网络评估结果。
142.在步骤509中,服务器基于该多个候选语音分离子网络的网络评估结果,从该多个候选语音分离子网络中确定该目标语音分离子网络。
143.在本公开实施例中,服务器将该多个候选语音分离子网络中网络评估结果最好的候选语音分离子网络作为目标语音分离子网络。该目标语音分离子网络也可以理解为是从语音分离超网络中搜索到的具备最符合要求的结构参数的语音分离子网络。
144.需要说明的是,在上述步骤507至步骤509中,是以服务器直接从语音分离超网络中采样得到多个候选语音分离子网络为例进行介绍的,在另一些实施例中,服务器还能够应用进化算法,通过不断迭代进化的方式,从网络集群中确定目标语音分离子网络。下面以第q次迭代过程为例(q为正整数),对这一可选实施方式进行介绍,包括下述几个步骤:
145.步骤1、基于网络集群中多个第一语音分离子网络的网络评估结果,从该网络集群中确定符合进化条件的至少一个第二语音分离子网络。
146.其中,该网络集群包括多个第一语音分离子网络,该第一语音分离子网络基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间生成。这一过程与上述步骤507同理,故不再赘述。
147.步骤2、对该至少一个第二语音分离子网络进行交叉变异,生成至少一个第三语音分离子网络,基于该至少一个第三语音分离子网络更新该网络集群。
148.其中,服务器对该至少一个第二语音分离子网络的网络结构进行交叉变异,得到至少一个第三语音分离子网络,将该至少一个第三语音分离子网络添加到该网络集群中,得到更新后的该网络集群。在另一些实施例中,网络集群中语音分离子网络的数量是固定的,服务器基于多个第一语音分离子网络的网络评估结果,淘汰一部分第一语音分离子网络,将该至少一个第三语音分离子网络添加到该网络集群中,本公开实施例对此不作限定。
149.步骤3、若本次迭代满足进化截止条件,从更新后的该网络集群中确定该目标语音子分离网络,若不满足,基于更新后的该网络集群进行第q+1次迭代。
150.其中,进化截止条件可以是迭代次数达到目标次数,或者迭代时长达到目标时长等等,对此不作限定。若本次迭代满足进化截止条件,基于更新后的网络集群中语音分离子网络的网络评估结果,从该网络集群中确定目标语音分离子网络,若不满足,基于更新后的网络集群,进行第q+1次迭代,也即是再次从上述步骤1开始执行,直至满足迭代截止条件时停止进化,从网络集群中确定目标语音子网络。通过上述方式,应用进化算法来生成目标语音分离子网络,能够扩大候选语音分离子网络的范围,尽可能基于语音分离超网络生成网络性能最符合要求的子网络,有效确保了目标语音分离子网络的准确度。
151.应理解,上述进化算法仅为举例说明,服务器还能够应用其他神经网络搜索算法来生成目标语音分离子网络,本公开实施例对于服务器如何基于语音分离超网络生成目标语音分离子网络的过程不作限定。
152.在步骤510中,服务器基于该多个样本音频信号和标注音频信号,训练该目标语音子分离网络。
153.在本公开实施例中,经过上述步骤501至步骤509,服务器基于训练后的语音分离超网络生成了符合目标条件的目标语音分离子网络,通过重新训练该目标语音分离子网络,能够继续优化该目标语音分离子网络,提升网络准确度。而且,在将该训练后的目标语音分离子网络应用于语音分离时,能够有效提升语音分离结果的准确度,下面对这一过程进行简要介绍,包括如下步骤a至步骤c。
154.步骤a、对待处理的混合音频信号进行短时傅里叶变换,得到该混合音频信号的频谱特征。在一些实施例中,服务器在对混合音频信号进行短时傅里叶变换的情况系啊,存储该混合音频信号的相位信息,便于后续对分离出的音频信号进行真实还原。
155.步骤b、将该频谱特征输入该目标语音分离子网络,通过该目标语音分离子网络中
的编码器对该混合音频信号进行编码,得到该混合音频信号的编码特征。
156.步骤c、通过该目标语音分离子网络中的多个解码器,对该编码特征进行解码,得到该混合音频信号的干净语音信号和至少一个背景音频信号。例如,该至少一个背景音频信号包括音乐信号和噪声信号,实现了多任务语音分离功能,对此不作限定。
157.另外,在上述实施例中,服务器基于与训练语音分离超网络时所用的样本音频信号相同的样本音频信号,训练目标语音分离子网络,通过这种方式,能够基于同一批样本音频信号先后训练语音分离超网络和语音分离子网络,能够提高语音分离子网络的准确度。在另一些实施例中,服务器基于与训练语音分离超网络时所用的样本音频信号不同的样本音频信号,训练目标语音分离子网络,通过这种方式,能够提高语音分离子网络的泛化性能。当然,服务器还能够先基于与训练语音分离超网络时所用的样本音频信号相同的样本音频信号,训练目标语音分离子网络,再基于与训练语音分离超网络时所用的样本音频信号不同的样本音频信号,训练目标语音分离子网络,以得到准确度和泛化性能较高的目标语音分离子网络,本公开实施例对此不作限定。
158.需要说明的是,本公开实施例提供的语音分离网络生成方法在类似的网络结构上都可以快速的得到应用,实现网络更高效且性能更好。除此之外,一次迭代有多个子网络参与训练的方式也极大地提升了神经网络搜索的效率,节约大量的资源消耗。在开源的多任务语音分离数据集上,本公开实施例相比相关技术(多种已有的语音分离网络),在指标信号失真比(signal-to-distortion ratio,sdri)上有明显的提升,网络参数量(parameters)存在明显减少,每秒浮点运算量(floating point operations per second,flops)也存在明显的减少。如下述表1和表2所示,以语音分离结果包括语音信号(speech)、音乐信号(music)和噪声信号(noise)为例进行评估。表1是本公开实施例提供的目标语音分离子网络与相关技术提供的语音分离网络的性能对比。表2是本公开实施例提供的超网络训练方法与相关技术的性能对比。
159.表1
[0160][0161]
表2
[0162][0163]
综上,在本公开实施例中,在给定多个样本音频信号的基础上,训练获取到的语音分离超网络,其中,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和搜索空间,该搜索空间配置有多个网络层的结构参数。进一步地,基于该语音分离超网络,生成符合目标条件的目标语音分离子网络。在上述过程中,通过设计一种配置有结构参数的搜索空间,实现了基于语音分离超网络,自动生成符合目标条件的目标语音分离子网络,避免了手动调节网络中不同网络层的结构参数,提高了语音分离网络的生成效率。
[0164]
图6是本公开实施例提供的一种语音分离网络生成装置的框图。参照图6,该装置包括获取单元601、训练单元602和生成单元603。
[0165]
获取单元601,被配置为执行获取语音分离超网络,该语音分离超网络包括编码器和解码器,该编码器和该解码器均包括多个网络层和,该搜索空间配置有该多个网络层的结构参数,该结构参数包括下述至少一项:该网络层的个数、该网络层的多头自注意力机制模块中自注意力头的个数、该网络层的前向感知模块中隐藏层的神经元个数。
[0166]
训练单元602,被配置为执行基于多个样本音频信号,迭代训练该语音分离超网络,其中,在第i次迭代过程中,基于该编码器和该解码器对应的搜索空间,确定该语音分离超网络在本次迭代过程中的多个语音分离子网络,该多个语音分离子网络的结构参数是基于多种不同的结构参数组合方式从该编码器和该解码器对应的搜索空间中确定的,基于该多个语音分离子网络和本次迭代过程中输入的样本音频信号,获取本次迭代过程中输入的样本音频信号的语音分离结果,基于该语音分离结果和标注音频信号,确定该语音分离超网络的损失值,基于该损失值,更新该语音分离超网络的网络参数,i为正整数。
[0167]
生成单元603,被配置为执行基于训练后的该语音分离超网络,生成符合目标条件的目标语音分离子网络。
[0168]
在一些实施例中,该装置还包括:确定单元,被配置为执行:
[0169]
从该多个样本音频信号中确定多组样本音频信号,每组样本音频信号包括至少一个样本音频信号;
[0170]
该训练单元602,被配置为执行:
[0171]
将各组样本音频信号按照各个语音分离子网络对应的传播路径在该语音分离超网络中进行前向传播,得到各组样本音频信号的语音分离结果,其中,一组样本音频信号对应一个语音分离子网络。
[0172]
在一些实施例中,该训练单元602,被配置为执行:
[0173]
基于各组样本音频信号的语音分离结果和标注音频信号,确定该语音分离超网络的损失值;
[0174]
若该损失值或本次迭代满足迭代截止条件,输出训练后的该语音分离超网络;
[0175]
若不满足,更新该语音分离超网络的网络参数,基于更新后的该语音分离超网络,进行第i+1次迭代。
[0176]
在一些实施例中,该训练单元602,被配置为执行:
[0177]
将第n组样本音频信号输入该语音分离超网络,基于第n个语音分离子网络对应的掩膜在该语音分离超网络中进行前向传播,得到该第n组样本音频信号的语音分离结果,该第n个语音分离子网络对应的掩膜指示该第n个语音分离子网络的传播路径上参与训练的神经元个数,n为正整数。
[0178]
在一些实施例中,该生成单元603被配置为执行:
[0179]
基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间,生成多个候选语音分离子网络;
[0180]
基于验证集对该多个候选语音分离子网络的网络性能进行评估,得到该多个候选语音分离子网络的网络评估结果;
[0181]
基于该多个候选语音分离子网络的网络评估结果,从该多个候选语音分离子网络中确定该目标语音分离子网络。
[0182]
在一些实施例中,该生成单元603被配置为执行:
[0183]
对于任一个候选语音分离子网络,基于该编码器和该解码器对应的搜索空间,确定该候选语音分离子网络中编码器和解码器的结构参数;
[0184]
基于训练后的该语音分离超网络的网络参数和该候选语音分离子网络中编码器和解码器的结构参数,生成该候选语音分离子网络。
[0185]
在一些实施例中,该生成单元603被配置为执行:
[0186]
应用进化算法,在第q次迭代过程中,基于网络集群中多个第一语音分离子网络的网络评估结果,从该网络集群中确定符合进化条件的至少一个第二语音分离子网络,该第一语音分离子网络基于训练后的该语音分离超网络的网络参数和该语音分离超网络中该编码器和该解码器对应的搜索空间生成,q为正整数;
[0187]
对该至少一个第二语音分离子网络进行交叉变异,生成至少一个第三语音分离子网络,基于该至少一个第三语音分离子网络更新该网络集群;
[0188]
若本次迭代满足进化截止条件,从更新后的该网络集群中确定该目标语音子分离网络,若不满足,基于更新后的该网络集群进行第q+1次迭代。
[0189]
在一些实施例中,该训练单元602,还被配置为执行:
[0190]
基于多个样本音频信号和标注音频信号,训练该目标语音分离子网络。
[0191]
在一些实施例中,该装置还包括:语音分离单元,被配置为执行:
[0192]
对待处理的混合音频信号进行短时傅里叶变换,得到该混合音频信号的频谱特征;
[0193]
将该频谱特征输入该目标语音分离子网络,通过该目标语音分离子网络中的编码器对该混合音频信号进行编码,得到该混合音频信号的编码特征;
[0194]
通过该目标语音分离子网络中的多个解码器,对该编码特征进行解码,得到该混合音频信号的干净语音信号和至少一个背景音频信号。
[0195]
通过上述装置,在给定多个样本音频信号的基础上,迭代训练获取到的语音分离超网络,其中,该语音分离超网络包括编码器和解码器,编码器和解码器均包括多个网络层
和搜索空间,该搜索空间配置有多个网络层的结构参数。进一步地,基于该语音分离超网络,生成符合目标条件的目标语音分离子网络。在上述过程中,通过设计一种配置有结构参数的搜索空间,实现了基于语音分离超网络,自动生成符合目标条件的目标语音分离子网络,避免了手动调节网络中不同网络层的结构参数,提高了语音分离网络的生成效率。
[0196]
需要说明的是:上述实施例提供的语音分离网络生成装置在生成语音分离网络时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的语音分离网络生成装置与语音分离网络生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0197]
图7是本公开实施例提供的一种服务器的框图。示意性地,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(central processing units,cp u)701和一个或多个的存储器702,其中,该一个或多个存储器702中存储有至少一条程序代码,该至少一条程序代码由该一个或多个处理器701加载并执行以实现上述各个方法实施例提供的语音分离网络生成方法。当然,该服务器700还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器700还可以包括其他用于实现设备功能的部件,在此不做赘述。
[0198]
在示例性实施例中,还提供了一种包括程序代码的计算机可读存储介质,例如包括程序代码的存储器702,上述程序代码可由服务器700的处理器701执行以完成上述语音分离网络生成方法。可选地,计算机可读存储介质可以是只读内存(read-only memory,rom)、随机存取存储器(random access memory,ram)、只读光盘(compact-disc read-only memory,cd-rom)、磁带、软盘和光数据存储设备等。
[0199]
在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述语音分离网络生成方法。
[0200]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0201]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!