一种音频合成方法、装置、服务器及存储介质
技术领域
本发明涉及音频合成技术领域,更具体地说,涉及一种音频合成方法、装置、服务器及存储介质。
背景技术
音频合成技术用于将所输入的文字转换成自然流畅的语音输出,其已广泛地应用于计算机应用当中。计算机应用中与音频合成技术相关服务的流畅性与音频合成效率息息相关,在音频合成效率低的情况下计算机应用中与音频合成技术相关的服务容易出现卡顿,影响用户体验、降低用户对计算机应用的粘性。由此,如何提高音频合成效率是亟待解决的问题。
发明内容
有鉴于此,本发明提出一种音频合成方法、装置、服务器及存储介质,以提高音频合成效率。技术方案如下:
本发明第一方面公开一种音频合成方法,包括:
获取文本的目标声学特征;
调用音频合成模型,所述音频合成模型是以待训练音频合成模型根据音频样本的声学特征和第一音频数据合成的目标音频数据趋近于第二音频数据为训练目标对所述待训练音频合成模型进行训练生成;所述第一音频数据为所述音频样本中第一采样点序列的音频数据,所述第二音频数据为所述音频样本中第二采样点序列的音频数据;
将所述目标声学特征输入所述音频合成模型得到所述音频合成模型根据所述目标声学特征和目标第一音频数据合成目标第二音频数据;所述目标第一音频数据为历史最近合成的所述目标第二音频数据,各个所述目标第二音频数据构成所述文本的音频。
可选的,还包括:
将当前未曾向所述用户发送的所述目标第二音频数据发送给所述用户。
可选的,还包括音频合成模型训练过程,该过程包括:
获取音频样本的声学特征;
分别获取位于所述音频样本中第一采样点序列的第一音频数据以及位于所述音频样本中第二采样点序列的第二音频数据;所述第一采样点序列中最后一个采样点和所述第二采样点序列中第一个采样点在音频时域上相邻;
将所述音频样本的声学特征和所述第一音频数据输入待训练音频合成模型,以所述待训练音频合成模型根据所述声学特征和所述第一音频数据合成的目标音频数据趋近于所述第二音频数据为训练目标,对所述待训练音频合成模型进行训练生成音频合成模型。
可选的,还包括:
确定位于所述音频样本中所述第一采样点序列的各个第一采样点;
对所述音频样本中位于所述第一采样点处的音频数据叠加噪音生成所述音频样本在所述第一采样点序列的第三音频数据;
所述将所述音频样本的声学特征和所述第一音频数据输入待训练音频合成模型,以所述待训练音频合成模型根据所述声学特征和所述第一音频数据合成的目标音频数据趋近于所述第二音频数据为训练目标,对所述待训练音频合成模型进行训练生成音频合成模型,包括:将所述音频样本的声学特征和所述第三音频数据输入待训练音频合成模型,以所述待训练音频合成模型根据所述声学特征和所述第三音频数据合成的目标音频数据趋近于所述第二音频数据为训练目标,对所述待训练音频合成模型进行训练生成音频合成模型。
可选的,还包括:
确定位于所述音频样本中所述第二采样点序列的各个第二采样点;
对所述音频样本在所述第二采样点处的音频数据进行泛化处理得到所述音频样本在所述第二采样点处的音频数据范围;
所述将所述音频样本的声学特征和所述第三音频数据输入待训练音频合成模型,以所述待训练音频合成模型根据所述声学特征和所述第三音频数据合成的目标音频数据趋近于所述第二音频数据为训练目标,对所述待训练音频合成模型进行训练生成音频合成模型,包括:将所述音频样本的声学特征和所述第三音频数据输入待训练音频合成模型,以所述待训练音频合成模型根据所述声学特征和所述第三音频数据合成的音频数据在目标第三采样点处的音频数据位于所述音频样本在目标第二采样点处的音频数据范围内为训练目标,对所述待训练音频合成模型进行训练生成音频合成模型;其中,所述目标第三采样点在所述音频数据中的相对位置与所述目标第二采样点在所述第二采样点序列中的相对位置相同。
可选的,所述音频合成模型还包括目标损失函数,所述目标损失函数的生成过程包括:
从依次合成的各个所述目标音频数据中选取连续生成的至少一个目标音频数据;
根据所述至少一个目标音频数据生成第一频谱;
利用所述音频样本中用于被所述至少一个目标音频数据趋近的各个所述第二音频数据生成第二频谱;
基于所述第一频谱和所述第二频谱计算目标损失函数。
本发明第二方面公开了一种音频合成装置,包括:
第一获取单元,用于获取文本的目标声学特征;
调用单元,用于调用音频合成模型,所述音频合成模型是以待训练音频合成模型根据音频样本的声学特征和第一音频数据合成的目标音频数据近于所述第二音频数据为训练目标对所述待训练音频合成模型进行训练生成;所述第一音频数据为所述音频样本中第一采样点序列的音频数据,所述第二音频数据为所述音频样本中第二采样点序列的音频数据;
合成单元,用于将所述目标声学特征输入所述音频合成模型得到所述音频合成模型根据所述目标声学特征和目标第一音频数据合成的目标第二音频数据;所述目标第一音频数据为历史最近合成的所述目标第二音频数据,合成的各个所述目标第二音频数据构成所述文本的音频。
可选的,还包括:
发送单元,用于将当前未曾向所述用户发送的所述目标第二音频数据发送给用户。
本发明第三方面公开一种服务器,包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述存储器存储的程序,所述程序用于实现如上述本发明第一方面任意一项公开的音频合成方法。
本发明第四方面公开一种存储介质,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如上述本发明第一方面任意一项公开的音频合成方法。
相较于现有技术,本发明实现的有益效果为:
以上本发明提供的一种音频合成方法、装置、服务器及存储介质,获取文本的目标声学特征,将文本的目标声学特征输入音频合成模型可以得到音频合成模型根据目标声学特征合成的各个用于构成文本的音频的目标第二音频数据。本发明是以音频样本中第一采样点序列的音频数据趋近于音频样本中第二采样点序列的音频数据为训练目标训练生成的音频合成模型,相应的,在基于音频合成模型合成文本的音频时所合成的每个目标第二音频数据是由多个采样点处的音频数据构成,本发明这种一次生成用于构成文本的音频的多个采样点处的音频数据的方式可以有效提高音频合成效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种基于神经网络的音频合成系统的结构示意图;
图2为本发明实施例提供的一种音频合成模型训练方法的流程示意图;
图3为本发明实施例提供的一种音频合成模型训练方法的示例图;
图4为本发明实施例提供的另一种音频合成模型训练方法的流程示意图;
图5为本发明实施例提供的另一种音频合成模型训练方法的示例图;
图6为本发明实施例提供的又一种音频合成模型训练方法的流程示意图;
图7为本发明实施例提供的又一种音频合成模型训练方法的示例图;
图8为本发明实施例提供的一种音频合成方法的流程示意图;
图9为本发明实施例提供的一种音频合成方法的示例图;
图10为本发明实施例提供的一种音频合成装置的结构示意图;
图11为本发明实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
发明人通过研究发现基于神经网络技术可以有效提高音频合成效率,由此提出了一种基于神经网络的音频合成系统,如图1所示为发明人提出的一种适用于该音频合成系统的音频合成方法,该音频合成方法通过前端对文本进行处理后,将处理结果输入声学特征模型中进行声学特征预测得到文本的声学特征,将文本的声学特征输入音频合成模型得到音频合成模型根据文本的声学特征逐一合成的用于构成文本的音频的每个采样点处的音频数据。
本申请实施例,前端对文本进行处理的方式可以为,前端可以对文件进行分词处理,和将文件中的文字转成拼音,并将进行分词处理得到的处理结果以及将文件中的文字转成的拼音进行矢量化和数值化,进而得到声学特征模型可以接收的数据。
音频合成模型是基于训练样本进行训练生成的。其中,音频合成模型是以待训练音频合成模型根据音频样本的声学特征和音频样本的前一个采样点处的音频数据趋近于音频样本的后一个采样点处的音频数据为训练目标对待训练音频合成模型进行训练生成。其中,前一个采样点和后一个采样点在音频时域上相邻。
本申请实施例,音频合成模型合成文本的音频时,用于构成文本的音频的第一个采样点的音频数据为预先设置的,比如可以将用于构成文本的音频的第一个采样点的音频数据设置为0。该方法可以根据文本的声学特征,利用用于构成文本的音频的前一个采样点的音频数据合成用于构成文本的音频的下一个采样点的音频数据。发明人经统计发现该方法虽然可以在一定程度上提高音频合成效率,但是音频合成效率仍不理想。
基于本申请实施例,利用上述音频合成模型根据文本的声学特征合成文本的音频的过程如下音频合成公式所示:
Xi=f(Xi-1) (1)
其中,Xi-1为第i-1个采样点处的音频数据,Xi为第i个采样点处的音频数据,f为音频合成模型的模型参数及其运算。
基于上述提供的音频合成公式(1)研究发现,如果音频合成模型合成一个采样点处的音频数据所需的时间为t,且待合成的文本的音频由L个采样点构成时,利用上述音频合成公式(1)合成文本的音频所需的时间为:
T=L*t (2)
由此可见,采用上述音频合成方法虽然能够在一定范围内提高的音频合成效率,但是当所需合成的音频由大量的采样点构成时,采用上述音频合成方法合成音频仍存在合成效率低的问题。
因此,发明人通过进一步研究提出一种如图2所示的音频合成模型训练方法,基于该音频合成模型训练方法生成的音频合成模型进行音频合成,可以进一步提高音频合成效率。
参考图2,本发明实施例提供了一种音频合成模型训练方法的流程示意图,具体包括以下步骤:
S201:获取音频样本的声学特征。
S202:分别获取位于音频样本中第一采样点序列的第一音频数据以及位于音频样本中第二采样点序列的第二音频数据。
本申请实施例,采样点序列由多个采样点构成,采样点序列的音频数据可以是由采样点序列中的各个采样点处的音频数据构成。
其中,第一采样点序列中最后一个采样点和第二采样点序列中第一个采样在音频时域上相邻;且第一采样点序列中的采样点的个数与第二采样点序列中采样点的个数相同。
比如,可以将音频样本中任意5个连续的采样点设置为第一采样点序列,将与这5个采样点中的最后一个采样点在音频时域上相邻的后5个连续的采样点设置为第二采样点序列。例如,可以将音频样本中第1-5个采样点构成的采样点序列作为第一采样点序列,将音频样本中第6-10个采样点构成的采样点序列作为第二采样点序列。
S203:将音频样本的声学特征和第一音频数据输入待训练音频合成模型,以待训练音频合成模型根据声学特征和第一音频数据合成的目标音频数据趋近于第二音频数据为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
在具体执行步骤S203的过程中,在确定音频样本中第一采样点序列的第一音频数据以及音频样本中第二采样点序列的第二音频数据后,由待训练音频合成模型根据音频样本的声学特征和第一音频数据合成目标音频数据,并基于待训练音频合成模型的损失函数反向调节待训练音频合成模型中的参数,进而达到以目标音频数据趋近于第二音频数据为训练目标对待训练音频合成模型进行训练,以生成音频合成模型的目的。
本申请实施例,目标音频数据中采样点的个数与第二采样点序列中采样点的个数相同。为了便于区分,将位于第一音频数据中的采样点称为第一采样点,位于第二音频数据中的采样点称为第二采样点,目标音频数据中的采样点称为第三采样点。其中,目标音频数据趋近于第二音频数据的方式可以为:目标音频数据中目标第三采样点处的音频数据趋近于第二音频数据中目标第二采样点处的音频数据。其中,目标第三采样点在目标音频数据中的相对位置与目标第二采样点在第二音频数据中的相对位置相同。
为了更好的对上内容进行理解,下面进行举例说明。
比如,如图3所示,第一音频数据为音频样本中第1-5个采样点处的音频数据,第一音频数据中的5个采样点依次为i0、i1、i2、i3、i4,第二音频数据为音频样本中第6-10个采样点处的音频数据,第二音频数据中的5个采样点依次为i5、i6、i7、i8、i9,待训练音频合成模型根据音频样本的声学特征和第一音频数据合成的目标音频数据包括5个采样点的音频数据,为了便于理解,暂时将目标音频数据包括的每个采样点称为第三采样点,目标音频数据中的5个第三采样点依次为i5'、i6'、i7'、i8'、i9',根据待训练音频合成模型的损失函数反向调节待训练音频合成模型中的参数,进而达到以目标音频数据中第三采样点i5'处的音频数据趋近于第二采样点i5处的音频数据、目标音频数据中第三采样点i6'处的音频数据趋近于第二采样点i6处的音频数据、目标音频数据中第三采样点i7'处的音频数据趋近于第二采样点i7处的音频数据、目标音频数据中第三采样点i8'处的音频数据趋近于第二采样点i8处的音频数据,以及目标音频数据中第三采样点i9'处的音频数趋近于第二采样点i9处的音频数据为训练目标,对待训练音频合成模型进行训练,生成音频合成模型。
进一步的,在本申请实施例中,可以同时确定多组第一采样序列的第一音频数据以及与这多组第一采样点序列对应的第二采样点序列的第二音频数据,通过多组第一采样序列的第一音频数据以及第二采样点序列的第二音频数据同时对待训练音频合成模型进行训练,直至待训练音频合成模型达到收敛,得到音频合成模型生成音频合成模型。
基于本发明实施例,当存在待进行音频合成的文本时,通过前端对待进行音频合成的文本进行处理,并将得到的处理结果输入声学特征模型中进行预测得到待进行音频合成的文本的声学特征,利用上述图2公开的音频合成模型根据文本的声学特征合成该文本的音频的过程如下音频合成公式所示:
Xi,Xi+1,Xi+2,Xi+3,Xi+4=f(Xi-5,Xi-4,Xi-3,Xi-2,Xi-1) (3)
其中,Xi-5,Xi-4,Xi-3,Xi-2,Xi-1为由音频样本中第i-5至i-1个采样点处的音频数据构成的第一音频数据,Xi,Xi+1,Xi+2,Xi+3,Xi+4为由音频样本中第i至i+4个采样点处的音频数据构成的第二音频数据,f为音频合成模型的模型参数及其运算。
基于上述提供的音频合成公式(3)研究发现,如果音频合成模型合成一个第二音频数据所需的时间为t,且待合成的文本的音频由L个采样点构成时,利用上述音频合成公式(3)合成文本的音频所需的时间为:
由上述公式(2)和公式(4)可知,在音频合成模型的模型参数个数不变情况下,利用上述图2公开的音频合成模来合成由L个采样点构成的文本的音频所需的时间是利用图1公开的音频合成模型来合成由L个采样点构成的文本的音频所需的时间的五分之一。
进一步的,当第一音频数据为由N采样点处的音频数据构成时,其中,N为大于等于1的正整数,在音频合成模型的模型参数个数不变情况下,利用图2公开的音频合成模型来合成由L个采样点构成的文本的音频所需的时间是利用图1公开的音频合成模型来合成由L个采样点构成的文本的音频所需的时间的N分之一。
由此可见,在合成同一文本的音频时,利用图2公开的音频合成模来合成该文本的音频相对于利用图1公开的音频合成模型来合成该文本的音频而言,可以进一步提高音频合成效率。
进一步的,本案发明人通过研究发现,通过图2公开的音频合成模型训练方法生成的音频合成模型,虽然能够进一步提高音频合成效率,但是该音频合成模型无法充分拟合音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系,为了解决这一问题,本发明实施例提供了另一种音频合成模型训练方法,如图4所示,具体包括以下步骤:
S401:获取音频样本的声学特征。
S402:确定音频样本中第一采样点序列的第一音频数据以及音频样本中第二采样点序列的第二音频数据。
在具体执行步骤S402的过程中,步骤S402的具体实现原理和执行过程,与上述本发明实施例图2公开的步骤S202的具体实现原理和执行过程相同,可参见上述本发明实施例图2公开的相应部分,这里不再进行赘述。
S403:确定位于音频样本中第一采样点序列的各个第一采样点。
在具体执行步骤S403的过程中,在确定音频样本中的第一采样点序列的第一音频数据后,进一步确定位于音频样本中第一采样点序列中的各个第一采样点处的音频数据。
S404:对音频样本中第一采样点处的音频数据叠加噪音生成音频样本在第一采样点序列的第三音频数据。
需要说明的是,对音频样本中第一采样点处的音频数据叠加的噪音的噪音数据小于该第一采样点处的音频数据。比如,当音频样本中第一采样点序列的各个第一采样点中的任意一个第一采样点处的音频数据为0.5,在对该第一采样点处的音频数据叠加的噪音的噪音数据可以为0.02或者0.002。有关于对音频样本中第一采样点处的音频数据叠加的噪音的噪音数据的具体数值,发明人可根据自己的需求进行设置,本申请实施例不加以限定。
还需要说明的是,音频样本中第一采样点序列中的各个第一采样点处的音频数据叠加的噪音的数据可以一样,也可以不一样。可根据实际情况进行设置,本申请实施例不加以限定。
在具体执行步骤S404的过程中,在确定位于音频样本中第一采样点序列的各个第一采样点后,针对音频样本中第一采样点序列的每个第一采样点而言,对该第一采样点处的音频数据叠加噪音,进而生成音频样本在第一采样点序列的第三音频数据。
比如,当第一音频数据为音频样本中第1-5个采样点处的音频数据,第一音频数据中的5个第一采样点依次为i0、i1、i2、i3、i4,且第一采样点i0处的音频数据为0.4、第一采样点i1处的音频数据为0.3、第一采样点i2处的音频数据为0.5、第一采样点i3处的音频数据为0.4、第一采样点i4处的音频数据为0.6,分别对第一采样点i0处的音频数据(0.4)叠加噪音(0.02),第一采样点i1处的音频数据(0.3)叠加噪音(0.01),第一采样点i2处的音频数据(0.5)叠加噪音(0.01),第一采样点i3处的音频数据叠(0.4)叠加噪音(0.03),第一采样点i4处的音频数据(0.6)叠加噪音(0.01),进而生成音频样本在第一采样点序列的第三音频数据为0.42、0.31、0.51、0.43、0.61。
S405:确定位于音频样本中第二采样点序列的各个第二采样点。
在具体执行步骤S405的过程中,在确定音频样本中的第二采样点序列的第二音频数据后,进一步确定位于音频样本中第二采样点序列中的各个第二采样点处的音频数据。
S406:对音频样本在第二采样点处的音频数据进行泛化处理得到音频样本在第二采样点处的音频数据范围。
在具体执行步骤S406的过程中,在确定位于音频样本中第二采样点序列的各个第二采样点后,分别对音频样本中的各个第二采样点处的音频数据进行泛化处理得到音频样本在各个第二采样点处的音频数据范围。
比如,第二音频数据为音频样本中第6-10个采样点处的音频数据,第二音频数据中的5个第二采样点依次为i5、i6、i7、i8、i9,且第二采样点i5处的音频数据为0.41、第二采样点i6处的音频数据为0.29、第二采样点i7处的音频数据为0.51、第二采样点i8处的音频数据为0.42、第二采样点i9处的音频数据为0.59。分别对i5、i6、i7、i8、i9处的音频数据的音频数据进行泛化处理得到i5、i6、i7、i8、i9处的音频数据范围可以为,将第二采样点i5处的音频数据减去噪音(0.03)得到0.38,再对第二采样点i5处的音频数据叠加噪音(0.03)得到0.44,进而得到音频样本在第二采样点i5处的音频数据范围为0.38~0.44;将第二采样点i6处的音频数据减去噪音(0.04)得到0.25,再对第二采样点i6处的音频数据叠加噪音(0.04)得到0.33,进而得到音频样本在第二采样点i6处的音频数据范围为0.25~0.3;将第二采样点i7处的音频数据减去噪音(0.03)得到0.48,再对第二采样点i7处的音频数据叠加噪音(0.03)得到0.54,进而音频样本在第二采样点i7处的音频数据范围为0.48~0.54;将第二采样点i8处的音频数据减去噪音(0.42)得到0.38,再对第二采样点i8处的音频数据叠加噪音(0.04)得到0.46,进而得到音频样本在第二采样点i8处的音频数据范围为0.38~0.46;将第二采样点i9处的音频数据减去噪音(0.03)得到0.56,再对第二采样点i9处的音频数据叠加噪音(0.03)得到0.62,进而音频样本在第二采样点i9处的音频数据范围为0.56~0.62。
S407:将音频样本的声学特征和第三音频数据输入待训练音频合成模型得到目标音频数据,以待训练音频合成模型根据声学特征和第三音频数据合成的目标音频数据在目标第三采样点处的音频数据位于音频样本在目标第二音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
其中,目标第三采样点在目标音频数据中的相对位置与目标第二采样点在第二采样点序列中的相对位置相同。
本申请实施例,目标音频数据中采样点的个数与第二采样点序列中采样点的个数相同。为了便于区分,将位于第一音频数据中的采样点称为第一采样点,位于第二音频数据中的采样点称为第二采样点,目标音频数据中的采样点称为第三采样点。其中,目标音频数据趋近于第二音频数据的方式可以为:目标音频数据中目标第三采样点处的音频数据趋近于第二音频数据中目标第二采样点处的音频数据。其中,目标第三采样点在目标音频数据中的相对位置与目标第二采样点在第二音频数据中的相对位置相同。
在具体执行步骤S407的过程中,将音频样本的声学特征和第三音频数据待训练音频合成模型中,由待训练音频合成模型基于该音频样本的声学特征和第三音频数据合成目标音频数据,并基于待训练音频合成模型的损失函数反向调节待训练音频合成模型中的参数,进而达到以目标音频数据中目标第三采样点处的音频数据位于音频样本在目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练,以生成音频合成模型的目的。
为了更好的对上述内容进行理解,下面进行举例说明
比如,如图5所示,第一音频数据为音频样本中第1-5个采样点处的音频数据,第一音频数据中的5个采样点依次为i0、i1、i2、i3、i4,第二音频数据为音频样本中第6-10个采样点处的音频数据,第二音频数据中的5个采样点依次为i5、i6、i7、i8、i9,分别对i0、i1、i2、i3、i4处的音频数据叠加噪音生成第三音频数据,分别对i5、i6、i7、i8、i9处的音频数据的音频数据进行泛化处理得到i5、i6、i7、i8、i9处的音频数据范围,待训练音频合成模型根据音频样本的声学特征和第三音频数据合成的目标音频数据包括5个采样点处的音频数据,为了便于区分,暂时将目标音频数据包括的每个采样点称为第三采样点,目标音频数据中的5个第三采样点依次为i5'、i6'、i7'、i8'、i9',根据待训练音频合成模型的损失函数反向调节待训练音频合成模型中的参数,进而达到以目标音频数据中第三采样点i5'处的音频数据位于音频样本在第二采样点i5处的音频数据范围内、目标音频数据中第三采样点i6'处的音频数据位于音频样本在第二采样点i6处的音频数据范围内、目标音频数据中第三采样点i7'处的音频数据位于音频样本在第二采样点i7处的音频数据范围内、目标音频数据中第三采样点i8'处的音频数据位于音频样本在第二采样点i8处的音频数据范围内,以及目标音频数据中第三采样点i9'处的音频数据在第二采样点i9处的音频数据范围内为训练目标,对待训练音频合成模型进行训练,生成音频合成模型。
在本发明实施例中,对音频样本中的各个第一采样点处的音频数据叠加噪音能够使生成的音频合成模型的模拟环境更加贴近实际环境,进而提高音频合成模型合成音频的质量,对音频样本在各个第二采样点处的音频数据进行泛化处理得到音频样本在第二采样点处的音频数据范围,能够提高生成的音频合成模型的泛化能力,进而提高音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系。
为解决图2公开音频合成模型训练方法生成的音频合成模型的无法充分拟合音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系的问题,以及进一步提高音频合成模型所合成的音频的质量,本发明实施例提供了又一种音频合成模型训练方法,如图6所示,具体包括以下步骤:
S601:获取音频样本的声学特征。
S602:确定音频样本中第一采样点序列的第一音频数据以及音频样本中第二采样点序列的第二音频数据。
S603:确定位于音频样本中第一采样点序列的各个第一采样点。
S604:对音频样本中第一采样点处的音频数据叠加噪音生成音频样本在第一采样点序列的第三音频数据。
S605:确定位于音频样本中第二采样点序列的各个第二采样点。
S606:对音频样本在第二采样点处的音频数据进行泛化处理得到音频样本在第二采样点处的音频数据范围。
在具体执行步骤S601至步骤S606的过程中,步骤S601至步骤S606的具体实现原理和执行过程,与上述本发明实施例图4公开的具体实现原理和执行过程相同,可参见上述本发明实施例图4公开的相应部分,这里不再赘述。
S607:将音频样本的声学特征和第三音频数据输入待训练音频合成模型得到目标音频数据。
S608:从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据。
在具体执行步骤S608的过程中,在将音频样本的声学特征和第三音频数据输入待训练音频合成模型得到目标音频数据后,从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据。
S609:根据至少一个目标音频数据生成第一频谱。
在具体执行步骤S609的过程中,在从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据后,根据至少一个目标音频数据生成第一频谱。
例如,当确定依次合成有3个目标音频数据,且这3个目标音频数据依次为X′i5,X′i6,X′i7,X′i8,X′i9、X′i10,X′i11,X′i12,X′i13,X′i14、X′i15,X′i16,X′i17,X′i18,X′i19,可从依次合成的3个目标音频数据中选取连续生成的后2个目标音频数据,即选取X′i10,X′i11,X′i12,X′i13,X′i14和X′i15,X′i16,X′i17,X′i18,X′i19,进而根据X′i10,X′i11,X′i12,X′i13,X′i14和X′i15,X′i16,X′i17,X′i18,X′i19生成第一频谱。
S610:利用音频样本中用于被至少一个目标音频数据趋近的各个第二音频数据生成第二频谱。
在具体执行步骤S610的过程中,确定选取的至少一个目标音频数据后,利用音频样本中用于被至少一个目标音频数据趋近的各个第二音频数据生成第二频谱。
为了更好对上述内容进行理解,下面进行举例说明。
比如,当确定有3组第一音频数据,其中第一组第一音频数据为音频样本中第1-5个采样点处的音频数据,且第一组第一音频数据为Xi0,Xi1,Xi2,Xi3,Xi4;第二组第一音频数据为音频样本中第6-10个采样点处的音频数据,且第二组第一音频数据为Xi5,Xi6,Xi7,Xi8,Xi9;第三组第一音频数据为音频样本中第11-15个采样点处的音频数据,且第三组第一音频数据为Xi10,Xi11,Xi12,Xi13,Xi14。由于第二采样点序列中第一个采样点和第一采样点序列中最后一个采样点在音频时域上相邻,因此可确定第一组第二音频数据为音频样本中第6-10个采样点处的音频数据,即第一组第二音频数据为Xi5,Xi6,Xi7,Xi8,Xi9;第二组第二音频数据为音频样本中第11-15个采样点处的音频数据,即第二组第二音频数据为Xi10,Xi11,Xi12,Xi13,Xi14;第三组第二音频数据为音频样本中第16-20个采样点处的音频数据,即第三组第二音频数据为Xi15,Xi16,Xi17,Xi18,Xi19。
分别对第一组第一音频数据中各个第一采样点处的音频数据叠加噪音生成第一组第三音频数据、对第二组第一音频数据中各个第一采样点处的音频数据叠加噪音生成第二组第三音频数据,以及对第三组第一音频数据中各个第一采样点处的音频数据叠加噪音生成第三组第三音频数据;若待训练音频合成模型根据音频样本的声学特征和第一组第三音频数据合成的第一组目标音频数据为X′i5,X′i6,X′i7,X′i8,X′i9,根据音频样本的声学特征和第二组第三音频数据合成的第二组目标音频数据为X′i10,X′i11,X′i12,X′i13,X′i14,根据音频样本的声学特征和第三组第三音频数据合成的第三组目标音频数据为X′i15,X′i16,X′i17,X′i18,X′i19;当确定从依次合成的3个目标音频数据中选取连续生成的后2个目标音频数据,即选取X′i10,X′i11,X′i12,X′i13,X′i14,X′i15,X′i16,X′i17,X′i18,X′i19时,可确定音频样本中用于被X′i10,X′i11,X′i12,X′i13,X′i14趋近的第二音频数据为Xi10,Xi11,Xi12,Xi13,Xi14,用于被X′i15,X′i16,X′i17,X′i18,X′i19趋近的第二音频数据为Xi15,Xi16,Xi17,Xi18,Xi19,进而利用Xi10,Xi11,Xi12,Xi13,Xi14和Xi15,Xi16,Xi17,Xi18,Xi19生成第二频谱。
S611:基于第一频谱和第二频谱计算目标损失函数。
在具体执行步骤S611的过程中,可以预先设置计算目标损失函数的计算规则,当获取到第一频谱和第二频谱后,基于预先设置的计算规则对第一频谱和第二频谱进行计算,得到目标损失函数。
需要说明的是,目标损失函数可以为短时傅里叶变换(Short time Fouriertransform,STFT)损失函数。有关于目标损失函数的具体内容,发明人可根据自己的需求进行设置,本申请实施例不加以限定。
S612:基于目标损失函数和待训练音频合成模型中的损失函数,反向调节待训练音频合成模型的参数,使得目标音频数据中目标第三采样点处的音频数据位于音频样本在目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
作为本申请实施例的一种优选方式,基于目标损失函数和待训练音频合成模型中的损失函数,反向调节待训练音频合成模型的参数的方式可以为,根据目标损失函数和待训练音频合成模型的损失函数(待训练音频合成模型中的损失函数可以为上述图2或者图4中提及的待训练音频合成模型的损失函数)进行计算,得到一个最终的损失函数,基于这个最终的损失函数值反向调节待训练音频合成模型的参数,进而达到以目标音频数据中目标第三采样点处的音频数据位于音频样本在目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
在本申请实施例中,根据目标损失函数和待训练音频合成模型的损失函数进行计算得到一个最终的损失函数的方式可以为,根据目标损失函数和待训练音频合成模型的损失函数进行加法计算,得到一个最终的损失函数。
为了更好的对上述内容进行理解,下面进行举例说明。
比如,如图7所示,第一音频数据为音频样本中第1-5个采样点处的音频数据,第一音频数据中的5个第一采样点依次为i0、i1、i2、i3、i4,第二音频数据为音频样本中第6-10个采样点处的音频数据,第二音频数据中的5个第二采样点依次为i5、i6、i7、i8、i9,分别对i0、i1、i2、i3、i4处的音频数据叠加噪音生成第三音频数据,分别对i5、i6、i7、i8、i9处的音频数据的音频数据进行泛化处理得到i5、i6、i7、i8、i9处的音频数据范围,待训练音频合成模型根据音频样本的声学特征和第三音频数据合成的目标音频数据包括5个采样点的音频数据,为了便于区分,暂时将目标音频数据中每个采样点称为第三采样点,目标音频数据中的5个第三采样点依次为i5'、i6'、i7'、i8'、i9',根据目标损失函数和待训练音频合成模型的损失函数进行计算,得到一个最终的损失函数,基于该最终的损失函数反向调节待训练音频合成模型的参数,进而达到以目标音频数据中第三采样点i5'处的音频数据位于音频样本在第二采样点i5处的音频数据范围内、目标音频数据中第三采样点i6'处的音频数据位于音频样本在第二采样点i6处的音频数据范围内、目标音频数据中第三采样点i7'处的音频数据位于音频样本在第二采样点i7处的音频数据范围内、目标音频数据中第三采样点i8'处的音频数据位于音频样本在第二采样点i8处的音频数据范围内,以及目标音频数据中第三采样点i9'处的音频数据在第二采样点i9处的音频数据范围内为训练目标,对待训练音频合成模型进行训练,生成音频合成模型。
在本发明实施例中,根据从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据生成第一频谱,以及利用音频样本中用于被至少一个目标音频数据趋近的各个第二音频数据生成第二频谱,并通过基于第一频谱和第二频谱计算的目标损失函数和待训练音频合成模型的损失函数,反向调节待训练音频合成模型的参数,使得目标音频数据中目标第三采样点处的音频数据位于音频样本在目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型,这样,能够更进一步的提高音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系,以及音频合成模型合成音频的质量。
参考图8,本发明实施例提供了一种音频合成方法的流程示意图,该音频合成方法包括以下步骤:
S801:获取文本的目标声学特征。
在本申请实施例中,文本的目标声学特征是通过前端对该文本进行处理,并将处理结果输入声学模型中进行声学特征预测,进而得到文本的目标声学特征。
S802:调用音频合成模型。
在本申请实施例中,调用的音频合成模型可以为图2、图4和图6生成的音频合成模型中的任意一个音频合成模型。
S803:将目标声学特征输入音频合成模型得到音频合成模型根据目标声学特征和目标第一音频数据合成的目标第二音频数据。
其中,目标第一音频数据为历史最近合成的目标第二音频数据,合成的各个目标第二音频数据构成文本的音频。
在本申请实施例中,可以预先设置首个目标第一音频数据,将文本的目标声学特征输入音频合成模型得到音频合成模型根据目标声学特征和预先设置的首个目标第一音频数据合成目标第二音频数据,以便于音频合成模型根据目标声学特征和历史最近合成的目标第二音频数据合成与历史最近合成的目标第二音频数据相邻的下一个目标第二音频数据,以此类推,直至合成结束,将合成的各个目标第二音频数据构成文本的音频。
需要说明的是,预先设置的首个目标第一音频数据可以为连续的5个采样点处的音频数据,且这连续的5个采样点处的音频数据均为0,即可将首个目标第一音频数据预先设置为00000。有关于首个目标第一音频数据的具体内容,发明人可根据自己的需求进行设置,本申请实施例不加以限定。
为了更好的为上述内容进行理解,下面进行举例说明。
比如,如图9所示,预先设置首个目标第一音频数据为Xi0,Xi1,Xi2,Xi3,Xi4,将目标声学特征输入音频合成模型得到音频合成模型根据目标声学特征和Xi0,Xi1,Xi2,Xi3,Xi4合成的目标第二音频数据为Xi5,Xi6,Xi7,Xi8,Xi9,进而将Xi5,Xi6,Xi7,Xi8,Xi9作为目标第一音频数据,使得音频合成模型根据目标声学特征和Xi5,Xi6,Xi7,Xi8,Xi9合成的目标第二音频数为Xi10,Xi11,Xi12,Xi13,Xi14,以此类推,直至合成结束,将合成的各个目标第二音频数据构成文本的音频。
本发明提供的一种音频合成方法,通过获取文本的目标声学特征,将文本目标声学特征输入调用的音频合成模型可以得到音频合成模型根据目标声学特征和目标第一音频数据合成的各个用户构成文本的音频的目标第二音频数据。本发明是以音频样本中第一采样点序列的音频数据趋近于音频样本中第二采样点序列的音频数据为训练目标训练生成的音频合成模型,相应的,在基于音频合成模型合成文本的音频时所合成的每个目标第二音频数据是由多个采样点处的音频数据构成,本发明这种一次生成用于构成文本的音频的多个采样点处的音频数据的方式可以有效提高音频合成效率。
可选的,在上述本发明提供的一种音频合成方法的基础上,还包括:将当前未曾向用户发送的目标第二音频数据发送给用户。
在本申请实施例中,若当前存在未向用户发送目标第二音频数据,将当前未曾向用户发送的目标第二音频数据发送给用户。
为了更好的为上述内容进行理解,下面进行举例说明。
比如,预先设置初始目标第一音频数据为Xi0,Xi1,Xi2,Xi3,Xi4,将目标声学特征输入音频合成模型得到音频合成模型根据目标声学特征和Xi0,Xi1,Xi2,Xi3,Xi4合成目标第二音频数据Xi5,Xi6,Xi7,Xi8,Xi9,并将Xi5,Xi6,Xi7,Xi8,Xi9返回给用户,在向用户发送Xi5,Xi6,Xi7,Xi8,Xi9的同时,将Xi5,Xi6,Xi7,Xi8,Xi9作为目标第一音频数据,使得音频合成模型根据目标声学特征和Xi5,Xi6,Xi7,Xi8,Xi9合成目标第二音频数据Xi10,Xi11,Xi12,Xi13,Xi14,并将Xi+5,Xi+6,Xi+7,Xi+8,Xi+9返回给用户,以此类推,直至向用户返完所有合成的目标第二音频数据。
在本申请实施例中,通过实时检测当前是否存在未向用户发送的目标第二音频数据,当当前存在未向用户发送目标第二音频数据,将当前未曾向用户发送的目标第二音频数据发送给用户,进而达到实时向用户发送目标第二音频数据的目的,这种实时向用户发送目标第二音频数据的方式相对于现有技术中当合成文本的音频后再向用户发送文本的音频的方式而言,能够减少用户等待音频的时间,提高用户的体验感。
在本发明实施例中,通过实时检测当前是否存在未向用户发送的目标第二音频数据,当当前存在未向用户发送目标第二音频数据,将当前未曾向用户发送的目标第二音频数据发送给用户,这样能够减少用户等待音频的时间,提高用户的体验感。
基于本发明实施例公开的音频合成方法,本发明实施例还对应公开了一种音频合成装置,如图10所示,该音频合成装置1000,包括:
第一获取单元1001,用于获取文本的目标声学特征。
调用单元1002,用于调用音频合成模型,音频合成模型是以待训练音频合成模型根据音频样本的声学特征和第一音频数据合成的目标音频数据趋近于第二音频数据为训练目标对待训练音频合成模型进行训练生成;第一音频数据为音频样本中第一采样点序列的音频数据,第二音频数据为音频样本中第二采样点序列的音频数据。
合成单元1003,用于将目标声学特征输入音频合成模型得到音频合成模型根据目标声学特征和目标第一音频数据合成的目标第二音频数据;目标第一音频数据为历史最近合成的目标第二音频数据,各个目标第二音频数据构成文本的音频。
上述本发明实施例公开的音频合成装置中各个单元具体的原理和执行过程,与上述本发明实施例公开的音频合成方法相同,可参见上述本发明实施例公开的音频合成方法中相应的部分,这里不再进行赘述。
本发明提供的一种音频合成装置,通过获取文本的目标声学特征,将文本目标声学特征输入调用的音频合成模型可以得到音频合成模型根据目标声学特征和目标第一音频数据合成的各个用户构成文本的音频的目标第二音频数据。本发明是以音频样本中第一采样点序列的音频数据趋近于音频样本中第二采样点序列的音频数据为训练目标训练生成的音频合成模型,相应的,在基于音频合成模型合成文本的音频时所合成的每个目标第二音频数据是由多个采样点处的音频数据构成,本发明这种一次生成用于构成文本的音频的多个采样点处的音频数据的方式可以有效提高音频合成效率。
优选的,该音频合成装置1000,还包括:
发送单元,用于将当前未曾向用户发送的目标第二音频数据发送给用户。
在本发明实施例中,通过实时检测当前是否存在未向用户发送的目标第二音频数据,当当前存在未向用户发送目标第二音频数据,将当前未曾向用户发送的目标第二音频数据发送给用户,这样能够减少用户等待音频的时间,提高用户的体验感。
优选的,该音频合成装置1000,还包括音频合成模型训练过程,该过程包括:
第二获取单元,用于获取音频样本的声学特征。
第一确定单元,用于分别获取位于音频样本中第一采样点序列的第一音频数据以及位于音频样本中第二采样点序列的第二音频数据;第一采样点序列中最后一个采样点和第二采样点序列中第一个采样点在音频时域上相邻。
第一生成单元,用于将音频样本的声学特征和第一音频数据输入待训练音频合成模型,以待训练音频合成模型根据声学特征和第一音频数据合成的目标音频数据趋近于第二音频数据为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
优选的,该音频合成装置1000,还包括:
第二确定单元,用于确定位于音频样本中第一采样点序列的各个第一采样点。
叠加单元,用于对音频样本中位于第一采样点处的音频数据叠加噪音生成音频样本在第一采样点序列的第三音频数据。
相应的,第一生成单元,包括:第二生成单元,用于将音频样本的声学特征和第三音频数据输入待训练音频合成模型,以待训练音频合成模型根据声学特征和第三音频数据合成的目标音频数据趋近于第二音频数据为训练目标,对待训练音频合成模型进行训练生成音频合成模型。
在本发明实施例中,对音频样本中的各个第一采样点处的音频数据叠加噪音能够使生成的音频合成模型的模拟环境更加贴近实际环境,进而提高音频合成模型合成音频的质量。
优选的,该音频合成装置1000,还包括:
第三确定单元,用于确定位于音频样本中第二采样点序列的各个第二采样点;
泛化处理单元,用于对音频样本在第二采样点处的音频数据进行泛化处理得到音频样本在第二采样点处的音频数据范围;
相应的,第二生成单元,包括:第三生成单元,用于将音频样本的声学特征和第三音频数据输入待训练音频合成模型,以待训练音频合成模型根据声学特征和第三音频数据合成的音频数据在目标第三采样点处的音频数据位于音频样本目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型;目标第三采样点在目标音频数据中的相对位置与目标第二采样点在第二采样点序列中的相对位置相同。
在本发明实施例中,对音频样本在各个第二采样点处的音频数据进行泛化处理得到音频样本在第二采样点处的音频数据范围,能够提高生成的音频合成模型的泛化能力,进而提高音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系。
优选的,音频合成模型还包括目标损失函数,目标损失函数的生成过程包括:
选取单元,用于从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据。
第三生成单元,用于根据至少一个目标音频数据生成第一频谱。
第四生成单元,用于利用音频样本中用于被至少一个目标音频数据趋近的各个第二音频数据生成第二频谱。
计算单元,用于基于第一频谱和所述第二频谱计算目标损失函数。
在本发明实施例中,根据从依次合成的各个目标音频数据中选取连续生成的至少一个目标音频数据生成第一频谱,以及利用音频样本中用于被至少一个目标音频数据趋近的各个第二音频数据生成第二频谱,并通过基于第一频谱和第二频谱计算的目标损失函数和待训练音频合成模型的损失函数,反向调节待训练音频合成模型的参数,使得目标音频数据中目标第三采样点处的音频数据位于音频样本在目标第二采样点处的音频数据范围内为训练目标,对待训练音频合成模型进行训练生成音频合成模型,这样,能够更进一步的提高音频样本中处于高频的采样点序列中各个采样点之间的概率依赖关系,以及音频合成模型合成音频的质量。
本发明实施例提供了一种服务器,参考图11,包括存储器1101和处理器1102,其中:
存储器存储有程序;处理器1102用于执行存储器存储的程序,具体执行如本发明任一实施例提供的音频合成方法。
本发明实施例提供了一种存储介质,该存储介质存储有计算机可执行指令,用于实现如本发明任一实施例提供的音频合成方法。
以上对本发明所提供的一种音频合成方法、装置、服务器及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。