首页> 中国专利> 语音波形生成方法、装置、服务器及存储介质

语音波形生成方法、装置、服务器及存储介质

摘要

本申请实施例提供一种语音波形生成方法、装置、服务器及存储介质,该方法包括:获取输入文本;从输入文本中提取条件特征;将条件特征输入训练得到的波形生成模型,对条件特征进行处理,得到语音波形;波形生成模型包括先验分布估计网络和波形生成网络,先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,波形生成网络用于根据条件特征和先验分布估计网络的输出结果生成语音波形。本申请实施例可以提高波形生成效率。

著录项

  • 公开/公告号CN113053356A

    专利类型发明专利

  • 公开/公告日2021-06-29

    原文格式PDF

  • 申请/专利权人 科大讯飞股份有限公司;

    申请/专利号CN201911382443.0

  • 发明设计人 伍宏传;江源;胡国平;胡郁;

    申请日2019-12-27

  • 分类号G10L13/08(20130101);G10L19/00(20130101);G10L19/04(20130101);G10L21/0332(20130101);G10L25/12(20130101);G10L25/18(20130101);G10L25/24(20130101);G10L25/30(20130101);G10L15/06(20130101);

  • 代理机构44202 广州三环专利商标代理有限公司;

  • 代理人熊永强

  • 地址 230088 安徽省合肥市高新开发区望江西路666号

  • 入库时间 2023-06-19 11:39:06

说明书

技术领域

本申请涉及机器学习技术领域,具体涉及一种语音波形生成方法、装置、服务器及存储介质。

背景技术

近年来,随着深度学习的快速发展,语音波形生成方法的研究也得到了长足的发展,各种基于深度神经网络的波形生成模型纷纷涌现,如基于卷积神经网络(Convolutional Neural Network,CNN)的WaveNet、基于循环神经网络的WaveRNN等。WaveNet这类波形生成方法都是基于自回归的方式逐点生成语音波形,对于语音这种高时域分辨率的波形序列,其波形生成效率很低。

发明内容

本申请实施例提供一种语音波形生成方法、装置、服务器及存储介质,可以提高波形生成效率。

本申请实施例的第一方面提供了一种语音波形生成方法,包括:

获取输入文本;

从所述输入文本中提取条件特征;

将所述条件特征输入训练得到的波形生成模型,对所述条件特征进行处理,得到语音波形;所述波形生成模型包括先验分布估计网络和波形生成网络,所述先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,所述波形生成网络用于根据所述条件特征和所述先验分布估计网络的输出结果生成所述语音波形。

本申请实施例的第二方面提供了一种模型训练方法,所述方法包括:

获取语音训练样本,所述语音训练样本包括自然语音波形和与所述自然语音波形对应的文本;

从所述自然语音波形或所述自然语音波形对应的文本中提取自然条件特征;

将所述自然语音波形和所述自然条件特征输入所述波形生成模型,得到训练结果;

根据所述训练结果对所述波形生成模型的模型参数进行优化。

本申请实施例的第三方面提供了一种模型训练装置,所述装置包括:

第一获取单元,用于获取语音训练样本,所述语音训练样本包括自然语音波形和与所述自然语音波形对应的文本;

第一提取单元,用于从所述自然语音波形或所述自然语音波形对应的文本中提取自然条件特征;

训练单元,用于将所述自然语音波形和所述自然条件特征输入所述波形生成模型,得到训练结果;

优化单元,用于根据所述训练结果对所述波形生成模型的模型参数进行优化。

本申请实施例的第四方面提供了一种语音波形生成装置,所述装置包括:

获取单元,用于获取输入文本;

提取单元,用于从所述输入文本中提取条件特征;

波形生成单元,用于将所述条件特征输入训练得到的波形生成模型,对所述条件特征进行处理,得到语音波形;

所述波形生成模型包括先验分布估计网络和波形生成网络,所述先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,所述波形生成网络用于根据所述条件特征和所述先验分布估计网络的输出结果生成所述语音波形。

本申请实施例的第五方面提供了一种服务器,包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如本申请实施例第一方面中的步骤指令。

本申请实施例的第六方面提供了一种服务器,包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如本申请实施例第二方面中的步骤指令。

本申请实施例的第七方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。

本申请实施例的第八方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第二方面中所描述的部分或全部步骤。

本申请实施例的第九方面提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。

本申请实施例的第十方面提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第二方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。

本申请实施例中,首先获取输入文本;从输入文本中提取条件特征;将条件特征输入训练得到的波形生成模型,对条件特征进行处理,得到语音波形;波形生成模型包括先验分布估计网络和波形生成网络,所述先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,所述波形生成网络用于根据所述条件特征和所述先验分布估计网络的输出结果生成所述语音波形。本申请从输入文本中提取条件特征,将条件特征输先验分布估计网络,得到先验分布估计网络的输出结果,波形生成网络可以根据条件特征和先验分布估计网络的输出结果生成语音波形。与基于自回归的方式逐点生成语音波形相比,本申请的波形生成模型可以直接根据条件特征生成语音波形,可以提高波形生成模型的波形生成效率。由于先验分布估计网络可以学习到自然语音波形的编码信息,可以提高波形生成模型生成的语音波形的质量。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种系统架构的结构示意图;

图2是本申请实施例提供的一种语音波形生成方法的流程示意图;

图3是本申请实施例提供的一种波形生成模型的结构示意图;

图4是本申请实施例提供的一种模型训练方法的流程示意图;

图5是是本申请实施例提供的一种VAE-GAN模型的结构示意图;

图6是本申请实施例提供的一种多尺度判别器的结构示意图;

图7是本申请实施例提供的一种模型训练装置的结构示意图;

图8是本申请实施例提供的一种语音波形生成装置的结构示意图;

图9是本申请实施例提供的一种服务器的结构示意图。

具体实施方式

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

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。

下面对本申请实施例进行详细介绍。

请参阅图1,图1是本申请实施例提供的一种系统架构的结构示意图,如图1所示,系统架构包括服务器100和与服务器100通信连接的至少一个电子设备101。用户持有电子设备101;电子设备101上可以安装有客户端,服务器100上可以安装有服务端。客户端是指与服务器相对应,为客户提供本地服务的程序。服务端也是在服务器上安装的一段程序,服务端是为客户端服务的,服务的内容诸如向客户端提供计算或者应用服务,向客户端提供资源,保存客户端数据等。服务器100可以直接与电子设备101通过互联网建立通信连接,服务端100也可以通过其他服务器与电子设备101通过互联网建立通信连接。

本申请实施例所涉及到的服务器可以包括云服务器或云虚拟机。本申请实施例所涉及到的电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,UE),移动台(mobile station,MS),终端设备(terminal device)等等。

本申请实施例中的客户端可以向用户提供语音合成服务、语音播放服务、内容显示服务等。比如,语音合成客户端可以向用户提供语音合成服务。举例来说,用户可以向语音合成客户端发送语音合成指令,语音合成客户端向服务端发送语音合成请求,该语音合成请求携带条件特征(比如,文字特征或声学参数),服务端可以将该条件特征输入训练好的波形生成模型,通过该训练好的波形生成模型生成语音波形,服务端将生成的语音波形发送给语音合成客户端,语音合成客户端可以播放该语音波形对应的语音。本申请实施例可以采用训练好的波形生成模型生成语音波形,可以提高波形生成模型的波形生成效率。由于先验分布估计网络可以学习到自然语音波形的编码信息,还可以提高波形生成模型生成的语音波形的质量。

请参阅图2,图2是本申请实施例提供的一种语音波形生成方法的流程示意图。如图2所示,该语音波形生成方法应用于服务器,该语音波形生成方法包括如下步骤。

201,服务端获取输入文本。

本申请实施例中的语音波形生成方法可以应用于语音合成(text to speech,TTS)领域。对于一段待合成文本(text),采用本申请的语音波形生成方法,即可合成一段语音波形。本申请的输入文本可以是一段待合成文本。输入文本可以是中文文本或者其他语言的文本。

202,服务端从输入文本中提取条件特征。

条件特征可以包括文本特征或声学参数。文本特征和声学特征是波形生成模型可以直接识别的特征。

文本特征可以包括音素序列、音节、字等。音素序列是由一串音素组成的序列。比如,如果第一输入文本为“普通话”,则对应的第三文本特征可以包括“p,u,t,o,ng,h,u,a”这八个音素,由这八个音素组成的序列则为音素序列。

声学参数可以包括基频倒谱、滤波器组(filter bank,FB)特征、快速傅里叶变换(fast Fourier transform,FFT)谱、频谱等参数。

可选的,若条件特征包括第一文本特征,步骤202可以包括如下步骤:

服务端通过文本分析工具从输入文本中提取第一文本特征。

其中,文本分析工具可以是一套软件程序,用于对输入的文本进行分析,输出文本特征。比如,文本分析工具可以将该输入文本输入至文本分析工具,文本分析工具输出该输入文本对应的音素序列。

若条件特征包括声学参数,步骤202可以包括如下步骤:

服务端通过文本分析工具从输入文本中提取第二文本特征,将第二文本特征输入声学模型,预测得到声学参数。

其中,声学模型可以采用隐马尔科夫模型或神经网络(比如,CNN、RNN、LSTM)进行建模。

203,服务端将条件特征输入训练得到的波形生成模型,对条件特征进行处理,得到语音波形;波形生成模型包括先验分布估计网络和波形生成网络,先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,波形生成网络用于根据所述条件特征和先验分布估计网络的输出结果生成语音波形。

本申请实施例中,服务端将条件特征输入波形生成模型后,可以得到语音波形。如果条件特征为文本特征,波形生成模型可以相当于语音合成器。如果条件特征为声学参数,波形生成模型可以相当于声码器。

其中,波形生成模型可以包括变分自编码器(variational auto-encoder,VAE)与生成式对抗网络(generative adversarial network,GAN)模型,可以简称为VAE-GAN模型,VAE-GAN模型可以由VAE网络和GAN组成。训练得到的波形生成模型可以是训练好的波形生成模型。

可选的,步骤203中,服务端将条件特征输入训练得到的波形生成模型,对条件特征进行处理,得到语音波形,具体可以包括如下步骤:

(11)服务端利用先验分布估计网络根据条件特征得到先验分布估计网络的输出结果,从先验分布估计网络的输出结果中确定条件特征的隐变量;

(12)服务端利用波形生成网络根据条件特征和条件特征的隐变量生成语音波形。

本申请实施例中,可以从输入文本中提取条件特征,将条件特征输入先验分布估计网络,得到先验分布估计网络的输出结果,从先验分布估计网络的输出结果中确定条件特征的隐变量,波形生成网络可以根据条件特征和条件特征的隐变量生成语音波形。与基于自回归的方式逐点生成语音波形相比,本申请的波形生成模型可以直接根据条件特征生成语音波形,可以提高波形生成模型的波形生成效率。由于先验分布估计网络可以学习到自然语音波形的编码信息,可以提高波形生成模型生成的语音波形的质量。

可选的,步骤(11)中,服务端利用先验分布估计网络根据条件特征得到先验分布估计网络的输出结果,具体可以包括如下步骤:

服务端利用先验分布估计网络根据条件特征得到条件特征的隐变量的先验分布。

其中,隐变量的先验分布可以是高斯分布,先验分布可以包括高斯分布的均值和方差。

可选的,步骤(11)中,服务端从先验分布估计网络的输出结果中确定条件特征的隐变量,具体可以包括如下步骤:

服务端从条件特征的隐变量的先验分布中采样,得到条件特征的隐变量。

其中,服务端可以采用逆变换法(Inverse Transform Method,ITM)从条件特征的隐变量的先验分布中采样,得到条件特征的隐变量。服务端还可以采用拒绝采样法(Rejection Sampling)、重要性采样及其重采样(Importance Sampling,Sampling-Importance-Resampling)、马尔科夫蒙特卡洛采样法(Markov Chain Monte Carlo)中的任一种从条件特征的隐变量的先验分布中采样,得到条件特征的隐变量。

其中,先验分布估计网络可以由反卷积网络构成。用于对输入的条件特征做上采样,得到条件特征的隐变量的先验分布。

举例来说,条件特征记为y,隐变量记为z。训练好的先验分布估计网络记为T_prior_net,训练好的先验分布估计网络用来估计隐变量z的先验分布p(z|y)。训练好的先验分布估计网络会先将输入的条件特征y经过反卷积网络上采样,然后输出条件特征y的隐变量z的先验分布。隐变量z可以从先验分布p(z|y)中采样得到。

μ

p(z|y)=N(μ

z=μ

其中,μ

可选的,步骤(12)中,服务端利用波形生成网络根据条件特征和条件特征的隐变量生成语音波形,具体可以包括如下步骤:

(121)服务端将条件特征的隐变量和条件特征输入波形生成网络,得到先验生成波形分布;

(122)服务端对先验生成波形分布进行概率分布变换,得到语音波形。

其中,概率分布变换可以包括高斯变换、拉普拉斯变换等。

如图3所示,图3是本申请实施例提供的一种波形生成模型的结构示意图,如图3所示,波形生成模型包括先验分布估计网络和波形生成网络。先验分布估计网络可以是训练好的先验分布估计网络,波形生成网络可以是训练好的波形生成网络。

波形生成网络可以由卷积神经网络构成。卷积神经网络由多层带孔卷积层(Dilated Convolution Layers,DCL)构成。波形生成网络可以将输入的条件特征的隐变量和条件特征一起输入波形生成网络,得到先验生成波形分布,服务端对先验生成波形分布进行高斯变换,得到语音波形。例如,波形生成网络可以采用逆自回归流(InverseAutoregressive Flow,IAF)模型,将输入隐变量解码到语音波形。

举例来说,服务端可以将隐变量z和条件特征y输入波形生成网络,波形生成网络可以预测得到先验生成波形x

μ

因此,先验生成波形x

由于训练好的先验分布估计网络能学习到自然语音波形的编码信息,将训练好的先验分布估计网络的输出作为训练好的波形生成网络的输入,进而生成高质量的语音波形。

请参阅图4,图4是本申请实施例提供的一种模型训练方法的流程示意图。如图4所示,该模型训练方法应用于服务器,该模型训练方法用于训练波形生成模型,该模型训练方法包括如下步骤。

401,服务端获取语音训练样本,语音训练样本包括自然语音波形和与自然语音波形对应的文本。

本申请实施例中的模型训练方法可以在图2的波形生成方法之前执行。

本申请实施例中,服务端可以从训练数据集中获取语音训练样本,训练数据集中可以包括大量用于训练的语音训练样本,训练数据集中的语音训练样本各不相同。比如,训练数据集中可以包括20个小时的自然语音数据,每份语音训练的时长可以是5秒、8秒、10秒等。

训练数据集中的语音训练样本都是监督数据,每份语音训练样本都可包括自然语音波形和与该自然语音波形对应的文本。

402,服务端从自然语音波形或自然语音波形对应的文本中提取自然条件特征。

本申请实施例中,自然条件特征可以包括自然文本特征或自然声学参数。自然文本特征和自然声学特征是波形生成模型可以直接识别的特征。

自然文本特征可以包括音素序列。音素序列是由一串音素组成的序列。自然声学参数可以包括基频等参数。

可选的,自然条件特征包括自然文本特征;步骤402具体可以包括如下步骤:服务端通过文本分析工具从自然语音波形对应的文本中提取自然文本特征。

其中,文本分析工具可以是一套软件程序,用于对输入的文本进行分析,输出文本特征。

可选的,自然条件特征包括自然声学参数;步骤402具体可以包括如下步骤:服务端从自然语音波形中提取自然声学参数。

其中,自然声学参数可以包括基频等参数。服务端可以通过声学参数提取算法从自然语音波形中提取自然声学参数。

403,服务端将自然语音波形和自然条件特征输入波形生成模型,得到训练结果。

本申请实施例中,训练结果可以包括训练损失。

404,服务端根据训练结果对波形生成模型的模型参数进行优化。

本申请实施例中,波形生成模型的模型参数可以包括先验分布估计网络的参数和波形生成网络的参数。比如,先验分布估计网络的参数可以包括先验分布估计网络中的反卷积网络参数(反卷积网络参数可以包括反卷积网络的卷积层的权值矩阵、反卷积网络的全连接层的权值矩阵等)。波形生成网络的参数可以包括波形生成网络的卷积神经网络参数(卷积神经网络参数可以包括卷积神经网络的卷积层的权值矩阵、卷积神经网络的全连接层的权值矩阵等)。

本申请实施例中,波形生成模型进行训练时,先验分布估计网络可以学习到自然语音波形的编码信息,可以提高语音波形生成阶段波形生成模型生成的语音波形的质量。与采用老师模型和学生模型的方式进行训练相比,可以简化训练流程。

可选的,波形生成模型还包括编码器和判别器,步骤403可以包括如下步骤:

(21)服务端将自然语音波形输入编码器,将自然条件特征输入先验分布估计网络,根据编码器的输出结果和先验分布估计网络的输出结果计算先验损失函数;

(22)服务端根据编码器的输出结果确定第一隐变量,根据先验分布估计网络的输出结果确定第二隐变量;

(23)服务端将第一隐变量、第二隐变量和自然条件特征输入波形生成网络,根据波形生成网络输出的波形结果计算似然损失函数;

(24)服务端将自然语音波形和波形生成网络输出的波形结果输入判别器,根据判别器的输出结果计算判别损失函数和对抗损失函数。

可选的,步骤404可以包括如下步骤:

(31)在第一训练阶段,服务端按照最小化第一损失函数的方法对所述编码器的模型参数、所述先验分布估计网络的模型参数和所述波形生成网络的模型参数进行更新;所述第一损失函数基于所述先验损失函数和所述似然损失函数确定;

(32)在第二训练阶段,在固定所述第一训练阶段更新的所述编码器的模型参数和所述先验分布估计网络的模型参数的情况下,服务端按照最小化所述判别损失函数的方法对所述判别器的模型参数进行更新,按照最小化第二损失函数的方法对所述波形生成网络的模型参数进行更新,所述第二损失函数基于所述似然损失函数和所述对抗损失函数确定。

本申请实施例中,用于训练的波形生成模型可以包括如下编码器、波形生成网络、先验分布估计网络和判别器。

波形生成模型以VAE-GAN模型为例进行说明。

请参阅图5,图5是是本申请实施例提供的一种VAE-GAN模型的结构示意图,如图5所示,VAE-GAN模型包括VAE模型和GAN模型,VAE模型包括编码器、先验分布估计网络和波形生成网络,GAN模型包括波形生成网络和判别器。其中,先验分布估计网络可以包括先验网络,波形生成网络可以包括解码器。

在VAE训练阶段,也即第一训练阶段时,需要对编码器、先验分布估计网络和波形生成网络的模型参数进行优化,在对抗训练阶段,也即第二训练阶段时,编码器和先验分布估计网络的模型参数固定,需要对波形生成网络和判别器的模型参数进行优化。波形生成网络既属于VAE模型,又属于GAN模型,在两个训练阶段都需要进行参数优化。

其中,编码器可以由卷积神经网络构成。卷积神经网络由多层带孔卷积层(Dilated Convolution Layers,DCL)构成。编码器可以将输入的语音波形编码到隐变量空间。比如,编码器可以采用WaveNet模型。

先验分布估计网络可以由反卷积网络构成。用于对输入的条件特征做上采样,得到条件特征的隐变量。举例来说,如果输入编码器的语音波形为16kHz采样率的语音,输入先验分布估计网络的声学参数(比如,帧移为5ms)的采样率为200Hz,先验分布估计网络的反卷积网络等价于上采样网络,可以将200Hz的声学参数上采样到16kHz(比如,可以将反卷积网络的步长设为[4,4,5],这样条件特征经过这样的三层反卷积,就可以上采样80倍达到16kHz),使得声学参数的采样率与语音波形的采样率相同。

波形生成网络可以由卷积神经网络构成。波形生成网络也是由DCL堆叠而成,可以将输入的语音的隐变量、条件特征的隐变量和条件特征一起输入波形生成网络,生成语音波形。例如,波形生成网络可以采用逆自回归流(Inverse Autoregressive Flow,IAF)模型,将输入隐变量解码到语音波形。

判别器可以由卷积层构成,用于对输入的语音波形做下采样,预测每一段输入语音波形是自然语音的概率。自然语音是自然人发出的并且未经过语音模型处理的语音。比如,自然语音可以是经过麦克风录入的语音。

图5中的判别器可以采用多尺度判别器。由于语音波形采样率较高,波形变化丰富,包含多尺度信息。本申请实施例可以采用多尺度判别器来区分输入波形是否为自然波形,由于多尺度判别器可以输出多个尺度的判别概率,多尺度的判别输出既能捕捉波形的长时相关信息,也能关注局部的精细结构,通过对多尺度判别器的训练,可以使得波形生成网络输出的波形接近自然语音波形。

举例来说,多尺度判别器可以参阅图6,图6是本申请实施例提供的一种多尺度判别器的结构示意图。图6以两尺度判别器为例,如图6所示,多尺度判别器包括4个步长等于2的卷积层和2个步长等于1的卷积层。图6中,s=2表示卷积层的步长stride=2,对输入下采样两倍,图中D1,D2分别是对输入波形下采样4倍、16倍得到的判别概率,其中下采样4倍得到的判别概率可以关注波形的局部信息,下采样16倍得到的判别概率可以关注到波形的整体信息,可以对波形的局部和整体都进行训练,使得波形生成网络输出的波形更接近自然语音波形。判别器计算概率时可以采用D1的输出结果,也可以采用D2的输出结果,也可以同时采用D1的输出结果和D2的输出结果,可以根据输入波形的采样率确定,本申请实施例不做限定。

需要说明的是,图6只是本申请实施例提供的一种多尺度判别器的示例,多尺度判别器包含的卷积层的个数、每个卷积层的步长都可以根据输入波形的采样率以及实际训练效果进行设定,本申请实施例不做限定。

需要说明的是,为了直观的理解本申请中的技术方案,以下的实施例中的VAE-GAN模型均以图5为例进行说明。

可选的,上述步骤(21)具体可以包括如下步骤:

(211)服务端将所述自然语音波形输入所述编码器,得到所述自然语音波形的第一隐变量的后验分布;

(212)服务端将所述自然条件特征输入所述先验分布估计网络,得到所述自然条件特征的第二隐变量的先验分布;

(213)服务端根据所述第一隐变量的后验分布和所述第二隐变量的先验分布计算先验损失函数。

本申请实施例中,自然语音波形记为x

p(z

z

其中,

其中,自然条件特征为y

p(z

z

其中,μ

可选的,步骤(213)中,服务端根据所述第一隐变量的后验分布和所述第二隐变量的先验分布计算先验损失函数。先验损失函数可以按照如下公式计算:

其中,L

为了让先验分布估计网络学习到编码器中的隐变量空间编码信息,会约束先验分布估计网络,使先验分布估计网络输出的分布p(z

本申请实施例提出先验分布估计网络对先验分布建模,输入条件特征到先验分布估计网络,以估计隐变量分布,采用KL距离来约束先验分布,使之逼近编码器估计的后验分布,考虑了隐变量与条件特征的相关性。保证了先验分布估计网络能学习到编码器对自然语音的编码信息,从而保证在语音波形生成阶段,将先验分布估计网络的输出作为波形生成网络的输入,进而生成质量更高的语音。

可选的,所述编码器的输出结果包括所述第一隐变量的后验分布,所述先验分布估计网络的输出结果包括所述第二隐变量的先验分布中采样;步骤(22)具体可以包括如下步骤:

(221)服务端从所述第一隐变量的后验分布中采样,得到所述第一隐变量;

(221)服务端从所述第二隐变量的先验分布中采样,得到所述第二隐变量。

其中,服务端可以通过随机采样方法从第一隐变量的后验分布中采样得到第一隐变量,可以通过随机采样方法从第二隐变量的后验分布中采样得到第二隐变量。

可选的,步骤(23)具体可以包括如下步骤:

(231)服务端将所述第一隐变量、所述第二隐变量和所述自然条件特征输入所述波形生成网络,波形生成网络用于根据所述第一隐变量和所述自然条件特征生成所述自然语音波形对应的重构波形,以及用于根据所述第二隐变量和所述自然条件特征生成所述自然条件特征对应的先验生成波形;

(232)服务端根据所述自然语音波形和所述重构波形的波形分布计算似然损失函数。

本申请实施例中,波形生成网络可以由逆自回归流(Inverse AutoregressiveFlow,IAF)网络构成,IAF网络实现输入分布到输出分布的映射。IAF网络将服从高斯分布的隐变量转换为语音波形的高斯分布,IAF网络可以预测语音波形的高斯分布的均值和方差。

其中,服务端可以将第一隐变量z

该公式中,IAF_decoder指的是采用IAF网络的波形生成网络,将z

其中,

其中,步骤(223)中,服务端可以根据自然语音波形和重构波形的波形分布计算似然损失函数。似然损失函数L

其中,p(x

其中,服务端可以将第二隐变量z

μ

因此,先验生成波形x

其中,μ

可选的,所述波形生成网络输出的波形结果包括所述自然语音波形对应的重构波形和所述自然条件特征对应的先验生成波形;步骤(24)具体可以包括如下步骤:

(241)服务端将所述自然语音波形、所述自然语音波形对应的重构波形和所述自然条件特征对应的先验生成波形输入所述判别器,得到所述自然语音波形为自然语音的概率、所述重构波形为自然语音的概率和所述先验生成波形为自然语音的概率;

(242)服务端根据所述自然语音波形为自然语音的概率、所述重构波形为自然语音的概率和所述先验生成波形为自然语音的概率计算判别损失函数;

(243)服务端根据所述自然重构波形为自然语音的概率和所述先验生成波形为自然语音的概率计算对抗损失函数。

本申请实施例中,判别器用于计算输入的语音为自然语音的概率。其中,判别器可以采用图6所示的多尺度判别器。

可选的,步骤(241)可以包括如下步骤:

(2411)服务端将所述自然语音波形输入所述多尺度判别器,得到所述自然语音波形为自然语音的N个尺度判别概率,基于所述自然语音波形为自然语音的N个尺度判别概率确定所述自然语音波形为自然语音的概率;N为大于或等于2的整数;

(2412)服务端将所述自然语音波形对应的重构波形输入所述多尺度判别器,得到所述自然语音波形对应的重构波形为自然语音的N个尺度判别概率,基于所述自然语音波形对应的重构波形为自然语音的N个尺度判别概率确定所述重构波形为自然语音的概率;

(2413)服务端将所述自然条件特征对应的先验生成波形输入所述判别器,得到所述自然条件特征对应的先验生成波形为自然语音的N个尺度判别概率,基于所述自然条件特征对应的先验生成波形为自然语音的N个尺度判别概率确定所述先验生成波形为自然语音的概率。

本申请实施例中,多尺度判别器可以对于输入的波形得到N个尺度判别概率。比如,对于输入的自然语音波形x

D(x

其中,D(x

其中,λ

同样的,对于输入的重构波形

对于输入的先验生成波形x

D

D(x

步骤(242)中,本申请实施例可以采用最小二乘法GAN(Least Square GAN,LSGAN)计算判别损失函数,判别损失函数L

上式中,D(x

步骤(243)中,本申请实施例的对抗损失函数L

其中,

其中,步骤(31)为第一训练阶段的训练过程;步骤(32)为第二训练阶段的训练过程。第一训练阶段对所述编码器的模型参数、所述先验分布估计网络的模型参数和所述波形生成网络的模型参数进行更新;第二训练阶段是在第一训练阶段结束后,在固定所述第一训练阶段更新的所述编码器的模型参数和所述先验分布估计网络的模型参数的情况下,对所述判别器的模型参数和波形生成网络的模型参数进行更新。

本申请实施例中,最小化损失函数可以自适应梯度下降方法(比如,可以Adam优化方法)进行优化。

其中,第一损失函数L

L

其中,为了避免编码器在训练早期模式坍塌,会从0到1逐渐增加L

当第一训练阶段训练的步数达到预设训练步数,或者第一损失函数L

步骤(32)中,在第二训练阶段,在固定所述第一训练阶段更新的所述编码器的模型参数和所述先验分布估计网络的模型参数的情况下,服务端按照最小化所述判别损失函数的方法对所述判别器的模型参数进行更新,按照最小化第二损失函数的方法对所述波形生成网络的模型参数进行更新。

第二损失函数L

L

判别损失函数L

步骤“服务端按照最小化所述判别损失函数的方法对所述判别器的模型参数进行更新”,和步骤“服务端按照最小化第二损失函数的方法对所述波形生成网络的模型参数进行更新”可以交替执行。

需要说明的是,在执行步骤(32)时,编码器和先验分布估计网络的模型参数已经训练好,编码器和先验分布估计网络的模型参数已经被固定下来。

本申请实施例通过不断更新判别器的模型参数和波形生成网络的模型参数,不断的进行对抗训练,通过对抗训练可以帮助波形生成网络生成的语音波形更接近自然语音。

其中,当L

需要说明的是,图4的模型训练方法用于对波形生成模型(比如,VAE-GAN模型)进行训练,图4的模型训练方法可以在图2的语音波形生成方法之前执行。在波形生成模型训练好之后,可以执行图2所述的方法。

与上述一致的,请参阅图7,图7是本申请实施例提供的一种模型训练装置的结构示意图,应用于服务器,该模型训练装置700包括第一获取单元701、第一提取单元702、训练单元703和优化单元704,其中:

第一获取单元701,用于获取语音训练样本,所述语音训练样本包括自然语音波形和与所述自然语音波形对应的文本;

第一提取单元702,用于从所述自然语音波形或所述自然语音波形对应的文本中提取自然条件特征;

训练单元703,用于将所述自然语音波形和所述自然条件特征输入所述波形生成模型,得到训练结果;

优化单元704,用于根据所述训练结果对所述波形生成模型的模型参数进行优化。

可选的,所述波形生成模型还包括编码器和判别器,所述训练单元703将所述自然语音波形和所述自然条件特征输入所述波形生成模型,得到训练结果,具体为:将所述自然语音波形输入所述编码器,将所述自然条件特征输入所述先验分布估计网络,根据所述编码器的输出结果和所述先验分布估计网络的输出结果计算先验损失函数;根据所述编码器的输出结果确定第一隐变量,根据所述先验分布估计网络的输出结果确定第二隐变量;将所述第一隐变量、所述第二隐变量和所述自然条件特征输入所述波形生成网络,根据所述波形生成网络输出的波形结果计算似然损失函数;将所述自然语音波形和所述波形生成网络输出的波形结果输入所述判别器,根据所述判别器的输出结果计算判别损失函数和对抗损失函数。

可选的,所述训练单元703将所述自然语音波形输入所述编码器,将所述自然条件特征输入所述先验分布估计网络,根据所述编码器的输出结果和所述先验分布估计网络的输出结果计算先验损失函数,具体为:将所述自然语音波形输入所述编码器,得到所述自然语音波形的第一隐变量的后验分布;将所述自然条件特征输入所述先验分布估计网络,得到所述自然条件特征的第二隐变量的先验分布;根据所述第一隐变量的后验分布和所述第二隐变量的先验分布计算先验损失函数。

可选的,所述编码器的输出结果包括所述第一隐变量的后验分布,所述先验分布估计网络的输出结果包括所述第二隐变量的先验分布中采样;所述训练单元703根据所述编码器的输出结果确定第一隐变量,根据所述先验分布估计网络的输出结果确定第二隐变量,具体为:从所述第一隐变量的后验分布中采样,得到所述第一隐变量;从所述第二隐变量的先验分布中采样,得到所述第二隐变量。

可选的,所述训练单元703将所述第一隐变量、所述第二隐变量和所述自然条件特征输入所述波形生成网络,根据所述波形生成网络输出的波形结果计算似然损失函数,具体为:将所述第一隐变量、所述第二隐变量和所述自然条件特征输入所述波形生成网络,根据所述第一隐变量和所述自然条件特征生成所述自然语音波形对应的重构波形,根据所述第二隐变量和所述自然条件特征生成所述自然条件特征对应的先验生成波形;根据所述自然语音波形和所述重构波形的波形分布计算似然损失函数。

可选的,所述波形生成网络输出的波形结果包括所述自然语音波形对应的重构波形和所述自然条件特征对应的先验生成波形;所述训练单元703将所述自然语音波形和所述波形生成网络输出的波形结果输入所述判别器,根据所述判别器的输出结果计算判别损失函数和对抗损失函数,具体为:将所述自然语音波形、所述重构波形和所述先验生成波形输入所述判别器,得到所述自然语音波形为自然语音的概率、所述重构波形为自然语音的概率和所述先验生成波形为自然语音的概率;根据所述自然语音波形为自然语音的概率、所述重构波形为自然语音的概率和所述先验生成波形为自然语音的概率计算判别损失函数;根据所述自然重构波形为自然语音的概率和所述先验生成波形为自然语音的概率计算对抗损失函数。

可选的,优化单元704根据所述训练结果对所述波形生成模型的模型参数进行优化,具体为:在第一训练阶段,按照最小化第一损失函数的方法对所述编码器的模型参数、所述先验分布估计网络的模型参数和所述波形生成网络的模型参数进行更新;所述第一损失函数基于所述先验损失函数和所述似然损失函数确定;在第二训练阶段,在固定所述第一训练阶段更新的所述编码器的模型参数和所述先验分布估计网络的模型参数的情况下,按照最小化所述判别损失函数的方法对所述判别器的模型参数进行更新,按照最小化第二损失函数的方法对所述波形生成网络的模型参数进行更新,所述第二损失函数基于所述似然损失函数和所述对抗损失函数确定。

可选的,所述判别器包括多尺度判别器。

可选的,所述训练单元703将所述自然语音波形、所述自然语音波形对应的重构波形和所述自然条件特征对应的先验生成波形输入所述判别器,得到所述自然语音波形为自然语音的概率、所述重构波形为自然语音的概率和所述先验生成波形为自然语音的概率,具体为:

将所述自然语音波形输入所述多尺度判别器,得到所述自然语音波形为自然语音的N个尺度判别概率,基于所述自然语音波形为自然语音的N个尺度判别概率确定所述自然语音波形为自然语音的概率;N为大于或等于2的整数;

将所述自然语音波形对应的重构波形输入所述多尺度判别器,得到所述自然语音波形对应的重构波形为自然语音的N个尺度判别概率,基于所述自然语音波形对应的重构波形为自然语音的N个尺度判别概率确定所述重构波形为自然语音的概率;

将所述自然条件特征对应的先验生成波形输入所述判别器,得到所述自然条件特征对应的先验生成波形为自然语音的N个尺度判别概率,基于所述自然条件特征对应的先验生成波形为自然语音的N个尺度判别概率确定所述先验生成波形为自然语音的概率。

可选的,所述条件特征包括文本特征或声学参数。

可选的,所述自然条件特征包括自然文本特征;所述第一提取单元702从所述自然语音波形或所述自然语音波形对应的文本中提取自然条件特征,具体为:通过文本分析工具从所述自然语音波形对应的文本中提取自然文本特征。

可选的,所述自然条件特征包括自然声学参数;所述第一提取单元702从所述自然语音波形或所述自然语音波形对应的文本中提取自然条件特征,具体为:从所述自然语音波形中提取自然声学参数。

本申请实施例中,波形生成模型进行训练时,先验分布估计网络可以学习到自然语音波形的编码信息,可以提高语音波形生成阶段波形生成模型生成的语音波形的质量。与采用老师模型和学生模型的方式进行训练相比,可以简化训练流程。

与上述一致的,请参阅图8,图8是本申请实施例提供的一种语音波形生成装置的结构示意图,该语音波形生成装置800包括获取单元801、提取单元802和波形生成单元803,其中:

获取单元801,用于获取输入文本;

提取单元802,用于从所述输入文本中提取条件特征;

波形生成单元803,用于将所述条件特征输入训练得到的波形生成模型,对所述条件特征进行处理,得到语音波形;

其中,所述波形生成模型包括先验分布估计网络和波形生成网络,所述先验分布估计网络在训练阶段用于学习自然语音波形的编码信息,所述波形生成网络用于根据所述条件特征和所述先验分布估计网络的输出结果生成所述语音波形。

可选的,所述波形生成单元803,将所述条件特征输入训练得到的波形生成模型,对所述条件特征进行处理,得到语音波形,具体为:利用所述先验分布估计网络根据所述条件特征得到所述先验分布估计网络的输出结果,从所述先验分布估计网络的输出结果中确定所述条件特征的隐变量;利用所述波形生成网络根据所述条件特征和所述条件特征的隐变量生成所述语音波形。

可选的,所述波形生成单元803利用所述先验分布估计网络根据所述条件特征得到所述先验分布估计网络的输出结果,从所述先验分布估计网络的输出结果中确定所述条件特征的隐变量,具体为:

利用所述先验分布估计网络根据所述条件特征得到所述条件特征的隐变量的先验分布;从所述条件特征的隐变量的先验分布中采样,得到所述条件特征的隐变量。

可选的,所述波形生成单元803利用所述波形生成网络根据所述条件特征和所述条件特征的隐变量生成所述语音波形,具体为:将所述条件特征的隐变量和所述条件特征输入所述波形生成网络,得到先验生成波形分布;对所述先验生成波形分布进行概率分布变换,得到所述语音波形。

可选的,所述条件特征包括文本特征或声学参数。

本申请实施例中,可以从输入文本中提取条件特征,将条件特征输先验分布估计网络,得到先验分布估计网络的输出结果,波形生成网络可以根据条件特征和先验分布估计网络的输出结果生成语音波形。与基于自回归的方式逐点生成语音波形相比,本申请的波形生成模型可以直接根据条件特征生成语音波形,可以提高波形生成模型的波形生成效率。由于先验分布估计网络可以学习到自然语音波形的编码信息,可以提高波形生成模型生成的语音波形的质量。

图9是本申请实施例提供的一种服务器的结构示意图,该服务器900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)902(例如,一个或一个以上处理器)和存储器908,一个或一个以上存储应用程序906或数据905的存储介质907(例如一个或一个以上海量存储设备)。其中,存储器908和存储介质907可以是短暂存储或持久存储。存储在存储介质907的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器902可以设置为与存储介质907通信,在服务器900上执行存储介质907中的一系列指令操作。服务器900可以为本申请提供的软件运行设备。

服务器900还可以包括一个或一个以上电源903,一个或一个以上有线或无线网络接口909,一个或一个以上输入输出接口910,和/或,一个或一个以上操作系统904,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。

上述实施例中由软件运行设备所执行的步骤可以基于该图9所示的服务器结构。具体的,中央处理器902可实现图7和图8中各单元的功能。

本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种语音波形生成方法的部分或全部步骤。

本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种模型训练方法的部分或全部步骤。

本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种语音波形生成方法的部分或全部步骤。

本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种语音波形生成方法的部分或全部步骤。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在申请明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。

所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。

以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号