语音合成方法、装置、电子设备及存储介质与流程

文档序号:32350723发布日期:2022-11-26 12:58阅读:105来源:国知局
语音合成方法、装置、电子设备及存储介质与流程

1.本公开涉及语音技术领域,尤其涉及语音合成方法、装置、电子设备及存储介质。


背景技术:

2.目前,语音合成技术(text-to-speech,tts),即实现输入文本输出对应音频的过程。通常情况下,制作一个tts音库,需要目标发言人在专业录音棚里,使用专业录音设备,在保持稳定的嗓音状况下,录制一定量的录音并进行人工标注后,再进行训练。录音量根据不同的技术路线而有所不同,传统的选音拼接方式,需要播音员录制20-50小时,参数合成和神经网络路线所需的录音量较少,但是至少也需要2个小时。这种对于录音量的要求,在面向企业(to business,tob)场景下是比较可行的。但是在面向普通用户(to consumer,toc)的场景下,这种制作方式是不现实的。因此,利用极少数据集进行语音合成这一课题,变得尤为重要。
3.为解决上述问题,现有技术中通过借助其他人的训练语料,训练一个平均模型,该模型有表征每个音素特征的能力,将目标人的数据送给模型,并且将发言人特征作为特别的输入也输送给模型,让模型加固对该发言人的特征还原能力,从而达到该任务要求,但是这种结构的问题在于,即便是运用了多人模型,音素覆盖不足的问题仍然会影响到模型的最终效果。


技术实现要素:

4.为克服相关技术中存在的问题,本公开提供一种语音合成方法、装置、电子设备及存储介质。
5.根据本公开实施例的第一方面,提供一种语音合成方法,包括:
6.从目标数据集中获取文本数据和所述文本数据对应的音频数据;
7.根据所述文本数据和目标音素编码获取拼接编码;
8.将所述音素编码和目标音素编码进行拼接,得到拼接编码;
9.将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数;
10.根据所述第一损失函数对判别模型进行训练,得到训练后的判别模型;
11.将所述模拟音频数据和所述音频数据输入训练后的判别模型进行判断;
12.根据判断结果对所述生成模型进行迭代优化,直至所述模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,输出目标音频数据。
13.可选的,所述将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数包括:
14.根据所述拼接编码进行向量化处理,得到拼接向量;
15.将所述拼接向量转换成中间特征,由所述中间特征与第一时刻的目标特征输出生成第二时刻的目标特征,根据目标特征生成模拟音频数据以及第一损失函数。
16.可选的,所述根据判断结果对所述生成模型进行迭代优化包括:
17.获取判别模型的第二损失函数;
18.根据所述第二损失函数训练所述判别模型,冻结参数,根据所述判别模型的第二损失函数训练所述生成模型,进行迭代优化。
19.可选的,所述根据所述文本数据和目标音素编码获取拼接编码包括:
20.将所述文本数据转换成拼音序列,根据拼音序列获取对应的音素编码;
21.将所述音素编码和目标音素编码进行拼接处理,得到拼接编码。
22.根据本公开实施例的第二方面,提供一种语音合成装置,所述装置包括:
23.第一获取模块,用于从目标数据集中获取文本数据和所述文本数据对应的音频数据;
24.第二获取模块,用于根据所述文本数据和目标音素编码获取拼接编码;
25.拼接模块,用于将所述音素编码和目标音素编码进行拼接处理,得到拼接编码;
26.输出模块,用于将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数;
27.训练模块,用于根据所述第一损失函数对判别模型进行训练,得到训练后的判别模型;
28.判断模块,用于将所述模拟音频数据和所述音频数据输入训练后的判别模型进行判断;
29.优化输出模块,用于根据判断结果对所述生成模型进行迭代优化,直至所述模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,输出目标音频数据。
30.可选的,所述输出模块包括:
31.处理子模块,用于根据所述拼接编码进行向量化处理,得到拼接向量;
32.生成子模块,用于将所述拼接向量转换成中间特征,由所述中间特征与第一时刻的目标特征输出生成第二时刻的目标特征,根据目标特征生成模拟音频数据以及第一损失函数。
33.可选的,所述优化输出模块包括:
34.获取子模块,用于获取判别模型的第二损失函数;
35.优化子模块,用于根据所述第二损失函数训练所述判别模型,冻结参数,根据所述判别模型的第二损失函数训练所述生成模型,进行迭代优化。
36.可选的,所述拼接模块包括:
37.转换子模块,用于将所述文本数据转换成拼音序列,根据拼音序列获取对应的音素编码;
38.拼接子模块,用于将所述音素编码和目标音素编码进行拼接处理,得到拼接编码。
39.根据本公开实施例的第三方面,提供一种电子设备,包括:
40.处理器;
41.用于存储所述处理器可执行指令的存储器;
42.其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的语音合成方法。
43.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述
的语音合成方法。
44.本公开的实施例提供的技术方案可以包括以下有益效果:
45.本公开可以通过从目标数据集中获取文本数据和所述文本数据对应的音频数据;根据所述文本数据和目标音素编码获取拼接编码;将所述音素编码和目标音素编码进行拼接,得到拼接编码;将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数;根据所述第一损失函数对判别模型进行训练,得到训练后的判别模型;将所述模拟音频数据和所述音频数据输入训练后的判别模型进行判断;根据判断结果对所述生成模型进行迭代优化,直至所述模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,输出目标音频数据。即通过生成模型和判别模型之间的对抗结构在更多的音素组合上的表现,使其更加贴近发言人的真实说话效果。由于通过生成器+判别器的对抗,使模型更趋向于生成更加真实的音频,减少合成音频的机械感,改善tacotron-2模型输出过平滑的问题。通过本公开的实施例提供的技术方案可以实现利用极少数据集进行语音合成,音素覆盖充分,模拟合成音频效果更加逼真。
46.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
47.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
48.图1是根据一示例性实施例示出的一种语音合成方法的流程图;
49.图2是根据一示例性实施例示出的一种语音合成装置的框图;
50.图3是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
51.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
52.需要说明的是,在本技术实施例中,tts分为文本分析(例如,文本正则化、多音字消歧等)、韵律预测模块、时长模型、声学模型和声码器等几个部分。处理过的文本经过韵律预测模块,输出带有韵律符号的文本,再进行单词到音素(grapheme2phoneme,g2p)等环节,tts经历了选音拼接、参数合成和神经网络三个主要的阶段。
53.为了便于本领域技术人员对本技术的进一步理解,需要说明的是,本技术实施例主要应用于极少数据集下的语音合成,例如,通过本技术实施例中的方案,用户a可以通过短暂录制来实现用户a进行全本三国演义的合成;或者,在车机场景下,用户b不使用导航软件中自带的语音包或者明星音,而是倾向于使用家人的声音来进行导航播报。这时候,就可以通过短暂录制获取极少数据集来完成导航播报。
54.图1是根据一示例性实施例示出的一种语音合成方法的流程图,如图1所示,包括以下步骤。
55.在步骤101中,从目标数据集中获取文本数据和文本数据对应的音频数据。
56.需要说明的是,在本技术实施例中,目标数据集可以是一种极少数据集,极少数据集是相对于现有的大量的数据集作为数据的来源输入到某一模型中输出目标结果而言,可以通过少量的数据也实现输出目标结果,极少数据集中包括文本数据和文本数据对应的音频数据,获取的音频数据是预设说话人是按照录音文本一字不差进行的录音。
57.在步骤102中,根据文本数据和目标音素编码获取拼接编码。
58.需要说明的是,在本技术实施例中,获取的文本数据需要转换成计算机语言,具体的,将文本数据转换成拼音序列,根据拼音序列获取对应的音素编码。
59.需要说明的是,将文本数据转换成拼音序列可以通过对文本数据进行文本序列化处理,再利用声学模型来实现根据拼音序列获取对应的音素编码,将拼音序列转换成音素编码,音频提取出与模型适配的声学特征。
60.在步骤103中,将音素编码和目标音素编码进行拼接,得到拼接编码。
61.需要说明的是,将所述音素编码和目标音素编码进行拼接处理,得到拼接编码,拼接编码作为编码器的输入部分。
62.在步骤104中,将拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数。
63.需要说明的是,在本技术实施例中,在步骤103中获取拼接编码以后将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数。
64.需要说明的是,借助神经网络模型来实现极少数据集情况下的语音合成,可以选用任意一种tts模型,基于多人训练的平均模型,加入说话人编码,来实现这一任务。比如,选用tacotron-2模型基本结构,在多人模型基础上fine-tune(微调)。说话人编码可以通过one-hot embedding(稀疏编码)或者额外训练一个提取speaker embedding(说话人向量)的模型。之所以要借助多人平均模型是因为,考虑到实际应用场景,极少数据集通常就是10-100句(平均句长小于25字),很难达到音素的覆盖,甚至连基本的音素(声母+带调韵母)的覆盖都很难。因此,现有技术中借助其他人的训练语料(比如200小时的数据),训练一个平均模型,该模型有表征每个音素特征的能力,但是对于某个说话人的特征还原能力较差。但是对于即便是运用了多人模型,音素覆盖不足的问题仍然会影响到模型的最终效果,并且tacotron-2模型输出过程中会出现过平滑的问题,也需要某种结构来进行纠正和改善。
65.因此,在本技术实施例中通过生成式对抗网络(gan,generative adversarial networks),使模型更趋向于生成更加真实的音频,减少合成音频的机械感。在本技术实施例中生成模型指的是生成器,判别模型指的是判别器,生成模型和判别模型之间的关系可以理解为生成器生成一个东西,输入到判别器中,然后由判别器来判断这个输入是真实的数据还是机器生成的,如果没有骗过判别器,那么生成器继续进化,输出第二代输出,再输入判别器,判别器同时也在进化,对生成器的输出有了更严格的要求,这样生成器和判别器不断进化,生成模型和判别模型可以组成生成式对抗网络。
66.在步骤104中,输出第一损失函数具体包括以下步骤:根据所述拼接编码进行向量化处理,得到拼接向量;将所述拼接向量转换成中间特征,由所述中间特征与第一时刻的目标特征输出生成第二时刻的目标特征,根据目标特征生成模拟音频数据以及第一损失函数。
67.需要说明的是,在本技术实施例中,将音频数据作为输入,进行向量映射,即用向量来表示实体,同时拼接获取的目标对象的音频数据进行向量映射,此时,将得到的第一拼接向量和第二拼接向量共同进入语音合成模型的编码器部分,即三层一维卷积层及一个双向lstm(long short term memory,长短期记忆)层,之后语音合成模型进入位置敏感注意力(location sensitive attention)+解码器部分,位置敏感注意力机制,它主要是将上一时刻的注意力结果当作该序列的位置特征信息,并添加到原有注意力机制基础上,这样得到的注意力中就会有内容和位置两种信息,例如语音合成任务中,输出序列大于输入序列,因为混合注意力中含有位置信息,所以可以在输入序列中选择下一个编码的位置。模型进入位置敏感注意力(location sensitive attention)+解码器部分是将拼接向量转换成中间特征,由中间特征与第一时刻的目标特征输出生成第二时刻的目标特征,根据目标特征生成模拟音频数据以及第一损失函数。
68.在步骤105中,根据第一损失函数对判别模型进行训练,得到训练后的判别模型。
69.需要说明的是,在本技术实施例中,步骤104,在语音合成模型的解码器中计算数据的第一损失函数,根据第一损失函数对判别模型进行训练,得到训练后的判别模型。
70.在步骤106中,将模拟音频数据和音频数据输入训练后的判别模型进行判断。
71.在前序阐述过,生成模型和判别模型之间的关系可以理解为生成器生成一个东西,输入到判别器中,然后由判别器来判断这个输入是真实的数据还是机器生成的,如果没有骗过判别器,那么生成器继续进化,输出第二代输出,再输入判别器,判别器同时也在进化,对生成器的输出有了更严格的要求,因此,在本技术实施例中,根据生成模型中生成的模拟音频数据和实际采集的目标用户的音频数据输入到训练后的判别模型进行判断,判别模型判断音频数据集合中的数据是真实的数据还是机器生成的,并输出对应的判断结果。
72.在步骤107中,根据判断结果对生成模型进行迭代优化,直至模拟音频数据在判别模型中输出的判断结果等于预设阈值,输出目标音频数据。
73.在步骤107中,根据判断结果对所述生成模型进行迭代优化包括以下步骤:获取判别模型的第二损失函数;根据所述第二损失函数训练所述判别模型,冻结参数,根据所述判别模型的第二损失函数训练所述生成模型,进行迭代优化。
74.根据判别模型对音频数据集合中的数据的判断结果对生成模型迭代优化,直至模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,预设阈值是一个判断模拟音频数据是否真实的一项指标,在本技术中对于具体数值不做具体限定,此时,当判别模型认定模拟音频数据已经符合真实音频,生成模型训练完成,输出目标音频数据。
75.需要说明的是,在实际过程中,生成模型和判别模型是一直处于一种相互对抗的阶段,这样可以保证生成模型生成的模拟音频可以实现完全模拟目标用户的真实声音,即在本技术实施例中,通过使用判别模型的损失来训练判别器,之后冻结判别模型的参数,再交换,使用判别模型的损失训练生成模型进行迭代优化。简单来讲,生成器进行预测,生成n个batch的结果,计算出损失,然后这个生成的数据和真实数据组成的batch,使用判别器的损失来训练判别器,之后冻结参数,再交换,使用判别器的损失训练生成器。
76.本公开可以通过从目标数据集中获取文本数据和所述文本数据对应的音频数据;根据所述文本数据和目标音素编码获取拼接编码;将所述音素编码和目标音素编码进行拼接,得到拼接编码;将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函
数;根据所述第一损失函数对判别模型进行训练,得到训练后的判别模型;将所述模拟音频数据和所述音频数据输入训练后的判别模型进行判断;根据判断结果对所述生成模型进行迭代优化,直至所述模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,输出目标音频数据。即通过gan结构扩展模型在更多的音素组合上的表现,使其更加贴近发言人的真实说话效果。由于通过生成器+判别器的对抗,使模型更趋向于生成更加真实的音频,减少合成音频的机械感,改善tacotron-2模型输出过平滑的问题。通过本公开的实施例提供的技术方案可以实现利用极少数据集进行语音合成,音素覆盖充分,模拟合成音频效果更加逼真。
77.图2是根据一示例性实施例示出的一种语音合成装置的框图,该装置包括第一获取模块、第二获取模块、拼接模块、输出模块、训练模块、判断模块、优化输出模块。
78.第一获取模块201,用于从目标数据集中获取文本数据和所述文本数据对应的音频数据;
79.第二获取模块202,用于根据所述文本数据和目标音素编码获取拼接编码;
80.拼接模块203,用于将所述音素编码和目标音素编码进行拼接处理,得到拼接编码;
81.输出模块204,用于将所述拼接编码输入生成模型中生成模拟音频数据,输出第一损失函数;
82.训练模块205,用于根据所述第一损失函数对判别模型进行训练,得到训练后的判别模型;
83.判断模块206,用于将所述模拟音频数据和所述音频数据输入训练后的判别模型进行判断;
84.优化输出模块207,用于根据判断结果对所述生成模型进行迭代优化,直至所述模拟音频数据在所述判别模型中输出的判断结果等于预设阈值,输出目标音频数据。
85.可选的,所述输出模块包括:
86.处理子模块,用于根据所述拼接编码进行向量化处理,得到拼接向量;
87.生成子模块,用于将所述拼接向量转换成中间特征,由所述中间特征与第一时刻的目标特征输出生成第二时刻的目标特征,根据目标特征生成模拟音频数据以及第一损失函数。
88.可选的,所述优化输出模块包括:
89.获取子模块,用于获取判别模型的第二损失函数;
90.优化子模块,用于根据所述第二损失函数训练所述判别模型,冻结参数,根据所述判别模型的第二损失函数训练所述生成模型,进行迭代优化。
91.可选的,所述拼接模块包括:
92.转换子模块,用于将所述文本数据转换成拼音序列,根据拼音序列获取对应的音素编码;
93.拼接子模块,用于将所述音素编码和目标音素编码进行拼接处理,得到拼接编码。
94.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
95.图3是根据一示例性实施例示出的一种用于电子设备1400的框图。例如,电子设备
1400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
96.参照图3,电子设备1400可以包括以下一个或多个组件:处理组件1402,存储器1404,电力组件1406,多媒体组件1408,音频组件1410,输入/输出接口1412,传感器组件1414,以及通信组件1416。
97.处理组件1402通常控制装置1400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1402可以包括一个或多个处理器1420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1402可以包括一个或多个模块,便于处理组件1402和其他组件之间的交互。例如,处理组件1402可以包括多媒体模块,以方便多媒体组件1408和处理组件1402之间的交互。
98.存储器1404被配置为存储各种类型的数据以支持在设备1400的操作。这些数据的示例包括用于在装置1400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
99.电源组件1406为电子设备1400的各种组件提供电力。电力组件1406可以包括电源管理系统,一个或多个电源,及其他与为电子设备1400生成、管理和分配电力相关联的组件。
100.多媒体组件1408包括在所述电子设备1400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1408包括一个前置摄像头和/或后置摄像头。当电子设备1400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
101.音频组件1410被配置为输出和/或输入音频信号。例如,音频组件1410包括一个麦克风(mic),当电子设备1400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1404或经由通信组件1416发送。在一些实施例中,音频组件1410还包括一个扬声器,用于输出音频信号。
102.输入/输出接口1412为处理组件1402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
103.传感器组件1414包括一个或多个传感器,用于为电子设备1400提供各个方面的状态评估。例如,传感器组件1414可以检测到电子设备1400的打开/关闭状态,组件的相对定位,例如所述组件为电子设备1400的显示器和小键盘,传感器组件1414还可以检测电子设
备1400或电子设备1400一个组件的位置改变,用户与电子设备1400接触的存在或不存在,电子设备1400方位或加速/减速和电子设备1400的温度变化。传感器组件1414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1414还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
104.通信组件1416被配置为便于电子设备1400和其他设备之间有线或无线方式的通信。电子设备1400可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件1416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1416还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
105.在示例性实施例中,电子设备1400可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
106.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1404,上述指令可由电子设备1400的处理器1420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
107.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本技术旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
108.应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1