一种语音合成的方法和装置
技术领域
本发明涉及语音识别技术领域,特别是涉及一种语音合成的方法和装置以及一种基频模型的训练方法和装置。
背景技术
随着语音合成技术的发展,合成声音的音质、自然度、智能度都有了很大提高,HTS(HMM-based speech synthesis system,基于HMM的语音合成***)技术目前已成为语音合成业界的核心技术,HMM(Hidden MarkovModel,隐马尔可夫模型)作为一种统计分析模型,创立于20世纪70年代。80年代得到了传播和发展,成为信号处理的一个重要方向,现已成功地用于语音识别。
HTS技术可以分为两个阶段,训练阶段和合成阶段。在训练阶段,使用信号分析工具从语音中提取声学参数(谱参数和基频参数),然后以音段为粒度对声学参数建立HMM模型;在合成阶段,构造出整句的马尔可夫链,然后在其上按最大似然原则生成谱参数、基频参数和时长,再使用信号合成器重构出语音。
传统的HTS在训练以及合成阶段通常以音段为语音粒度单位,即以声母或韵母作为语音粒度单位。然而,以这以种微小的语音粒度为单位进行语音合成的方法,会导致合成的韵律效果平淡、生硬,与真实语音差距较大。此外,上述决策树聚类将原本精细区分的语境类型合并为更粗略的类型集,以单一高斯模型一概而论,丢失了诸多个性细节,导致基频参数的“过平均化”,状态间参数绑定更进一步加剧“过平均化”问题,基频参数的“过平均化”导致每个字的音调刻板、缺乏变化,机器风格明显。
发明内容
本发明实施例所要解决的技术问题是提供一种语音合成的方法和装置以及一种基频模型的训练方法和装置,能够提高音高的准确度,从而使韵律更接近真实语音。
为了解决上述问题,本发明公开了一种语音合成的方法,包括:
对待合成文本中的各音段进行音段模型决策,确定所述各音段对应的基线HTS基频模型;
对所述待合成文本中的各音节进行音节模型决策,确定所述各音节对应的连续浊音段基频模型;
依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数;
依据所述融合基频参数以及对应的谱参数合成语音。
优选地,所述对所述待合成文本中的各音节进行音节模型决策,确定所述各音节对应的连续浊音段基频模型的步骤,包括:
对所述待合成文本中的各音节进行音节基频模型预测;
基于走势线拟合的多路优选方法确定所述各音节的最优音节基频模型;
依据所述各音节的最优音节基频模型生成连续浊音段基频模型。
优选地,所述走势线生成的步骤,包括:
对所述待合成文本中的每个音节,确定多个音节基频候选模型;
依据所述多个音节基频候选模型在二维空间按最小二乘准则拟合出一条直线,所述直线即为走势线。
优选地,所述依据所述各音节的最优音节基频模型生成连续浊音段基频模型,包括:
将所述各音节的最优音节基频模型依次按连续浊音段为单位进行合并;
将各连续浊音段对应的高斯模型依据时长加权平均得到连续浊音段基频模型。
优选地,所述方法还包括:
依据走势线控制语音合成的语调。
优选地,所述多层融合算法为联合状态层模型的参数集和连续浊音段模型的参数集,按照状态层与所述连续浊音段层各自的最优准则进行综合计算。
依据本发明的另一个方面,提供了一种音节基频模型的训练方法,包括:
对语音样本提取声学参数;所述声学参数包括基频参数;
依据所述基频参数生成音节基频均值参数;
依据所述音节基频均值参数,训练出多套音节基频模型。
优选地,所述依据所述基频参数生成音节基频均值参数,包括:
针对所述基频参数以音节为单位提取特征,逐音节统计均值生成音节基频均值参数。
优选地,所述依据所述音节基频均值参数,训练出多套音节基频模型的步骤,包括:
根据音库中的各类标注对所述语音样本分别生成逐音段上下文语境信息和逐音节上下文语境信息;
针对所述音节基频均值参数,结合音节上下文语境信息训练出多套音节基频模型。
依据本发明的又一个方面,提供了一种语音合成的装置,包括:
音段模型决策模块,用于对待合成文本中的各音段进行音段模型决策,确定所述各音段对应的基线HTS基频模型;
音节模型决策模块,用于对所述待合成文本中的各音节进行音节模型决策,确定所述各音节对应的连续浊音段基频模型;
融合参数生成模块,用于依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数;以及
语音合成模块,用于依据所述融合基频参数以及对应的谱参数合成语音。
依据本发明的再一个方面,提供了一种音节基频模型的训练装置,包括:
声学参数提取模块,用于对语音样本提取声学参数;所述声学参数包括基频参数;
音节参数生成模块,用于依据所述基频参数生成音节基频均值参数;以及
音节基频模型训练模块,用于依据所述音节基频均值参数,训练出多套音节基频模型。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例在合成阶段增加连续浊音段这一高层粒度单位,依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数,并依据融合基频参数以及对应的谱参数合成语音;由于融合基频参数为基线HTS模型和高层(连续浊音段基频)模型按照多层融合算法联合生成的结果,因此,融合基频参数既能够通过基线HTS基频模型保留基线HTS特征,又能够通过高层模型进一步修正语音的声调及韵律,因此可以提高音高的准确度,从而使韵律更接近真实语音。
附图说明
图1示出了传统的HMM语音建模的示意图;
图2示出了本发明的一种语音合成的方法实施例的步骤流程图;
图3示出了本发明的一种对所述待合成文本中的各音节进行音节基频模型决策,确定所述各音节对应的连续浊音段基频模型的步骤流程图;
图4示出了本发明的一种走势线生成的示意图;
图5a示出了本发明的一种语音合成示例的步骤流程图;
图5b示出了本发明的一种语音合成的***流程图;
图6示出了本发明的一种语音合成中音节基频模型的训练方法步骤流程图;
图7示出了本发明的一种基于上下文语境的决策树聚类的示意图;
图8示出了本发明的一种语音合成的基频模型训练***流程图;
图9示出了以音节为高层粒度进行训练及合成的试验例句的示意图;
图10示出了以音节为高层粒度进行训练及合成的试验例句的局部放大示意图;
图11示出了本发明的一种以连续浊音段为高层粒度单位进行训练及合成的试验例句的示意图;
图12示出了本发明的一种语音合成的装置结构框图;及
图13示出了本发明的一种音节基频模型的训练装置结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
为了便于理解,首先对本发明涉及的语音概念进行解释说明:
基频:语音信号可以分为浊音和清音两大类。语音中只有浊音才有基频,浊音的激励是周期性的脉冲串,脉冲串的频率就是基音频率,简称基频。由于发声器官生理方面的差异,男性和女性的基频范围不同,一般地,男性的基频范围为50~250Hz;女性的基频范围为120~500Hz;婴儿的基频范围大约为250~800Hz;新生婴儿的哭声基频范围更高。
音节、音段(语音粒度单位):在中文普通话中,一个字就是一个音节;一个音节可由一个声母和一个韵母构成,或只由一个韵母构成(如“啊”)。本发明实施例中将声母和韵母统称为音段。语音合成领域通常对全部音段统一建模。
韵律短语:言语的韵律单元,具备完整的语调结构,以换气停顿结束。可通俗理解为一口气说出的片段。一般陈述语气下语调高起低止,称为音高下倾现象。一句话中包含一个或多个韵律短语。
传统的HTS在训练阶段将音段的声学表征视为一个随时间变化的随机过程,此过程历经一定数量的状态,以概率转移的方式串联成马尔可夫链;假定每个状态内保持稳定,以GMM(Gaussian Mixture Model,混合高斯模型)统计描述。参照图1,示出了传统的HMM语音建模的示意图,以5状态HMM描述一段语音,上半部分为HMM,下半部分为语音参数数据,二者分段对应。HMM中:Sx为状态,axy为状态间的转移概率,bx为数据(称为观察数据)相对于状态的产生概率。另外,每个状态的时长dx在HMM训练完成时,以高斯模型统计描述(时长概念均以信号分析窗的时移为单位,称为帧)。
在合成阶段,将待合成文本送入文本分析模块,通过多种自然语言算法进行语音学、韵律学及语法学分析,标注发音成音段序列,并为每个音段生成上下文语境信息。然后送入模型决策模块,对各音段的各状态根据上下文语境信息确定子类高斯模型。另外以相似算法确定各状态的时长。接下来将各音段各状态的高斯模型串接起来,各状态按时长展开(即重复多次展开),形成整句的模型序列,送入参数生成模块,按最大似然的最优化准则解出最优参数(基频和谱参数)。最后将所得声学参数送入合成器,生成语音。
然而,现有的HTS技术以状态为粒度对声学参数进行统计描述,合成时亦是以状态为粒度生成声学参数。而状态并非真实具象存在的语音学或音系学单位,因此,无法体现词之间或短语之间的连接关系,导致合成的韵律不够自然。
本发明在现有的HTS技术基础上,即在现有状态层模型的基础上增加高层模型,利用高层模型来指导状态层模型(基线HTS模型),以使韵律更加接近真实的语音。
实施例一
参照图2,示出了本发明的一种语音合成的方法实施例的步骤流程图,具体可以包括如下步骤:
步骤201、对待合成文本中的各音段进行音段模型决策,确定所述各音段对应的基线HTS基频模型;
具体地,可以按照传统的HTS算法确定所述各音段对应的基线HTS基频模型;其中,音段具体可以为声韵母或者更小的音素,本发明对此不加以限制。
步骤202、对所述待合成文本中的各音节进行音节模型决策,确定所述各音节对应的连续浊音段基频模型;
本发明在现有的HTS技术基础上,增加高层模型,利用高层模型来指导基线HTS模型,以使韵律更加接近真实的语音。在语音学意义上,音节是最小的、结构规范一致的单位,但是发明人发现如果以音节为高层粒度单位统计高层模型,在连续“浊音-浊音”情况下会导致声调颤抖和扭曲,因此,发明人创造性地提出在合成阶段以连续浊音段作为高层粒度单位,并依据连续浊音段基频模型和基线HTS基频模型按照多层融合算法联合生成融合基频参数,这样,融合基频参数既可以保留基线HTS模型的特征,又可以通过高层模型,即连续浊音段基频模型的宏观调整,使得最终合成的声调更加准确,韵律更接近真实语音。
由于本发明在训练阶段,每个音节可以训练得到多个音节基频模型,因此,对所述待合成文本中的各音节进行模型决策时,可以在多个音节基频模型中选择最合适的音节基频模型,例如可以按照预置的算法选择最优的音节基频模型,或者根据实际需要为当前音节选择合适的音节基频模型,然后将各音节选中的音节基频模型顺次按连续浊音段为单位合并,每段范围内各音节的音节基频模型以各自的时长为权重加权平均得到连续浊音段基频模型。
步骤203、依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数;
具体地,可以将所述各音段对应的基线HTS基频模型以及所述各音节对应的连续浊音段基频模型分别串接成句,送入基于多层融合的参数生成模块。如此两路长度相等的模型对应的序列汇总到了参数生成模块,按照多层融合算法,联合生成最终的基频参数,为了便于说明,本发明称为融合基频参数,将所述融合基频参数送入声学合成器,与谱参数一起生成语音。
其中,融合基频参数为基线HTS基频模型和高层(连续浊音段)基频模型联合生成的结果,可以依据两层各自的最优准则权衡综合生成所述融合基频参数,使得生成结果完全源自统计模型而没有强制修改,可以避免强制修正导致基频曲线不平滑的问题。此外,融合基频参数在保留现有HTS特征的前提下,可以在高层模型即连续浊音段基频模型的作用下得到修正,最终使得合成的声调更加准确,韵律更接近真实语音。
在本发明的一种应用示例中,若状态层HMM模型的参数集为λpm,在产出基频参数O的情况下,最优路径为Qmax;高层(连续浊音段)模型的参数集为λsm,最终二者联合生成的融合基频参数为C,则C的最优解需要使如下联合概率分布最大化:
其中,下标pm和sm分别表示状态层和高层两路体系;k为控制高层信息作用力度的权重,通常,k值越大,则高层信息对融合基频参数C的影响也就越大。
关于清浊问题,沿用基线HTS的策略:整句话中各帧的清浊可由状态层模型中的MSD(Multi-SpaceProbabilityDistribution,多空间概率分布)预先确定,基频求解只涉及浊音帧,清音帧无需计算直接以标志位告知合成器即可。这样,C是整句话中从前往后浊音帧的堆积,跳过了清音帧(段)。
状态层体系是基线HTS的算法结构:λpm是依据各个音段的上下文语境决策出的模型参数集,包括各个状态的高斯模型和时长模型;Wpm用于在参数C上计算邻接差分(0阶原值、前后1阶差分、前中后2阶差分),具体结构不再赘述。Qmax由各状态的时长模型决定,因此可先行将状态链展开,也即每个状态的高斯模型按其时长重复多帧。
高层体系是本发明新增的算法结构。高层模型是由高层粒度单位内的基频统计信息作为训练样本训练所得,训练算法与HTS基础算法类似,亦是HMM模型训练结合上下文聚类,只是模型结构不同,状态层模型的结构,每个音段可以由5个状态串接而成;而高层模型的结构,每个粒度单位可以只包含单个状态。λsm是依据各个高层粒度单元的上下文语境决策出的模型参数集。上文中已提到,为保证训练样本的覆盖度,先以音节为粒度单元训练和决策,然后再按进行连续浊音段合并,得到各段的高斯模型。时长以状态层为准——由状态时长合并计算出音节时长,进而合并计算出每个连续浊音段的时长——从而保证两层各自展开串接时严格对齐。
Wsm用于在基频参数C上逐段计算均值,其结构如式(2)所示,其行数等于高层的单元数,也即连续浊音段数。每行都是一个用于对当前单元范围内浊音帧的基频求均值的窗函数,总列数等于C的长度,其中的非零值对应于该单元范围内的浊音帧,零值对应与其它单元的浊音帧——不生效,每行之和都等于1。纵向来看,每列只有一个非零值,表示每一帧只属于一个高层单元。式(2)说明,这句话共含8个浊音帧,3个连续浊音段,每段包含的浊音帧数依次为2、1、5,第一段的基频特征值由前两帧的基频求均值得到,第二段的基频特征值直接等于第三帧的基频,第三段的基频特征值由后五帧的基频求均值得到。
为求得最优的参数C,将联合概率式(1)两边取对数,对C求偏导数,得到如下方程:
其中,Upm和Mpm为状态层各浊音帧的高斯模型按对角阵结构积聚成的总协方差矩阵和总均值矩阵,Usm和Msm为各浊音帧对应的高层各单元的高斯模型按对角阵结构汇集成的总协方差矩阵和总均值矩阵。
Wpm和Wsm都可看做窗函数集,每行均可看做一个对C中的某部分施加的窗函数,只是窗长和时移速度不同:Wpm每连续三行作用于C中的同一帧,依次计算3阶差分,窗长均为3,然后向后移动一帧,计算下一帧的3阶差分;Wsm每行作用于C中的一段连续浊音段,计算该段范围内所有有效基频值的均值,窗长为浊音帧的个数,然后向后移动到下一个连续浊音段。因此,新增加的高层算法结构与原状态层是同构的。这为本发明的具体实施提供了方便。
上述应用示例为依据基线HTS基频模型与连续浊音段基频模型联合生成融合基频参数,在具体实施时,本领域技术人员可以根据实际需要选择其它的多种高层模型与基线HTS基频模型,进行多层融合生成最终的声学参数,本发明对于高层模型的种类和数量不做具体限制。
步骤204、依据所述融合基频参数以及对应的谱参数合成语音。
在实际应用中,音质由谱参数决定,韵律由基频参数和音段时长综合体现。因此本发明主要改进基频参数的生成方法,使得合成语音的音高曲线更接近自然发音,达到抑扬顿挫的韵律效果。谱参数的模型序列,继续按照基线HTS算法流程计算,即串接成整句,按传统的参数生成算法生成最终谱参数。
在具体实施时,可以将所述融合基频参数以及所述待合成文本对应的谱参数送入声学合成器,合成语音。
综上,本发明实施例在合成阶段增加连续浊音段这一高层粒度单位,依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数,并依据融合基频参数以及对应的谱参数合成语音;由于融合基频参数为基线HTS模型和高层(连续浊音段基频)模型按照多层融合算法联合生成的结果,因此,融合基频参数既能够通过基线HTS基频模型保留基线HTS特征,又能够通过高层模型进一步修正语音的声调及韵律,因此可以提高音高的准确度,从而使韵律更接近真实语音。
实施例二
本实施例的语音合成的方法在上述实施例一的基础上,还可以包括以下可选技术方案。
参照图3,示出了本发明的一种对所述待合成文本中的各音节进行音节基频模型决策,确定所述各音节对应的连续浊音段基频模型的步骤流程图,具体可以包括:
步骤301、对所述待合成文本中的各音节进行音节基频模型预测;
由于本发明在训练阶段,每个音节可以训练得到多个音节基频模型,因此需要对多个模型逐一决策,故将待合成文本对应的每个音节对应的多个音节基频模型,通过走势线拟合的方法全局统筹,为每个音节选择一个最优的模型。
步骤302、基于走势线拟合的多路优选方法确定所述各音节的最优音节基频模型;
要提高连续浊音段基频模型的准确度,关键在于提高音节基频模型的质量。当然首先要在模型训练的各个环节提高精度,但由于聚类先天的“过平均化”缺陷,仍不可避免会发生精度损失。本发明提出多路优选的思想,综合多路来源提高命中率。不同来源的信息各有优劣,优势互补,以最大公约原则提取骨干信息,可挽回部分细节损失,以弥补由于聚类导致的基频过平均化的缺陷。
在本发明的一种优选实施例中,可以通过如下步骤生成走势线:
对所述待合成文本中的每个音节,确定多个音节基频候选模型;
依据所述多个音节基频候选模型在二维空间按最小二乘准则拟合出一条直线,所述直线即为走势线。
参照图4,示出了本发明的一种走势线生成的示意图,对待合成文本中的每个音节,依不同渠道规划出多个音节基频均值候选模型,然后以几何视角在整句的二维空间上(如图4,将每个音节对应的每个基频模型看做空间中的一个样本点,以其音节序号为横坐标,以其均值参数为纵坐标)按最小二乘准则拟合出一条直线,该直线能够体现空间内点集的整体走势,称为走势线;对每列(每个音节的候选模型),以一定的准则选出离走势线最近的一个点(最优模型),作为该音节的最终模型决策结果。
在本发明的一种应用示例中,给出了本发明的一种基于走势线拟合的多路优选方法的如下应用示例:
具体地,本发明的基于走势线拟合的多路优选方法可以包括多路构造和拟合优选两个环节。
在多路构造方面,除基本的以音节为训练对象的音节基频均值候选模型之外,还增加了另外三路高层模型,该三路高层模型具体可以包括两个同类模型和一个参考基准模型。同样的音节均值训练数据,同样的模型结构(单状态HMM)和算法,但训练对象改为音段,即可实现按新的算法途径获得不同的结果,暂称为音段音频均值模型,其物理含义可认为是,音段(声母/韵母)在特定的上下文语境下,其所在音节的整体音高态势。在对某个音节进行模型决策时,依据其上下文语境在音节基频均值模型中决策得到音节来路模型;依据其韵母的上下文语境在音段基频均值模型中决策得到韵母来路模型;如果有声母,依据其声母的上下文语境在音段基频均值模型中决策得到声母来路模型,否则(没声母),将音节基频均值模型的决策结果拷贝一份作为声母来路模型。此外,状态层信息也可参与进来作为保守参照,避免音节层的结果偏离过远:在状态层串接好的模型序列中,对该音节范围内各模型的均值参数求均值,作为状态层来路的音节基频均值,它反映的是状态层模型的整体绝对音高,它只是一个值而不是模型,在二维空间中与其它三路模型身份同等,只不过在被选中时,该音节的基频生成不用高层信息,单纯按状态层本身计算。
这样,每个音节就有四路候选,在二维空间中,每列有四个点。在图4中,圆圈为三路模型,三角形为状态层参照值。接下来以曲线拟合的方式提取空间中的点集最大公约信息。
根据音系学理论,语调在韵律短语范围内存在不同程度的音高下倾现象:高音线体现焦点和重音;低音线严格下倾,低音线的重置标志韵律短语边界。基于这类理论,我们认为二维空间内的候选点集,在横向各韵律短语范围内的走势,可用直线拟合。图4中的语句很短,自身就是一个韵律短语,因此以全部候选点为数据通过最小二乘算法拟合出走势线。走势线的倾斜印证了音高下倾理论。
走势线反映的是全局主干信息,以其为标准选点,是一种全局统筹。对于每个音节(二维空间中每列的四个点),基本标准是选择离走势线最近的点,在此基础上再预设一定的投票准则:只有三个圆圈都与三角形隔岸而对(分布于走势线两侧),才允许在多数(圆圈)这一侧选择;否则只允许在三角形这一侧选择。这套准则体现了对状态层参考值的尊重,可将圆圈野点排除在外。如果选中了状态层参考值,则表示当前音节不需要高层指引调节,只需单纯按状态层本身的模型序列计算。图4中以X标记为选中的点,作为音节最终的决策结果,交给后续的模型串接模块。
综上,本发明的基于走势线拟合的多路优选方法,依不同渠道规划出多个高层基频模型,然后依全局拟合出的走势线优选出最佳模型序列,即根据走势线可以确定当前应该选择声韵母模型还是高层模型,以及当前音节是否需要高层模型的指引调节。不同渠道来源的信息各有优劣、优势互补,以最大公约原则提取骨干信息,可提高命中率,从而指引最终合成的韵律更加接近真实语音,并且可以挽回部分细节损失,从而弥补由于聚类导致的基频过平均化的缺陷。
在本发明的另一种优选实施例中,所述方法还可以包括:
依据走势线控制语音合成的语调。
进一步,走势线还有主动控制语调的功能。通过主动控制走势线的斜率,可影响各音节的选择结果,从而控制每个音节的整体音高,实现对整句话语调的塑造。由于每个音节的基频均值都是从四路统计模型中依据上下文语境优选而来,不是空穴来风,相比于传统的直接作用于整句音高包络的几何类语调模型更真实可靠,不易产生造作感。例如,可将走势线调整为上扬,实现适度的疑问语气;也可将走势线改为折线,实现反问语气。可在一定程度上实现多语气情感化效果。
步骤303、依据所述各音节的最优音节基频模型生成连续浊音段基频模型。
具体地,将各音节的最优音节基频模型顺次排列,然后顺次按连续浊音段为单位合并,每段范围内各音节的高斯模型以各自的时长为权重加权平均得到连续浊音段的基频均值高斯模型。如此获得了每个连续浊音段的模型和时长,将它们串接成句,包括按时长重复展开,送入基于多层融合的参数生成模块生成连续浊音段基频模型。
参见图5a,示出了本发明的一种语音合成示例的步骤流程图,具体可以包括以下步骤,以及图5b示出了本发明的一种语音合成的***流程图;
步骤501、将文本分析生成的带有上下文语境信息的音段序列和音节序列,分别送入音段(基线HTS基础算法)模型体系和音节基频模型体系,分别决策出状态级模型序列(谱参数、基频和状态时长)和音节级模型集序列(基频均值);
步骤502、按照多层融合的方法生成融合基频参数;
具体地,一方面,音节体系有多套模型,需逐一决策,故待合成文本对应的每个音节得到多个模型,然后通过走势线拟合的方法全局统筹,为每个音节选择一个最优的模型,并将各音节的最优模型顺次排列,然后顺次按连续浊音段为单位合并,每段范围内各音节的高斯模型以各自的时长为权重加权平均得到连续浊音段的基频均值高斯模型。如此获得了每个连续浊音段的模型和时长,将各连续浊音段串接成句,包括按时长重复展开,送入基于多层融合的参数生成模块;
另一方面,将基线HTS决策出的基频模型,也串接成句,送入基于多层融合的参数生成模块。如此两路长度相等的模型序列汇总到了参数生成模块,按本发明的多层融合算法,联合生成融合基频参数,送入合成器。
步骤503、按照基线HTS算法生成谱参数的模型序列;
其中,谱参数的模型序列,继续按照基线HTS算法流程计算,即串接成整句,按原参数生成算法生成最终谱参数,送入合成器。
步骤504、依据融合基频参数和谱参数合成语音。
实施例三
参照图6,示出了本发明的一种语音合成中音节基频模型的训练方法步骤流程图,具体可以包括:
步骤601、对语音样本提取声学参数;所述声学参数具体可以包括基频参数;
具体地,在训练阶段,可以加工标注好的音库为样本,一方面对其中的语音文件提取声学参数(基频和谱参数),另一方面根据其中的各类标注(语音学、韵律学及语法学等类型)为每个音段生成上下文语境信息(如在韵律短语中的位置、所在词的词性等)。将声学参数和上下文语境信息,连同用于依据上下文对音段分类的描述问题集,送入模型训练模块,训练出以音段为单位的基于上下文语境的隐马尔可夫模型集。
在对语音样本提取声学参数之后,首先可以依据所述声学参数训练各音段对应的音段模型。
具体地,可以按原始的HTS基础算法,依据所述声学参数、音段的上下文语境信息以及音段的上下文分类问题集,训练音段模型;所述音段模型包括基频模型、谱参数模型以及状态时长模型。在真实语音中,音段会因韵律角色、语法角色以及前后邻的影响而变化。这些影响因素统称为上下文语境,同一种声母/韵母,在不同的语境下可能差异很大。为提高建模精度,通常依据上下文语境对同一种声母/韵母分类,假设在每种特定的语境下,音段的声学表征有相对固定的特性,对每类分别建模描述。这种模型称为基于上下文的HMM模型。
但由于上下文语境包罗万象,分类结果过于零碎,真实训练数据无法覆盖数量如此庞大的种类,即使被覆盖到的也可能只有稀少的几个训练样本,无法有效统计建模。因此,可以引入决策树聚类机制,自动根据训练数据的分布情况,将零碎的语境类型聚类成更大的子类,一方面保证每种子类有足够的训练样本,另一方面追求不同子类间更明晰的区分度。参照图7,示出了本发明的一种基于基于上下文语境的决策树聚类的示意图,可以对各状态独立进行聚类,在聚类出的每个子类范围内统计出一个高斯模型。不同模型间可以共享某些状态,从而进一步克服数据稀疏问题。状态的时长也可以采取同样的方法聚类建模。在具体实施时,为进一步提高训练数据的复用度以克服数据稀疏问题,还会将某些状态的状态转移概率矩阵绑定共享。
经过决策树聚类后可以得到基频、谱参数以及状态时长决策树文件。
步骤602、依据所述基频参数生成音节基频均值参数;
由于基于HMM的统计参数语音合成是以音段为粒度对声学参数进行统计描述的,从宏观的音系学角度来看,状态这种粒度过于微观,在此层级上做统计描述,只见树木不见森林,无法刻画字间、词间乃至短语范围内宏观的音高变化轨迹。而自然语音的音高正是在超音段层次上体现大量韵律、语义信息。因此现有技术的语音合成导致韵律效果平淡、生硬,与真实语音差距较大。因此,在基频生成过程中,有必要补充进更多信息,同时这些信息应该来自宏观粒度层级,相对与微观的状态层级,可以看做高层信息。因此,本发明实施例在语音合成的训练阶段,增加了音节这一高层粒度单位。
具体地,对所述基频参数在高层(音节)粒度进一步提取特征,即逐音节统计均值生成音节基频均值参数。
步骤603、依据所述音节基频均值参数,训练出多套音节基频模型。
在实际应用中,本发明实施例具体对于训练出多少套音节基频模型不加以限制,上述实施例二中以4套音节基频模型为例进行了举例说明,但是在具体实现时,可以训练出更多套的音节基频模型,以使得合成的音高更加准确,韵律更接近真实语音,也即,本发明实施例对音节基频模型的具体数目不加以限制。
具体地,所述依据所述音节基频均值参数,训练出多套音节基频模型的步骤,可以包括:
根据音库中的各类标注对所述语音文件分别生成逐音段上下文语境信息和逐音节上下文语境信息;
针对所述音节基频均值参数,结合音节上下文语境信息训练出多套音节基频模型。
高层体系是本发明新增的算法结构。高层模型是由高层粒度单位内的基频统计信息作为训练样本训练所得,训练算法与HTS基础算法类似,亦是HMM模型训练结合上下文聚类,只是模型结构不同,每个模型只包含单个状态。
对训练出的多套音节基频模型进行决策树聚类后,可以得到音节基频的决策树文件。
本发明实施例在训练阶段以不同对象训练出多套音节基频模型,目的是为合成阶段提供高层模型的多路优选做准备。因此,根据音库中的各类标注生成逐音段和逐音节两套上下文语境信息。这里的音节基频均值分别与音节/音段上下文语境信息以及分类问题集这两套分类描述体系,训练出多套音节基频均值模型;每个音节的训练数据就是其基频均值,可以是一个恒定值,不涉及过程概念,建模的目的只是描述不同上下文语境下的基频均值大小;但为方便沿用基线HTS算法结构,以单状态HMM描述音节基频均值,重点意义在于上下文聚类。
综上,本发明实施例中,在语音合成的训练阶段增加了音节这一高层粒度单位,对原始的基频参数在高层(音节)粒度进一步提取特征,即逐音节统计均值生成音节基频均值参数,并依据所述音节基频均值参数,训练出多套音节基频模型,为合成阶段提供高层模型的多路优选做准备。解决了现有的HTS仅以音段为粒度对声学参数进行统计描述导致韵律效果平淡、生硬,与真实语音差距较大的问题。
在本发明的一种应用示例中,参照图8,示出了本发明的一种语音合成的基频模型训练***流程图。
具体地,在训练阶段,首先对音库中的语音文件提取声学参数(基频和谱参数),然后对基频参数在高层粒度进一步提取特征,即逐音节统计均值。另一方面,根据音库中的各类标注生成逐音段和逐音节两套上下文语境信息。依据第一步提取的声学参数、音段的上下文语境信息以及上下文分类问题集,训练出音段模型(基线HTS基础算法),包括基频和谱参数的模型以及状态时长模型。由于本发明的另一创新点是高层模型的多路优选,这要求在训练阶段以不同对象训练多套模型供候选。因此,这里的音节基频均值分别与音节/音段上下文语境信息及分类问题集这两套分类描述体系,训练出多套音节基频均值模型:每个音节的训练数据就是其基频均值,是一个恒定值,不涉及过程概念,建模的目的只是描述不同上下文语境下的基频均值大小;但为方便沿用基线HTS算法结构,以单状态HMM描述音节基频均值,重点意义在于上下文聚类。
实施例五
在本发明的一种应用示例中,参照图9,示出了以音节为高层粒度进行训练及合成的试验例句的示意图,其中,①为原始录音的基频包络,阶梯虚线②为对原始录音在各音节范围内取均值(静音段没有意义,显示不准确),③为基线HTS算法生成的基频参数,阶梯实线④为音节层的“上下文相关的HMM序列判决”所确定模型的均值,⑤为最终多层联合生成的基频参数。从听感上,大约从410至500时刻之间的两个音节(内容为“神秘”)的声调非常怪异。将这一区段放大得到图10,示出了以音节为高层粒度进行训练及合成的试验例句的局部放大示意图。在图10中,包络③和包络①的形状和绝对高度是大致吻合的,而包络⑤则与它们有很大区别:第一个音节在阶梯实线④的指引下,大幅向上平移;第二个音节在阶梯实线④的指引下,本应略微向下平移,但其前半段却是背道而驰,而且发生了扭曲,显然是受到了第一个音节的影响。造成这种关联影响的根源在于邻接差分。在依据最大似然准则求解最优结果时,邻接差分起到平滑性约束作用,在最终结果中引导相邻点间尽量平滑。
要解决这个问题,必须协调好与邻接差分的关系。在状态层的参数生成算法中,将句首、句末以及清浊边界处视为邻接差分的中断边界,在这些地方将其一阶和二阶的方差设为无穷大,等效于在这些地方令邻接差分无效。在多数情况下,两个韵母之间会间隔一个清声母,此时前一个韵母结束处和后一个韵母开始处邻接差分中断,两个韵母间互不影响,两音节可独立调整互不影响。而如果一个韵母后面邻接的是浊声母(l、m、n、r)或零声母(直接是接韵母),邻接差分在音节边界处是不中断的,就会在此局部范围内发生强力作用,将两端糅合。上例中的“神秘”就是邻接浊声母的情况。经大量测听,发现声调扭曲的问题确实主要出现于浊声母和零声母这两种情况。
从发音机理上来看,在发音人即将完成一个韵母时,口型、唇型开始为发下一个音节过渡。如果下一个音节是浊声母或零声母,喉管震动不会停止,保持当前的惯性继续往下一个音节的调型过渡,如果接下来的音节也是同类情况,则会一直继续下去,直到遇到一个清声母才会停止。在口、唇和鼻即将完成这个清声母时,喉管再次启动,开始下一段。由此看来,对于激励源来说:包含浊声母或零声母的连续几个音节是一个连续单元,对应于基频包络中就是连续浊音段;而在普通清声母的情况下,每个音节包含一段孤立的浊音段。每个浊音段内,基频都是平滑变化的。如果对浊音段内部的相邻音节,按不同方向或悬殊的幅度调节,既不符合发音机理,也会因邻接差分扭曲正常的声调。
基于上述分析,本发明实施例提出以连续浊音段为高层粒度单位,进行基频统计、模型训练以及与状态层融合。每个连续浊音段范围内,只提供一个高层模型,指导此范围内全部的状态层规划,按照统一的方向和幅度调节,这就避免了段内的扭曲和不平滑问题。参照图11,示出了本发明的一种以连续浊音段为高层粒度单位进行训练及合成的试验例句的示意图。可以看到,阶梯实线④在连续浊音段“神秘”范围内是一个恒定值,指导包络⑤在整段范围内统一调节,结果比较合理,更加接近真实语音。
装置实施例一
参照图12,示出了本发明的一种语音合成的装置结构框图,所述装置具体可以包括:
音段模型决策模块1210,用于对待合成文本中的各音段进行音段模型决策,确定所述各音段对应的基线HTS基频模型;
音节模型决策模块1220,用于对所述待合成文本中的各音节进行音节模型决策,确定所述各音节对应的连续浊音段基频模型;
融合参数生成模块1230,用于依据所述各音段对应的基线HTS基频模型与所述各音节对应的连续浊音段基频模型,按照多层融合算法联合生成融合基频参数;以及
语音合成模块1240,用于依据所述融合基频参数以及对应的谱参数合成语音。
优选地,所述音节模型决策模块1220,具体可以包括:
音节模型预测子模块,用于对所述待合成文本中的各音节进行音节基频模型预测;
最优模型确定子模块,用于基于走势线拟合的多路优选方法确定所述各音节的最优音节基频模型;
连续浊音段模型生成子模块,用于依据所述各音节的最优音节基频模型生成连续浊音段基频模型。
优选地,所述最优模型确定子模块,具体可以包括:
音节基频候选确定单元,用于对所述待合成文本中的每个音节,确定多个音节基频候选模型;
走势线生成单元,用于依据所述多个音节基频候选模型在二维空间按最小二乘准则拟合出一条直线,所述直线即为走势线。
优选地,所述连续浊音段模型生成子模块,具体可以包括:
合并单元,用于将所述各音节的最优音节基频模型依次按连续浊音段为单位进行合并;
生成单元,用于将各连续浊音段对应的高斯模型依据时长加权平均得到连续浊音段基频模型。
优选地,所述装置还可以包括:
语调控制模块,用于依据走势线控制语音合成的语调。
装置实施例二
参照图13,示出了本发明的一种音节基频模型的训练装置结构框图,所述装置具体可以包括:
声学参数提取模块1310,用于对语音样本提取声学参数;所述声学参数包括基频参数和谱参数;
音节参数生成模块1320,用于依据所述基频参数生成音节基频均值参数;以及
音节基频模型训练模块1330,用于依据所述音节基频均值参数,训练出多套音节基频模型。
优选地,所述音节参数生成模块1320,具体可以包括:
音节参数生成子模块,用于针对所述基频参数以音节为单位提取特征,逐音节统计均值生成音节基频均值参数。
优选地,所述音节基频模型训练模块1330,具体可以包括:
语境信息生成子模块,用于根据音库中的各类标注对所述语音样本分别生成逐音段上下文语境信息和逐音节上下文语境信息;
音节基频模型训练子模块,用于针对所述音节基频均值参数,结合音节上下文语境信息训练出多套音节基频模型。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种语音合成的方法和装置以及一种基频模型的训练方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。