1.本技术涉及数据处理技术领域,具体而言,涉及一种目标音频的输出方法及装置、系统。
背景技术:2.相关技术中,语音转换技术是:将a说话人(源说话人)的语音转换成b说话人(目标说话人)的声音。根据目标说话人的数量,可以将语音转换系统分为to one(目标说话人是一个),to many(目标说话人是多个)两种类型,语音转换系统在具体实现过程中,通常采用以下方案:
3.一,自动语音识别(automatic speech recognition,简称为asr)技术与从文本到语音(text to speech,简称为tts)相结合:首先通过asr模型将音频转换成文本,文本送入目标说话人的tts模型,从而达到转换成目标说话人的效果;
4.二,通过生成式对抗网络(generative adversarial networks,简称为gan)提取音频的(瓶颈层)bnf特征,再经过vocoder(声码器)还原bnf特征,输出音频。
5.上述两个方案在实用上均存在较大问题,对于方案一:如果asr识别错误,则tts也必然转换错误;并且若需要实现多目标说话人转换,需要配置多个tts模型,消耗大,并且多个tts的韵律,语速均不一致。方案二:虽然该方案思路简单,但是模型收敛难以保证,效果停留在实验阶段。
6.针对相关技术中,语音转换系统在目标说话人是多个的场景下无法高效且准确的实现语音转换的技术问题,相关技术中尚未提出有效的解决方案。
技术实现要素:7.本技术实施例提供了一种目标音频的输出方法及装置、系统,以至少解决相关技术中语音转换系统在目标说话人是多个的场景下无法高效且准确的实现语音转换的技术问题。
8.在本技术的一个实施例中,提出了一种目标音频的输出方法,包括:将源音频输入语音后验图ppg(phonetic posteriorgrams)分类网络模型,得到ppg特征向量,其中,所述ppg特征向量用于指示所述每一帧源音频对应的音素标签,所述ppg特征向量包含所述源音频的文本信息和韵律信息;将所述ppg特征向量输入声音转换网络模型,根据所述ppg特征向量对应的所述音素标签输出目标音频的声学特征向量,其中,所述目标音频包含多个不同音色的音频;将所述目标音频的声学特征向量输入声码器,通过所述声码器输出所述目标音频。
9.在本技术的一个实施例中,还提出了一种目标音频的输出装置,包括:输入模块,配置为将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,所述ppg特征向量用于指示所述每一帧源音频对应的音素标签;处理模块,配置为将所述ppg特征向量输入声音转换网络模型,根据所述ppg特征向量对应的所述音素标签输出目标音频的声学特
征向量,其中,所述目标音频包含多个不同音色的音频;输出模块,配置为将所述目标音频的声学特征向量输入声码器,通过所述声码器输出所述目标音频。
10.在本技术的一个实施例中,还提出了一种目标音频的输出系统,包括:语音后验图ppg分类网络模型,配置为根据输入的源音频输出对应的ppg特征向量,其中,所述ppg特征向量用于指示所述每一帧源音频对应的音素标签,所述ppg特征向量包含所述源音频的文本信息和韵律信息;声音转换网络模型,配置为根据所述ppg特征向量对应的所述音素标签输出至少两个不同音色的目标音频的声学特征向量;声码器,配置为根据至少两个所述目标音频的声学特征向量输出至少两个所述目标音频。
11.在本技术的一个实施例中,还提出了一种计算机可读的存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
12.在本技术的一个实施例中,还提出了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
13.通过本技术实施例,将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,ppg特征向量用于指示每一帧源音频对应的音素标签,ppg特征向量包含源音频的文本信息和韵律信息;将ppg特征向量输入声音转换网络模型,根据ppg特征向量对应的音素标签输出多个不同音色的目标音频的声学特征向量;将所述目标音频的声学特征向量输入声码器,通过声码器输出目标音频。解决了相关技术中语音转换系统在目标说话人是多个的场景下无法高效且准确的实现语音转换的技术问题,通过ppg分类网络模型得到指示每一帧源音频对应的音素标签的ppg特征向量,然后通过声音转换网络模型得到与音素标签对应的多个不同音色的目标音频的声学特征向量,最后通过声码器输出多个不同音色的目标音频,实现了目标说话人是多个的场景下高效且准确地进行语音转换。
附图说明
14.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
15.图1是根据本技术实施例的一种可选的目标音频的输出方法的流程图;
16.图2是根据本技术实施例的一种可选的ppg分类网络模型结构示意图;
17.图3是根据本技术实施例的一种可选的声音转换网络模型结构示意图;
18.图4是根据本技术实施例的又一种可选的ppg分类网络模型结构示意图;
19.图5是根据本技术实施例的一种可选的目标音频的输出装置的结构框图;
20.图6是根据本技术实施例的一种可选的目标音频的输出系统的结构框图;
21.图7是根据本技术实施例的一种可选的电子装置结构示意图。
具体实施方式
22.下文中将参考附图并结合实施例来详细说明本技术。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
23.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第
二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
24.图1是根据本技术实施例的一种可选的目标音频的输出方法的流程图,如图1所示,本技术实施例提供的一种目标音频的输出方法,包括:
25.步骤s102,将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,ppg特征向量用于指示每一帧源音频对应的音素标签,ppg特征向量包含源音频的文本信息和韵律信息;
26.步骤s104,将ppg特征向量输入声音转换网络模型,根据ppg特征向量对应的音素标签输出目标音频的声学特征向量,其中,目标音频包含多个不同音色的音频;
27.步骤s106,将目标音频的声学特征向量输入声码器,通过声码器输出目标音频。
28.需要说明的是,通过ppg分类网络模型得到指示每一帧源音频对应的音素标签的ppg特征向量,然后通过声音转换网络模型得到与音素标签对应的多个不同音色的目标音频的声学特征向量,最后通过声码器输出多个不同音色的目标音频,可以实现目标说话人是多个的场景下高效且准确地进行语音转换。
29.本技术实施例提出一种基于语音后验图ppg特征多人转换的声音转换网络模型,摆脱对平行语料的依赖,通过一个变换网络可以实现多目标说话人的声音转换。同时本技术实施例还可以包括转换模块,用于搭载本技术实施例所涉及的ppg分类网络模型;转换模块可以设置在服务器或终端中,本技术实施例对此不作限定。
30.此外,本技术实施例还可配套有相应的拾音设备与播音设备,如麦克风与扬声器等,分别用于获取源说话人的输入音频,以及输出目标说话人的输出音频。
31.本技术实施例中涉及到的训练模型主要包括2个,分别是ppg分类网络模型和声音转换网络模型,其中,在训练声音转换网络模型时需要用到训练好的ppg分类网络模型,因此,需要先对ppg分类网络模型进行训练。
32.在一实施例中,在将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量之前,所述方法还包括:
33.建立ppg分类网络模型,其中,ppg分类网络模型包括依次连接的抽象映射层、模块层、ppg层和分类层,模块层包括至少两个串联的模块;
34.通过第一训练样本训练ppg分类网络模型,其中,第一训练样本包括第一音频特征和第一音频特征对应的第一音素标签。
35.图2是根据本技术实施例的一种可选的ppg分类网络模型结构示意图。如图2所示,ppg分类网络模型包括:fc层(相当于前述抽象映射层),用于将输入特征(梅尔普特征)进行第一步的抽象映射;block块(相当于模块层),block块包括ffm层,单向lstm层,cnn层,ffm层;ppg层;softmax分类层。
36.在一实施例中,通过第一训练数据训练所述ppg分类网络模型之前,所述方法还包括:
37.获取第一训练语料,其中,第一训练语料包括第一音频和第一音频对应的第一文本;
38.将第一音频转换为第一音频特征,并将第一文本转换为第一音素;
39.根据第一音频和第一文本的对齐关系,以及第一音素的时长信息,确定每一帧第一音频特征对应的第一音素标签,其中,第一音素标签用于标识第一音素的类别;
40.将第一音频特征确定为第一训练样本的输入,将第一音素标签确定为第一训练样本的输出。
41.需要说明的是,关于ppg分类网络模型,本技术实施例中利用asr训练语料作为训练语料,其中包含音频,以及音频对应的文本标签。需要说明的是,为了后续使用方便,此处的训练语料并未进行降噪等处理,也不必进行分片处理,以此,后续通过完成训练的系统进行变声时,可直接将相应音频输入至系统中进行对应的特征提取。
42.在一实施例中,通过第一训练样本训练所述ppg分类网络模型,包括:
43.将第一音频特征输入所述抽象映射层,进行第一步抽象映射;
44.通过模块对单个第一训练样本的每一层第一音频特征在通道方向上做归一化,然后通过抽象映射层进行第二步抽象映射;
45.通过模块采用线性序列结构不断从前往后收集输入的第一音频特征的信息,提取第一音频特征之间的全局依赖信息;
46.通过模块提取第一音频特征之间的局部依赖信息;
47.整合全局依赖信息和局部依赖信息,并对第一音频特征做第三步抽象映射;
48.根据第一音素标签对应的音素类别的总数,通过ppg层对经过第三步抽象映射输出特征向量进行分类,得到第一ppg特征向量,其中,第一ppg特征向量的维度与音素类别的总数一致,第一ppg特征向量的每一维用于指示一种音素类别的概率;
49.将第一音频特征作为输入,将第一ppg特征向量作为输出,通过反向传播将ppg分类网络模型训练至收敛。
50.需要说明的是,结合图2所示的模型结构,ppg分类网络模型的训练过程如下:
51.第一:使用mfa(montreal forced aligner)对齐工具对训练语料进行训练,生成语料的对齐时长特征(音频的音素的发音时长),根据音素的发音时长提取音频每帧的音素类别。
52.第二:提取音频的声学特征(可以是80维的mel特征),这样构造训练样本(样本输入为x:80维的mel特征,样本输出为y:音频每一帧对于的音素类别)
53.第三:构建一个多分类的深度网络(ppg分类网络模型)。ppg网络的结构示意图如图2所示,ppg网络首先包括一个fc层,其次是4个block,每个block由4个子模块构成(4个子模块依次:ffm模块,lstm模块,cnn模块,ffm模块),再次连接一个fc层,最后是一个softmax分类器。以下对于上述ppg分类网络模型的各部分的工作方式进行详细说明:
54.a.fc层,用于将输入特征(梅尔普特征)进行第一步的抽象映射;
55.b.block块:
56.1)ffm模块:通过layernormlization层对单个样本的每一层特征在通道方向上做归一化,加速模型的收敛速度;通过fc层对特征进一步的抽象映射;通过residual层防止网络加深引起的梯度消失;
57.2)lstm模块:用于通过lstm网络的长短期记忆功能,采用线性序列结构不断从前往后收集输入信息,学习特征之间的全局依赖信息;
58.3)cnn模块:通过cnn提取特征之间的局部依赖关系;
59.4)ffm模块:对上述提取的全局依赖信息、局部依赖信息进行整合,做一个抽象映射。
60.整体而言,上述各个block块考虑到效率与性能的综合,block值设置偏大比较好,但由于block值过大会导致网络训练及推断效率降低,故针对后期流式使用,本技术实施例中将block值(block值指每一个block包含的子模块的数量)设置为4;多个block块之间使用串联结构,下一个block块都是对上一个block块的输出特征进一步的特征整合。
61.c.ppg层:包括一fc层,用于通过该fc层提取ppg特征;具体而言,以音素类别的总数作为依据,对前述block的输出进行分类,以提取ppg特征。
62.ppg特征的物理含义可以理解为音频的文本信息与韵律信息。通常而言,不同人说同一句话,语义信息是一致的,但音色信息是不一样的;ppg特征即用于表征将音频中的音色信息去除,仅保留音频的语义信息与韵律信息的特征。例如,音素类别=214,则ppg特征的维度等于214,具体的含义,每一维代表属于该类别的概率。在网络训练过程中,ppg特征实际代表该帧属于每个音素类别的概率值(0
‑
1之间),相较于纯粹的类别值有更强的容错性及泛化性。
63.本技术实施例中将训练语料中每一帧音频对应的梅尔普特征(x)作为输入,将每一音频对应的音素类别(y)作为输出对上述ppg分类网络模型进行训练,通过反向传播,将其训练至收敛为止。
64.下面介绍关于声音转换网络模型的训练过程。图3是根据本技术实施例的一种可选的声音转换网络模型结构示意图。如图3所示,声音转换网络模型包括encoder(相当于编码层),decoder(相当于解码层),pitch
‑
encoder(相当于声波编码层),pitch
‑
predict(相当于声波预测层)四个部分。
65.在一实施例中,在将ppg特征向量输入声音转换网络模型,根据ppg特征向量对应的音素标签输出目标音频的声学特征向量之前,所述方法还包括:
66.建立声音转换网络模型,其中,声音转换网络模型包括编码层、解码层、声波编码层和声波预测层;
67.通过第二训练样本训练声音转换网络模型,其中,第二训练样本包括第二音频对应的第二ppg特征向量和所述第二音频对应的样本声学特征向量,第二音频包括多种不同音色的音频,声音转换网络模型包含多个目标标识,每一目标标识用于标识一种音色。
68.在一实施例中,在通过第二训练样本训练声音转换网络模型之前,所述方法还包括:
69.获取第二音频;
70.将第二音频输入训练好的ppg分类网络模型,得到第二音频对应的第二ppg特征向量,并将第二ppg特征向量确定为第二训练样本的输入;
71.对经过清洗处理的第二音频,提取样本声学特征向量,并将样本声学特征向量确定为第二训练样本的输出。
72.在一实施例中,通过第二训练样本训练声音转换网络模型,包括:
73.将第二ppg特征向量输入编码层,通过编码层提取第二ppg特征向量之间的短时关联信息和长时关联信息;
74.通过解码层,对短时关联信息、长时关联信息、第二ppg特征向量对应的目标标识和第二ppg特征向量的声波信息进行整合,并提取不同帧第二ppg特征向量之间的依赖信息;
75.通过声波编码模块对第二ppg特征向量对应的第二音频的基频特征进行抽象提取,并对提取的基频特征进行维度转换,以在声音转换网络模型中嵌入第二音频的基频特征;
76.将编码层输出的特征向量作为输入,将样本声学特征向量作为输出,训练声波预测层。
77.下面结合图3,对上述声音转换网络模型的训练过程进行描述。
78.第一:准备声音转换网络模型的训练样本,获取多目标说话人的音频,对音频进行清洗(降噪,去除呼吸声,标准化等处理),提取多说话人音频的声学特征。此处的声学特征为lpc特征,该声学特征作为声音转换网络模型的训练用的输出(即标签)。
79.第二:获取多说话人的ppg特征,将多说话人的音频提取80维度的mel特征送入第三步训练好的ppg网络,得到对应的ppg特征。该ppg特征作为声音转换网络模型训练用的输入。
80.第三:构建一个多人版vc的深度网络(声音转换网络模型),每一个说话人标识一个自己的speakid(相当于目标标识)。
81.如图3所示,声音转换网络模型的具体工作方式为:
82.encoder:包括cnn网络与lstm网络;encoder输入ppg特征后,cnn网络用于提取ppg特征之间的局部信息(短时关联信息),lstm网络用于提取ppg特征的全局信息(长时的关联信息);
83.decoder:采用两层双向的lstm网络对encoder的输出特征+speakid信息+pitch信息三组信息做一个整合(即将上述三类特征拼接在一起),并提取帧与帧之间的依赖信息;并进一步通过fc层对特征进行一个整合及高度抽象;上述speakid信息指示某一目标说话人的编号,pitch信息指示该目标说话人对应的声学波形或声学特征;
84.pitch
‑
encoder:用于对训练样本对应的音频的f0特征(音频的基频特征)进行一次抽象提取并进行一个维度的转换,以在声音转换网络模型中嵌入训练样本的音频的f0特征;
85.pitch
‑
predict:用于将encoder的输出作为该模块的输入,将前述训练样本的lpc特征作为输出,以对pitch
‑
predict进行训练。
86.上述lpc特征为20维特征,通常包括18维的bfcc以及2维的pitch特征。上述18维bfcc特征的获取方式为:
87.a.波形数据通过fft到频谱;
88.b.频谱按bark频率分成18个频带,计算每个频带内的能量(通过三角窗加权,也可以理解为三角滤波获取频谱包络);
89.c.log压缩动态范围得到倒谱;
90.d.dct去相关得到最终的bfcc。
91.将声音转换网络模型的输出(lpc特征),送入声码器(例如,lpc vocoder),可以得到目标说话人的转换音频。其中,lpc vocoder是一个开源的模型。
92.需要说明的是,为了实现转换音频的流式输出,可以在将源音频输入训练好的ppg分类网络模型时采用分片输入的方式。
93.在一实施例中,将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,包
括:
94.将源音频数据分片输入语音后验图ppg分类网络模型,其中,ppg分类网络模型包括依次连接的抽象映射层、模块层和ppg层,模块层包括至少两个串联的模块,模块中设置单向长短期记忆功能lstm层,单向lstm层配置为学习特征之间的全局依赖信息;
95.通过第一缓存区域保留上一片源音频数据在单向lsmt中的状态数据,通过第二缓存区域保留上一片源音频数据的后面n帧数据,其中,一片所述源音频数据包括m帧数据,1<n<m;
96.根据当前片源音频数据和所述第一缓存区域以及第二缓存区域中保存的数据,输出当前片源音频数据对应ppg特征向量。
97.需要说明的是,每一片源音频数据可以包括m帧数据,m帧数据中的位于后面的n帧数据可以保留在第二缓存区域中,例如,一片源音频数据包括10帧数据,其中后4帧数据保留在第二缓存区域中,在下一片源音频数据输入时将与下一片源音频数据拼接在一起。
98.在一实施例中,根据当前片源音频数据和第一缓存区域以及第二缓存区域中保存的数据,输出当前片源音频数据对应ppg特征,包括:
99.通过第一缓存区域保存第一片源音频数据在单向lstm层中的状态数据;
100.在进行第二片源音频数据推断时,通过第一缓存区域初始化单向lstm层的状态数据,其中,第一片源音频数据和第二片源音频数据为相邻片的数据,且第一片源音频数据时序在前;
101.通过第二缓存区域保存第一片源音频数据的后面n帧数据;
102.在进行第二片源音频数据推断时,将第一片源音频数据的后面n帧数据拼接在第二片源音频数据前面后,输入ppg分类网络模型。
103.需要说明的是,将源音频数据分片输入ppg分类网络模型,以及缓存区域的设置,是实现ppg特征流式输出的关键步骤。
104.图4是根据本技术实施例的又一种可选的ppg分类网络模型结构示意图。如图4所示,ppg分类网络模型包括:fc层(相当于前述抽象映射层),用于将输入特征(梅尔普特征)进行第一步的抽象映射;block块(相当于模块层),block块包括ffm层,lstm层,cnn层,ffm层;ppg(单音素)层;ppg(三音素)层。
105.在一实施例中,在将源音频输入语音后验图ppg分类网络模型之前,所述方法还包括:
106.建立ppg分类网络模型;
107.通过训练样本训练ppg分类网络模型,其中,训练样本包括样本音频特征和样本音频特征对应的样本音素标签。
108.本技术实施例的流式提取ppg特征网络包括ppg分类网络模型与缓存区域,缓存区域包括第一缓存区域和第二缓存区域。
109.关于ppg分类网络模型,本技术实施例中利用asr训练语料作为训练语料,其中包含音频,以及音频对应的文本标签。需要说明的是,为了后续使用方便,此处的训练语料并未进行降噪等处理,也不必进行分片处理,以此,后续通过完成训练的系统进行变声时,可直接将相应音频输入至系统中进行对应的特征提取。
110.模型的训练:
111.第一:使用mfa(montreal forced aligner)对齐工具对训练语料进行训练,生成语料的对齐时长特征(音频的音素的发音时长),根据音素的发音时长提取音频每帧的单音素类别和三音素类别。
112.需要说明的是,三音素属于音素的一种,与单音素(如t,iy,n)不同,三音素表示为如t
‑
iy+n,即由三个单音素组成,与单音素iy类似,但其考虑了上下文的关系,即,上文为t,下文为n。
113.第二:提取音频的声学特征(可以是80维的mel特征),这样构造训练样本(样本输入为x:80维的mel特征,样本输出为y1:音频每一帧对于的单音素类别,样本输出为y2:音频每一帧对于的三音素类别)。
114.第三:构建一个多分类的深度网络(ppg网络)。ppg网络的结构示意图见后,如图4所示,ppg网络首先包括一个fc层,其次是4个block,每个block由4个子模块构成(4个子模块依次:ffm层,lstm层,cnn层,ffm层),再次连接一个fc层(单音素层),最后链接一个fc层(三音素层)。
115.在一实施例中,通过第一训练数据训练ppg分类网络模型之前,所述方法还包括:
116.获取训练语料,其中,训练语料包括训练音频和训练音频对应的训练文本;
117.将训练音频转换为训练音频特征,并将训练文本转换为训练音素;
118.根据训练音频和训练文本的对齐关系,以及训练音素的时长信息,确定每一帧训练音频特征对应的单音素标签和三音素标签,其中,单音素标签用于标识训练音素的单音素类别,三音素标签用于标识训练音素的三音素类别;
119.将训练音频特征确定为训练样本的样本音频特征,将单音素标签和三音素标签确定为训练样本的样本音素标签。
120.在一实施例中,通过训练样本训练ppg分类网络模型,包括:
121.将样本音频特征输入抽象映射层,进行第一步抽象映射;
122.通过模块对单个训练样本的每一层样本音频特征在通道方向上做归一化,然后通过抽象映射层进行第二步抽象映射;
123.通过模块的单向lstm层,采用线性序列结构不断从前往后收集输入的样本音频特征的信息,提取样本音频特征之间的全局依赖信息;
124.通过模块的卷积层,提取样本音频特征之间的局部依赖信息;
125.整合全局依赖信息和局部依赖信息,并对样本音频特征做第三步抽象映射;
126.根据样本音素标签对应的单音素类别的总数,通过ppg层的单音素层对经过第三步抽象映射输出特征进行分类,得到第一ppg特征,其中,第一ppg特征的维度与单音素类别的总数一致,第一ppg特征的每一维用于指示一种单音素类别的概率;
127.根据样本音素标签对应的三音素类别的总数,通过ppg层的三音素层对经过第三步抽象映射输出特征进行分类,得到第二ppg特征,其中,第二ppg特征的维度与三音素类别的总数一致,第二ppg特征的每一维用于指示一种三音素类别的概率;
128.将样本音频特征作为输入,将第一ppg特征和第二ppg特征作为输出,通过反向传播将ppg分类网络模型训练至收敛。
129.需要说明的是,ppg分类网络模型的各个模块的功能如下:
130.fc层,用于将输入特征(梅尔普特征)进行第一步的抽象映射;
131.block块:
132.1)ffm层:通过layernormlization层对单个样本的每一层特征在通道方向上做归一化,加速模型的收敛速度;通过fc层对特征进一步的抽象映射;通过residual层防止网络加深引起的梯度消失;
133.2)lstm层:用于通过lstm网络的长短期记忆记忆功能,采用线性序列结构不断从前往后收集输入信息,学习特征之间的全局依赖信息;
134.3)cnn层:通过cnn提取特征之间的局部依赖关系,cnn操作时不进行pad;
135.4)ffm层:对上述提取的全局依赖信息、局部依赖信息进行整合,做一个抽象映射。
136.整体而言,上述各个block块考虑到效率与性能的综合,block值设置偏大比较好,但由于block值过大会导致网络训练及推断效率降低,故针对后期流式使用,本技术实施例中将block值(block值指每一个block包含的子模块的数量)设置为4;多个block块之间使用串联结构,下一个block块都是对上一个block块的输出特征进一步的特征整合。
137.ppg(单音素)层:包括一fc层,用于通过该fc层提取ppg特征;具体而言,以音素类别的总数作为依据,该层的输出与y1做一个交叉熵多分类,以提取ppg特征。
138.ppg(三音素)层:包括一fc层,通过三音素的类别矫正ppg层的输出;具体而言,以三音素类别的总数作为依据,对单因素层的输出进行分类。三音素相较于单因素容错率更高,泛化性更好,但是由于其维度更大,后期使用不方便,因此三音素层作为单因素的矫正作用,提升单因素层的准确率;具体而言,以三音素类别的总数作为依据,该层的输出与y2做一个交叉熵多分类。
139.本技术实施例中将训练语料中每一帧音频对应的梅尔普特征(x)作为输入,将每一音频对应的音素类别(y)作为输出对上述ppg分类网络模型进行训练,通过反向传播,将其训练至收敛为止。
140.需要说明的是,缓存区域主要在模型推断过程,实现无损流式输出,缓存区域可以是独立于ppg分类网络模型,以工程模块的形式设置。
141.需要实现流式输出,因此在模型推断时,音频数据是分数据片送入,在分片的连接时,需要使用上一分片的信息。
142.block的lstm模块,需要设置一个缓存区cache_lstm_state(保留上一分片lstm的最后状态),进行下一分片数据推断时,使用cache_lstm_state初始化lstm的状态;
143.block的cnn模块,训练时不进行pad,推断的时候会导致丢帧,需要设置一个缓存区cache_cnn(保留上一片段的后面几帧数据),进行下一分片数据推断时,cache_cnn拼接在分片数据前。
144.如图5所示,根据本技术的另一实施例,还提供了一种目标音频的输出装置,用于实现上述任一项方法实施例中所述的方法,已经描述的内容此处不再赘述,所述装置包括:
145.输入模块502,配置为将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,所述ppg特征向量用于指示所述每一帧源音频对应的音素标签;
146.处理模块504,配置为将所述ppg特征向量输入声音转换网络模型,根据所述ppg特征向量对应的所述音素标签输出目标音频的声学特征向量,其中,所述目标音频包含多个不同音色的音频;
147.输出模块506,配置为将所述目标音频的声学特征向量输入声码器,通过所述声码
器输出所述目标音频。
148.如图6所示,根据本技术的另一实施例,还提供了一种目标音频的输出系统,用于承载上述输出装置,包括:
149.语音后验图ppg分类网络模型602,配置为根据输入的源音频输出对应的ppg特征向量,其中,所述ppg特征向量用于指示所述每一帧源音频对应的音素标签,所述ppg特征向量包含所述源音频的文本信息和韵律信息;
150.声音转换网络模型604,配置为根据所述ppg特征向量对应的所述音素标签输出至少两个不同音色的目标音频的声学特征向量;
151.声码器606,配置为根据至少两个所述目标音频的声学特征向量输出至少两个所述目标音频。
152.本技术实施例中的基于ppg特征的目标音频的输出系统相较于相关技术中的相关技术,一方面,相关技术的声音转换需要经过两个网络asr与tts,这两个网络都很大,耗时高,而本方案中ppg网络与vc网络较于asr与tts得以精简,网络小,时效性更佳。
153.另一方面,对于多说话人,相关技术需要配置多个tts,本方案的vc网络本身可实现多说话人,通过speakid可以指定输出为特定说话人。
154.另一方面,相关技术音频经过asr转换为文本,丢失了原始音频的韵律信息(说话快慢,抑扬顿挫等),本方案中,ppg特征是与音频帧对齐的,其保留原始音频的韵律信息。
155.另一方面,相关技术最终的准确性取决于asr系统的准确率,本方案中,通过使用ppg特征显著改善了准确率,且不受asr系统的影响。(ppg其实是一种概率值,结合vc(声音转换)多人训练变身系统,能够增强整个系统的准确性,在aidatatang_200zh数据集下,asr的错误率15%,ppg+vc系统错误率:7%)
156.此外,本技术实施例中的基于ppg特征的目标音频的输出系统可以很容易的接入到人机交互系统当中。
157.下面通过一示例性实施例对本技术实施例的目标音频的输出方法进行说明。
158.训练阶段:
159.首先进行语料选取,选取精度在98%以上的asr语料,大概4000人左右,总时长在800小时左右,采样率16k,16bit的wav格式的音频作为分类网络原始语料。选取目标说话人干净的音频,例如,20个人每人3000条(1个小时)干净tts语音,采样率16k,16bi的wav格式音频作为声音转换网络模型原始语料。
160.ppg分类网络模型的训练:
161.s1.0,对上述ppg分类网络模型原始语料进行预处理,具体而言,对于ppg分类网络模型语料进行增强,为泛化ppg分类网络模型原始语料的代表性,选取随机加噪声的形式,给ppg分类网络模型原始语料注入各种常见噪声,得到ppg分类网络模型增强语音。实验表明,该方式可以很成功的获取说话人音素特征,并显著提升后续变声阶段的说话人变声效果。
162.s1.1,采用上述ppg分类网络模型原始语料训练mfa对齐工具,通过训练完成的mfa对齐工具提取ppg分类网络模型原始语料中音素的时长信息。
163.需要说明的是,在预处理阶段进行增强的过程中,仅在ppg分类网络模型原始语料中随机诸如噪音而并未改变语料的时长,因而,上述s1.1中ppg网络原始语料中音素的时长
信息可直接作为ppg分类网络模型增强语料中音素的时长信息。
164.s1.2,采用上述ppg分类网络模型增强语料,一方面对其中音频转化为梅尔谱特征,如80维度的梅尔普特征;另一方面,将音频对应的文本转换为音素;具体而言,对文本进行正则化,处理数字,字母,及其特殊符号,然后将其转化为拼音,通过音素映射表,将拼音映射为音素。需要说明的是,上述将文本转换为音素的过程中,需要根据时长将文本进行拉伸。
165.s1.3,由于音素的时长信息已知,故可获取音频中音素对应的位置,即每一个音素的起始时间,进而根据该起始时间确定每一帧音频对应的音素,以最终得到音频中每一帧音频所对应的音素类别。
166.音素类别可以理解为对音素进行编码,使得每一个音素有一个对应id,该id即为音素类别,或可称为音素标签。
167.s1.4,采用上述s1.3中每一帧音频对应的音素类别,对ppg分类网络模型进行训练,利用反向传播来训练直至收敛。ppg分类网络模型的结构如前述,在此不再赘述。
168.vc(声音转换)网络的训练:
169.s2.0,对声音转换网络模型原始语料进行正则化处理。之后进行mel特征,lpc特征,f0特征的提取,记为目标说话人音频特征。
170.s2.1,通过前述训练完成的ppg网络,对上述目标说话人音频特征(mel)提取对应的ppg特征。
171.s2.2,通过上述目标说话人ppg特征与对应的lpc特征,f0特征,speakid训练vc网络,利用反向传播直至收敛。vc网络的结构如前述,在此不再赘述。
172.s2.3,通过上步输出lpc特征,接入一个lpc vocoder还原成音频。
173.变声阶段:
174.通过上述完成训练的声音转换网络模型,即可将源说话人的音频变换为目标说话人的音频。具体而言,我们通过上述部分中训练完成的ppg网络将源说话人的音频转换为ppg特征,然后通过第二部分输出lpc特征接入lpc vocoder还原为音频输出。
175.根据本技术实施例的又一个方面,还提供了一种用于实施上述目标音频的输出方法的电子装置,上述电子装置可以但不限于应用于服务器中。如图7所示,该电子装置包括存储器702和处理器704,该存储器702中存储有计算机程序,该处理器704被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
176.可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
177.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
178.s1,将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,ppg特征向量用于指示每一帧源音频对应的音素标签,ppg特征向量包含源音频的文本信息和韵律信息;
179.s2,将ppg特征向量输入声音转换网络模型,根据ppg特征向量对应的音素标签输出目标音频的声学特征向量,其中,目标音频包含多个不同音色的音频;
180.s3,将目标音频的声学特征向量输入声码器,通过声码器输出目标音频。
181.可选地,本领域普通技术人员可以理解,图7所示的结构仅为示意,电子装置也可
以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图7其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图7中所示更多或者更少的组件(如网络接口等),或者具有与图7所示不同的配置。
182.其中,存储器702可用于存储软件程序以及模块,如本技术实施例中的目标音频的输出方法和装置对应的程序指令/模块,处理器704通过运行存储在存储器702内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标音频的输出方法。存储器702可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器702可进一步包括相对于处理器704远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器702具体可以但不限于用于储存目标音频的输出方法的程序步骤。
183.可选地,上述的传输装置706用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置706包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置706为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
184.此外,上述电子装置还包括:显示器708,用于显示目标音频的输出过程;和连接总线710,用于连接上述电子装置中的各个模块部件。
185.本技术的实施例还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
186.可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
187.s1,将源音频输入语音后验图ppg分类网络模型,得到ppg特征向量,其中,ppg特征向量用于指示每一帧源音频对应的音素标签,ppg特征向量包含源音频的文本信息和韵律信息;
188.s2,将ppg特征向量输入声音转换网络模型,根据ppg特征向量对应的音素标签输出目标音频的声学特征向量,其中,目标音频包含多个不同音色的音频;
189.s3,将目标音频的声学特征向量输入声码器,通过声码器输出目标音频。
190.可选地,存储介质还被设置为存储用于执行上述实施例中的方法中所包括的步骤的计算机程序,本实施例中对此不再赘述。
191.可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read
‑
only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
192.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
193.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软
件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
194.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
195.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
196.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
197.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
198.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。