1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 语音合成模型的生成方法 装置 设备及存储介质与流程

语音合成模型的生成方法 装置 设备及存储介质与流程

时间:2022-05-06 20:41:48

相关推荐

语音合成模型的生成方法 装置 设备及存储介质与流程

本发明涉及数据分析技术领域,尤其涉及一种语音合成模型的生成方法、装置、设备及计算机可读存储介质。

背景技术:

语音合成是通过机械方法以及电子方法产生人造语音的技术。语音合成技术是将计算机自己产生的、或外部输入的文字信息转变为用户可以识别的流利汉语口语输出的技术。目前,现有的基于卷积神经网络的语音合成模型,在语音合成时,依次生成音频中的每一个样本点,即生成时需要上一个生成的点作为下一个点的输入,这就大大限制了语音合成模型的训练速度,降低了语音合成模型的训练效率。因此,如何解决现有语音合成模型的训练效率低下的技术问题,成为了目前亟待解决的技术问题。

技术实现要素:

本发明的主要目的在于提供一种语音合成模型的生成方法、装置、设备及计算机可读存储介质,旨在解决现有语音合成模型的训练效率低下的技术问题。

为实现上述目的,本发明提供一种语音合成模型的生成方法,所述语音合成模型的生成方法应用于语音合成模型的生成系统,所述语音合成模型的生成系统包括缓存模块、存储模块以及处理器,所述语音合成模型的生成方法包括以下步骤:

所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

可选地,所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值的步骤包括:

所述处理器获取所述第一合成结果对应的第一结果概率分布,以及所述第二合成结果对应的第二结果概率分布,并将所述第一结果概率分布以及所述第二结果概率分布存储至所述缓存模块;

所述处理器根据预设kl散度计算公式计算所述第一合成结果与所述第二合成结果对应的散度值,作为所述第二合成结果的损失值,其中,所述kl散度计算公式为:

drl(ps||pt)=h(fs,pt)-h(ps);

其中,ps为待训练语音合成模型对应的第二结果概率分布,pt为标准语音合成模型对应的第一结果概率分布,h(ps,pt)是第一结果概率分布与第二结果概率分布的交叉熵,h(ps)是第二结果概率分布的熵,s为待合成语音数据在待训练语音合成模型中的数据编号,t为待合成语音数据在标准语音合成模型中的数据编号;

所述处理器判断所述第二合成结果的损失值是否小于所述第一预设阈值。

可选地,所述处理器判断所述第二合成结果的损失值是否小于第一预设阈值的步骤之后,还包括:

所述处理器根据预设损失函数,计算所述待训练语音合成模型对应的模型损失值,并判断所述模型损失值是否小于第二预设阈值,其中,所述模型损失值包括功率损失值、感知损失值和对比损失值中的一种或多种。

可选地,所述将待合成语音数据输入至预设标准语音合成模型得到第一合成结果的步骤之前,还包括:

所述处理器获取所述存储模块中的已训练语音合成模型,作为标准语音合成模型,其中,所述标准语音合成模型是基于带洞卷积自回归网络算法训练得到。

可选地,所述获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数的步骤具体包括:

所述处理器获取所述存储模块中的相关语音合成模型,作为待训练语音合成模型,其中,所述相关语音合成模型采用后验分布的逆自回流网络框架;

所述处理器在所述存储模块中的对应参数库中随机确定一模型参数,作为所述待训练语音合成模型的初始化模型参数,以从随机状态训练所述待训练语音合成模型。

可选地,所述将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果的步骤具体包括:

所述处理器获取所述待合成语音数据中的一白噪声数据,并将所述白噪声数据输入至所述标准语音合成模型得到对应的第一连续声音波形,作为第一合成结果;

所述处理器将所述白噪声数据输入至所述待训练语音合成模型得到对应的第二连续声音波形,作为所述第二合成结果。

可选地,所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值的步骤之后,还包括:

若所述处理器判定所述第二合成结果的损失值不小于所述第一预设阈值,则基于所述第二合成结果的损失值,修改所述待训练语音合成模型的初始化模型参数,以对所述待训练语音合成模型进行调参。

此外,为实现上述目的,本发明还提供一种语音合成模型的生成装置,所述语音合成模型的生成装置包括:

初始参数确定模块,用于所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

合成结果获取模块,用于所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

合成结果比对模块,用于所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

目标参数确定模块,用于确定若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

此外,为实现上述目的,本发明还提供一种语音合成模型的生成设备,所述语音合成模型的生成设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的语音合成模型的生成程序,其中所述语音合成模型的生成程序被所述处理器执行时,实现如上述的语音合成模型的生成方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有语音合成模型的生成程序,其中所述语音合成模型的生成程序被处理器执行时,实现如上述的语音合成模型的生成方法的步骤。

本发明提供种一种语音合成模型的生成方法,即所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。通过上述方式,本发明通过预设标准语音合成模型,对待训练语音合成模型进行调参,即使待训练语音合成模型输出与所述标准语音合成模型同样合成结果的模型参数,即为目标参数,由此生成目标语音合成模型,避免基于上一个样本点作为下一个样本点的输入,提升了语音合成模型的训练速度,提高了语音合成模型的训练效率,解决了现有语音合成模型的训练效率低下的技术问题。

附图说明

图1为本发明实施例方案中涉及的语音合成模型的生成设备的硬件结构示意图;

图2为本发明语音合成模型的生成方法第一实施例的流程示意图;

图3为本发明语音合成模型的生成方法第二实施例的流程示意图;

图4为本发明语音合成模型的生成方法第三实施例的流程示意图;

图5为本发明语音合成模型的生成装置第一实施例的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例涉及的语音合成模型的生成方法主要应用于语音合成模型的生成设备,该语音合成模型的生成设备可以是pc、便携计算机、移动终端等具有显示和处理功能的设备。

参照图1,图1为本发明实施例方案中涉及的语音合成模型的生成设备的硬件结构示意图。本发明实施例中,语音合成模型的生成设备可以包括处理器1001(例如cpu),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口);存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的硬件结构并不构成对语音合成模型的生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

继续参照图1,图1中作为一种计算机可读存储介质的存储器1005可以包括操作系统、网络通信模块以及语音合成模型的生成程序。

在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的语音合成模型的生成程序,并执行本发明实施例提供的语音合成模型的生成方法。

本发明实施例提供了一种语音合成模型的生成方法。

参照图2,图2为本发明语音合成模型的生成方法第一实施例的流程示意图。

本实施例中,所述语音合成模型的生成方法应用于语音合成模型的生成系统,所述语音合成模型的生成系统包括缓存模块、存储模块以及处理器,所述语音合成模型的生成方法包括以下步骤:

步骤s10,所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

在语音合成领域,时域波形生成式模型依赖于依次生成音频中的每一个样本点,不适合现在这种强大的并行计算环境。这种受限制的合成速度,在日常产出中并不适用于在生产环境部署。作为一个深度自回归生成模型,该模型已经在语音、图像、音乐、视频、手写等方面取得了显著成效,该模型对原始信号文件的生成使用了极限自回归,每秒要生成24000个点,这种高分辨率的网络在训练中是没有问题的,因为可以使用原始的音频作为输入,基于卷积结构可以并行处理,但是在生成时需要上一个生成的点作为下一个的输入,并行处理这种方式还是比较困难。因此,我们提出一种新的在前馈神经网络上的进行提取的新的“蒸馏式”模型,这种概率密度蒸馏法,能保证更高速有效的并行产出,并且在质量上没有显著差异。即提出一种逆自回归流(inverseautoregressiveflows)框架作为一种深度自回归模型的对偶形式,它能在处理时序、缓慢似然估计推理的同时,实现并行采样。这框架可以在输入给定的情况下,这种最有效的训练wavenet和有效的iaf采样以一个新型的神经网络蒸馏算法连接,参考于概率密度蒸馏算法,该算法旨在使用一个训练好的wavenet作为前馈iaf模型的教师,去训练学生网络去近似模拟教师网络的分布。

在语音合成领域,现有技术中的语音合成模型均是深度自回归网络,其在训练过程中,由于可以使用原始的训练样本音频作为输入,基于卷积结构可以并行快速地完成模型训练;但是在预测阶段,却需要上一个生成的点作为下一层的输入来计算,也就是语音合成模型当前时刻的生成是依赖于上一时刻的生成结果的,模型在预测阶段需要逐点计算,时序型的预测速度慢且难以并行化,因此现有的语音合成模型不能满足实时语音合成的使用场景需求。为了解决上述问题,本实施例中提供一种语音合成模型的生成方法。所述处理器在接收到语音合成模型的生成指令时,在存储模块中获取对应类型的待训练语音合成模型,然后根据预设模型参数设定规则,在存储模块中该类模型对应的的参数库中确定所述待训练语音合成模型的一模型参数,作为初始模型参数。

进一步地,所述获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数的步骤具体包括:

所述处理器获取所述存储模块中的相关语音合成模型,作为待训练语音合成模型,其中,所述相关语音合成模型采用后验分布的逆自回流网络框架;

所述处理器在所述存储模块中的对应参数库中随机确定一模型参数,作为所述待训练语音合成模型的初始化模型参数,以从随机状态训练所述待训练语音合成模型。

本实施例中,所述处理器在所述存储模块中的各类模型中确定采用后验分布的逆自回流网络框架的模型,作为待训练语音合成模型。其中,逆自回归流是一种特殊的自回归,其允许在高维隐藏空间上推断高度非高斯后验分布,其对数似然性能与自回归模型相当,是可以将多元分布模拟成一个简单分布的可逆非线性变换,因此可以并行的快速生成高维可观测样本的所有元素,即预测过程更快速高效。然后在所述存储模块中的对应参数库中随机确定一模型参数,作为所述待训练语音合成模型的初始化模型参数,初始化的待训练语音合成模型的参数随机,即待训练语音合成模型从随机状态开始训练。

步骤s20,所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

本实施例中,所述处理器在所述存储模块中获取该类模型对应的语音数据样本,作为待训练语音样本,即待合成语音数据。将所述待合成语音数据输入至所述存储模块中获取的预设标准语音合成模型。其中,所述标准语音合成模型带洞卷积自回归网络框架,快速并行训练得到的。所述标准语音合成模型输入所述待合成语音数据对应的第一合成结果,即标准合成语音数据。同时将所述待合成语音数据输入至所述待训练语音合成模型,得到待检验的第二合成结果。

进一步地,所述将待合成语音数据输入至预设标准语音合成模型得到第一合成结果的步骤之前,还包括:

所述处理器获取所述存储模块中的已训练语音合成模型,作为标准语音合成模型,其中,所述标准语音合成模型是基于带洞卷积自回归网络算法训练得到。

本实施例中,预先基于带洞卷积自回归网络算法训练的已训练模型作为标准语音合成模型存储至存储模块,便于后续调用。

进一步地,所述将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果的步骤具体包括:

所述处理器获取所述待合成语音数据中的一白噪声数据,并将所述白噪声数据输入至所述标准语音合成模型得到对应的第一连续声音波形,作为第一合成结果;

所述处理器将所述白噪声数据输入至所述待训练语音合成模型得到对应的第二连续声音波形,作为所述第二合成结果。

本实施例中,待训练语音合成模型从随机状态开始训练,输入随机的白噪声至待训练语音合成模型,得到输出的一串连续声音波形,即所述的第二合成结果,将该随机白噪声再次输入至已经训练完成的标准语音合成模型中,得到第一合成结果,根据第一合成结果判断第二合成结果的准确性,反向传播对待训练语音合成模型进行调参,直到对于同样的输入,待训练语音合成模型与标准语音合成模型的输出相同或相似,即待训练语音合成模型与标准语音合成模型的输出误差小于某个范围后,则认为待训练语音合成模型收敛。

步骤s30,所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

本实施例中,在输出所述第一合成结果以及所述第二合成结果后,将所述第一合成结果以及所述第二合成结果存储至缓存模块,后续需要使用所述第一合成结果以及所述第二合成结果再取出。从待训练语音合成模型输出分布中选择多个不同样本对kl散度进行估计,以计算待训练语音合成模型和标准语音合成模型的输出差异,具体地,待训练语音合成模型从输入随机状态开始,输出会交给标准语音合成模型来进行采样评估,并将评估结果作为一个信号反馈给待训练语音合成模型调参,这其中待训练语音合成模型和标准语音合成模型的期望输出是有差距的,计算损失(kl散度),待训练语音合成模型通过反向传播进行调整参数,待训练语音合成模型训练目标是最小化与标准语音合成模型的kl散度,同时最大化自己的样本熵和其样本经过标准语音合成模型后生成的对数似然。ps代表待训练语音合成模型生成的概率分布,pt是标准语音合成模型生成的概率分布,kl散度也称相对熵,表示两个分布之间的差异,其中h(ps,pt)是两个分布的交叉熵,h(ps)是待训练语音合成模型分布的熵,kl越小,待训练语音合成模型与标准语音合成模型的分布越相近,待训练语音合成模型与标准语音合成模型之间的kl散度的计算公式具体为:dkl(ps||pt)=h(ps,pt)-h(ps)。其中,预设阈值可以是用户基于实际需求的语音合成精度自行设置的,具体是根据语音合成精度设置的待训练语音合成模型与标准语音合成模型输出之间的误差范围。

步骤s40,若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

本实施例中,若待训练语音合成模型与标准语音合成模型的kl散度小于上述设置的预设阈值,则待训练语音合成模型训练完成;待训练语音合成模型相较于标准语音合成模型,每个样本的生成不依赖于之前已经生成的任何样本,语音合成时可以同时并行生成整个句子,当接收到需要合成的语音数据后,待训练语音合成模型即可并行快速的合成目标语音。

本实施例提供一种语音合成模型的生成方法,即所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。通过上述方式,本发明通过预设标准语音合成模型,对待训练语音合成模型进行调参,即使待训练语音合成模型输出与所述标准语音合成模型同样合成结果的模型参数,即为目标参数,由此生成目标语音合成模型,避免基于上一个样本点作为下一个样本点的输入,提升了语音合成模型的训练速度,提高了语音合成模型的训练效率,解决了现有语音合成模型的训练效率低下的技术问题。

参照图3,图3为本发明语音合成模型的生成方法第二实施例的流程示意图。

基于上述图2所示实施例,本实施例中,所述步骤s30具体包括:

步骤s31,所述处理器获取所述第一合成结果对应的第一结果概率分布,以及所述第二合成结果对应的第二结果概率分布,并将所述第一结果概率分布以及所述第二结果概率分布存储至所述缓存模块;

步骤s32,所述处理器根据预设kl散度计算公式计算所述第一合成结果与所述第二合成结果对应的散度值,作为所述第二合成结果的损失值,其中,所述kl散度计算公式为:

dkl(ps||pt)=h(fs,pt)-h(ps),其中,ps为待训练语音合成模型对应的第二结果概率分布,pt为标准语音合成模型对应的第一结果概率分布,h(ps,pt)是第一结果概率分布与第二结果概率分布的交叉熵,h(ps)是第二结果概率分布的熵,s为待合成语音数据在待训练语音合成模型中的数据编号,t为待合成语音数据在标准语音合成模型中的数据编号;

步骤s33,所述处理器判断所述第二合成结果的损失值是否小于所述第一预设阈值。

本实施例中,从待训练语音合成模型输出分布中选择多个不同样本对kl散度进行估计,以计算待训练语音合成模型和标准语音合成模型的输出差异,具体地,待训练语音合成模型从输入随机状态开始,输出会交给标准语音合成模型来进行采样评估,并将评估结果作为一个信号反馈给待训练语音合成模型调参,这其中待训练语音合成模型和标准语音合成模型的期望输出是有差距的,计算损失(kl散度),待训练语音合成模型通过反向传播进行调整参数,待训练语音合成模型训练目标是最小化与标准语音合成模型的kl散度,同时最大化自己的样本熵和其样本经过标准语音合成模型后生成的对数似然。其中,ps为待训练语音合成模型对应的第二结果概率分布,pt为标准语音合成模型对应的第一结果概率分布,h(ps,pt)是第一结果概率分布与第二结果概率分布的交叉熵,h(ps)是第二结果概率分布的熵,s为待合成语音数据在待训练语音合成模型中的数据编号,t为待合成语音数据在标准语音合成模型中的数据编号;即ps代表待训练语音合成模型生成的概率分布,pt是标准语音合成模型生成的概率分布,kl散度也称相对熵,表示两个分布之间的差异,其中h(ps,pt)是两个分布的交叉熵,h(ps)是待训练语音合成模型分布的熵,kl越小,待训练语音合成模型与标准语音合成模型的分布越相近,待训练语音合成模型与标准语音合成模型之间的kl散度的计算公式具体为:

dkl(ps||pt)=h(fs,pt)-h(ps)。

其中,预设阈值可以是用户基于实际需求的语音合成精度自行设置的,具体是根据语音合成精度设置的待训练语音合成模型与标准语音合成模型输出之间的误差范围。

进一步地,为了提升待训练语音合成模型输出的准确性,所述处理器判断所述第二合成结果的损失值是否小于第一预设阈值的步骤之后,还包括:

所述处理器根据预设损失函数,计算所述待训练语音合成模型对应的模型损失值,并判断所述模型损失值是否小于第二预设阈值,其中,所述模型损失值包括功率损失值、感知损失值和对比损失值中的一种或多种。

本实施例中,通过计算待训练语音合成模型的损失函数来使待训练语音合成模型的输出更接近于理想的概率空间,如功率损失、感知损失、对比损失等。

参照图4,图4为本发明语音合成模型的生成方法第三实施例的流程示意图。

基于上述图3所示实施例,本实施例中,所述步骤s40之后,还包括:

步骤s50,若所述处理器判定所述第二合成结果的损失值不小于所述第一预设阈值,则基于所述第二合成结果的损失值,修改所述待训练语音合成模型的初始化模型参数,以对所述待训练语音合成模型进行调参。

本实施例中,根据第一合成结果判断第二合成结果的准确性,反向传播对待训练语音合成模型模型进行调参,直到对于同样的输入,待训练语音合成模型模型与标准语音合成模型的输出相同或相似,即待训练语音合成模型模型与标准语音合成模型的输出误差小于某个范围后,则认为待训练语音合成模型模型收敛。即将调整后的参数,且使所述待训练语音合成模型的输出结果与所述标准语音合成模型的输出结果相同或相似,则将所述调整后的参数确定为所述待训练语音合成模型的目标参数,并根据所述目标参数以及所述待训练语音合成模型生成目标语音合成模型。并将所述目标语音合成模型存储至所述存储模块进行保存。

本实施例中,用自回归训练出一个简单的教师网络(即标准语音合成模型),然后冻结这个网络的权重(保持不变,成为标准),标准语音合成模型由于其采用的模型框架,在训练的时候可以并行,生成的时候只能逐点生成,生成速度慢;再基于后验分布的逆自回流网络框架确定参数随机的学生网络(即待训练语音合成模型)去学习教师网络的输出分布,待训练语音合成模型由于其采用的模型框架,其训练过程慢但生成的时候可以并行快速输出,通过使用随机状态的待训练语音合成模型去学习标准语音合成模型的输出,达到了语音合成模型训练过程及合成过程均可并行快速完成的效果,本提案提升了语音合成模型的语音合成速度。

此外,本发明实施例还提供一种语音合成模型的生成装置。

参照图5,图5为本发明语音合成模型的生成装置第一实施例的功能模块示意图。

本实施例中,所述语音合成模型的生成装置包括:

初始参数确定模块10,用于所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

合成结果获取模块20,用于所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

合成结果比对模块30,用于所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

目标参数确定模块40,用于确定若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

进一步地,所述合成结果比对模块30具体包括:

概率分布获取单元,用于所述处理器获取所述第一合成结果对应的第一结果概率分布,以及所述第二合成结果对应的第二结果概率分布,并将所述第一结果概率分布以及所述第二结果概率分布存储至所述缓存模块;

结果散度计算单元,用于所述处理器根据预设kl散度计算公式计算所述第一合成结果与所述第二合成结果对应的散度值,作为所述第二合成结果的损失值,其中,所述kl散度计算公式为:

dkl(ps||pt)=h(fs,pt)-h(ps);

其中,ps为待训练语音合成模型对应的第二结果概率分布,pt为标准语音合成模型对应的第一结果概率分布,h(ps,pt)是第一结果概率分布与第二结果概率分布的交叉熵,h(ps)是第二结果概率分布的熵,s为待合成语音数据在待训练语音合成模型中的数据编号,t为待合成语音数据在标准语音合成模型中的数据编号;

结果损失判断单元,用于所述处理器判断所述第二合成结果的损失值是否小于所述第一预设阈值。

进一步地,所述合成结果比对模块30还用于:

所述处理器根据预设损失函数,计算所述待训练语音合成模型对应的模型损失值,并判断所述模型损失值是否小于第二预设阈值,其中,所述模型损失值包括功率损失值、感知损失值和对比损失值中的一种或多种。

进一步地,所述合成结果获取模块20还用于:

所述处理器获取所述存储模块中的已训练语音合成模型,作为标准语音合成模型,其中,所述标准语音合成模型是基于带洞卷积自回归网络算法训练得到。

进一步地,所述初始参数确定模块10还用于:

所述处理器获取所述存储模块中的相关语音合成模型,作为待训练语音合成模型,其中,所述相关语音合成模型采用后验分布的逆自回流网络框架;

所述处理器在所述存储模块中的对应参数库中随机确定一模型参数,作为所述待训练语音合成模型的初始化模型参数,以从随机状态训练所述待训练语音合成模型。

进一步地,所述合成结果获取模块20还用于:

所述处理器获取所述待合成语音数据中的一白噪声数据,并将所述白噪声数据输入至所述标准语音合成模型得到对应的第一连续声音波形,作为第一合成结果;

所述处理器将所述白噪声数据输入至所述待训练语音合成模型得到对应的第二连续声音波形,作为所述第二合成结果。

进一步地,所述语音合成模型的生成装置还包括:

合成模型调参模块,用于若所述处理器判定所述第二合成结果的损失值不小于所述第一预设阈值,则基于所述第二合成结果的损失值,修改所述待训练语音合成模型的初始化模型参数,以对所述待训练语音合成模型进行调参。

其中,上述语音合成模型的生成装置中各个模块与上述语音合成模型的生成方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。

此外,本发明实施例还提供一种计算机可读存储介质。

本发明计算机可读存储介质上存储有语音合成模型的生成程序,其中所述语音合成模型的生成程序被处理器执行时,实现如上述的语音合成模型的生成方法的步骤。

其中,语音合成模型的生成程序被执行时所实现的方法可参照本发明语音合成模型的生成方法的各个实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

技术特征:

1.一种语音合成模型的生成方法,其特征在于,所述语音合成模型的生成方法应用于语音合成模型的生成系统,所述语音合成模型的生成系统包括缓存模块、存储模块以及处理器,所述语音合成模型的生成方法包括以下步骤:

所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

2.如权利要求1所述的语音合成模型的生成方法,其特征在于,所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值的步骤包括:

所述处理器获取所述第一合成结果对应的第一结果概率分布,以及所述第二合成结果对应的第二结果概率分布,并将所述第一结果概率分布以及所述第二结果概率分布存储至所述缓存模块;

所述处理器根据预设kl散度计算公式计算所述第一合成结果与所述第二合成结果对应的散度值,作为所述第二合成结果的损失值,其中,所述kl散度计算公式为:

dkl(ps||pt)=h(ps,pt)-h(ps);

其中,ps为待训练语音合成模型对应的第二结果概率分布,pt为标准语音合成模型对应的第一结果概率分布,h(ps,pt)是第一结果概率分布与第二结果概率分布的交叉熵,h(ps)是第二结果概率分布的熵,s为待合成语音数据在待训练语音合成模型中的数据编号,t为待合成语音数据在标准语音合成模型中的数据编号;

所述处理器判断所述第二合成结果的损失值是否小于所述第一预设阈值。

3.如权利要求2所述的语音合成模型的生成方法,其特征在于,所述处理器判断所述第二合成结果的损失值是否小于第一预设阈值的步骤之后,还包括:

所述处理器根据预设损失函数,计算所述待训练语音合成模型对应的模型损失值,并判断所述模型损失值是否小于第二预设阈值,其中,所述模型损失值包括功率损失值、感知损失值和对比损失值中的一种或多种。

4.如权利要求1所述的语音合成模型的生成方法,其特征在于,所述将待合成语音数据输入至预设标准语音合成模型得到第一合成结果的步骤之前,还包括:

所述处理器获取所述存储模块中的已训练语音合成模型,作为标准语音合成模型,其中,所述标准语音合成模型是基于带洞卷积自回归网络算法训练得到。

5.如权利要求1所述的语音合成模型的生成方法,其特征在于,所述获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数的步骤具体包括:

所述处理器获取所述存储模块中的相关语音合成模型,作为待训练语音合成模型,其中,所述相关语音合成模型采用后验分布的逆自回流网络框架;

所述处理器在所述存储模块中的对应参数库中随机确定一模型参数,作为所述待训练语音合成模型的初始化模型参数,以从随机状态训练所述待训练语音合成模型。

6.如权利要求1所述的语音合成模型的生成方法,其特征在于,所述将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果的步骤具体包括:

所述处理器获取所述待合成语音数据中的一白噪声数据,并将所述白噪声数据输入至所述标准语音合成模型得到对应的第一连续声音波形,作为第一合成结果;

所述处理器将所述白噪声数据输入至所述待训练语音合成模型得到对应的第二连续声音波形,作为所述第二合成结果。

7.如权利要求1至6任意一项所述的语音合成模型的生成方法,其特征在于,所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值的步骤之后,还包括:

若所述处理器判定所述第二合成结果的损失值不小于所述第一预设阈值,则基于所述第二合成结果的损失值,修改所述待训练语音合成模型的初始化模型参数,以对所述待训练语音合成模型进行调参。

8.一种语音合成模型的生成装置,其特征在于,所述语音合成模型的生成装置包括:

初始参数确定模块,用于所述处理器在接收到语音合成模型的生成指令时,获取所述存储模块中的待训练语音合成模型,并确定所述待训练语音合成模型的初始化模型参数;

合成结果获取模块,用于所述处理器获取所述存储模块中的语音数据样本,作为待合成语音数据,将所述待合成语音数据输入至预设标准语音合成模型得到第一合成结果,并将所述待合成语音数据输入至所述待训练语音合成模型得到第二合成结果;

合成结果比对模块,用于所述处理器将所述第一合成结果以及所述第二合成结果存储至所述缓存模块,基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;

目标参数确定模块,用于确定若所述处理器判定所述第二合成结果的损失值小于所述第一预设阈值,则将所述第二合成结果对应的初始化模型参数确定为所述待训练语音合成模型的目标参数,基于所述目标参数生成目标语音合成模型。

9.一种语音合成模型的生成设备,其特征在于,所述语音合成模型的生成设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的语音合成模型的生成程序,其中所述语音合成模型的生成程序被所述处理器执行时,实现如权利要求1至7中任一项所述的语音合成模型的生成方法的步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有语音合成模型的生成程序,其中所述语音合成模型的生成程序被处理器执行时,实现如权利要求1至7中任一项所述的语音合成模型的生成方法的步骤。

技术总结

本发明提供一种语音合成模型的生成方法、装置、设备及存储介质,即所述处理器获取所述存储模块中的待训练语音合成模型,并确定初始化模型参数;所述处理器获取所述存储模块中的待合成语音数据,输入至预设标准语音合成模型得到第一合成结果,输入至所述待训练语音合成模型得到第二合成结果;基于所述第一合成结果,计算所述第二合成结果的损失值,并判断所述第二合成结果的损失值是否小于第一预设阈值;若所述处理器判定小于所述第一预设阈值,则初始化模型参数确定目标参数,生成目标语音合成模型。本发明避免基于上一个样本点作为下一个样本点的输入,提升了语音合成模型的训练速度,提高了语音合成模型的训练效率。

技术研发人员:王健宗;贺雯迪;彭话易;程宁

受保护的技术使用者:平安科技(深圳)有限公司

技术研发日:.09.18

技术公布日:.02.04

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。