一种端到端的音及情感迁移的中文语音克隆方法



1.本发明涉及计算机语音合成技术领域,具体涉及一种基于短语音训练的端到端的音和情感迁移的语音合成方法。


背景技术:



2.语音合成是实现人机语音通信,建立一个有听和讲能力的口语系统所必需的关键技术。使电脑具有类似于人一样的说话能力,是当今时代信息产业的重要竞争市场。语音合成能将任意文字信息实时转化为标准流畅的语音朗读出来,其中的文字可以是通常使用的语言文字,也可以包括ssml标记语言等,而声音则是一个连续的模拟信号,计算机要做的合成过程便是通过数字信号去模拟。在语音合成的过程中,发音、对齐、韵律、声调等问题都是合成语音的关键,而中文语音中的变调、多音字、韵律复杂等较难处理的问题,是目前中文语音合成技术的重点和难点。
3.语音克隆作为语音合成的一个扩展方向,目的在于实现对说话人音和情感的实时克隆,使得系统合成的语音不再是模型训练时的说话人数据的音与情感,而是因人而异的,带有目标说话人音和情感的语音。目前亟待提出一种中文语音克隆方法,目标是在合成的语音中嵌入说话人特征,即说话人音和情感特征,让合成的语音自然且逼真,与指定的说话人相对应。


技术实现要素:



4.本发明的目的在于,降低语音合成技术中对单一说话人训练语音时长的要求,提出一种基于短语音训练的端到端的语音合成技术以及音和情感迁移的语音合成方法,通过短语音实现音及情感迁移的语音合成(语音克隆)。
5.本发明的目的可以通过采取如下技术方案达到:
6.一种端到端的音及情感迁移的中文语音克隆方法,所述中文语音克隆方法包括以下步骤:
7.s1、采集语音数据:采集多个说话人的多条中文短句语音文件,每个说话人根据给定的文本录制多条短句语音,并对每个语音文件建立其对应的文本标记,其中每条语音不超过15秒,语音总时长不少于30个小时,并在安静的环境下进行语音的录制;
8.s2、数据预处理:对于步骤s1中采集的语音文件进行处理,统一语音文件的采样率、格式、位深和声道数,得到所需的音频文件,同时生成含有录音文件标记、对应语音文本标记和说话人标记的json文件;
9.s3、构建中文语音克隆合成模型:中文语音克隆合成模型包括音情感编码器、合成器和声码器;
10.s4、构建音情感编码器:音情感编码器包括三层依次连接的lstm网络,计算所述音频文件的频域特征梅尔频谱作为音情感编码器的输入,得到固定维度的说话人嵌入向量作为音情感编码器的输出;
11.s5、训练合成器:合成器由依次连接的1个编码器和1个解码器组成,其中编码器包括全连接层组成的预处理网络、词嵌入模块、3个依次连接的一维卷积层和1个双向lstm网络,将所述json文件作为编码器的输入,以编码器隐状态作为编码器的输出;解码器包括1个预处理网络、2层依次连接lstm网络、1个由线性映射层构成的投影层和1个后处理网络,将编码器隐状态与音情感编码输出的说话人嵌入向量拼接后作为解码器的输入,得到合成语音的梅尔频谱作为解码器的输出;
12.s6、训练声码器:声码器由并行的wavernn声码器和griffin-lim声码器组成,将解码器输出的合成语音的梅尔频谱作为声码器的输入,将合成语音的波形预测作为声码器的输出;
13.s7、生成克隆语音:将用户输入的文本或用户输入的语音经过语音识别得到的文本,根据用户指定的说话人使用不同的说话人嵌入向量,经过合成器和声码器得到输出语音;
14.或者语音快速克隆:将用户音频经过预处理,输入音情感编码器,得到说话人嵌入向量,保存该说话人嵌入向量用于克隆语音的生成。
15.进一步地,所述步骤s2预处理的过程如下:
16.s2.1、对多条短句语音文件进行语音处理,将多条短句录音文件转换为音频采样率为16000hz、音频格式为wav格式、位深为16bits、单声道的音频文件。统一音频文件的相关参数和格式,能够加快中文语音克隆合成模型对音频文件数据的提取和处理,提高训练效率,取得更好的效果;
17.s2.2、生成含有标记的json文件,将文本标记、说话人、说话人id、语音处理得到的音频文件标记拼接得到一个或多个json格式的文件,其中文本标记指的是与音频内容对应的中文文本,说话人id是指对说话人进行的编号标记,音频文件标记是指说话人和说话内容对应的音频文件名称。生成的json文件为中文语音克隆合成模型提供了训练所需的数据集,即语音和语音的文本内容,同时,也将语音信息与说话人信息一一对应。
18.进一步地,所述步骤s4中音情感编码器的工作过程如下:
19.s4.1、对于给定的多句短录音,按以下公式计算梅尔频谱:
[0020][0021]
其中,f是多句短语音的频率,m为多句短语音的梅尔频谱。梅尔频谱能在很大程度上保留人耳理解的原本语音所需的信息,因此使用梅尔频谱作为音情感编码器的输入,能够提高音情感编码器的准确性;
[0022]
s4.2、将多句短语音的梅尔频谱输入音情感编码器,输出一个固定维度的说话人嵌入向量,过程如下:
[0023]
s4.2.1、将多句短语音的梅尔频谱输入到三层依次连接的lstm网络中,将最后一层lstm网络每一帧的输出映射到256维固定长度的向量上,其中每一帧是指一个固定时间单位。通过3层的lstm网络能够有效提取到语音中说话人的音情感特征,同时也避免层数过多造成内存的额外开销;
[0024]
s4.2.2、将s4.2.1得到的所有时间单位的输出做均值和归一化处理,得到最终的固定维度的说话人嵌入向量,其中,说话人嵌入向量的作用是区分该语音对应的说话人与
其他说话人,说话人嵌入向量能够保留说话人音与情感。均值和归一化处理将数据缩放到相同的区间内,降低了计算量,可以加快说话人编码器的训练效率。
[0025]
进一步地,所述步骤s4中音情感编码器的训练过程如下:
[0026]
将某一训练迭代中说话人的音情感编码器输出的说话人嵌入向量和对应的说话人样本进行比对,当根据说话人嵌入向量得到的比对结果可以区分说话人时,说明音情感编码器提取到能够区分说话人的特征,保留音情感编码器参数,否则继续迭代训练。采用迭代训练的方式,能够保证得到的说话人嵌入向量是能够代表某一说话人的音及情感的特征,能够与其它说话人的音情感区分开。
[0027]
进一步地,所述步骤s5中合成器的编码器的工作过程如下:
[0028]
s5.1.1、获取编码器的输入:将步骤s2中生成的josn文件中的文本标记转译为音素序列,其中中文转换成对应的拼音,把得到的音素序列与json文件进行拼和到json文件中,将得到的json文件作为编码器的输入;将中文文本数据转化为音素序列有利于编码器更好地将语音中的关键信息保留到词向量中,提高编码器对语音内容的信息提取能力。
[0029]
s5.1.2、生成词嵌入向量:首先将步骤s5.1.1得到的json输入预处理网络进行分析和变换,输出预处理后的序列,预处理操作可以将输入序列进一步转换为可让编码器更好提取语音信息的格式,这有利于预处理网络自行调整参数,对信息进行更加有效的提取;接着对预处理后的序列进行词嵌入操作,计算其中音素序列中的每一个音素对应于其余音素的权重,该操作将每个音素间的相关性融入训练中提高了结果的准确性,最后输出一个512维的词向量。该词向量包含语音的位置信息以及内容信息;
[0030]
s5.1.3、获取中间状态:将步骤s5.1.2中获取的词向量输入到3个依次连接的一维卷积层中进行卷积操作,同时在每一个卷积层后均对输出进行batchnorm操作和dropout操作,在最后一个卷积层获取中间状态作为输出;其中batchnorm操作是在深度神经网络训练过程中使得每一层神经网络的输入保持相同分布,可以加快训练速度,dropout操作是以一定概率暂时屏蔽神经网络单元以避免出现过拟合问题。通过这两个操作能够更好的保留词向量中的语音信息;
[0031]
s5.1.4、获取编码器隐状态:将步骤s5.1.3中得到的中间状态输入一个双向的lstm网络,双向的lstm网络的输出作为编码器隐状态。采取双向的lstm网络能够得到输入数据时间上的相关性,进一步得到完备的语音信息;
[0032]
s5.1.5、音和情感特征嵌入:将音情感编码器输出的说话人嵌入向量与s5.1.4中得到的编码器隐状态进行拼接得到最终的编码器隐状态。经过拼接后的编码器隐状态带有语音的信息和说话人的音和情感信息。
[0033]
进一步地,所述步骤s5中合成器的解码器的工作过程如下:
[0034]
s5.2.1、解码器循环运行,每一个循环称为一个时间步,在每一个时间步中,对s5.1.5中得到的编码器隐状态进行注意力机制运算,度量编码器隐状态中的单元相似度,其中,注意力机制是一个由上下文权重向量组成的矩阵,对输入的数据进行各个维度打分,然后按照得分对特征加权,以突出重要特征对下游模型或模块的影响,接着对经过注意力机制运算后的编码器隐状态进行归一化处理得到上下文向量,上下文向量中包含编码器隐状态中的信息;
[0035]
s5.2.2、解码器中预处理网络将上一时间步输出的上下文向量作为输入,对其进
行分析和处理,将处理后的上下文向量输入解码器中依次连接的两层lstm网络中进行处理,最后一层lstm的输出作新的上下文向量,最后将新的上下文向量输入投影层中,得到声谱帧和结束概率作为输出,其中,声谱帧包含预测的梅尔频谱。采用上下文向量传递的处理,保证了解码器提取的语音信息的准确性;;
[0036]
s5.2.3、将s5.2.2中得到的声谱帧作为解码器中后处理网络的输入,其中后处理网络由三个依次连接的卷积层组成,将最后一层卷积层的输出作为合成语音的梅尔频谱。后处理网络能够提高梅尔频谱的质量,为后续使用该梅尔频谱合成高保真的语音提高了保障。
[0037]
进一步地,所述步骤s6中wavernn声码器的工作过程如下:
[0038]
wavernn声码器由依次连接的单层rnn网络和双softmax层组成,将步骤s5得到的合成语音的梅尔频谱作为输入,经过单层rnn处理后,得到的输出分为两个部分分别输入对应的softmax层中,将两个softmax的输出拼接得到的预测的16位的音频序列。wavernn的合成过程在保证合成语音的质量的同时兼顾合成语音的速度。
[0039]
进一步地,所述步骤s6中griffin-lim声码器的工作过程如下:
[0040]
griffin-lim声码器采用迭代处理,首先随机初始化一个时域图,将步骤s5得到的合成语音的梅尔频谱和初始化的时域图进行逆短时傅里叶逆变换得到新的时域图,然后对新的时域图进行短时傅里叶逆变换,得到新的时域图和频谱图,将新的频谱图丢弃,接着用新的时域图和已知的频谱图合成语音,对上述操作不断迭代处理得到最优的合成语音作为输出。采用迭代的方式,从给定时频谱去重建相位信息,降低重建信号的时频谱与给定的时频谱的均方误差,能够提高合成语音的质量。
[0041]
进一步地,所述步骤s7中生成克隆语音的过程如下:
[0042]
s7.1.1、获取输入序列:输入序列为用户输入的中文文本或者中文语音,其中,对于中文语音,使用现有的语音识别方法将其转换为中文文本;
[0043]
s7.1.2、获取说话人嵌入向量:将s1采集的数据经过s2预处理后,通过s3中训练完成的音情感编码器提取不同说话人对应的说话人嵌入向量,根据用户需要克隆的说话人选择其对应的说话人嵌入向量;对应的说话人嵌入向量保存了该说话人的音情感信息;
[0044]
s7.1.3、生成合成语音的梅尔频谱:将s7.1.1中得到的输入序列和s7.1.2中得到说话人嵌入向量作为合成器的输入,合成器的输出为合成语音的梅尔频谱;输入说话人嵌入向量能够使输出的合成语音具备该说话人的音和情感特征;
[0045]
s7.1.4、将s7.1.3中得到的梅尔频谱输入声码器中,输出合成的克隆语音,其中,该合成的克隆语音具有s7.1.2中指定的说话人的音与情感。
[0046]
进一步地,所述步骤s7中语音快速克隆的过程如下:
[0047]
s7.2.1、获取输入语音:采集用户的中文语音;
[0048]
s7.2.2、预处理:用s2中的预处理方法对步骤s7.2.1中得到的中文语音进行处理,得到相应的json文件以及预处理后的音频文件,即将其转换为中文语音克隆合成模型可以接收的输入格式;
[0049]
s7.2.3、将s7.2.2中得到的音频文件输入音情感编码器中,音情感编码器的输出为说话人嵌入向量,保存说话人向量和对应的说话人标识,用于后续克隆语音的合成。后续克隆某说话人语音可直接调用保存的其对应的说话人嵌入向量。
[0050]
本发明相对于现有技术具有如下的优点及效果:
[0051]
(1)本发明实现端到端的语音合成与克隆,简化合成过程。
[0052]
(2)本发明通过多说话人模型,以同一模型和不同说话人向量嵌入合成不同情感和音的语音。
[0053]
(3)本发明通过用短语音产生的说话人嵌入向量,结合使用较多语料训练的生成模型进行语音克隆,使得利用短语音也能实现体现情感和特定说话人音的语音克隆,解决语音合成训练语料需求量大的问题。
附图说明
[0054]
此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0055]
图1是本发明中公开的中文语音克隆合成模型的处理流程图;
[0056]
图2是本发明中合成器中编码器的网络结构图;
[0057]
图3是本发明中合成器中解码器的网络结构图;
[0058]
图4是本发明去除音情感编码器的中文语音克隆合成模型的处理流程图。
具体实施方式
[0059]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的方法进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0060]
实施例1
[0061]
本实施例公开了一种基于端到端的音及情感迁移的中文语音克隆方法,图1是本发明公开的中文语音克隆合成模型的处理流程图,图2是本实施例中合成器中编码器结构,图3是本实施例中合成器中解码器结构,用户可以输入语音或文本来决定合成语音的内容,根据需要模拟的说话人的音和情感选择对应的说话人嵌入向量,来合成目标语音。本实施例中,以电脑端为例,具体介绍生成克隆语音的处理流程,包括以下步骤:
[0062]
步骤101,获取用户输入。用户可输入中文文本或中文语音;其中若输入的为中文语音,先通过现有的语音识别方法将其转换为中文文本。
[0063]
步骤102,获取需要模仿的说话人的说话人嵌入向量。
[0064]
步骤102获取说话人嵌入向量的步骤具体如下:
[0065]
1)采集语音数据:采集用户的中文语音,在安静的环境下录制。
[0066]
2)预处理:对采集到的语音文件进行处理,将其转换为音频采样率为16000hz、音频格式为wav格式、位深为16bits和声道数为单声道的音频文件。
[0067]
3)将上述音频文件输入音情感编码器中,音情感编码器的输出即为说话人嵌入向量。保存说话人向量和对应的说话人标识,用于后续克隆语音的合成。
[0068]
步骤103,生成合成语音的梅尔频谱:将步骤101中得到的用户输入和步骤102中得到说话人嵌入向量作为合成器的输入,合成器的输出为合成语音的梅尔频谱。
[0069]
步骤103获取合成的梅尔频谱的步骤具体如下:
[0070]
1)获取合成器中编码器的输入:将步骤101中获取的输入序列转译为音素序列,其中中文转换成对应的拼音,将得到的音素序列作为编码器的输入;
[0071]
2)生成词嵌入向量:首先将步骤1)得到的音素序列输入预处理网络进行分析和变换,输出预处理后的序列;接着对预处理后的序列进行词嵌入操作,计算其中音素序列中的每一个音素对应于其余音素的权重,输出一个512维的词向量;
[0072]
3)获取中间状态:将步骤2)中获取的词向量输入到3个依次连接的一维卷积层中进行卷积操作,同时在每一个卷积层后均对输出进行batchnorm操作和dropout操作,在最后一个卷积层获取中间状态作为输出;其中batchnorm操作是在深度神经网络训练过程中使得每一层神经网络的输入保持相同分布,dropout操作是以一定概率暂时屏蔽神经网络单元;
[0073]
4)获取编码器隐状态:将步骤3)中得到的中间状态输入一个双向的lstm网络,双向的lstm网络的输出作为编码器隐状态;
[0074]
5)音和情感特征嵌入:将步骤102中获取的说话人嵌入向量与步骤4)中得到的编码器隐状态进行拼接得到最终的编码器隐状态。
[0075]
6)将步骤5)中得到的编码器隐状态输入到解码器中,解码器循环运行,每一个循环称为一个时间步,在每一个时间步中,对步骤5)中得到的编码器隐状态进行注意力机制运算,度量编码器隐状态中的单元相似度,其中,注意力机制是一个由上下文权重向量组成的矩阵,接着对经过注意力机制运算后的编码器隐状态进行归一化处理得到上下文向量;
[0076]
7)解码器中预处理网络将上一时间步输出的上下文向量作为输入,对其进行分析和处理,将处理后的上下文向量输入解码器中依次连接的两层lstm网络中进行处理,最后一层lstm的输出作新的上下文向量,最后将新的上下文向量输入投影层中,得到声谱帧和结束概率作为输出,其中,声谱帧包含预测的梅尔频谱;
[0077]
8)将步骤7)中得到的声谱帧作为解码器中后处理网络的输入,其中后处理网络由三个依次连接的卷积层组成,将最后一层卷积层的输出作为合成语音的梅尔频谱。
[0078]
步骤104,将步骤103中生成的梅尔频谱输入到声码器中,获取所需要的语音。
[0079]
步骤104获取所需语音的步骤具体如下:
[0080]
在语音合成的网络架构中,使用了wavernn声码器和griffin-lim声码器,二者均接收梅尔频谱作为输入,预测语音合成的波形。我们将步骤103中生成的梅尔频谱输入到两个声码器中,输出合成速度较快的语音,且合成的语音具有指定说话人音和情感特征。
[0081]
综上所述,本实施例根据用户输入的文本或语音,以及需要模拟的说话人对应说话人嵌入向量。将内容文本转换为拼音音素序列,输入编码器得到编码器隐状态,与说话人嵌入向量拼接得到具有音情感的编码器隐状态,而后输入解码器中生成梅尔频谱,将梅尔频谱输入声码器得到目标语音,合成的目标语音具有指定说话人的音和情感。本发明通过用短语音产生的说话人嵌入向量,结合使用较多语料训练的生成模型进行语音克隆,解决了当前语音合成训练语料需求量大的问题。
[0082]
实施例2
[0083]
本实施例将中文语音克隆合成模型中的音情感编码器去除,如图4所示,来证明本发明中音情感编码器部分在保留说话人的音和情感信息中取得的效果。本实施例中,以电脑端为例,具体介绍语音合成方法的处理流程,包含以下步骤:
[0084]
步骤101实施例1一致,参照实施例1中步骤101。
[0085]
步骤102,生成合成语音的梅尔频谱:将步骤101中得到的用户输入作为合成器的输入,合成器的输出为合成语音的梅尔频谱。
[0086]
步骤102获取合成的梅尔频谱的步骤具体如下:
[0087]
获取编码器隐状态的步骤参照实施例1中步骤103的1)~4),由于去除了音情感编码器,生成的编码器隐状态没有与说话人嵌入向量进行拼合,会直接输入解码器中,生成合成梅尔频谱的步骤参照实施例1中步骤103的6)~8)。
[0088]
步骤103合成所需语音参照实施例1中步骤104。由于去除了音情感编码器,中文语音克隆合成模型缺失了提取语音中说话人的音和情感特征的能力,合成器和声码器结构只能够完成语音合成的任务,该实施例合成的语音明显音与说话人不符,且缺少情感特征,语音较为生硬。
[0089]
为了进一步验证,利用原有的中文语音克隆合成模型和去除音情感编码器的中文语音克隆合成模型分别合成两组内容相同的语音,将其与真实语音一并投放到在线网页上进行问卷调查,调查采取盲测的形式,即评测人员不知道语音来源,并采用评判语音质量最权威的国际标准mos得分来进行评分,其中满分为5分。最终得分显示去除音情感编码器的中文语音克隆合成模型合成的语音的分数较低,如下表1所示。
[0090]
表1.不同语音来源的mos得分对比表
[0091]
语音来源mos得分ground truth4.78
±
0.05原中文语音克隆合成模型4.62
±
0.05去除音情感编码器的中文语音克隆合成模型4.36
±
0.04
[0092]
从本实施例可以得出,本发明的中文语音克隆合成具有迁移说话人的音和情感特征的能力,能够较好地提升合成语音的质量。
[0093]
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

技术特征:


1.一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述中文语音克隆方法包括以下步骤:s1、采集语音数据:采集多个说话人的多条中文短句语音文件,每个说话人根据给定的文本录制多条短句语音,并对每个语音文件建立其对应的文本标记,其中每条语音不超过15秒,语音总时长不少于30个小时,并在安静的环境下进行语音的录制;s2、数据预处理:对于步骤s1中采集的语音文件进行处理,统一语音文件的采样率、格式、位深和声道数,得到所需的音频文件,同时生成含有录音文件标记、对应语音文本标记和说话人标记的json文件;s3、构建中文语音克隆合成模型:中文语音克隆合成模型包括音情感编码器、合成器和声码器;s4、构建音情感编码器:音情感编码器包括三层依次连接的lstm网络,计算所述音频文件的频域特征梅尔频谱作为音情感编码器的输入,得到固定维度的说话人嵌入向量作为音情感编码器的输出;s5、训练合成器:合成器由依次连接的1个编码器和1个解码器组成,其中编码器包括全连接层组成的预处理网络、词嵌入模块、3个依次连接的一维卷积层和1个双向lstm网络,将所述json文件作为编码器的输入,以编码器隐状态作为编码器的输出;解码器包括1个预处理网络、2层依次连接lstm网络、1个由线性映射层构成的投影层和1个后处理网络,将编码器隐状态与音情感编码输出的说话人嵌入向量拼接后作为解码器的输入,得到合成语音的梅尔频谱作为解码器的输出;s6、训练声码器:声码器由并行的wavernn声码器和griffin-lim声码器组成,将解码器输出的合成语音的梅尔频谱作为声码器的输入,将合成语音的波形预测作为声码器的输出;s7、生成克隆语音:将用户输入的文本或用户输入的语音经过语音识别得到的文本,根据用户指定的说话人使用不同的说话人嵌入向量,经过合成器和声码器得到输出语音;或者语音快速克隆:将用户音频经过预处理,输入音情感编码器,得到说话人嵌入向量,保存该说话人嵌入向量用于克隆语音的生成。2.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s2预处理的过程如下:s2.1、对多条短句语音文件进行语音处理,将多条短句录音文件转换为音频采样率为16000hz、音频格式为wav格式、位深为16bits、单声道的音频文件;s2.2、生成含有标记的json文件,将文本标记、说话人、说话人id、语音处理得到的音频文件标记拼接得到一个或多个json格式的文件,其中文本标记指的是与音频内容对应的中文文本,说话人id是指对说话人进行的编号标记,音频文件标记是指说话人和说话内容对应的音频文件名称。3.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s4中音情感编码器的工作过程如下:s4.1、对于给定的多句短录音,按以下公式计算梅尔频谱:
其中,f是多句短语音的频率,m为多句短语音的梅尔频谱;s4.2、将多句短语音的梅尔频谱输入音情感编码器,输出一个固定维度的说话人嵌入向量,过程如下:s4.2.1、将多句短语音的梅尔频谱输入到三层依次连接的lstm网络中,将最后一层lstm网络每一帧的输出映射到256维固定长度的向量上,其中每一帧是指一个固定时间单位;s4.2.2、将s4.2.1得到的所有时间单位的输出做均值和归一化处理,得到最终的固定维度的说话人嵌入向量,其中,说话人嵌入向量的作用是区分该语音对应的说话人与其他说话人,说话人嵌入向量能够保留说话人音与情感。4.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s4中音情感编码器的训练过程如下:将某一训练迭代中说话人的音情感编码器输出的说话人嵌入向量和对应的说话人样本进行比对,当根据说话人嵌入向量得到的比对结果可以区分说话人时,说明音情感编码器提取到能够区分说话人的特征,保留音情感编码器参数,否则继续迭代训练。5.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s5中合成器的编码器的工作过程如下:s5.1.1、获取编码器的输入:将步骤s2中生成的josn文件中的文本标记转译为音素序列,其中中文转换成对应的拼音,把得到的音素序列与json文件进行拼和到json文件中,将得到的json文件作为编码器的输入;s5.1.2、生成词嵌入向量:首先将步骤s5.1.1得到的json输入预处理网络进行分析和变换,输出预处理后的序列;接着对预处理后的序列进行词嵌入操作,计算其中音素序列中的每一个音素对应于其余音素的权重,输出一个512维的词向量;s5.1.3、获取中间状态:将步骤s5.1.2中获取的词向量输入到3个依次连接的一维卷积层中进行卷积操作,同时在每一个卷积层后均对输出进行batchnorm操作和dropout操作,在最后一个卷积层获取中间状态作为输出;其中batchnorm操作是在深度神经网络训练过程中使得每一层神经网络的输入保持相同分布,dropout操作是以一定概率暂时屏蔽神经网络单元;s5.1.4、获取编码器隐状态:将步骤s5.1.3中得到的中间状态输入一个双向的lstm网络,双向的lstm网络的输出作为编码器隐状态;s5.1.5、音和情感特征嵌入:将音情感编码器输出的说话人嵌入向量与s5.1.4中得到的编码器隐状态进行拼接得到最终的编码器隐状态。6.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s5中合成器的解码器的工作过程如下:s5.2.1、解码器循环运行,每一个循环称为一个时间步,在每一个时间步中,对s5.1.5中得到的编码器隐状态进行注意力机制运算,度量编码器隐状态中的单元相似度,其中,注意力机制是一个由上下文权重向量组成的矩阵,接着对经过注意力机制运算后的编码器隐状态进行归一化处理得到上下文向量;
s5.2.2、解码器中预处理网络将上一时间步输出的上下文向量作为输入,对其进行分析和处理,将处理后的上下文向量输入解码器中依次连接的两层lstm网络中进行处理,最后一层lstm的输出作新的上下文向量,最后将新的上下文向量输入投影层中,得到声谱帧和结束概率作为输出,其中,声谱帧包含预测的梅尔频谱;s5.2.3、将s5.2.2中得到的声谱帧作为解码器中后处理网络的输入,其中后处理网络由三个依次连接的卷积层组成,将最后一层卷积层的输出作为合成语音的梅尔频谱。7.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s6中wavernn声码器的工作过程如下:wavernn声码器由依次连接的单层rnn网络和双softmax层组成,将步骤s5得到的合成语音的梅尔频谱作为输入,经过单层rnn处理后,得到的输出分为两个部分分别输入对应的softmax层中,将两个softmax的输出拼接得到的预测的16位的音频序列。8.根据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s6中griffin-lim声码器的工作过程如下:griffin-lim声码器采用迭代处理,首先随机初始化一个时域图,将步骤s5得到的合成语音的梅尔频谱和初始化的时域图进行逆短时傅里叶逆变换得到新的时域图,然后对新的时域图进行短时傅里叶逆变换,得到新的时域图和频谱图,将新的频谱图丢弃,接着用新的时域图和已知的频谱图合成语音,对上述操作不断迭代处理得到最优的合成语音作为输出。9.据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s7中生成克隆语音的过程如下:s7.1.1、获取输入序列:输入序列为用户输入的中文文本或者中文语音,其中,对于中文语音,使用现有的语音识别方法将其转换为中文文本;s7.1.2、获取说话人嵌入向量:将s1采集的数据经过s2预处理后,通过s3中训练完成的音情感编码器提取不同说话人对应的说话人嵌入向量,根据用户需要克隆的说话人选择其对应的说话人嵌入向量;s7.1.3、生成合成语音的梅尔频谱:将s7.1.1中得到的输入序列和s7.1.2中得到说话人嵌入向量作为合成器的输入,合成器的输出为合成语音的梅尔频谱;s7.1.4、将s7.1.3中得到的梅尔频谱输入声码器中,输出合成的克隆语音,其中,该合成的克隆语音具有s7.1.2中指定的说话人的音与情感。10.据权利要求1所述的一种端到端的音及情感迁移的中文语音克隆方法,其特征在于,所述步骤s7中语音快速克隆的过程如下:s7.2.1、获取输入语音:采集用户的中文语音;s7.2.2、预处理:用s2中的预处理方法对s7.2.1中得到的中文语音进行处理,得到相应的json文件以及预处理后的音频文件;s7.2.3、将s7.2.2中得到的音频文件输入音情感编码器中,音情感编码器的输出为说话人嵌入向量,保存说话人向量和对应的说话人标识,用于后续克隆语音的合成。

技术总结


本发明公开了一种端到端的音及情感迁移的中文语音克隆方法,步骤如下:采集用户录制的中文语音作为训练数据,提取出所需的语音特征;训练语音克隆合成模型,包括音情感编码器、合成器和声码器三部分;利用训练完成的语音克隆合成模型,根据用户输入的语音或文字内容,生成语音克隆合成模型已有的指定说话人的语音;或根据用户输入的短时语音,快速克隆用户语音中的音和情感。本发明实现端到端的语音合成与克隆,通过多说话人模型,以同一模型和不同说话人向量嵌入合成不同情感和音的语音。本发明用短语音产生的说话人嵌入向量,结合使用较多语料训练的生成模型进行语音克隆,实现了能够体现特定说话人音和情感的语音克隆。语音克隆。语音克隆。


技术研发人员:

刘丁玮 陈铧浚 毛爱华 刘江枫 郭勇彬 张柳坚

受保护的技术使用者:

华南理工大学

技术研发日:

2022.07.05

技术公布日:

2022/11/17

本文发布于:2024-09-20 11:37:26,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/2482.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语音   编码器   向量   音色
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议