首页 > 乐器声学 专利正文
声学深度学习模型训练方法、语音生成方法及设备与流程

时间:2022-02-18 阅读: 作者:专利查询

声学深度学习模型训练方法、语音生成方法及设备与流程

1.本发明涉及语音分析与合成领域,具体涉及一种声学深度学习模型训练方法、语音生成方法及设备。


背景技术:

2.微课(microlecture),是指运用信息技术按照认知规律,呈现碎片化学习内容、过程及扩展素材的结构化数字资源。微课的一个功能是根据用户上传的文本或ppt以及照片,生成照片中的人物进行解说的视频。该功能首先根据文本内容合成语音,然后驱动生成人物的嘴唇及头部动作,最后合成整个视频。由于有很多国外单位用户在提交的文本里经常会出现多种语言混杂的情况,因此需要根据文本合成出清晰流畅的中英混杂语音。
3.以中、英文混杂的场景为例,在开发中英混杂语言tts(text to speech, 文本转语音)模型时就需要中英文混杂的语音数据作为训练数据,但是tts模型训练数据本身对噪声及说话人的口音、流利程度都有很高要求,对中英混杂的tts语音数据要求会更高,需要说话人能流利的说两种语言且切换流畅顺畅,然后在专业录音棚录制,导致这种数据很难获取,或者获取成本非常高。
4.另一方面,现有的语音合成技术都是采用两阶段法进行合成,第一阶段是根据语音数据的梅尔谱和相应文本,训练声学模型从文本生成梅尔谱;第二阶段是利用声码器,将第一阶段中生成的梅尔谱转换为语音信号。这种两阶段tts技术需要分别训练两个模型,训练周期较长,任何一个环节出问题都会导致最终结果不理想。特别是在第二阶段中,训练声码器到底是采用原始训练语音数据的频谱还是声学模型生成的频谱,一直是存在争论的问题,如果采用后者,每次声学模型更新后,都要重新训练一次声码器,导致tts模型的训练成本不断升高。
5.由此可见,按照现有的语音合成技术,要合成混杂语种语音,就需要使用混杂语种的语音数据和文本数据训练模型。但是获取这种数据的成本非常高,需要说话人能够使用多种语言且每种语言发音都十分标准,还要能熟练流畅的进行语种切换。另外,现有技术采用两阶段进行语音合成,先合成语音的梅尔谱,然后再将梅尔谱转为语音,导致整个技术栈较长,模型训练成本较高,当一个环节出问题时,整体效果都会受到影响。


技术实现要素:

6.有鉴于此,本技术提供一种声学深度学习模型训练方法,包括:获取多个语种的原始样本数据,所述原始样本数据包括说话人的音频数据、文本数据和语种信息;根据所述语种信息将所述文本数据转换为音素,并为每个所述音素分别添加语种标签;提取所述音频数据的线性谱数据;深度学习模型利用多个训练数据进行训练,所述训练数据包括所述线性谱数据、
所述音素及其语种标签、所述文本数据,所述深度学习模型包括音频生成模块、文本特征提取模块、流映射模块、对齐搜索模块和时长预测模块,其中所述音频生成模块用于根据所述线性谱数据生成音频数据、所述文本特征提取模块用于对所述音素提取文本特征值、所述流映射模块用于将所述音频生成模块提取的音频特征映射为潜在变量,所述对齐搜索模块用于建立所述文本特征值与所述潜在变量的映射关系数据,所述时长预测模块用于根据所述文本特征提取模块提取的文本特征和所述映射关系数据确定时长信息。
7.可选地,原始样本数据为多个说话人的原始样本数据,至少部分说话人所使用的语种不同,同一说话人的原始样本数据为单一语种。
8.可选地,所述音频生成模块包括后验频谱编码器和解码器,其中所述后验频谱编码器用于对所述线性谱数据提取音频特征,所述解码器用于根据所述音频特征生成所述音频数据。
9.可选地,所述文本特征提取模块包括音素编码器和映射模块,其中所述音素编码器用于对所述音素提取文本特征数据,所述映射模块用于将所述文本特征数据处理为所述特征值。
10.可选地,所述特征值为多元高斯分布的均值和方差。
11.可选地,所述训练数据中还包括说话人的标识数据,在所述深度学习模型利用多个训练数据进行训练的过程中,所述标识数据被送入所述音频生成模块、流映射模块和时长预测模块。
12.本技术还提供一种语音生成方法,包括:获取文本数据和语种信息;根据所述语种信息将所述文本数据转换为音素,并为每个所述音素分别添加语种标签;利用深度学习模型生成音频数据,所述深度学习模型包括音频生成模块、文本特征提取模块、流映射模块和时长预测模块,其中所述文本特征提取模块用于对所述音素提取文本特征值,所述时长预测模块用于根据所述文本特征提取模块提取的文本特征生成时长信息,所述流映射模块用于根据所述文本特征值和所述时长信息计算潜在变量,并根据所述潜在变量生成频谱特征数据,所述音频生成模块根据所述频谱特征数据生成音频数据。
13.可选地,所述文本特征提取模块包括音素编码器和映射模块,其中所述音素编码器用于对所述音素提取文本特征数据,所述映射模块用于将所述文本特征数据处理为所述特征值。
14.可选地,所述特征值为多元高斯分布的均值和方差。
15.可选地,在利用深度学习模型生成音频数据前还包括获取说话人的标识数据,在利用深度学习模型生成音频数据的过程中,所述标识数据被送入所述音频生成模块、流映射模块和时长预测模块。
16.相应地,本技术提供一种声学深度学习模型训练设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述声学深度学习模型训练方法。
17.相应地,本技术提供一种语音生成设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述语音生成方法。
18.本技术提供的声学深度学习模型训练方案将文本到语音的整个处理流程在一个模型框架中完成,通过对齐搜索算法建立文本特征与频谱特征(潜在变量)间的对齐关系,无需其他辅助模型,将现有技术的两阶段训练法转变为单一阶段,训练效率得到大幅提升,实现真正的完全端到端训练,提升模型训练效率。
19.本技术提供的声学深度学习模型训练方案在文本编码为音素时添加了语种信息,无需在模型中加入语种的embedding,由此可以有效区分不同的语种,并且将不同语种间共同的发音特征交由模型来学习,使得模型能高效提取语种特征。在需要混杂语种的情况下,如果某说话人的语音数据只有单一语种,由于模型学会了其他说话人说其它语种的发音方式,最后模型也能用该说话人的音色合成出其它语种的发音部分,因此本方案无需使用混杂语种语音数据作为模型的训练数据。
20.根据本技术提供的语音生成方案,在进行模型推理时,使用flow逆变换以及gan生成器,并行生成语音,由此可以大幅提升语音生成速度,整个过程都可以并行运算,充分发挥gpu的计算能力,语音合成的实时率可以达到0.02,十分方便工程部署。
附图说明
21.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1为本发明实施例中的一种模型训练方案示意图;图2为本发明实施例中一种优选的模型训练方案示意图;图3为本发明实施例中的一种语音合成方案示意图;图4为本发明实施例中一种优选的语音合成方案示意图。
具体实施方式
23.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
25.本实施例提供一种声学深度学习模型训练方法,该方法可以由计算机、服务器等电子设备执行,该方法包括如下操作:获取多个语种的原始样本数据,原始样本数据包括说话人的音频数据、文本数据和语种信息。多个语种例如可以是中文、英语、日语等不同国家或地区的语种,音频数据和文本数据只需单一语种即可,当然也可以是多语种混杂的。
26.单一语种是指,一个原始数据是一位使用中文的说话人的纯中文语音和纯中文文
本;或者使用英语的说话人的纯英文语音和纯英文文本。获取的所有原始样本数据中必须存在至少两个语种。
27.多语种混杂是指,一个原始数据可以是一位使用中、英文的说话人的中、英文语音和中英文本,比如例句“hello你好”。获取的所有原始样本数据中可以但不必须存在这种混杂的样本。鉴于多语种混杂的样本数据难以获得,所以在具体的实施例中使用多个说话人的原始样本数据,其中至少部分说话人所使用的语种不同,同一说话人的原始样本数据为单一语种。
28.根据语种信息将文本数据转换为音素,并为每个音素分别添加语种标签。音素是根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作,一个动作构成一个音素。不同语种的音素转化方法不同,即采用与语种相应的转换方式对文本进行处理,比如英文“hello”转换为4个音素,分别为“hh”、“ah0”、“l”、“ow1”;中文“你好”转换为4个音素,分别为“n”、“i3”、“h”、“ao3”。
29.本实施例需要为这些音素添加用于表示其语种的标签,比如标签“en”表示英语、“cn”表示中文。添加标签后的音素可表示为“en

hh”、“en

ah0”、“en

l”、“en

ow1”、“cn

n”、“cn

i3”、“cn

h”、“cn

ao3”。
30.提取音频数据的线性谱数据。具体可采用诸如短时傅里叶变换等手段,对音频信号进行处理即可得到语音的线性谱。
31.通过以上预处理即可得到用于训练深度学习网络模型的训练数据,本实施例所使用的训练数据包括音频数据、线性谱数据、音素及其语种标签、文本数据。
32.本实施例中的深度学习模型如图1所示,该模型包括音频生成模块1、文本特征提取模块2、流映射模块3、对齐搜索模块4和时长预测模块5。
33.音频生成模块1用于根据线性谱数据生成音频数据,此模块采用生成对抗学习机制,对线性谱提取特征向量,并进一步根据特征向量生成音频数据。
34.文本特征提取模块2用于对音素提取文本特征值,其中各个音素分别添加了语种标签。此模块可采用多种神经网络模型中的特征提取网络,最终得到的特征值可根据网络类型进行配置,比如设置一个映射层,按照设定的规则将网络提取的特征向量映射为相应的数值。
35.流映射模块3用于将音频生成模块1提取的音频特征映射为潜在变量。音频生成模块1在生成音频的过程中必然提取了特征向量,也即线性谱的特征数据,潜在变量可以被直接解释为频谱特征,也可以是对频谱特征做进一步处理所得到的更高维或低维的数据。
36.对齐搜索模块4用于建立文本特征值与潜在变量的映射关系数据,具体有多种可选的对齐搜索算法,作为优选的实施例采用monotonic alignment search(单调对齐搜索)算法。
37.时长预测模块5用于根据文本特征提取模块2提取的文本特征和映射关系数据预测时长信息,该时长信息与全部音素对应,是发出全部音素所使用语音的总时长。
38.模型将根据输出结果(包括音频生成模块1输出的音频数据和时长预测模块5输出的时长信息)优化其各个模块的参数,直至达到预期效果为止。
39.本发明实施例提供的声学深度学习模型训练方案将文本到语音的整个处理流程在一个模型框架中完成,通过对齐搜索算法建立文本特征与频谱特征(潜在变量)间的对齐
关系,无需其他辅助模型,将现有技术的两阶段训练法转变为单一阶段,训练效率得到大幅提升,实现真正的完全端到端训练,提升模型训练效率。
40.本发明实施例提供的声学深度学习模型训练方案在文本编码为音素时添加了语种信息,无需在模型中加入语种的embedding,由此可以有效区分不同的语种,并且将不同语种间共同的发音特征交由模型来学习,使得模型能高效提取语种特征。在需要混杂语种的情况下,如果某说话人的语音数据只有单一语种,由于模型学会了其他说话人说其它语种的发音方式,最后模型也能用该说话人的音色合成出其它语种的发音部分,因此本方案无需使用混杂语种语音数据作为模型的训练数据。
41.图2示出了一种优选的深度学习模型结构,该模型的音频生成模块包括后验频谱编码器11和解码器12,文本特征提取模块包括音素编码器21和映射模块22。
42.在优选的实施例中,训练数据还包括说话人的标识数据,具体是embedding向量,embedding(嵌入)是指将离散变量转变为连续向量,该标识用于区分不同的说话人。比如训练数据包括n个说话人的音频和文本,这些说话人具有不同的embedding向量。在训练过程中,与文本和音频相应的说话人的embedding向量被送入音频生成模块、流映射模块和时长预测模块,使模型在学习过程中区分不同的说话人,经过训练后,用户可以在可选的说话人中选择一个,即用户可以选择输出语音的人声。
43.具体地,在本实施例中说话人的embedding向量被送入后验频谱编码器11、解码器12、流映射模块3和时长预测模块5。本实施例中的后验频谱编码器11对线性谱数据提取音频特征,解码器12根据音频特征生成音频数据。音素编码器21将音素转为相应的embedding向量(可以被解释为文本特征数据),映射模块22用于将文本特征数据处理为特征值。在本实施例中映射模块22将文本层映射为多元高斯分布的均值μ和方差σ。
44.流映射模块3采用flow标准化流将编码器11提取的音频特征映射为潜在变量z,映射计算记为flow f。对齐搜索模块4利用单调对齐搜索算法建立均值μ和方差σ(文本特征)与潜在变量z之间的映射关系。同时时长预测模块5预测时长,为了防止时长预测器训练时影响到其他模块,对时长预测模块进行了梯度中断处理。
45.本技术还提供了一种语音生成方法,利用上述训练方法得到的模型,根据文本生成语音,在本实施例中只需要使用上述模型中的部分模块而非全部。语音生成方法包括如下操作:获取文本数据和语种信息。根据语种信息将文本数据转换为音素,并为每个音素分别添加语种标签。具体可参照上述实施例,此处不再赘述。
46.如图3所示,利用深度学习模型生成音频数据,本实施例中的深度学习模型包括音频生成模块1、文本特征提取模块2、流映射模块3、对齐搜索模块4和时长预测模块5。其中文本特征提取模块2用于对音素提取文本特征值,时长预测模块5用于根据文本特征提取模块2提取的文本特征生成时长信息,对齐搜索模块4用于根据文本特征值和时长信息计算潜在变量,流映射模块3用于根据潜在变量生成频谱特征数据,音频生成模块1根据频谱特征数据生成音频数据。
47.图4示出了与图2对应的一种优选的模型结构,模型进行预测时,后验频谱编码器以及gan(生成对抗网络)中的判别器可以抛弃,保留其他部分进行预测即可。语音生成方法中的流映射模块3所执行的是逆变换操作,表示为flow f
‑1。文本特征提取模块包括音素编
码器21和映射模块22,其中音素编码器21用于对音素提取文本特征数据,映射模块22用于将文本特征数据处理为特征值,特征值优选为多元高斯分布的均值μ和方差σ。时长预测模块5根据文本特征数据生成时长信息,根据均值μ、方差σ和时长信息计算出潜在变量,再经由流映射模块3进行逆变换并行生成频谱特征,最终由解码器12根据频谱特征生成语音。
48.根据本发明实施例的语音生成方法,在进行模型推理时,使用flow逆变换以及gan生成器,并行生成语音,由此可以大幅提升语音生成速度,整个过程都可以并行运算,充分发挥gpu的计算能力,语音合成的实时率可以达到0.02,十分方便工程部署。
49.在训练过程中使用了说话人的embedding向量的情况下,本实施例中则允许用户选择一个说话人,在利用深度学习模型生成音频数据前,获取用户所选说话人的标识数据,在利用深度学习模型生成音频数据的过程中,标识数据被送入音频生成模块、流映射模块和时长预测模块,由此模型最终生成的音频数据的人声即为用户选择的说话人的声音。
50.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
51.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
52.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
53.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
54.显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。