语音合成方法、系统、电子设备及存储介质

文档序号:33477568发布日期:2023-03-15 10:51阅读:87来源:国知局
技术简介:
本专利针对传统语音合成速度慢、解码器效率低的问题,提出基于预训练模型的优化方法。通过将音素序列转换为均值序列,结合时长预测模块扩展序列,并利用深度可分离卷积网络的解码器模块进行去噪和梅尔谱转换,显著提升合成速度与运算效率,使去噪扩散概率模型更适用于实际场景。
关键词:语音合成方法,去噪扩散模型

1.本技术涉及语音合成技术领域,尤其涉及一种语音合成方法、系统、电子设备及存储介质。


背景技术:

2.语音合成和语音识别技术是实现人机语音通信,建立一个有听和讲能力的口语系统所必需的两项关键技术。使一些产品具有类似于人一样的说话能力,是当今时代信息产业的重要竞争市场。和语音识别相比,语音合成的技术相对说来要成熟一些,并已开始向产业化方向成功迈进,大规模应用指日可待。
3.语音合成能将任意文字信息实时转化为标准流畅的语音朗读出来,相当于给机器装上了人工嘴巴。它涉及声学、语言学、数字信号处理、计算机科学等多个学科技术,是中文信息处理领域的一项前沿技术,解决的主要问题就是如何将文字信息转化为可听的声音信息,也即让机器像人一样开口说话。我们所说的“让机器像人一样开口说话”与传统的声音回放设备(系统)有着本质的区别。传统的声音回放设备(系统),如磁带录音机,是通过预先录制声音然后回放来实现“让机器说话”的。这种方式无论是在内容、存储、传输或者方便性、及时性等方面都存在很大的限制。而通过计算机语音合成则可以在任何时候将任意文本转换成具有高自然度的语音,从而真正实现让机器“像人一样开口说话”语音合成是通过机械的、电子的方法产生人造语音的技术。tts技术(又称文语转换技术)隶属于语音合成,它是将计算机自己产生的、或外部输入的文字信息转变为可以听得懂的、流利的口语输出的技术。
4.语音合成技术已经被广泛地应用到了有声小说、新闻、智能导航、语音助手等多个场景中,因为与人工录音相比,其效率高、成本低。语音合成的目标是合成类似人类的语音,已经防范应用于很多设备中。
5.目前,在一些在手机、平板电脑等低功耗设备部署语音合成模式时,语音模型需要较多的去噪步数,所以合成的速度就会比较慢。


技术实现要素:

6.为了计算机或者部分解决上述问题,本技术提供了一种语音合成方法、显示系统、电子设备及存储介质,能够实现在低功耗设备部署时也能够快速合成语音。
7.第一方面,本技术的实施例提供了一种语音合成方法,该方法基于预训练的语音合成模型实现,所述语音合成模型包括文本编码器模块、时长预测模块、解码器模块,所述方法包括:获取音素序列,并输入至所述语音合成模型;通过所述文本编码器模块将所述音素序列转换成均值序列,并输入至所述时长预测模块;通过所述时长预测模块将所述均值序列扩展复制,得到拓展后的均值序列;
通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音。
8.在本技术提供的语音合成方法中,所述通过所述解码器模块将拓展后的均值序列去噪,包括:对扩展后的均值序列进行采样,得到随机数;通过所述解码器模块对所述随机数进行去噪。
9.在本技术提供的语音合成方法中,所述对扩展后的均值序列进行采样,包括:对所述均值序列进行拆分,得到所述均值序列对应的多个子序列;在每次采样过程中,从均值序列的子序列中随机采样。
10.在本技术提供的语音合成方法中,所述解码器模块基于u-net模型训练得到,且所述u-net模型中的卷积网络为深度可分离卷积网络;所述对扩展后的均值序列进行采样,包括:通过所述解码器模块对扩展后的均值序列进行采样,以获取随机数。
11.在本技术提供的语音合成方法中,所述通过所述解码器模块对所述随机数进行去噪,包括:将所述随机数输入解码器模块,获取微分方程的准确解;对所述准确解的积分进行近似求解,获取所述微分方程的解,以实现去噪;其中,所述微分方程如下:其中,t为0-1之间的自然数,
µ
是噪声的先验分布的均值,s是神经网络,βt是一个线性函数,yt=xt
‑µ
,xt是经过t步去噪的样本。
12.所述微分方程的准确解,公式如下:其中,λ表示对数信噪比,i为单位矩阵,βs为线性函数,表示数据分布标准差,表示数据分布方差,为λt的反函数,为的对应的噪声值,λs是s时刻的λ;为t步数噪声的标准差,ys为s时刻的带噪样本,s表示神经网络,t表示步数。
13.在本技术提供的语音合成方法中,所述通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,包括:通过所述解码器模块对当前采样的随机数逐个进行去噪操作并进行转换,得到对应的梅尔谱片段;将每个所述梅尔谱片段单独合成并对外输出,以播放合成语音。
14.在本技术提供的语音合成方法中,所述通过所述时长预测模块将所述均值序列扩展复制,包括:通过所述时长预测模块对所述均值序列的每个音素时长进行预测;根据所预测的时长,将所述均值序列进行扩展复制。
15.第二方面,本技术还提供了一种电子设备,所述电子设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述语音合成方法的步骤。
16.第三方面,本技术还提供了一种语音合成系统,包括文本录入设备,与文本录入设备相连的语音合成设备,其中,所述语音合成设备用于执行如上所述的语音合成方法的步骤。
17.第四方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述语音合成方法的步骤。
18.相比于现有技术,本技术实施例提供的语音合成方法,基于预训练的语音合成模型实现,所述语音合成模型包括文本编码器模块、时长预测模块、解码器模块,所述方法包括:获取音素序列,并输入至所述语音合成模型;通过所述文本编码器模块将所述音素序列转换成均值序列,并输入至所述时长预测模块;通过所述时长预测模块将所述均值序列扩展复制,得到拓展后的均值序列;通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音,本技术可以将语音转换成均值序列并去噪,经过去噪操作后,提高了语音合成速度,能够实现在低功耗设备部署时也能够快速合成语音。
19.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
20.为了更清楚地说明本技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1为本技术实施方式提供的一种语音合成方法的流程示意图。
22.图2为本技术实施方式提供的一种语音合成方法的子步骤流程示意图。
23.图3为本技术实施方式提供的一种语音合成方法的另一种子步骤流程示意图。
24.图4为本技术实施方式提供的一种电子设备的结构示意图。
具体实施方式
25.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
26.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
27.应当理解,在此本技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本技术。如在本技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
28.应当理解,为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一服务器和第二服务器仅仅是为了区分不同的服务器,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
29.还应当进一步理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
30.本技术发明人发现,在一些在手机、平板电脑等低功耗设备部署语音合成模式时,语音模型需要较多的去噪步数,所以合成的速度就会比较慢。此外,低功耗设备搭载目前的语音合成模型,计算开销也比较大。
31.为了解决上述问题,本技术提供了一种语音合成方法,该方法基于预训练的语音合成模型实现,所述语音合成模型包括文本编码器模块、时长预测模块、解码器模块,所述方法包括:获取音素序列,并输入至所述语音合成模型;通过所述文本编码器模块将所述音素序列转换成均值序列,并输入至所述时长预测模块;通过所述时长预测模块将所述均值序列扩展复制,得到拓展后的均值序列;通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音。通过上述方案,可以将语音转换成均值序列并去噪,经过去噪操作后,提高了语音合成速度。
32.此外,本技术的解码器模块可以基于u-net模型训练得到,因为u-net被广泛应用于图像语义分割领域,其内部包含了大量的卷积网络、下采样操作和上采样操作。其中卷积网络贡献了大量的参数;而本方案可以使用深度可分离卷积网络代替了原始u-net中的卷积网络,能够有效降低u-net的参数量,同时加快了解码器的运算速度。
33.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
34.参见图1所示,图1为本技术实施方式提供的一种语音合成方法的流程示意图。该方法基于预训练的语音合成模型实现,所述语音合成模型包括文本编码器模块、时长预测模块、解码器模块,所述方法包括步骤s100-步骤s400。
35.步骤s100、获取音素序列,并输入至所述语音合成模型。
36.在一些实施例中,可以将一些文本,输入一些现有的编码器中,编码器中的文本转音素模块可以根据语言学知识设计的转换逻辑,将文本转换成更能体现其发音特点的音素序列,从而获得到音素序列。
37.值得一提的是,编码器将文本转化为音素序列后,还需要经过一系列操作才能得
到合成后的语音。
38.当然,也可以采用其他方法获取音素序列,此处就不再进行过多的说明。
39.步骤s200、通过所述文本编码器模块将所述音素序列转换成均值序列,并输入至所述时长预测模块。
40.当音素序列被输入至文本编码器模块后,文本编码器模块可以将音素序列进行转换处理,转换成均值序列。
41.步骤s300、通过所述时长预测模块将所述均值序列扩展复制,得到拓展后的均值序列。
42.在本技术实施例中,时长预测模块可以对每个音素的时长进行预测,从而确定每个音素的时长。当每个音素的时长都确定后,可以根据所预测的时长扩展复制均值序列,从而得到拓展后的均值序列。
43.具体的,所述通过所述时长预测模块将所述均值序列扩展复制,包括:通过所述时长预测模块对所述均值序列的每个音素时长进行预测;根据所预测的时长,将所述均值序列进行扩展复制。
44.步骤s400、通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音。
45.根据扩展后的均值序列,采样随机数,输入到解码器模块中进行去噪,经过数步去噪操作后,将随机数转换为梅尔谱并作为模型的最终输出,从而输出合成后的语音。
46.在本技术实施例中,参见图2所示,图2为本技术实施方式提供的一种语音合成方法的子步骤流程示意图。所述通过所述解码器模块将拓展后的均值序列去噪,包括:步骤s401-402。
47.步骤s401、对扩展后的均值序列进行采样,得到随机数。
48.其中,所述对扩展后的均值序列进行采样,包括:对所述均值序列进行拆分,得到所述均值序列对应的多个子序列;在每次采样过程中,从均值序列的子序列中随机采样。
49.需要说明的是,合成输入音素序列所对应的语音时,均值序列可以被拆分成多个子序列。然后,每次只从一个均值序列的子序列采样随机数,并使用解码器模块对当前采样的随机数进行去噪操作,得到其所对应的梅尔谱片段。每一个梅尔谱片段合成完毕以后,就可以直接进行播放,而不需要等待整个句子合成完毕。
50.此外,在本技术实施例中,所述解码器模块优选为基于u-net模型训练得到,且所述u-net模型中的卷积网络为深度可分离卷积网络。所述对扩展后的均值序列进行采样,包括:通过所述解码器模块对扩展后的均值序列进行采样,以获取随机数。
51.需要说明的是,u-net模型被广泛应用于图像语义分割领域,其内部包含了大量的卷积网络、下采样操作和上采样操作。其中,卷积网络贡献了大量的参数。本本技术实施例可以使用深度可分离卷积网络代替原始u-net模型中的卷积网络,能够有效降低u-net模型的参数量,同时加快了解码器模块的运算速度。
52.步骤s402、通过所述解码器模块对所述随机数进行去噪。
53.具体的,所述通过所述解码器模块对所述随机数进行去噪,包括:将所述随机数输入解码器模块,获取微分方程的准确解;对所述准确解的积分进行近似求解,获取所述微分方程的解,以实现去噪。
54.其中,所述微分方程如下:其中,t为0-1之间的自然数,
µ
是噪声的先验分布的均值,s是神经网络,βt是一个线性函数,yt=xt
‑µ
,xt是经过t步去噪的样本。
55.所述微分方程的准确解,公式如下:其中,λ表示对数信噪比,i为单位矩阵,βs为线性函数,表示数据分布标准差,表示数据分布方差,为λt的反函数,为的对应的噪声值,λs是s时刻的λ;为t步数噪声的标准差,ys为s时刻的带噪样本,s表示神经网络,t表示步数。
56.进一步地,参见图3所示,图3为本技术实施方式提供的一种语音合成方法的另一种子步骤流程示意图。在本技术实施例中,所述通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,包括:步骤s403-s404。
57.步骤s403、通过所述解码器模块对当前采样的随机数逐个进行去噪操作并进行转换,得到对应的梅尔谱片段。
58.步骤s404、将每个所述梅尔谱片段单独合成并对外输出,以播放合成语音。
59.通过上述方案,将去噪过程中的求解简化,在减小计算误差的情况下,能够提高模型在推理阶段的采样效率;所以,上述方案能够有效降低去噪扩散概率模型合成语音时的实时率与时延,同时使用了深度可分离卷积网络代替原始u-net中的卷积网络,降低了模型参数量,加快了解码器的运算速度,使得基于去噪扩散概率模型的语音合成模型能够应用在实际场景中。
60.此外,本技术实施方式还提供了一种语音合成系统,包括文本录入设备,与文本录入设备相连的语音合成设备,其中,所述语音合成设备用于执行如上所述的语音合成方法的步骤;其中,该方法基于预训练的语音合成模型实现,所述语音合成模型包括文本编码器模块、时长预测模块、解码器模块,所述方法包括:获取音素序列,并输入至所述语音合成模型;通过所述文本编码器模块将所述音素序列转换成均值序列,并输入至所述时长预测模块;通过所述时长预测模块将所述均值
序列扩展复制,得到拓展后的均值序列;通过所述解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音。
61.进一步地,在本技术一些实施例中,还包括:所述通过所述解码器模块将拓展后的均值序列去噪,包括:对扩展后的均值序列进行采样,得到随机数;通过所述解码器模块对所述随机数进行去噪。
62.进一步地,在本技术一些实施例中,述对扩展后的均值序列进行采样,包括:对所述均值序列进行拆分,得到所述均值序列对应的多个子序列;在每次采样过程中,从均值序列的子序列中随机采样。
63.进一步地,在本技术一些实施例中,所述解码器模块基于u-net模型训练得到,且所述u-net模型中的卷积网络为深度可分离卷积网络;所述对扩展后的均值序列进行采样,包括:通过所述解码器模块对扩展后的均值序列进行采样,以获取随机数。
64.进一步地,在本技术一些实施例中,所述通过所述解码器模块对所述随机数进行去噪,包括:将所述随机数输入解码器模块,获取微分方程的准确解;对所述准确解的积分进行近似求解,获取所述微分方程的解,以实现去噪;其中,所述微分方程如下:其中,xt是经过t步去噪的样本,t为0-1之间的自然数,
µ
是噪声的先验分布的均值,s是神经网络,βt是一个线性函数,yt=xt
‑µ

65.所述微分方程的准确解,公式如下:其中,λ表示对数信噪比,i为单位矩阵,βs为线性函数,表示数据分布标准差,表示数据分布方差,为λt的反函数,为的对应的噪声值,λs是s时刻的λ;为t步数噪声的标准差,ys为s时刻的带噪样本,s表示神经网络,t表示步数。
66.进一步地,在本技术一些实施例中,所述通过所述解码器模块将拓展后的均值序
列去噪并转换为梅尔谱,包括:通过所述解码器模块对当前采样的随机数逐个进行去噪操作并进行转换,得到对应的梅尔谱片段;将每个所述梅尔谱片段单独合成并对外输出,以播放合成语音。
67.进一步地,在本技术一些实施例中,所述通过所述时长预测模块将所述均值序列扩展复制,包括:通过所述时长预测模块对所述均值序列的每个音素时长进行预测;根据所预测的时长,将所述均值序列进行扩展复制。
68.通过上述方案,将去噪过程中的求解简化,在减小计算误差的情况下,能够提高模型在推理阶段的采样效率;所以,上述方案能够有效降低去噪扩散概率模型合成语音时的实时率与时延,同时使用了深度可分离卷积网络代替原始u-net中的卷积网络,降低了模型参数量,加快了解码器的运算速度,使得基于去噪扩散概率模型的语音合成模型能够应用在实际场景中。
69.本技术还提供了一种电子设备,参见图4所示,图4为本技术实施方式提供的一种电子设备的结构示意图。电子设备50可以包括处理器(cpu、gpu、fpga等)501,其可以根据存储在只读存储器(rom)502中的程序或者从存储部分508加载到随机访问存储器(ram)503中的程序而执行上述附图所示的实施方式中的部分或全部处理。在ram503中,还存储有系统操作所需的各种程序和数据。处理器501、rom502以及ram503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
70.以下部件连接至i/o接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至i/o接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
71.特别地,根据本技术的实施方式,上文参考附图描述的方法可以被实现为计算机软件程序。例如,本技术的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,计算机程序包含用于执行附图中的方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。
72.附图中的流程图和框图,图示了按照本技术各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
73.描述于本技术实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
74.作为另一方面,本技术还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,程序被一个或者一个以上的处理器用来执行描述于本技术的语音合成方法,该语音合成方法基于预训练的语音合成模型实现,语音合成模型包括文本编码器模块、时长预测模块、解码器模块,方法包括:获取音素序列,并输入至语音合成模型;通过文本编码器模块将音素序列转换成均值序列,并输入至时长预测模块;通过时长预测模块将均值序列扩展复制,得到拓展后的均值序列;通过解码器模块将拓展后的均值序列去噪并转换为梅尔谱,以输出合成后的语音。本技术的语音合成方法,可以将语音转换成均值序列并去噪,经过去噪操作后,提高了语音合成速度,加快了解码器的运算速度,使得基于去噪扩散概率模型的语音合成模型能够应用在实际场景中。
75.进一步地,在本技术实施例中,所述通过所述解码器模块将拓展后的均值序列去噪,包括:对扩展后的均值序列进行采样,得到随机数;通过所述解码器模块对所述随机数进行去噪。
76.进一步地,在本技术实施例中,所述对扩展后的均值序列进行采样,包括:对所述均值序列进行拆分,得到所述均值序列对应的多个子序列;在每次采样过程中,从均值序列的子序列中随机采样。
77.进一步地,在本技术实施例中,所述解码器模块基于u-net模型训练得到,且所述u-net模型中的卷积网络为深度可分离卷积网络;所述对扩展后的均值序列进行采样,包括:通过所述解码器模块对扩展后的均值序列进行采样,以获取随机数。
78.进一步地,在本技术实施例中,所述通过所述解码器模块对所述随机数进行去噪,包括:将所述随机数输入解码器模块,获取微分方程的准确解;对所述准确解的积分进行近似求解,获取所述微分方程的解,以实现去噪。
79.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!