多语种混合语料的生成方法及装置、训练方法及装置与流程

文档序号:32337128发布日期:2022-11-26 08:25阅读:57来源:国知局
多语种混合语料的生成方法及装置、训练方法及装置与流程

1.本公开的实施例涉及一种多语种混合语料的生成方法、多语种混合语料的生成装置、声学模型的训练方法、声学模型的训练装置、电子设备以及非瞬时性计算机可读存储介质。


背景技术:

2.随着ai(artificial intelligence,人工智能)的不断发展,人工智能技术在教育领域的应用愈发重要,语音合成技术可以应用在虚拟教师授课、课文朗读、指读或是学习机语音交互等不同情景,其在实际应用中作为不可缺少的一部分也得到了广泛关注。
3.算法、算力、数据是人工智能技术发展的三大基石。一个ai模型从设计、训练、再到部署使用,整个过程中数据集的选择十分重要。高质量的数据集往往能够提高模型训练的质量和预测的准确率。由于行业的天然壁垒,智能教育领域目前开放的数据资源非常有限,而经过清理、标注、注释、结构化的数据更为少见。


技术实现要素:

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.图1为本公开一实施例提供的一种多语种混合语料的生成方法的流程图;图2为本公开至少一实施例提供的多语种混合语料的生成方法的示意性流程图;图3为本公开一实施例提供的能量均衡处理的对比示意图;图4为本公开一实施例提供的一种声学模型的训练方法的流程图;图5为本公开至少一实施例提供的声学模型的示意性结构图;图6为本公开至少一实施例提供的编码器模块的示意性结构图;
图7为本公开至少一实施例提供的声学模型的示意性结构图;图8为本公开至少一实施例提供的一种多语种混合语料的生成装置的示意性框图;图9为本公开至少一实施例提供的一种训练装置的示意性框图;图10为本公开一实施例提供的一种电子设备的示意性框图;图11为本公开至少一实施例提供的一种非瞬时性计算机可读存储介质的示意图;图12为本公开至少一实施例提供的一种硬件环境的示意图。
具体实施方式
30.为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
31.除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。为了保持本公开实施例的以下说明清楚且简明,本公开省略了部分已知功能和已知部件的详细说明。
32.随着目前学生对于外语学习需求的不断增强,传统的单语种语音合成技术已经满足不了学生们的学习现状。例如,对于国内学生来说,中文和其他语种混合语音的合成是迫切需要的。
33.现有的深度学习方法所采用的语音合成模型需要大量优质的平行语料进行训练,例如需要混合语音文本和对应的混合语音对语音合成模型进行训练。但现有数据集中能用于作为语音合成语料的高质量混合数据十分稀少,价格昂贵,且数据量远远不够模型训练。如果使用相同的语料重复训练,所得到的模型效果较差,且无法全面覆盖所有音素。
34.相较于其他领域,混合数据的生成方法应用在混合语种教学场景(例如中英文混合教学场景)较少。对于多语种混合数据,大多寻求专门的语音录制团队在专业录音棚里由专业的录音师录制,并且请标注团队进行严格标注,同时需要反复人工校正。使用专业的录音棚以及录音师需要花费大量的成本,对于小规模团队来说是比较难承受的;并且后期还需要严格的标注以及反复人工校对,时间周期较长,对于技术发展的实时性有所限制。
35.因此,本公开至少一实施例提供一种多语种混合语料的生成方法、多语种混合语料的生成装置、声学模型的训练方法、声学模型的训练装置、电子设备以及非瞬时性存储介质。该多语种混合语料的生成方法包括:获取多个第一文本语料和多个第二文本语料,其中,多个第一文本语料由第一语种编写,多个第二文本语料由第二语种编写;对每个第一文
本语料进行掩码处理,得到每个第一文本语料对应的至少一个掩码文本,其中,每个掩码文本包括至少一个掩码标记;利用语言模型对多个第一文本语料对应的多个掩码文本进行处理,得到每个掩码文本中至少一个掩码标记分别对应的至少一个结果标签;从答案空间中确定每个结果标签对应的填充文本,将填充文本填充至结果标签对应的掩码标记的位置,以得到每个掩码文本对应的文本语料,其中,答案空间基于多个第二文本语料构建,填充文本的语种为第二语种。
36.针对低资源下的多语种混合语料场景,本公开至少一实施例提供的多语种混合语料的生成方法可用于在低资源语料的场景下,通过自动化合成的方式扩增混合语料,自动生成由第一语种和第二语种混合的文本语料,通过人工智能技术自动化合成缺少的多语种混合语料,为声学模型训练提供更加充分的训练语料,使得训练语料的数量达到训练所需的数量标准,提供一种能够在缺乏混合语料的场景下实现中英文混合语料合成的方式。
37.本公开至少一实施例提供的多语种混合语料的生成方法可应用于本公开实施例提供的多语种混合语料的生成装置,该多语种混合语料的生成装置可被配置于电子设备上。该电子设备可以是个人计算机、移动终端等,该移动终端可以是手机、平板电脑、笔记本电脑等硬件设备。
38.下面结合附图对本公开的实施例进行详细说明,但是本公开并不限于这些具体的实施例。
39.图1为本公开一实施例提供的一种多语种混合语料的生成方法的流程图。
40.如图1所示,本公开至少一实施例提供的多语种混合语料的生成方法包括步骤s10至步骤s40。
41.步骤s10:获取多个第一文本语料和多个第二文本语料。
42.例如,多个第一文本语料由第一语种编写,多个第二文本语料由第二语种编写。
43.例如,第一语种和第二语种不同,例如,第一语种是中文,第二语种为英文。当然,根据实际需要,第一语种还可以是法文、德文等,第二语种可以为日文、阿拉伯文等,本公开对此不作具体限制。在后文中以第一语种为中文,第二语种为英文进行示意性描述,但本公开不限于此。
44.例如,第一文本语料可以是纯中文文本语料,第二文本语料可以是纯英文文本语料,也就是说,第一文本语料只包含第一语种,第二文本语料只包含第二语种,其均不是混合语种语料。由于纯由第一语种编写的第一文本语料和纯由第二语种编写的第二文本语料获取方式容易,例如可以使用现有的大规模中文语料库和英文语料库,由此可以便捷地得到数量庞大的第一文本语料和第二文本语料。
45.例如,第一文本语料和第二文本语料可以具有对应关系,也可以不具有对应关系,这里对应关系是指将第一文本语料的内容由第一语种翻译至第二语种后所得到的第二文本语料与该第一文本语料对应。
46.步骤s20,对每个第一文本语料进行掩码处理,得到每个第一文本语料对应的至少一个掩码文本。
47.例如,每个掩码文本包括至少一个掩码标记。例如,掩码标记可以用“[mask]”表示,当然,掩码标记也可以使用其他可行的方式表示,本公开对此不作具体限制。
[0048]
例如,第一文本语料可以是“英国的首都是伦敦”,其对应一个或多个掩码文本,例
如掩码文本可以为“英国的首都是[mask]”,或者掩码文本还可以为“[mask]的首都是伦敦”等。
[0049]
例如,步骤s20可以包括:针对每个第一文本语料,对第一文本语料进行第一预处理,得到第一文本语料对应的至少一个韵律边界;确定至少一个韵律边界中的目标韵律边界,例如,目标韵律边界为指示韵律短语或语调短语的韵律边界;将位于目标韵律边界处的目标字符区域替换为掩码标记,例如,目标字符区域基于将答案空间中的目标填充文本转换至第一语种后的文本确定,目标字符区域包括第一文本语料中按文本顺序位于目标韵律边界之前或之后且与目标韵律边界相邻的区域。
[0050]
例如,对第一文本语料进行第一预处理,得到第一文本语料对应的至少一个韵律边界,可以包括:对第一文本语料进行文本预处理,例如,文本预处理至少包括分词和词性预测;根据分词和词性预测的结果,预测第一文本语料对应的至少一个韵律边界。
[0051]
对于第一文本语料,首先对对文本进行文本预处理,例如文本预处理可以包括文本正则化、分词、词性预测等,以能够预测第一文本语料对应的一个或多个韵律边界。根据语种不同,文本预处理的具体过程,也即文本正则化、分词、词性预测的具体过程会略有不同,本领域技术人员可以根据第一语种的具体情况进行相应的处理,以最终能够得到韵律边界。
[0052]
下面以第一语种为中文为例,介绍第一预处理的具体执行过程。
[0053]
首先,对第一文本语料进行正则化以去除或修正非标准词,例如去除或修正第一文本语料中的非文本内容,如html(hypertext markup language,简称html,超文本标记语言)标签、非中文字符、标点符号等;使用正则表达式去除停用词,例如停用词为去除后对理解整个句子的语义没有影响,如虚词、代词或者没有特定含义的动词、名词等;将阿拉伯数字转换为对应的中文大写,例如“1”转换为“一”等。当然,根据实际需要,还可以进行更多或其他的文本处理,以去除文本中的其他干扰。
[0054]
之后,对修正后的第一文本语料进行分词,将连续的字序列按照一定的规范重新组合成语义独立词序列。不同于英文的行文中,单词之间是以空格作为自然分界符的,中文只是字、句和段能通过明显的分界符来简单划界,词没有一个形式上的分界符,中文分词通常采用分词算法实现。本公开对分词的具体执行过程不作限制,可以采用任意可行的分词算法对第一文本语料进行分词,得到分词序列。
[0055]
之后,对分词序列进行词性预测,例如使用lstm(长短期记忆,long short-term memory)网络进行词性预测,识别每个独立语义词是名词、动词、形容词还是数词等,以保留表征实际意义的名词、动词、形容词以及数词等实词,同时滤掉对检索不具实际影响的介词、代词、连词与冠词等。
[0056]
之后,将分词及词性预测结果输入韵律模型,预测文本的韵律边界。韵律是(韵律)词和(韵律)短语的边界,常见的韵律边界可以为四级韵律边界,例如可以表示为#1(一级),#2(二级),#3(三级),#4(四级),各自代表的意义:#1:词边界,指示韵律词(也即分词结果);#2:短语边界,指示韵律短语(介于#1和#3之间);#3:短句边界,指示语调短语(表示有听感停顿);#4:长句边界(长停顿,一般在句尾)。
[0057]
例如,韵律模型可以采用bi-lstm(双向长短时记忆网络)+crf(条件随机场)模型的结构,韵律模型的输入为分词序列,预测每一个分词边界(也即韵律边界)为各级韵律的
概率,选择其中的最大概率所对应的韵律级别作为该韵律边界的韵律级别。例如,韵律模型也可以采用其他能够预测韵律边界的模型结构,本公开对此不作具体限制。
[0058]
在得到第一文本语料对应的一个或多个韵律边界后,从中确定目标韵律边界,目标韵律边界为指示韵律短语或语调短语的韵律边界,例如,若韵律边界为四级韵律边界,则目标韵律边界为级别是#2或#3的韵律边界。
[0059]
之后,将位于目标韵律边界处的目标字符区域替换为掩码标记。需要说明的是,若第一文本语料中存在多个目标韵律边界,则可以选择其中任意一个或任意多个目标韵律边界处的目标字符区域替换为掩码标记,由此得到多个掩码文本,以进一步扩充多语种混合语料。
[0060]
例如,答案空间中包括多个答案标签,多个答案标签与多个填充文本一一对应,多个填充文本是对多个第二文本语料进行解析得到。填充文本的语种为第二语种,其形式可以是单词、短语等,关于答案空间的构建方式可以参考后文所述的内容。
[0061]
例如,针对第一文本语料中的一个目标韵律边界,若文本顺序为从左至右,则将位于目标韵律边界右侧的一个或多个汉字或单词作为目标字符区域,目标字符区域根据目标填充文本转换至所述第一语种后的文本确定;或者,也可以将位于目标韵律边界左侧的一个或多个汉字或单词作为目标字符区域,目标字符区域根据目标填充文本转换至所述第一语种后的文本确定。例如,若目标韵律边界处没有对应目标填充文本转换至所述第一语种后的文本,则可以不进行掩码标记的替换。
[0062]
由于在多语种混合文本语料中需要用答案空间中的填充文本替换第一文本语料中的对应文本,因此在确定目标字符区域时,也是依据填充文本翻译至第一语种后的文本来确定,由此所得到的多语种混合文本语料是符合自然语义的。
[0063]
例如,在一个示例中,第一文本语料为“中国的首都是北京”,目标韵律边界为“是”和“北”中间,若答案空间中有目标填充文本“beijing”,其对应的中文为“北京”,则将“北京”作为目标字符区域并替换为掩码标记,所得到的掩码文本为“中国的首都是[mask]”。
[0064]
例如,在另一个示例中,第一文本语料为“英国的首都是伦敦”,目标韵律边界为“国”和“的”中间,若答案空间中有目标填充文本“england”,其对应的中文为“英国”,则将“英国”作为目标字符区域并替换为掩码标记,所得到的掩码文本为“[mask]的首都是伦敦”。
[0065]
例如,在另一个示例中,第一文本语料为“英国的首都是伦敦”,目标韵律边界为“是”和“伦”中间,以及“都”和“是”之间,若答案空间中有目标填充文本“london”和“capital”,其对应的中文为“伦敦”和“首都”,则将“伦敦”和“首都”作为目标字符区域并替换为掩码标记,所得到的掩码文本为“英国的[mask]是[mask]”。
[0066]
步骤s30,利用语言模型对多个第一文本语料对应的多个掩码文本进行处理,得到每个掩码文本中至少一个掩码标记分别对应的至少一个结果标签。
[0067]
步骤s40,从答案空间中确定每个结果标签对应的填充文本,将填充文本填充至结果标签对应的掩码标记的位置,以得到每个掩码文本对应的文本语料。
[0068]
例如,答案空间基于多个第二文本语料构建,填充文本的语种为第二语种。
[0069]
例如,本公开至少一实施例提供的多语种语料的生成方法还包括:基于多个第二文本语料构建答案空间。例如,基于多个第二文本语料构建答案空间,可以包括:对每个第
二文本语料进行第二预处理,以得到第二文本语料对应的多个填充文本,例如,第二预处理包括分词处理和断句处理;依据多个第二文本语料分别对应的多个填充文本,构建答案空间。
[0070]
例如,分词处理能够将第二文本语料划分成独立语义词序列,例如,在第二语种为英文时,可以以单词之间的空格为界将第二文本语料划分成多个分词。例如,断句处理能够将第二文本语料划分成一个或多个具有独立语义的短语或短句。本公开对分词处理和断句处理的具体过程不作限制。
[0071]
例如,在得到大量的第二文本语料,例如纯英文文本语料后,对第二文本语料进行分词和断句,以将第二文本语料拆分成大量的单词形式、短语形式和短句形式,将这些英文形式的单词、短语、短句作为填充文本,并为每个填充文本设置唯一对应的答案标签,例如答案标签可以为阿拉伯数字形式等,本公开对答案标签的形式不作限制,由此,构成包含大量答案标签及其对应的填充文本的答案空间。
[0072]
例如,在一些实施例中,可以定义一个映射函数z:l(答案标签集合)
‑‑
》v(填充文本集合),表示在答案标签集合中的每一个答案标签都可以通过映射函数v映射到填充文本集合中的一个对应的填充文本,也即一个对应的单词、短语或短句。
[0073]
经过步骤s20,得到每个第一文本语料对应的一个或多个掩码文本,之后,在步骤s30将这些掩码文本输入训练好的语言模型,以得到每个掩码文本中的掩码标记所对应的结果标签;之后,在步骤s40,将掩码标记替换为结果标签对应的填充文本,由此得到由第一语种和第二语言混合的文本语料。
[0074]
例如,每个掩码文本可以看作是一个缺少部分信息,需要完形填空的句子,将其输入语言模型,确定最有可能替换掩码标记的结果标签,结果标签是属于答案标签集合中的。
[0075]
例如,步骤s30可以包括:针对每个掩码文本,利用语言模型对掩码文本进行处理,得到掩码文本中每个掩码标记对应的多个概率值,多个概率值与答案空间包括的多个答案标签一一对应;从多个概率值中选择最大概率值,将最大概率值对应的答案标签作为掩码标记对应的结果标签。
[0076]
例如,语言模型的输出层包括全连接层和激活函数层,将掩码文本输入语言模型后,掩码文本中的每个掩码标记都能得到长度为t的一维向量,也即t个概率值,t也是答案空间中包括的所有答案标签的总数,t为正整数。t个概率值中的最大概率值对应最有可能替代掩码标记的标签。例如,一维向量中的t个元素与答案空间中的t个答案标签一一对应,将一维向量中的最大元素值对应的答案标签作为该掩码标记对应的结果标签。
[0077]
例如,步骤s40可以包括:针对每个掩码文本,确定掩码文本中的每个掩码标记对应的结果标签在答案空间中所对应的填充文本;将掩码文本中的所有掩码标记替换为对应的填充文本,以得到掩码文本对应的文本语料。
[0078]
针对掩码文本中的一个掩码标记1,通过步骤s30可以得到该掩码标记1对应的结果标签1。按照映射函数z,能够确定结果标签1在答案空间中所对应的填充文本1;之后,将掩码文本中的该掩码标记1替换为该填充文本1。类似的,针对掩码文本中的其他掩码标记也进行上述处理,由此,将掩码文本中的所有掩码标记替换为对应的填充文本,得到掩码文本对应的文本语料。
[0079]
例如,在得到文本语料后,可以在文本语料末尾插入结束标志,例如插入《eos》用
于指示文本结束。
[0080]
例如,该文本语料为由第一语种和第二语种混合的多语种混合语料。
[0081]
下面以如前所述的步骤s20得到的掩码文本为“英国的首都是[mask]”为例,具体说明该掩码文本对应的文本语料的生成过程。
[0082]
例如,将该掩码文本输入语言模型,语言模型输出长度为t的一维向量,该一维向量包括的t个元素即为对应t个答案标签的概率值。从t个概率值中选择最大概率值作为结果标签,例如,确定结果标签为label1。
[0083]
之后,按照映射函数z确定label1对应的填充文本,例如为“london”。
[0084]
之后,将掩码文本中的掩码标记[mask]替换为填充文本“london”,由此得到该掩码文本对应的文本语料“英国的首都是london”。
[0085]
之后,在文本语料末尾添加结束标记,所得到的最终的文本语料为“英国的首都是london《eos》”。
[0086]
借用自然语言处理技术中的prompt(提示)范式思想,在生成多语种混合文本语料时考虑整体文本是否符合自然语义,将该问题转变为文本填空问题,在预训练过的语言模型上对当前应用场景所需要的文本进行训练,再通过该语言模型生成符合当前应用场景的文本语料。
[0087]
在本公开至少一实施例提供的多语种混合语料的生成方法中,预先通过第二文本语料构建答案空间,通过第一语种的第一文本语料构建多个带有掩码标记的掩码文本,利用语言模型预测掩码标记处的填充文本,填充文本来自答案空间且为第二语种,由此自动生成符合自然语义的多语种混合的文本语料,大幅降低获取多语种混合的文本语料的成本,降低生成混合语料的周期。
[0088]
在实践中,由于数据集不够大,很少有人从头开始训练网络。常见的做法是使用大量数据集训练得到预训练的网络,之后使用预训练的网络来重新fine-tuning(也叫微调),或者当作特征提取器,该预训练的网络是共享的。例如,一种fine-tuning(微调)方式是在由大型训练集上训练得到的预训练过的语言模型上,根据下游任务引入额外参数,使用特定任务的目标函数对模型进行微调,以让模型适应不同的下游任务。
[0089]
本公开至少一实施例提供的多语种语料的生成方法中采用基于提示学习的微调训练,以弥补缺少大型有标签数据集的不足。
[0090]
例如,语言模型通过对预训练过的语言模型进行基于提示学习的微调训练得到。
[0091]
例如,预训练过的语言模型可以采用bert(bidirectional encoder representation from transformer,transformer模型中的双向编码器表示)模型,如bert-base或bert-large,该模型可以采用语料库中的大量语料进行预训练,以能够根据前文,预测下一个即将出现的分词。例如,bert的预训练语料库可以使用toronto bookcorpus(大型书籍文本数据集)和维基百科数据集。
[0092]
需要说明的是,预训练过的语言模型也可以采用其他能够根据前文,预测下一个即将出现的分词的语言模型,本公开对此不作限制。
[0093]
在本公开至少一实施例中,可以直接采用该预训练过的语言模型得到结果标签,或者,也可以对该预训练过的语言模型进行基于提示学习的微调训练,以更好的让模型适应下游任务,能够对多语种混合语料进行准确的预测和识别。
[0094]
例如,基于提示学习的微调训练可以包括:构建至少一个训练模板及至少一个训练模板对应的标签,其中,每个训练模板包括掩码标记和语种为第一语种的文本内容,训练模板对应的标签用于指示在掩码标记处填充的、且属于答案空间的填充文本;根据至少一个训练模板和至少一个训练模板对应的标签,对预训练过的语言模型进行训练,得到语言模型。
[0095]
例如,训练模板可以为:[mask]是检查的意思。该训练模板包括掩码标记[mask]和语种为第一语种的文本内容“是检查的意思”,该训练模板对应的标签用于指示在[mask]出填充的填充文本“check”。
[0096]
例如,训练模板还可以为:今天的[mask]做的很好。该训练模板包括掩码标记[mask]和语种为第一语种的文本内容“今天的”以及“做的很好”,该训练模板对应的标签用于指示在[mask]出填充的填充文本“jordan”。
[0097]
需要说明的是,本公开不限于此,训练模板及其对应的标签可以根据需要设置。
[0098]
例如,构建一定数量的训练模板对预训练过的语言模型进行微调,得到训练好的语言模型,该语言模型能够更好地对多语种混合文本进行识别和文本预测,提高识别、预测的准确率,以少量的训练样本实现较好的多语种混合文本的识别效果。
[0099]
例如,在得到多语种混合的文本语料后,本公开至少一实施例提供的多语种混合语料的生成方法还可以生成该文本语料对应的混合语音,以能够将文本语料和混合语音作为平行语料加入声学模型的训练集和验证集中,对声学模型进行训练和验证。
[0100]
图2为本公开至少一实施例提供的多语种混合语料的生成方法的示意性流程图。
[0101]
如图2所示,本公开至少一实施例提供的多语种混合语料的生成方法还包括步骤s50和步骤s60。
[0102]
在步骤s50,获取多个第一文本语料分别对应的多个第一语音和多个第二文本语料分别对应的多个第二语音。
[0103]
例如,多个第一语音和多个第二语音具有相同的声音特性。例如,声音特性包括音调、响度、频率、音色。
[0104]
例如,可以录制同一个录音人员朗读多个第一文本语料和多个第二文本语料,以得到多个第一语音和多个第二语音。
[0105]
或者,也可以录制不同的录音人员朗读第一文本语料和第二文本语料,得到第一中间语音和第二中间语音,之后再对第一中间语音和第二中间语音进行变声处理,将其处理为具有相同的声音特性,由此得到多个第一语音和多个第二语音。
[0106]
在步骤s60,根据多个第一语音、多个第二语音以及多个掩码文本分别对应的多个文本语料,得到多个文本语料分别对应的多个混合语音。
[0107]
例如,步骤s60可以包括:针对每个文本语料,确定文本语料对应的目标第一文本语料,其中,文本语料由对目标第一文本语料进行处理得到;获取目标第一文本语料对应的第一语音;根据多个第二语音,获取文本语料中的填充文本对应的语音数据;根据目标第一文本语料对应的第一语音、语音数据、文本语料,得到文本语料对应的混合语音。
[0108]
例如,根据目标第一文本语料对应的第一语音、语音数据、文本语料,得到文本语料对应的混合语音,可以包括:确定文本语料中除填充文本以外的其他文本;从第一语音中确定其他文本对应的语音片段;将语音片段和语音数据,按照文本语料中的填充文本和其
他文本的位置关系进行拼接,得到中间音频;对中间音频进行能量均衡处理,得到文本语料对应的混合语音。
[0109]
具体来说,对于某一个文本语料,先确定其对应的目标第一文本语料,例如,对目标第一文本语料进行前述步骤s20-s40的处理得到该文本语料,例如,对于文本语料“英国的首都是london”,其对应的目标第一文本语料为“英国的首都是伦敦”。
[0110]
之后,确定该目标第一文本语料对应的第一语音。
[0111]
之后,获取文本语料中的填充文本对应的语音数据。例如,可以预先将多个第二语音(例如所有第二语音)根据填充文本进行切分,得到多个语音数据,多个语音数据和多个填充文本一一对应,例如,确定文本语料中的填充文本后,获取该填充文本对应的语音数据,例如,该语音数据为由第二语种录制的针对该填充文本的语音片段。
[0112]
之后,从第一语音中确定其他文本对应的语音片段,也即是确定除填充文本以外的属于第一语种的文本所对应的语音片段。例如,在进行文本拼接时,记录掩码标记的位置标记,按照位置标记把第一语音切分成片段,去除掩码标记所对应的第一语种的语音,由此得到其他文本对应的语音片段。当然,还可以采用其他任意可行的方式进行音频分割,以从第一语音中提取其他文本对应的部分,本公开对此不作具体限制。
[0113]
之后,按照文本语料中的填充文本和其他文本的位置关系,将填充文本对应的语音数据和其他文本对应的语音片段进行拼接,得到中间音频。
[0114]
例如,在一个具体示例中,文本语料为“英国的首都是london”,获取填充文本“london”对应的语音数据,获取目标第一文本语料对应的第一语音,例如,第一语音为由第一语种录制的“英国的首都是伦敦”;从第一语音中获取其他文本“英国的首都是”对应的语音片段,将该语音片段与语音数据按照其他文本和填充文本的位置关系进行拼接,由此得到内容为“英国的首都是london”的中间音频。
[0115]
拼接得到的中间音频可能存在响度不一致以及语种转换时的卡顿感,因此可以对中间音频进行能量均衡处理,以归一化音频能量,使得整体音频听起来连贯自然。
[0116]
例如,对中间音频进行能量均衡处理,得到文本语料对应的混合语音,可以包括:对中间音频进行音量均衡处理和拼接点平滑处理,得到混合语音。
[0117]
例如,音量均衡处理可以包括:提取中间音频的能量,对能量进行归一化。
[0118]
例如,由于第一语音和第二语音的音量大小可能会存在差异,直接采用原始音量进行拼接的音频听感欠佳,需要对拼接后的音频进行音量均衡,使其达到人耳听见的音量相差不多的效果。
[0119]
例如,在一种示例中,可以提取整段中间音频的能量大小,对整段中间音频做能量归一化,使其平稳在一个相差不大的范围内。
[0120]
具体来说,首先读取中间音频,为防止异常值影响,选取音频能量的上八分位数和下八分位数为当前音频能量的最值,也就是选取原音频能量范围内的除最上方(最大值)八分之一范围和最下方(最小值)八分之一范围以外的部分,将音频能量进行归一化,并返回调整后的音频采样点,得到音量均衡后的音频文件。
[0121]
例如,归一化公式为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(公式1)
这里,x’表示调整后的音频采样点的能量,x表示中间音频中对应采样点的能量,表示音频能量的下八分位数,表示音频能量的上八分位数。
[0122]
例如,拼接点平滑处理可以包括:对音量均衡音频进行时频转换,得到音量均衡音频对应的梅尔谱图,其中,音量均衡音频通过对中间音频进行音量均衡处理得到;检测梅尔谱图中的间断点,其中,间断点指示梅尔谱图中能量变化大于预设阈值的位置;对包括间断点的预设范围内的音频采样点进行滑动平均处理。
[0123]
例如,对经过量均衡后的音频文件中的音频拼接点(也即间断点)进行平滑操作。
[0124]
例如,首先读取经过音量均衡后的音频文件,获得音频采样点,对音频采样点进行傅里叶变换,将其从时域变换到频域,并绘制其频谱图,转换为梅尔谱图。
[0125]
之后,若梅尔谱图中拼接处出现明显间断痕迹,将其作为间断点,对包括间断点的预设范围内的音频采样点进行滑动平均处理,例如对间断点附近且频率在预设范围内的音频采样点进行滑动平均处理。例如,由于通常频率在1.5khz以下的音频数据是有用音频数据,可以选择间断点附近的频率在1.5khz以下的音频采样点进行滑动平均,以降低处理数据量,提升处理效率。
[0126]
例如,间断点可以人为观测,也可以通过检测梅尔谱图中的能量变化确定。
[0127]
例如,滑动平均可以以预设滑动窗口进行滑动平均,例如滑动窗口的长度为25ms,步长为5ms,以过渡间断点处产生的不自然的停顿。
[0128]
例如,一种示意性的平滑操作可以包括:检测到间断点后,读取间断点左右两端的语音片段,若语种为中文,读取间断点附近的单个字,如果语种为英文,读取间断点附近的单个单词;之后,以间断点为界切分音频,将位于间断点前的音频片段中靠近间断点的10%范围内的、且远离间断点的一个音频采样点作为起点,该音频采样点的频率需小于1.5khz;将位于间断点后的音频片段中靠近间断点的10%范围内的、且远离间断点的一个音频采样点作为终点,该音频采样点的频率也需小于1.5khz。
[0129]
之后,对起点至终点范围内的音频采样点以25ms为窗长,5ms为步长进行滑动平均,过渡拼接点处产生的不自然的停顿。
[0130]
图3为本公开一实施例提供的能量均衡处理的对比示意图。
[0131]
例如,图3为经过能量均衡处理前后的梅尔谱图的示意图。横坐标表示时间,纵坐标表示音频采样点的频率;离散坐标点(时间、频率)的颜色表示该点的能量,也即振幅的实值,例如,亮度越低,颜色越深表示能量越低,亮度越高,颜色越浅表示能量越高。
[0132]
如图3所示,在进行能量均衡处理前的中间音频中,能量分布不均匀,且中间音频中存在明显的间断点,如图3选中的方框所示。
[0133]
例如,对中间音频进行音量均衡处理,并对音量均衡处理后的、且位于图3所示方框中的音频采样点进行平滑处理,方框中的音频采样点的频率在1.5khz以下。
[0134]
如图3所示,经过如上所述的音量均衡处理和拼接点平滑处理后,在能量均衡处理后的混合语音的梅尔谱图中,间断点处得到了平滑,且能量分布均衡。
[0135]
因此,在本公开至少一实施例提供的多语种混合语料的生成方法中,在得到中间音频后,先对中间音频的能量进行归一化处理,使其响度保持一致;然后对中间音频中的拼
接点附近的音频进行平滑处理,使整体音频听起来连贯自然,不会出现语种转换时的卡顿感。
[0136]
例如,在一些场景中,例如多语种混合语料缺乏的低资源场景下,本公开至少一实施例提供的多语种混合语料的生成方法还可以生成多语种混合文本语料对应的混合语音,从而可以自动生成大量的文本语料和对应的混合语音作为训练集和验证集用于声学模型的训练,大幅降低获取多语种混合语料的成本,降低生成混合语料的周期,提升模型训练的时效性;并且,由于能够提供足够数量的平行语料用于模型训练,所得到的模型效果较好,能够全面覆盖所有音素。
[0137]
本公开至少一实施例还提供一种声学模型的训练方法。图4为本公开一实施例提供的一种声学模型的训练方法的流程图。
[0138]
如图4所示,本公开至少一实施例提供的训练方法包括步骤s70至步骤s80。
[0139]
步骤s70,生成训练文本语料和训练文本语料对应的训练语音。
[0140]
例如,可以根据本公开至少一实施例提供的多语种混合语料的生成方法生成训练文本语料和训练文本语料对应的训练语音,具体生成方式可以参考前述步骤s10-步骤s60,这里不再赘述。
[0141]
例如,训练文本语料为前述多个文本语料中的任意一个文本语料,例如,利用本公开至少一实施例提供的多语种混合语料的生成方法生成大量文本语料和对应的混合语音,将这些文本语料和对应的混合语音作为平行语料,组成训练数据集对声学模型进行训练。此外,还可以选择其中部分或生成一些新的文本语料和对应的混合语音作为平行语料,组成验证数据集对训练好的声学模型进行验证,以确认声学模型的准确率和精度。
[0142]
步骤s80,根据训练文本语料和训练语音对声学模型进行训练。
[0143]
图5为本公开至少一实施例提供的声学模型的示意性结构图。
[0144]
如图5所示,声学模型100包括声谱预测网络101和声码器102。
[0145]
声谱预测网络101用于将输入的训练文本语料预测为梅尔频谱的帧序列,声谱预测网络101是一个引入注意力机制(attention)的基于循环的seq2seq(sequence to sequence,序列到序列)的特征预测网络,用于从输入的字符序列预测梅尔频谱的帧序列。
[0146]
声码器(vocoder)102用于将梅尔频谱的帧序列转换为语音信号。例如声码器102可以采用wavenet的修订版,用预测的梅尔频谱的帧序列来生成时域波形样本,wavenet模型为一种序列生成模型,用于语音生成建模,获得如波浪一样的语音信号。
[0147]
例如,声学模型可以采用tacotron2框架(语音合成框架),该框架为一种端到端的tts(text to speech,语音合成技术)深度神经网络模型。关于声学模型的具体结构及实现可以参考tacotron2框架的相关内容,这里不再赘述。当然,本公开不限于此,也可以采用其他可行的声学模型,本公开对此不作具体限制。
[0148]
但是,目前声学模型通常是接收文本语料,根据文本语料的语言学特征生成声学特征,得到文本语料对应的合成语音信号。常用的声学模型主要是针对单语种语音合成,对于多语种语音合成的建模效果较差。因此,在本公开至少一实施例提供的声学模型的训练方法中,对声学模型进行了适应性改进,以能够对多语种场景进行建模,使得模型更加稳定,且适用性强,能够合成高质量的多语种混合语音。
[0149]
例如,在一些实施例中,声谱预测网络101包括编码器模块,编码器模块包括第一
编码器、第二编码器和掩码处理单元,第一编码器和第二编码器具有相同的结构。
[0150]
例如,第一编码器配置为对训练文本语料进行处理得到第一语言学特征。
[0151]
例如,第二编码器配置为对训练文本语料进行处理得到第二语言学特征。
[0152]
例如,掩码处理单元配置为根据训练文本语料中属于第一语种的第一训练文本和属于第二语种的第二训练文本,提取第一语言学特征中与第一训练文本对应的第一特征部分,提取第二语言学特征中与第二训练文本对应的第二特征部分,将第一特征部分和第二特征部分按照第一训练文本和第二训练文本的位置关系进行拼接,得到训练文本语料对应的隐层表征特征。
[0153]
图6为本公开至少一实施例提供的编码器模块的示意性结构图。
[0154]
如图6所示,编码器模块包括第一编码器、第二编码器和掩码处理单元。
[0155]
第一编码器和第二编码器具有相同的结构,其均包括字符嵌入层(character embedding)、卷积层(例如3层)和双向长短时记忆网络(bi-lstm)。
[0156]
例如,第一编码器和第二编码器均接收训练文本语料,分别输出第一语言学特征和第二语言学特征,例如,第一语言学特征和第二语言学特征为编码向量形式,与输入的字符序列或音素序列相对应,例如每个字符或每个音素对应一个编码向量。
[0157]
掩码处理单元根据训练文本语料中第一训练文本和第二训练文本之间的位置关系,选择第一语言学特征和第二语言学特征中的对应部分,例如,提取第一语言学特征中与第一训练文本对应的第一特征部分,其余部分利用掩码处理去除,提取第二语言学特征中与第二训练文本对应的第二特征部分,其余部分利用掩码处理去除。
[0158]
由于第一特征部分和第二特征部分的向量维度相同,可以直接进行拼接,因此可以将第一特征部分和第二特征部分进行拼接,得到拼接好的编码向量作为编码器模块输出的隐层表征特征。
[0159]
由此,使得第一编码器专注于第一语种的语言学特征,使得第二编码器专注于第二语种的语言学特征,使得模型能够针对多语种场景下针对性地对不同语种提取各自特殊的语言学特征,使得模型对于多语种场景更加稳定,实用性强,合成的多语种语音质量更高,准确率更高。
[0160]
例如,声谱预测网络还包括注意力网络和解码器模块。
[0161]
例如,注意力网络配置为结合多头自注意力机制对隐层表征特征进行处理,得到注意力权重矩阵。
[0162]
例如,解码器模块配置为基于注意力权重矩阵,预测梅尔频谱的帧序列,以及利用多层感知器预测停止符,其中,停止符用于指示预测结束。
[0163]
图7为本公开至少一实施例提供的声学模型的示意性结构图。
[0164]
如图7所示,声学模型包括声谱预测网络101和声码器102,声谱预测网络101包括解码器模块、注意力网络和编码器模块,关于编码器模块、声码器102的具体介绍可以参考前述内容,这里不再赘述。
[0165]
例如,在本公开至少一实施例提供的声学模型中,注意力网络采用多头自注意力机制(multi-head location-sensitive attention),每个头都可以学习到不同表示空间的特征,从而可以学习到更多有用信息,多头自注意力机制将多个子注意力结果拼接起来,类似于卷积中的多卷积核对一张图片提取特征的过程,能够有效获取序列中的信息,从而
使解码器预测音频时,字与字间的衔接以及整个句子的韵律变化更接近真实人声,尤其适用于中文的复杂韵律变化。
[0166]
如图7所示,解码器模块是一个自回归循环神经网络,解码器模块根据编码器模块输出的隐层表征特征预测梅尔频谱,一次预测一帧,由此得到梅尔频谱的帧序列。
[0167]
解码器模块包括多层堆叠的lstm(long short-term memory,长短期记忆网络)层,前处理网络、后处理网络、线性映射层、多层感知器。
[0168]
例如,前处理网络可以为双层全连接层结构,用于作为信息瓶颈层(boottleneck),减少特征通道数,减少模型参数,减少计算量,降低过拟合的风险。
[0169]
例如,前处理网络的输出和注意力权重矩阵拼接在一起,传输给lstm层,lstm层的输出再次和注意力权重矩阵拼接在一起,然后经过一个线性映射来预测目标频谱帧。
[0170]
目前的声学模型在预测停止符时采用线性映射来预测停止符,但会出现合成语言突然停止的现象,尤其在中文合成过程中,语音常常遇到戛然而止的现象,影响语音流畅性,这种停顿感主要是由于停止符预测的正负样本不平衡造成的。不同于tacotron 2统一用线性变换预测梅尔频谱和停止符,本公开至少一实施例提供的声学模型中分别使用线性映射(linear projection)预测梅尔频谱,用多层感知机(multi-layer perceptron,mlp)预测停止符,并且使用后处理网络优化重建梅尔频谱,并将重建的梅尔频谱和之前通过线性映射生成的梅尔频谱拼接,得到最终的梅尔频谱,送入到声码器中用于合成语音信号。由此,实现合成语音的流畅性,减少或避免出现戛然而止的现象。
[0171]
本公开至少一实施例还提供一种声学模型的训练方法,该训练方法利用大量的混合语料进行训练,生成音质较好的合成语音,并改进声学模型使其适应多语种建模方式,训练得到的声学模型能够合成高质量的多语种语音信号。
[0172]
例如,训练文本语料通过音素转换被转换为音素序列输入至第一编码器或第二编码器。例如,响应于第一语种或第二语种为中文,音素转换包括多音字转换,多音字转换包括:响应于检测到训练文本语料中存在多音字,判断预设多音字库中是否存在多音字,响应于预设多音字库中存在多音字,返回多音字对应的读音,响应于预设多音字库中不存在多音字,利用多个多音字预测模块进行预测,根据多个多音字预测模块的预测结果得到多音字的读音。
[0173]
例如,预先维护一个预设多音词库,将常用多音字及其正确读音保存至该预设多音词库。响应于检测到训练文本语料中存在多音字,先判断该多音字是否在该预设多音词库中,若在则直接返回对应的正确读音,若不在则采用模型预测的方式转换。例如,模型预测的方式可以包括将该文本语料依次输入多个多音字预测模块,得到多个多音字预测模块输出的多音字的预测结果,若多个多音字预测模块输出的预测结果相同,则将该结果作为多音字的读音返回;若多个多音字预测模块输出的预测结果部分相同,则将以投票方式选择其中票数最高的预测结果作为多音字的读音返回。
[0174]
例如,多个多音字预测模块可以包括pypinyin(拼音库,汉字拼音转换工具)、g2pm模型(多音字预测模型)或自行搭建的多音字预测模块,例如,多个多音字预测模块的数量为3,分别是pypinyin、g2pm或自行搭建的多音字预测模块,本公开对此不作具体限制。
[0175]
当然,该多音字的判断方法也可应用于前述文本预处理中的分词过程,也就是说,对于中文文本语料,在需要将文本语料转换音素为建模单位时,中文以声韵母拼音为建模
单元,中文会涉及到多音字转换,多音字转换过程均可采用上述处理方式,本公开对使用场景不作具体限制。
[0176]
本公开至少一实施例还提供一种多语种混合语料的生成装置,图8为本公开至少一实施例提供的一种多语种混合语料的生成装置的示意性框图。
[0177]
如图8所示多语种混合语料的生成装置800可以包括获取单元801、第一处理单元802、第二处理单元803、生成单元804。这些组件通过总线系统和/或其它形式的连接机构(未示出)互连。应当注意,图8所示的多语种混合语料的生成装置800的组件和结构只是示例性的,而非限制性的,根据需要,多语种混合语料的生成装置800也可以具有其他组件和结构。
[0178]
例如,这些模块可以通过硬件(例如电路)模块、软件模块或二者的任意组合等实现,以下实施例与此相同,不再赘述。例如,可以通过中央处理单元(cpu)、图像处理器(gpu)、张量处理器(tpu)、现场可编程逻辑门阵列(fpga)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元以及相应计算机指令来实现这些单元。
[0179]
例如,获取单元801配置为获取多个第一文本语料和多个第二文本语料,其中,多个第一文本语料由第一语种编写,多个第二文本语料由第二语种编写。
[0180]
例如,获取单元801可以包括存储器,存储器存储有多个第一文本语料和多个第二文本语料。例如,获取单元801可以为硬件、软件、固件以及它们的任意可行的组合。
[0181]
例如,第一处理单元802配置为对每个第一文本语料进行掩码处理,得到每个第一文本语料对应的至少一个掩码文本,其中,每个掩码文本包括至少一个掩码标记。
[0182]
例如,第二处理单元803配置为利用语言模型对多个第一文本语料对应的多个掩码文本进行处理,得到每个掩码文本中至少一个掩码标记分别对应的至少一个结果标签。
[0183]
例如,生成单元804配置为从答案空间中确定每个结果标签对应的填充文本,将填充文本填充至结果标签对应的掩码标记的位置,以得到每个掩码文本对应的文本语料,其中,答案空间基于多个第二文本语料构建,填充文本的语种为第二语种。
[0184]
例如,获取单元801、第一处理单元802、第二处理单元803、生成单元804可以包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的获取单元801、第一处理单元802、第二处理单元803、生成单元804的一些功能或全部功能。例如,获取单元801、第一处理单元802、第二处理单元803、生成单元804可以是专用硬件器件,用来实现如上所述的获取单元801、第一处理单元802、第二处理单元803、生成单元804的一些或全部功能。例如,获取单元801、第一处理单元802、第二处理单元803、生成单元804可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本技术实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。
[0185]
需要说明的是,获取单元801可以用于实现图1所示的步骤s10,第一处理单元802可以用于实现图1所示的步骤s20,第二处理单元803可以用于实现图1所示的步骤s30,生成单元804可以用于实现图1所示的步骤s40。从而关于获取单元801、第一处理单元802、第二处理单元803、生成单元804能够实现的功能的具体说明可以参考上述多语种混合语料的生成方法的实施例中的步骤s10至步骤s40的相关描述,重复之处不再赘述。此外,多语种混合语料的生成装置800可以实现与前述多语种混合语料的生成方法相似的技术效果,在此不
再赘述。
[0186]
需要注意的是,在本公开的实施例中,该多语种混合语料的生成装置800可以包括更多或更少的电路或单元,并且各个电路或单元之间的连接关系不受限制,可以根据实际需求而定。各个电路或单元的具体构成方式不受限制,可以根据电路原理由模拟器件构成,也可以由数字芯片构成,或者以其他适用的方式构成。
[0187]
本公开至少一实施例还提供一种声学模型的训练装置,图9为本公开至少一实施例提供的一种训练装置的示意性框图。
[0188]
如图9示,训练装置900可以包括训练数据获取单元901、训练单元902。这些组件通过总线系统和/或其它形式的连接机构(未示出)互连。应当注意,图9所示的训练装置900的组件和结构只是示例性的,而非限制性的,根据需要,训练装置900也可以具有其他组件和结构。
[0189]
例如,训练数据获取单元901,配置为利用本公开至少一实施例所述的多语种混合语料的生成方法生成训练文本语料和训练文本语料对应的训练语音。例如,训练文本语料为多个文本语料中的任意一个文本语料。关于多语种混合语料的生成方法可以参考前述内容,重复之处不再赘述。
[0190]
例如,训练单元902配置为根据训练文本语料和训练语音对声学模型进行训练。
[0191]
例如,训练单元902包括声学模型903、损失函数(未示出),训练单元902用于对待训练的声学模型903进行训练,以得到训练好的声学模型903。
[0192]
声学模型903包括声谱预测网络和声码器,声谱预测网络用于将输入的训练文本语料预测为梅尔频谱的帧序列,声码器用于将梅尔频谱的帧序列转换为语音信号。
[0193]
需要说明的是,训练单元902中的声学模型903与上述声学模型的训练方法的实施例中的声学模型100的结构和功能相同,在此不再赘述。
[0194]
例如,训练数据获取单元901、训练单元902可以包括存储在存储器中的代码和程序;处理器可以执行该代码和程序以实现如上所述的训练数据获取单元901、训练单元902的一些功能或全部功能。例如,训练数据获取单元901、训练单元902可以是专用硬件器件,用来实现如上所述的训练数据获取单元901、训练单元902的一些或全部功能。例如,训练数据获取单元901、训练单元902可以是一个电路板或多个电路板的组合,用于实现如上所述的功能。在本技术实施例中,该一个电路板或多个电路板的组合可以包括:(1)一个或多个处理器;(2)与处理器相连接的一个或多个非暂时的存储器;以及(3)处理器可执行的存储在存储器中的固件。
[0195]
需要说明的是,训练数据获取单元901可以用于实现图4所示的步骤s70,训练单元902可以用于实现图4所示的步骤s80。从而关于训练数据获取单元901和训练单元902能够实现的功能的具体说明可以参考上述声学模型的训练方法的实施例中的步骤s70至步骤s80的相关描述,重复之处不再赘述。此外,训练装置900可以实现与前述声学模型的训练方法相似的技术效果,在此不再赘述。
[0196]
需要注意的是,在本公开的实施例中,该训练装置900可以包括更多或更少的电路或单元,并且各个电路或单元之间的连接关系不受限制,可以根据实际需求而定。各个电路或单元的具体构成方式不受限制,可以根据电路原理由模拟器件构成,也可以由数字芯片构成,或者以其他适用的方式构成。
[0197]
图10为本公开一实施例提供的一种电子设备的示意性框图。如图10所示,该电子设备200例如适于用来实施本公开实施例提供的多语种混合语料的生成方法或训练方法。应当注意,图10所示的电子设备200的组件只是示例性的,而非限制性的,根据实际应用需要,该电子设备200还可以具有其他组件。
[0198]
如图10所示,电子设备200可以包括处理装置(例如中央处理器、图形处理器等)201,其可以根据存储在存储器中的非暂时性计算机可读指令执行各种适当的动作和处理,以实现各种功能。
[0199]
例如,计算机可读指令被处理装置201运行时可以执行根据上述任一实施例所述的多语种混合语料的生成方法中的一个或多个步骤。需要说明的是,关于多语种混合语料的生成方法的处理过程的详细说明可以参考上述多语种混合语料的生成方法的实施例中的相关描述,重复之处不再赘述。
[0200]
例如,计算机可读指令被处理装置201运行时可以执行根据上述任一实施例所述的声学模型的训练方法中的一个或多个步骤。需要说明的是,关于训练方法的处理过程的详细说明可以参考上述训练方法的实施例中的相关描述,重复之处不再赘述。
[0201]
例如,存储器可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)203和/或高速缓冲存储器(cache)等,例如,计算机可读指令可以从存储装置208加载到随机存取存储器(ram)203中以运行计算机可读指令。非易失性存储器例如可以包括只读存储器(rom)202、硬盘、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器、闪存等。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如风格图像、以及应用程序使用和/或产生的各种数据等。
[0202]
例如,处理装置201、rom 202以及ram 203通过总线204彼此相连。输入/输出(i/o)接口205也连接至总线204。
[0203]
通常,以下装置可以连接至i/o接口205:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置206;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置207;包括例如磁带、硬盘、闪存等的存储装置208;以及通信装置209。通信装置209可以允许电子设备200与其他电子设备进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备200,但应理解的是,并不要求实施或具备所有示出的装置,电子设备200可以替代地实施或具备更多或更少的装置。例如,处理器201可以控制电子设备200中的其它组件以执行期望的功能。处理器201可以是中央处理单元(cpu)、张量处理器(tpu)或者图形处理器gpu等具有数据处理能力和/或程序执行能力的器件。中央处理器(cpu)可以为x86或arm架构等。gpu可以单独地直接集成到主板上,或者内置于主板的北桥芯片中。gpu也可以内置于中央处理器(cpu)上。
[0204]
图11为本公开至少一实施例提供的一种非瞬时性计算机可读存储介质的示意图。例如,如图11所示,存储介质1000可以为非瞬时性计算机可读存储介质,在存储介质1000上可以非暂时性地存储一个或多个计算机可读指令1001。例如,当计算机可读指令1001由处理器执行时可以执行根据上文所述的多语种混合语料的生成方法或者声学模型的训练方法中的一个或多个步骤。
[0205]
例如,该存储介质1000可以应用于上述电子设备中,例如,该存储介质1000可以包括电子设备中的存储器。
[0206]
例如,存储介质可以包括智能电话的存储卡、平板电脑的存储部件、个人计算机的硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、闪存、或者上述存储介质的任意组合,也可以为其他适用的存储介质。
[0207]
例如,关于存储介质1000的说明可以参考电子设备的实施例中对于存储器的描述,重复之处不再赘述。
[0208]
图12为本公开至少一实施例提供的一种硬件环境的示意图。本公开提供的电子设备可以应用在互联网系统。
[0209]
利用图12中提供的计算机系统可以实现本公开中涉及的多语种混合语料的生成装置和/或电子设备的功能。这类计算机系统可以包括个人电脑、笔记本电脑、平板电脑、手机、个人数码助理、智能眼镜、智能手表、智能指环、智能头盔及任何智能便携设备或可穿戴设备。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。这种计算机设备可以是一个通用目的的计算机设备,或一个有特定目的的计算机设备。两种计算机设备都可以被用于实现本实施例中的多语种混合语料的生成装置和/或电子设备。计算机系统可以包括实施当前描述的实现多语种混合语料的生成所需要的信息的任何组件。例如,计算机系统能够被计算机设备通过其硬件设备、软件程序、固件以及它们的组合所实现。为了方便起见,图12中只绘制了一台计算机设备,但是本实施例所描述的实现多语种混合语料的生成所需要的信息的相关计算机功能是可以以分布的方式、由一组相似的平台所实施的,分散计算机系统的处理负荷。
[0210]
如图12所示,计算机系统可以包括通信端口250,与之相连的是实现数据通信的网络,例如,计算机系统可以通过通信端口250发送和接收信息及数据,即通信端口250可以实现计算机系统与其他电子设备进行无线或有线通信以交换数据。计算机系统还可以包括一个处理器组220(即上面描述的处理器),用于执行程序指令。处理器组220可以由至少一个处理器(例如,cpu)组成。计算机系统可以包括一个内部通信总线210。计算机系统可以包括不同形式的程序储存单元以及数据储存单元(即上面描述的存储器或存储介质),例如硬盘270、只读存储器(rom)230、随机存取存储器(ram)240,能够用于存储计算机处理和/或通信使用的各种数据文件,以及处理器组220所执行的可能的程序指令。计算机系统还可以包括一个输入/输出组件260,输入/输出组件260用于实现计算机系统与其他组件(例如,用户界面280等)之间的输入/输出数据流。
[0211]
通常,以下装置可以连接输入/输出组件260:例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置;例如显示器(例如,lcd、oled显示器等)、扬声器、振动器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信接口。
[0212]
虽然图12示出了具有各种装置的计算机系统,但应理解的是,并不要求计算机系统具备所有示出的装置,可以替代地,计算机系统可以具备更多或更少的装置。
[0213]
对于本公开,还有以下几点需要说明:(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
[0214]
(2)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
[0215]
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1