1.本技术涉及人工智能技术领域,尤其涉及一种自定义语音合成模型的训练方法、自定义语音合成模型的训练装置、计算机设备及计算机可读存储介质。
背景技术:2.自定义语音是商业语音平台中一种特殊的文本转语音服务,旨在利用少量目标说话人语音数据微调源语音合成模型,实现合成目标说话人语音的目的。但是,少量目标说话人语音数据对合成目标说话人语音的自然度和相似性提出了挑战。
3.以往关于自定义语音的研究充分考虑了微调参数量设置这一问题,但并没有完全克服上述挑战。具体地,对整个源模型微调或者只微调源模型中解码器部分参数,虽能取得优良的合成语音质量,但是需微调的参数随着用户的增加而大量增加,这限制了其在实际商业服务中的应用。一些工作,仅微调说话人向量参数,可实现高效和轻量化的自定义语音,但合成语音质量较差。
4.因此,现在亟需一种提高模型训练效率以及语音合成的质量的自定义语音合成模型的训练方法。
技术实现要素:5.本技术提供了一种自定义语音合成模型的训练方法、装置、计算机设备及存储介质,以降低模型微调的工作量,提高模型训练效率,也提高了语音合成的质量。
6.第一方面,本技术提供了一种自定义语音合成模型的训练方法,所述方法包括:
7.加载待训练语音合成模型,并获取进行训练的初始数据,其中,所述初始数据包括文本信息以及标准音频信息,且所述文本信息与所述标准音频信息一一对应;
8.根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量;
9.根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型;
10.接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型。
11.第二方面,本技术还提供了一种自定义语音合成模型的训练装置,所述装置包括:
12.数据加载模块,用于加载待训练语音合成模型,并获取进行训练的初始数据,其中,所述初始数据包括文本信息以及标准音频信息,且所述文本信息与所述标准音频信息一一对应;
13.特征提取模块,用于根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量;
14.基础训练模块,用于根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型;
15.微调处理模块,用于接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型。
16.第三方面,本技术还提供了一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上述的自定义语音合成模型的训练方法。
17.第四方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如上述的自定义语音合成模型的训练方法。
18.本技术公开了一种自定义语音合成模型的训练方法、装置、计算机设备及存储介质,在进行自定义的定制化的语音合成模型的训练时,首先利用大量常规的训练样本(文本信息和音频信息)对模型进行预训练,其中预训练所得到的模型也可以直接用于语音合成,在完成预训练得到基础模型之后,在需要进行自定义的微调时,接收模型微调数据,包括有目标人的标识信息以及训练样本,然后根据所得到的模型微调数据对语音合成模型的梅尔谱解码器进行层归一化处理,以实现对模型参数的调节,并在完成调节时得到满足实际使用需求的自定义的语音合成模型。实现了定制化的模型微调,降低模型微调的工作量,也提高了语音合成的质量。
附图说明
19.为了更清楚地说明本技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1为本技术一个实施例提供的一种自定义语音合成模型的训练方法的流程示意图;
21.图2为本技术一个实施例提供的语音合成模型的框架示意图;
22.图3为本技术一个实施例提供的对初始数据进行处理的步骤的流程示意图;
23.图4为本技术一个实施例提供的得到基础模型的步骤的流程示意图;
24.图5为本技术一个实施例提供的对待训练语音合成模型进行训练的步骤的流程示意图;
25.图6为本技术一个实施例提供的确定模型是否训练完成的步骤的流程示意图;
26.图7为本技术一个实施例提供的得到训练好的语音合成模型的步骤的流程示意图;
27.图8为本技术一个实施例提供的语音合成模型中fft结构的框架示意图;
28.图9为本技术一个实施例提供的一种自定义语音合成模型的训练装置的示意性框图;
29.图10为本技术一个实施例提供的计算机设备的结构示意性框图。
具体实施方式
30.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本申
请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
31.附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
32.应当理解,在此本技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本技术。如在本技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
33.还应当进理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
34.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
35.请参阅图1,图1为本技术一个实施例提供的一种自定义语音合成模型的训练方法的流程示意图。
36.如图1所示,该训练方法包括步骤s101至步骤s104。
37.步骤s101、加载待训练语音合成模型,并获取进行训练的初始数据,其中,所述初始数据包括文本信息以及标准音频信息,且所述文本信息与所述标准音频信息一一对应。
38.在对语音合成模型进行训练时,首先加载需要进行训练的语音合成模型,也就是加载待训练语音合成模型,同时会获取进行模型训练的初始数据,然后根据所得到的初始数据对所加载的待训练语音合成模型进行训练。
39.具体地,该语音合成模型框架可以如图2所示。在所构建的语音合成模型中,各部分有着不同的功能和作用,其中,音素编码器用于提取音素序列隐性特征;差异适配器提供音高和时长等差异化信息;梅尔谱解码器输出梅尔谱序列。
40.在实际应用中,音素序列为文本的拼音的声韵母,通过音素编码器对音素序列进行处理,以得到该音素序列所对应的隐性特征,其中,该隐性特征为一向量,在此成为隐性特征向量,差异适配器通过对隐性特征向量的处理,得到音素的差异向量,其中差异向量用来表示音素的音高和时长等差异化的信息,可以包含有每一个音素的音高和时长等,如音素a的差异信息为音高150hz和时长5s,在得到隐性特征向量和差异向量之后,输入到梅尔谱解码器中进行处理,以得到梅尔谱序列,最后梅尔谱序列通过声码器的处理以合成得到所输入文本信息所对应的语音信息。
41.步骤s102、根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量。
42.在得到初始数据之后,对初始数据所包含的文本信息进行识别和获取,然后根据所得到的文本信息,得到初始数据所对应的音素隐性特征向量和音素差异向量。
43.实际的,初始数据中包含有若干文本信息以及其所对应的标准音频信息,在得到文本信息之后,对文本信息进行处理,得到每一个文本信息对应的音素隐性特征向量和音素差异向量。
44.在一是实施例中,在对初始数据进行预处理时,可以参照图3,图3为本技术一个实施例提供的对初始数据进行处理的步骤的流程示意图,具体地,该步骤s102包括步骤s301
至步骤s303。
45.步骤s301、获取所述初始数据包含的文本信息,并对所述文本信息进行音素提取,得到每一文本信息对应的音素序列;
46.步骤s302、将所述音素序列输入至所述音素编码器中,得到音素隐性特征向量;
47.步骤s303、将所述音素隐性特征向量输入至所述差异适配器中,得到音素差异向量。
48.在得到初始数据所对应的特征向量时,首先获取初始数据所包含的文本信息,以根据文本信息得到其所对应的音素进行提取,从而得到每一文本信息所对应的音素序列,然后将所得到的音素特征输入到待训练语音合成模型中的音素编码器中,以得到每一个音素序列所对应的音素隐性特征向量,然后将音素隐性特征向量输入到差异适配器中,得到音素差异向量,接着以文本信息为一组别,将所得到的因素隐性特征向量和因素差异向量进行拼接,得到每一个文本信息对应的特征向量。
49.在实际应用中,在利用所接收到的初始数据对待训练语音合成模型进行训练时,是对模型的相关参数进行调节,而为了实现对模型参数的调节,需要合适的训练数据,因此需要对初始数据进行准确的处理,以使得处理后的数据可以作为进行训练的训练数据。
50.步骤s103、根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型。
51.在进行模型的训练时,还需要获取进行训练的训练样本,因此在加载了待训练语音合成模型时,还将获取进行训练的初始数据,然后根据所加载的初始数据对所加载的待训练语音合成模型进行训练,进而在完成训练时得到相应的基础模型。其中,初始数据包括文本信息和音频信息,且每一文本信息有对应且唯一的音频信息。
52.在实际应用中,在进行语音合成输出时,需要输入相应的文本信息,然后利用训练好的语音合成模型对文本信息进行相应的处理,以输出得到对应的语音信息。而在根据所接收到的初始数据对待训练语音合成模型进行训练时,会在训练之后得到基础模型,而对于此时所得到的初始模型,本身是可以直接被使用的,也就是说基础模型可以进行语音信息的合成,是一个通用的模型,不能实现定制化的语音输出,如以某一使用者的的特征进行语音信息的输出。因此,为了实现定制化且自定义化的语音合成和输出,需要进行进一步的训练和处理。
53.上述待训练语音合成模型除了包括有音素编码器、差异适配器以及梅尔谱解码器三个部分之外,还包括有未标注出来的音素提取器以及声码器。在根据所接收到的初始数据对待训练语音合成模型进行训练时,实现过程如图4所示,图4为本技术一个实施例提供的得到基础模型的步骤的流程示意图,具体地,该步骤包括步骤s401至步骤s403。
54.步骤s401、以文本信息为一组别,将所述因素隐性特征向量与所述音素差异向量进行拼接,得到每一文本信息对应的特征向量;
55.步骤s402、根据所述特征向量以及所述标准音频信息,对所述待训练语音合成模型进行训练,并确定训练后的所述待训练语音合成模型是否收敛;
56.步骤s403、当确定所述待训练语音合成模型收敛时,得到基础模型。
57.在利用所得到的进行训练的初始数据,对所加载的待训练语音合成模型进行训练时,首先需要对所获取的初始数据进行相应的处理,以生成得到可以用于模型训练的训练
数据,因此,在获取初始数据之后,对初始数据进行预处理,得到初始数据所对应的特征向量,然后根据所得到的特征向量,以及初始数据中每一文本信息所对应的标准音频信息,对待训练语音合成模型进行训练,并确定训练过程中待训练语音合成模型是否收敛,进而在待训练语音合成模型收敛时,得到基础模型。
58.在模型训练过程中,确定模型收敛是来确定模型是否训练完成,通常情况下,确定模型是否收敛的方式有很多,比如模型训练次数、模型参数数值以及损失函数等,在此不做限制。
59.而在得到可以用于训练的数据之后,将会根据所得到的数据对待训练语音合成模型进行训练,参照图5,图5为本技术一个实施例提供的对待训练语音合成模型进行训练的步骤的流程示意图,其中步骤s302包括步骤s501至步骤s503。
60.步骤s501、将所述特征向量输入至所述梅尔谱解码器中,得到每一特征向量对应的梅尔谱序列;
61.步骤s502、利用所述声码器对所述梅尔谱序列进行处理,得到每一梅尔谱序列对应的音频信息;
62.步骤s503、根据所述音频信息以及所述初始数据包含的每一文本对应的标准音频信息,确定所述待训练语音合成模型是否训练完成。
63.在对待训练语音合成模型进行训练时,是为了使得训练后的语音合成模型可以准确的实现语音信息的合成和输出,因此在训练过程中,通过不断的参数调节,优化模型中的相关参数,以使得最终所得到的模型可以被使用。
64.在一实施例中,在得到进行模型训练的特征向量之后,将所得到的特征向量输入至梅尔谱解码器中,以得到每一特征向量所对应的梅尔谱序列,然后利用声码器对所得到的梅尔谱序列进行处理,可以得到每一梅尔谱序列所对应的音频信息,进而根据所得到的音频信息和每一文本所对应的标准音频信息,确定待训练语音合成模型是否训练完成。
65.在语音合成技术中,每一个梅尔谱序列都对应着一个音频信息,通过所构建的语音合成模型中所包含的声码器对梅尔谱序列进行处理来实现。同时,由于每一个文本信息对应一个特征向量,而在进行训练时,每一个特征向量会对应输出一个音频信息,因此在确定模型是否训练完成时,通过所得到的音频信息和标准音频信息确定模型是否训练完成。
66.具体地,参照图6,图6为本技术一个实施例提供的确定模型是否训练完成的步骤的流程示意图。具体包括步骤s601至步骤s602。
67.步骤s601、根据所述音频信息以及所述标准音频信息,确定所述待训练语音合成模型的损失函数值;
68.步骤s602、获取预设的损失阈值,并根据所述损失函数值以及所述损失阈值确定所述待训练语音合成模型是否收敛;其中,
69.若所述损失函数值小于所述损失阈值,则确定所述待训练语音合成模型收敛;
70.若所述损失函数值大于或者等于所述损失阈值,则确定所述待训练语音合成模型未收敛。
71.在一实施例中,在确定模型是否训练完成时,通过确定训练后的模型是否收敛,实际上,确定模型是否收敛的方式有很多,在此通过计算模型训练过程中的损失函数值还确定。其中,通过所得到音频信息和标准音频信息,计算模型过程时所对应的损失函数值,然
后将所得到的损失函数值与损失阈值进行比较,确定模型是否收敛,若损失函数值小于损失阈值,则确定待训练语音合成模型收敛,也就是此时将会得到基础模型;若损失函数值大于或者等于损失阈值,则确定待训练语音合成模型未收敛。
72.具体地,在确定训练后的语音合成模型是否收敛时,利用最小风险训练的思想来判断,对于最小风险训练,是使用损失函数来描述标准与模型之间的差异程度,以试图寻找一组参数使得模型的损失的期望值(即风险)最小,即通过模型的损失的期望值来确定模型是否收敛。
73.假如,模型输入为x(n),标准为y(n),模型的预测输出为y,对应的损失的期望值(风险)为:
[0074][0075]
其中,y(x
(n)
)表示x
(n)
对应的所有可能的输出集合。
[0076]
在一个最小风险案例中,如下表1所示,假定对于输入x
(n)
,输出y(x
(n)
)包括y1,y2,y3。对于每个候选输出都可以计算与标准答案的损失,这个例子里,三个候选的损失分别是
‑
1.0、
‑
0.3和
‑
0.5。也就是说,标准答案认为y1最好,y3次之,y2最差。而最小风险训练的目标是找到一组模型参数,使得损失的期望值最小。在表1中给出了四组概率分布:
[0077]
表1
[0078][0079]
第一组概率分布认为y2>y3>y1,这与标准答案相违背,因此得出很高的风险值
‑
0.50。
[0080]
第二组概率分布认为y3>y1>y2,相对于第一组概率分布而言,提高了与标准答案的相关度,因而获得了比第一组更低的风险值
‑
0.61。
[0081]
第三组概率分布与标准答案一致的排序y1>y3>y2,因而将风险值进一步降低为
‑
0.71。
[0082]
第四组概率分布在保证排序一致的情况下,同时提高了最优输出y1的概率,从而将风险值降为
‑
0.83。
[0083]
由此可以看出,最小风险训练认为一组好的参数应当尽可能在对所有候选元素的排序上与标准答案一致,而损失函数则定义了排序的计算方法。
[0084]
而在确定模型是否收敛时,可以通过当前训练所得到的模型所对应的损失的期望值来确定,比如设定一个期望值阈值a,通过将当前训练所得到的模型所对应的损失的期望值x与期望值阈值a进行比较,在x小于或者等于a时确定此时所得到的模型收敛,反之则不收敛。
[0085]
步骤s104、接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型。
[0086]
在完成对待训练语音合成模型的预训练之后,得到相应的基础模型,为了实现自定义的定制化的模型训练,需要对所得到的基础模型进行进一步的处理,以使得完成进一步处理后的模型满足实际的使用需求。
[0087]
因此,在进行进一步的训练时,接收所输入的模型微调数据,进而根据所接收到的模型微调数据对所得到的基础模型进行进一步的训练,并在完成训练时,得到定制化的训练好的语音合成模型。其中,模型微调数据包括目标人的标识信息、目标人的音频信息以及该音频信息所对应的文本信息。
[0088]
具体地,在进行微调时,参照图7,图7为本技术一个实施例提供的得到训练好的语音合成模型的步骤的流程示意图,具体地,步骤s104包括步骤s701至步骤s702。
[0089]
步骤s701、接收输入的模型微调数据,并对所述模型微调数据进行预处理,以得到模型微调向量;
[0090]
步骤s702、将所述模型微调向量输入至所述基础模型中进行训练,并在确定训练后的基础模型收敛时得到训练好的语音合成模型。
[0091]
在进行微调时,接收目标人的标识信息,并使用唯一向量表示所述标识信息,然后将所述标识信息以及文本信息和音频信息作为基础模型的输入,通过对基础模型中的梅尔谱解码器进行进一步的训练,实现对基础模型的微调。
[0092]
在一实施例中,在接收到模型微调数据时,首先识别所包含的目标人的标识向量,然后通过将所得到的标识向量与进行音素提取所得到的音素序列进行组合,以输入到音素编码器中,同时也会输出一个音素隐性特征向量(包含有标识向量),而所得到的因素隐性特征向量会通过差异适配器的处理,得到音素差异向量,并最后将包含有标识向量的因素隐性特征向量和音素差异向量对梅尔谱解码器进行微调。
[0093]
而在得到模型微调向量时,包括:识别所述模型微调数据中所包含的标识信息,并将所述标识信息转化为对应的标识向量;对所述模型微调数据进行处理,到所述模型微调数据对应的微调音素隐性特征向量和微调音素差异向量,将所述标识向量、微调音素序列以及微调音素隐性特征向量进行拼接,得到模型微调向量。
[0094]
实际上,在对所得到的基础模型进行微调时,依旧是利用微调数据对应的特征向量对基础模型进行微调,而主要的区别之处在于,进行微调时所使用的特征向量会包含有特定的数据,具体地,模型微调数据中除了包含有语音数据之后还包含有目标人的标识信息,因此在得到模型微调数据之后,识别模型微调数据所包含的标识信息,并将所得到的标识信息转化为对应的标识向量,而对于语音信息和文本信息的处理方式与前述方式相同,进而还会得到微调音素隐性特征向量和微调音素差异向量,最后通过向量拼接得到模型微调向量。
[0095]
另外,在进行实际的微调时,是对梅尔谱解码器中的各feed
‑
forward transformer结构(简称fft结构)进行参数微调,其中fft结构如图8所示,梅尔谱解码器由若干fft结构串行构成,且前一个fft结构的输出为后一个fft结构的输入,至最后一个fft结构输出梅尔谱序列。
[0096]
而在进行参数的调节时,是对每一个fft结构进行层归一化处理,而在进行层归一化处理时,通过调节刻度γ和偏差β实现对模型的微调。而在对模型进行微调时,通过计算模型训练时的损失函数值确定模型训练是否完成,而在模型训练完成时所对应的参数即为
为与目标人所对应的参数值。具体地,在进行微调时,是对梅尔谱解码器中的fft结构中的刻度γ和偏差β,图8结构中其中,μ和δ是输入x的均值和方差向量,x为输入至梅尔谱解码器的一输入向量。通过循环的的训练,调节fft结构中的参数值,实现对模型的微调。
[0097]
在进行模型的微调时,在梅尔谱解码器中进行层归一化处理,以对层归一化中的刻度和偏差进行调节,相对于传统方法微调整个模型参数极大地减少了微调参数量。同时,说话人层归一化的灵活性相较于仅微调说话人向量参数也保证了合成语音的质量。
[0098]
在上述描述的自定义语音合成模型的训练方法中,在进行自定义的定制化的语音合成模型的训练时,首先利用大量常规的训练样本(文本信息和音频信息)对模型进行预训练,其中预训练所得到的模型也可以直接用于语音合成,在完成预训练得到基础模型之后,在需要进行自定义的微调时,接收模型微调数据,包括有目标人的标识信息以及训练样本,然后根据所得到的模型微调数据对语音合成模型的梅尔谱解码器进行层归一化处理,以实现对模型参数的调节,并在完成调节时得到满足实际使用需求的自定义的语音合成模型。实现了定制化的模型微调,降低模型微调的工作量,也提高了语音合成的质量。
[0099]
请参阅图9,图9为本技术一个实施例提供的一种自定义语音合成模型的训练装置的示意性框图,该装置用于执行前述的自定义语音合成模型的训练方法。
[0100]
如图9所示,该自定义语音合成模型的训练装置900包括:
[0101]
数据加载模块901,用于加载待训练语音合成模型,并获取进行训练的初始数据,其中,所述初始数据包括文本信息以及标准音频信息,且所述文本信息与所述标准音频信息一一对应;
[0102]
特征提取模块902,用于根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量;
[0103]
基础训练模块903,用于根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型;
[0104]
微调处理模块904,用于接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型。
[0105]
进一步地,在一个实施例中,所述待训练语音合成模型包括音素编码器以及差异适配器,所述特征提取模块902具体还用于:
[0106]
获取所述初始数据包含的文本信息,并对所述文本信息进行音素提取,得到每一文本信息对应的音素序列;
[0107]
将所述音素序列输入至所述音素编码器中,得到音素隐性特征向量;
[0108]
将所述音素隐性特征向量输入至所述差异适配器中,得到音素差异向量。
[0109]
进一步地,在一个实施例中,所述基础训练模块902具体还用于:
[0110]
以文本信息为一组别,将所述因素隐性特征向量与所述音素差异向量进行拼接,得到每一文本信息对应的特征向量;
[0111]
根据所述特征向量以及所述标准音频信息,对所述待训练语音合成模型进行训练,并确定训练后的所述待训练语音合成模型是否收敛;
[0112]
当确定所述待训练语音合成模型收敛时,得到基础模型。
[0113]
进一步地,在一个实施例中,所述待训练语音合成模型还包括梅尔谱解码器以及声码器,所述基础训练模块903具体还用于:
[0114]
将所述特征向量输入至所述梅尔谱解码器中,得到每一特征向量对应的梅尔谱序列;
[0115]
利用所述声码器对所述梅尔谱序列进行处理,得到每一梅尔谱序列对应的音频信息;
[0116]
根据所述音频信息以及所述初始数据包含的每一文本对应的标准音频信息,确定所述待训练语音合成模型是否训练完成。
[0117]
进一步地,在一个实施例中,所述基础训练模块903具体还用于:
[0118]
根据所述音频信息以及所述标准音频信息,确定所述待训练语音合成模型的损失函数值;
[0119]
获取预设的损失阈值,并根据所述损失函数值以及所述损失阈值确定所述待训练语音合成模型是否收敛;其中,
[0120]
若所述损失函数值小于所述损失阈值,则确定所述待训练语音合成模型收敛;
[0121]
若所述损失函数值大于或者等于所述损失阈值,则确定所述待训练语音合成模型未收敛。
[0122]
进一步地,在一个实施例中,所述微调处理模块904具体还用于:
[0123]
接收输入的模型微调数据,并对所述模型微调数据进行预处理,以得到模型微调向量;
[0124]
将所述模型微调向量输入至所述基础模型中进行训练,并在确定训练后的基础模型收敛时得到训练好的语音合成模型。
[0125]
进一步地,在一个实施例中,所述微调处理模块904具体还用于:
[0126]
识别所述模型微调数据中所包含的标识信息,并将所述标识信息转化为对应的标识向量;
[0127]
对所述模型微调数据进行处理,得到所述模型微调数据对应的微调音素隐性特征向量和微调音素差异向量;
[0128]
将所述标识向量、微调音素隐性特征向量以及微调音素差异向量进行拼接,得到模型微调向量。
[0129]
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0130]
上述的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图8所示的计算机设备上运行。
[0131]
请参阅图10,图10为本技术一个实施例提供的计算机设备的结构示意性框图。该计算机设备可以是服务器。
[0132]
参阅图10,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括存储介质和内存储器。
[0133]
存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种自定义语音合成模型的训练方法。
[0134]
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
[0135]
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种自定义语音合成模型的训练方法。
[0136]
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0137]
应当理解的是,处理器可以是中央处理单元(central processing unit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field
‑
programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0138]
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
[0139]
加载待训练语音合成模型,并获取进行训练的初始数据,其中,所述初始数据包括文本信息以及标准音频信息,且所述文本信息与所述标准音频信息一一对应;
[0140]
根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量;
[0141]
根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型;
[0142]
接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型。
[0143]
在一个实施例中,所述待训练语音合成模型包括音素编码器以及差异适配器,所述处理器在实现所述根据所述文本信息,得到所述初始数据对应的音素隐性特征向量和音素差异向量时,还用于实现:
[0144]
获取所述初始数据包含的文本信息,并对所述文本信息进行音素提取,得到每一文本信息对应的音素序列;
[0145]
将所述音素序列输入至所述音素编码器中,得到音素隐性特征向量;
[0146]
将所述音素隐性特征向量输入至所述差异适配器中,得到音素差异向量。
[0147]
在一个实施例中,所述处理器在实现所述根据所述标准音频信息、音素隐性特征向量以及音素差异向量,对所述待训练语音合成模型进行训练,得到基础模型时,还用于实现:
[0148]
以文本信息为一组别,将所述因素隐性特征向量与所述音素差异向量进行拼接,得到每一文本信息对应的特征向量;
[0149]
根据所述特征向量以及所述标准音频信息,对所述待训练语音合成模型进行训练,并确定训练后的所述待训练语音合成模型是否收敛;
[0150]
当确定所述待训练语音合成模型收敛时,得到基础模型。
[0151]
在一个实施例中,所述待训练语音合成模型还包括梅尔谱解码器以及声码器,所
述处理器在实现所述根据所述特征向量以及所述初始数据包含的标准音频信息,对所述待训练语音合成模型进行训练,并确定训练后的所述待训练语音合成模型是否收敛时,还用于实现:
[0152]
将所述特征向量输入至所述梅尔谱解码器中,得到每一特征向量对应的梅尔谱序列;
[0153]
利用所述声码器对所述梅尔谱序列进行处理,得到每一梅尔谱序列对应的音频信息;
[0154]
根据所述音频信息以及所述初始数据包含的每一文本对应的标准音频信息,确定所述待训练语音合成模型是否训练完成。
[0155]
在一个实施例中,所述处理器在实现所述确定所述待训练语音合成模型是否训练完成时,还用于实现:
[0156]
根据所述音频信息以及所述标准音频信息,确定所述待训练语音合成模型的损失函数值;
[0157]
获取预设的损失阈值,并根据所述损失函数值以及所述损失阈值确定所述待训练语音合成模型是否收敛;其中,
[0158]
若所述损失函数值小于所述损失阈值,则确定所述待训练语音合成模型收敛;
[0159]
若所述损失函数值大于或者等于所述损失阈值,则确定所述待训练语音合成模型未收敛。
[0160]
在一个实施例中,所述处理器在实现所述接收模型微调数据,并基于所述模型微调数据对所述基础模型进行微调,得到训练好的语音合成模型时,还用于实现:
[0161]
接收输入的模型微调数据,并对所述模型微调数据进行预处理,以得到模型微调向量;
[0162]
将所述模型微调向量输入至所述基础模型中进行训练,并在确定训练后的基础模型收敛时得到训练好的语音合成模型。
[0163]
在一个实施例中,所述处理器在实现所述接收输入的模型微调数据,并对所述模型微调数据进行预处理,以得到模型微调向量时,还用于实现:
[0164]
识别所述模型微调数据中所包含的标识信息,并将所述标识信息转化为对应的标识向量;
[0165]
对所述模型微调数据进行处理,得到所述模型微调数据对应的微调音素隐性特征向量和微调音素差异向量;
[0166]
将所述标识向量、微调音素隐性特征向量以及微调音素差异向量进行拼接,得到模型微调向量。
[0167]
本技术的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本技术实施例提供的任一项自定义语音合成模型的训练方法。
[0168]
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。所述计算机
可读存储介质可以是非易失性的,也可以是易失性的。
[0169]
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
[0170]
另外,本技术所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
[0171]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。