与文本语音系统相配的韵律模板的制作方法

文档序号:2824418阅读:247来源:国知局
专利名称:与文本语音系统相配的韵律模板的制作方法
技术领域
本发明一般涉及文本语音合成系统。更具体地说,本发明涉及基于树结构查询技术,使用韵律模板将韵律信息应用到合成语音中的技术。
背景技术
文本语音系统把基于字符的文本(例如,打字机打出的文本)转变成合成的口头语音内容。文本语音系统被使用在各种商业应用和用户产品中,包括电话和语音邮件提示系统,车辆导航系统,自动无线电广播系统,等等。
业已存在着从提供的输入文本产生语音的大量不同的技术。一些系统使用基于模型的方法,其中人类声道的谐振特性和人类声门的脉冲波形被模型化、参数化,然后被用来模拟正常人说话的声音。其它系统使用实际人类语音的短数字化记录采样,其随后在当连接符被返回时被仔细地选择和链接来产生口头的词和短语。
除非被加入韵律信息,否则所有当前的合成技术听起来或多或少地有些不自然。韵律指的是说话的节奏和声调方面。当人们说出一个短语或句子时,讲话者通常很自然地把重音放在某些的词或短语上,从而强调表达的意思。因为适当的音调变化不能总是从单独文本中推断出来,文本语音设备在模仿人说短语或句子的正常语速和音调变化方面具有很大的困难。
例如,在给驾驶员提供在下一个十字路口转向的指示的情况,人类说话者可以说“在这儿转向”,强调单词“这儿”来传达紧迫的感觉。文本语音设备,其响应打字输入的文本简单地产生合成的语音,将不知道是否紧迫的感觉被保证或者不保证。因此设备将不能越过其它词把特定的强调放在一个词上。与人类说话相比,合成的语音听起来更单调和无变化。
在努力对合成的语音增加真实性的过程中,现在有可能提供具有附加的韵律信息的文本语音合成器,其被用来改变合成器输出的方式,所产生的合成的语音更自然的有节奏的内容和音调。
在典型的语音合成器中,韵律信息影响着响应文本输入产生的声音的音调轮廓和/或持续时间值。在正常的讲话中,强调或者重音节是通过升高一个人的声音的音调和/或增加重音节的元音部分的持续时间而产生的。通过执行这些相同的操作,文本语音合成器能够模仿人们说话的韵律。我们已经开发了基于模板的系统来把韵律信息与连续的文本组织和联系起来,其中文本根据一些类型的语言单元,例如词或短语而被描述。在我们的基于模板的系统中,模板库被构造用来收集具有不同韵律特征的词或短语。然后,对于给定的特定文本输入,具有最好的匹配特征的模板被选择和用来对合成提供韵律信息。
当仅仅需更说少量的词或短语时,对于可能由合成器产生的每一个和全部的可能的词或短语来说构造模板是现实的。然而,随着说话范围的规模的增加,存储所有需要的模板变得越来越昂贵。

发明内容
本发明提供了一种解决这类问题的方法,即通过一种技术,其发现对给定的目标合成的最接近的匹配模板,然后发现在不准确的匹配模板和目标之间的最佳的映射。该系统在当没有发现准确的匹配模板的时候,能够使用现有的模板部分产生新的模板。


参考下面的说明书和附图,可更彻底地理解本发明,本发明的目的和优点。
附图的简要描述图1是说明当前优选的韵律模板匹配数据结构的数据结构图;图2是在最佳实施例中表示对于词的强调模式如何被改写和表示的图;图3是典型的模板查询树,表示了具有两级强调的词如何被表达;图4是相似的模板查询树,表示了具有三级强调的词如何被表达;图5是模板匹配图,表示了一个示例性的词“avenue”如何使用本发明被处理;和图6是模板匹配图,说明了示例性的词“Santa Clarita”如何使用本发明被处理。
具体实现方式参考图1和图2,本发明的韵律模板匹配系统示出了在例如树10的树结构中的词中的强调模式。目前首选的树结构是二叉树结构,其具有根节点12,在根节点下面有成组成对的子节点,子子节点等等。这些节点表示不同的强调模式,其相应于当词或者短语被说的时候音节如何被强调或者加重。
参考图2,表示了与相应的对于每个词的强调模式和它的韵律转换一起的词的示例性列表。例如,词“Catalina”在第三个音节上具有它的最强的重音,在第一个音节上具有另外的次重音。为了说明的目的,数字被用来指定应用到音节上的强调的不同级别,其中“0”相应于不强调的音节,“1”相应于强烈强调的音节,而“2”相应于较轻强烈强调的音节。虽然这里数字表示法用来表示不同的强调级,应该理解为其它的表示法也能被用来实现本发明。虽然这里的描述也基本上集中于对音节的重音或强调,其它的韵律特性也可以使用这里所描述的相同的技术被表示。
参考图1,树10用作在韵律模式查询机制中的部件,通过该查询机制,强调模式被应用到文本语音合成器14的输出中。文本被输入到文本分析模块14,该模块确定最终送到声音产生模块16中的成串的数据。在文本分析期间发现的这部分数据是由音节分组的声音,并且对每个音节指定强调级。由音节指定的强调模式将被用来通过韵律模块18访问韵律信息。如前面所讨论的,修改例如改变音调轮廓和/或语音的持续时间的韵律,需更模仿其中人类说话者在上下文中词或短语的发音的方式。文本语音合成器和它的相关的重放模块和韵律模块能够基于不同合成技术中的任何一类,该合成技术包括链接的合成法和基于模型的合成法(例如,声门源模型合成法)。
韵律模决基于存储在查询表20中的韵律信息修改从文本语音合成器14中输出的数据串。在示例性实施例中,表20包括音调修改信息(在22栏中)和在24栏中的音长修改信息。当然,依靠被使用的文本语音合成器的类型,其它类型的韵律信息能够被代替使用。对于显示在栏26中的各种不同强调模式,表20包括韵律信息(音调和音长)。例如,音调修改信息可以包括用来在音调被合成器使用时调整高度和进展的一列整数或浮点数字。不同的调整值可以被使用来反映说话者是男性或者女性。相似地,音长信息可以包括整数或浮点数值,其指示选择的声音(典型的元音声音)的重放声长延续了多少。与韵律模块18相关联的韵律模式查询模块28访问树10来获得表20的指针,和然后检索相应的模式的音调和音长信息,使得它可以被韵律模块18所使用。应该被理解为,在图1中说明的树10已经被极大地简化了以允许它适于该页。在实际的实施例中,树10和它的相关联的表20将典型地包括在表中的更多的节点和更多的项。在这点上,图3表示了第一个三级的示例性树10a,其可以是考虑两级强调(强调和非强调)的典型的模板系统,而图4表示了第一个两级的示例性树10b,其说明模板查询系统可以如何被实现的,其中允许三级强调(非强调,主强调,次强调)。由于在树中的级别数相应于在相关的韵律模板中的音节的最大值,实际上可能需要8级或者更多级的树。
在表10a(图3)和10b(图4)中,注意到节点的数字被确定为“空”。其它的节点包括对应于强调模式的特定结合的强调模式整数。在通常的情况,能够提供具有强调模式的每个节点;因此没有节点是空的。然而,在实际的工作系统中,可能有对于特定的强调结合没有可利用的训练例子的情况。在没有可利用的数据时,在树中的相应的节点仅装载空值,使得即使对在表20中的节点没有可利用的模板数据,树能被从父到子穿过,反之亦然。换句话说,空节点用作占位符,从而即使对于这些节点没有可利用的强调模式,保持该树的拓扑结构。
参考图1,现在关于树结构如何被用来访问表20是明显的。文本输入30具有相关的音节强调模式32,其由文本分析模块14确定。在说明性的实施例中,这些相关的音节强调模式将被表示为数字强调模式,该模式对应于在树10中发现的数值。
假如文本输入是两音节的词,其在第一个音节具有主重音并且在第二音节没有强调(例如10),于是韵律模式查询模块28将穿过树10直到它发现包括模式“10”的节点40。节点40存储强调模式“10”,该模式相应于具有强调的第一个音节和不强调的第二个音节的两音节的词。从那里,模式查询模块28访问表20,如行42,从而获得相应的对于“10”模式的音调和音长信息。然后在44表示的音调和音长信息被提供给韵律模块18,在那里它被用来修改来自合成器14的数据串,使得第一个音节被强调而第二个音节不被强调。
虽然有可能建立树结构和相应的表,该表包括系统将遇到的每一个强调模式的所有可能的组合,但仍存在着不实际或可行的很多种情况。在一些情况下,将存在不适当的训练数据,使得一些强调模式组合将不存在。在存储资源处于优化的其它的应用中,系统设计者可能选择截去或减少某些节点来减少树和它的相关的查询表的尺寸。本发明被设计用来通过在不工作时产生新的或者替代的韵律模板来处理这些情况。如下面更详细地解释,系统是这样实现它的,通过把输入的文本强调模式与在树中存在的一个或者更多的模式相匹配,然后增加或者克隆所需要的另外的强调模式值,从而允许现有的部分模式被链接来形成希望的新模式。
韵律模式查询模块28处理这些情况,其中对于给定的词的完整韵律模板不全部存在于树10和它相关的表20中。该模块这样进行,即通过穿过或走过树10,在根节点12开始然后沿着每个分支向下通过每个末端。由于模块从节点到节点前进,在每一步它检查存储在当前节点中的强调模式是否与在词中的相应的音节的强调模式匹配。
每次当存储在节点中的强调模式数值与在目标词中的相应音节的强调数值不匹配时,查询模块向对于每个正通过路径所保持的运行累计增加一个预定的惩罚。具有最低惩罚分数数的路径是目标词的一个最佳匹配强调模式。在最佳实施例中,惩罚分数被从与不同的模板音节强调和目标音节强调的组合相关的惩罚值的存储矩阵中选择。此外,这些预存储的惩罚可以基于在被说的句子或短语中的目标词的上下文被进一步修改。直觉上突出的上下文具有与它们相关联的惩罚修改量。例如,在说英语时,在词尾音节的韵律误匹配是很显而易见的。因此,系统增加从发生在词尾音节的误匹配惩罚矩阵中选择的惩罚。
执行一个搜索,以将在目标词中的音节与最小化了误匹配惩罚的参考模板中的音节相匹配。概念化的搜索列举了所有可能目标词音节到参考模板音节的分配。事实上,不需要列举所有可能的分配,因为,在搜索的过程中,有可能知道一些序列的音节匹配不可能与其它的相比,因此能被放弃。特别地,假如对于部分匹配的误匹配惩罚超出了对全部匹配的最低误匹配惩罚,那么该部分匹配能安全地被放弃。
为了理解惩罚被应用的概念,参考图3。图3的树结构能够从根节点行进通过各种路径到树的底端显示的8个叶节点中的每一个。一个这种路径由虚线50显示。其它的路径可以从根节点到中间节点被跟踪,例如路径52。路径50在包括模式“100”的节点终止,而路径52在包括模式“01”的节点终止。路径52也能被延伸来定义也在包括“010”的节点的其他路径端点。由于韵律模式查询模块28探究每一个可能的路径,它对每个路径存积惩罚分数。当试图匹配由输入文本提供的目标词的强调模式“01”的时候,路径52将具有零惩罚分数,但所有其它的路径将具有较高的惩罚分数,因为它们不精确地匹配目标词的强调模式。因此,当一个索引进入韵律查询表20时(图1),查询模块将把路径52确定为最低成本的路径,然后把包括“01”的节点确定为使用的适当节点。所有其它具有更高惩罚分数的路径将被拒绝。
如上面提到的,存在着利用穿过通过树的任何路径没有发现适当的匹配的情况。韵律模式查询模块28利用节点构造技术寻址这个位置。图5给出了该技术如何被应用的一个简单的例子。
参考图5,目标词“avenue”具有强调模式“102”,如字典信息60所指示的。因此韵律模式查询模块理想地将在树10中发现包括强调模式“102”的节点。在这种情况下,然而,强调模式“102”在树10中没有被发现。韵律模式查询模块28在仅仅包括两音节强调模式的树结构中查找三音节强调模式。然而,存在着包括“10”和“12”的节点,其可以用作希望的模式“102”的近似值。因此,该模块通过复制或者克隆在树上的一个节点而产生另外的强调模式,使得模板的一个音节能够被目标词的两个或者更多临近的音节所使用。
在图5中,被显示的目标词“avenue”分解成在62的音节。两个节点,即包括“10”的节点和包括“12”的节点匹配目标词的第一个音节的强调模式。在图5中,注意,显示在64的目标词的第一个音节的强调模式分别匹配如66和68所示的节点“10”和“12”的开始强调模式。显示在70的目标词的中间音节的强调模式匹配在72显示的节点“10”的第二个音节。它没有匹配如74所示的节点“12”的第二个音节。然而,因为查询树10包括仅仅一个和两个音节节点,第三个音节必须被产生。该最佳实施例通过克隆或复制相邻音节的强调模式来进行。因此附加的“0”强调模式在76被增加,而附加的“2”强调模式在78被增加。产生的两个路径(包括增加或克隆的音节)使用惩罚矩阵被评估。这两个的存积分被评定,并且具有最低惩罚分数的解决方案被选择。
该最佳实施例通过发现在查询表中的初始惩罚值计算惩罚。示例性的查询表如下面所提供表1输入音节模板 音节 强调强调 0 1 200 16 2116 0 4
2 240于是这个初始值通过应用下面的修改规则被修改,来解决上下文效果。
规则1 假如模板音节通过重复前面的音节被构造,对惩罚值增加4。
规则2 假如前面输入音节具有1或2的强调级,对惩罚值增加4。
规则3 假如随后输入音节具有1或2的强调级,对惩罚值增加4。
规则4 假如误匹配音节是在词中的最后一个音节,乘累积惩罚16。
虽然上述的上下文修改规则基于目标词的韵律特征,容易地理解为,与目标词或短语有关的其它语音特性也可以被使用作为上下文修改规则的基础。
在示例性例子中,除了最后的音节,首先产生的解决方案“100”正确地匹配目标词“102”。因为变换已经产生,从而希望的“2”用“0”代替,初始的两个惩罚产生(看表1的惩罚矩阵)。另外,上下文修改规则被应用到第一个产生的解决方案中。在这种情况下,初始的惩罚根据规则1被增加4,然后根据规则4乘16,从而产生((2+4)*16=)96的惩罚分数。
通过相似的分析,除了在第二个音节中的对于“0”的变换“2”,第二个解决方案“122”正确地匹配目标词“102”。对“0”的变换“2”也产生两个惩罚。另外,初始的惩罚根据规则1,2和3被增加12从而产生(2+4+4+4=)14的惩罚分数。因此,第二个产生的解决方案“122”具有较低的存积惩罚分数并且被选择为与目标词最相关的强调模式。结果该解决方案传送相同的存积惩罚分数,韵律模式查询模块能够包括一组设计来打破连接的规则。例如,当选择一个解决方案时,连续的非强调音节通过连续的中间强调音节而被支持。执行该最佳实施例的伪码在这里作为附录而被附加。
继续在图5中说明的例子,韵律模式查询模块将使用模式“10”来访问表和恢复对该模式的音调和音长信息。接着将重复来自“10”模式的第二个音节的音调和音长信息,用于构造的“102”模式的第三个音节中。恢复的韵律数据然后被结合或者链接,并且被送到韵律模块18(图1)中,用来在修改来自合成器14的串数据时使用。
在图6中所示的稍微更复杂的例子将进一步说明该技术,通过该技术,查询模块处理不准确的匹配。图6的例子使用了目标词“Santa Clarita”。希望的目标词的强调模式是“20010”。模板查询树具有在图4中的树10b的三部分分支结构,但延伸更多级从而包括升到5音节的模式。该树的少数相关分支被示意地显示在图6中。
为了概括前面例子已显示的情况,最佳查询算法沿模板查询树下行,试图匹配目标词的音节强调级。这种匹配不需要准确。更合适地,通过相加从惩罚矩阵发现的值保持紧密的测量,该矩阵是通过上下文相关的惩罚修改规则修改的。由于树的不同分支被探索,假如对于部分穿过的分支的存积惩罚分数超出了迄今发现的最佳分支的存积惩罚分数,路径不需要完全地跟踪。系统将通过克隆或复制现有的节点来插入节点,从而允许模板的一个音节被目标词的两个或者更多的相邻音节使用。自然地,因为增加克隆的音节相应于模板/目标误匹配,增加音节的行动引起惩罚,其被与导致该分支的其它存积惩罚一起被总计。
由于该算法继续利用目标音节匹配在树中的节点,记录被保持作为每个目标音节的被匹配的模板音节。随后,当文本语音合成器被使用的时候,被记录的模板音节的韵律特性被应用到相应于来自目标词的音节的数据中。假如通过一条路径的下降导致节点被克隆,那么相应的模板音节的韵律信息为双方或所有的目标音节所使用,该下降算法与该目标音节相配。根据音调信息,这意味着模板音节的轮廓应该延伸越过两个目标音节的音长。根据音长信息,两个目标音节应该是根据模板音节的相关音长值的被指定音长值。
迄今为止说明的例子集中在单个树的使用。本发明能够被扩展使用多个树,每个被应用在不同的上下文中。例如,被应用到合成器的输入文本能够被分析或语法分析来确定是否特定的词语是在句子或者短语的开始、中间或者结尾。不同的韵律规则根据词在短语或句子中出现的地方可以希望被应用。为了适应这种情况,系统可以使用多个树,每个具有包括对那个上下文的音调和音长信息的相关的查询表。因此,假如系统在句子的开始处理一个词,由开始词设计使用的树将被使用。假如词在句子的中间或者结尾,相应的其它树将被使用。当然,它将被认识为这种多重树系统能够作为一个单独的大树被执行,在其中,开始、中间和结尾开始点可以是第一个来自单独根节点的三个子节点。
在这里已经描述的算法从目标词的第一个音节到目标词的最后一个音节的处理是以“左到右”的次序。然而,假如在模板查询树中的数据是适当的反次序,该算法也能被应用从目标词的最后一个音节到目标词的第一个音节的处理是以“右到左”的次序。
从前面所述应理解为本发明可以被用来选择对于各种不同应用的语音合成的韵律模板。虽然本发明已经以它现在的最佳实施例被描述,在不偏离如所附权利要求列出的本发明的精神的情况下,能够对前述作出修改。
权利要求
1.一种文本语音合成系统,包括能接纳目标合成文本的文本输入模块;韵律模块,其连接到文本输入模块,用来把韵律信息与目标合成文本相关联,该韵律模块使用一种n路树结构来识别对于目标合成文本的韵律信息;和声音产生模块,其连接到韵律模块,用来把目标合成文本转变成使用韵律信息的可听的语音。
2.根据权利要求1的文本语音合成系统,其中韵律模块使用基于强调模式的树结构,使得树结构的每个节点相应于可能与文本串的音节部分相关联的强调级。
3.根据权利要求2的文本语音合成系统,其中文本输入模块可操作地把目标合成文本分割成音节部分,并且确定每个音节部分的强调级,从而形成目标合成文本的强调模式。
4.根据权利要求3的文本语音合成系统,其中韵律模块可操作地穿过树结构,以识别相应于目标合成文本的强调模式的匹配强调模式,并且使用匹配强调模式恢复目标合成文本的韵律信息。
5.根据权利要求1的文本语音合成系统,其中韵律信息被进一步定义为音调修改信息和音长修改信息。
6.一种用来产生合成语音的方法,包括步骤接收输入的文本串;使用n路树结构来识别对于输入文本串的韵律信息,其中树结构基于强调模式,使得树结构的每个节点提供可以与文本串的音节部分相关联的强调级;和使用韵律信息把输入文本串转变成可听的语音。
7.根据权利要求6的方法,还包括步骤把输入文本串分割成音节部分;确定对于输入文本串的每个音节部分的强调级,从而形成对输入文本串的强调模式;穿过树结构,以识别匹配强调模式,该模式匹配输入文本串的强调模式;和使用匹配强调模式来恢复输入文本串的韵律信息。
8.根据权利要求7的方法,其中穿过树结构的步骤进一步包括步骤把输入文本串的音节部分的强调级与树结构中相应的音节部分的强调级相比较;确定表示在输入文本串的音节部分的强调级和在树结构中相应的音节部分的强调级之间关系的匹配分数数;和使用匹配分数来识别匹配强调模式,该模式相关于输入文本串的强调模式。
9.根据权利要求8的方法,其中确定匹配分数的步骤还包括,基于源自输入文本串的副本内音节部分的上下文和输入文本串的字的上下文的至少其中一个,来修改匹配分数,其中词包含有用来确定匹配分数的音节部分。
10.根据权利要求8的方法,还包括步骤存积在树结构中穿过的每个路径的匹配分数;存储具有最低匹配分数的强调模式;当给定的路径的匹配分数小于或者等于该最低匹配分数的时候,更新具有最低匹配分数的强调模式;和当给定路径的匹配分数超出该最低匹配分数的时候,终止穿过在树结构中的路径。
11.根据权利要求7的方法,其中穿过树结构的步骤还包括步骤,当匹配强调模式在树结构中没有被识别时,构造与输入文本串的强调模式相关的强调模式。
12.根据权利要求11的方法,其中构造强调模式的步骤还包括步骤识别一个或者更多具有相关于输入文本串的强调模式的强调模式的目标节点;当在目标节点的音节部分的数量小于在输入文本串的音节部分的数量的时候,从在目标节点的相邻音节部分克隆强调级;和把强调级链接成目标节点的强调模式,从而构造与输入文本串的强调模式相关的强调模式。
13.根据权利要求12的方法,其中构造强调模式的步骤还包括步骤确定表示在每个目标节点的强调模式和输入文本串的强调模式之间的相互关系的匹配分数数;和使用该匹配分数来确定最相关于输入文本串的强调模式的目标节点。
14.根据权利要求13的方法,还包括步骤恢复对于识别的目标节点的韵律信息;克隆相应于目标节点的被克隆的相邻音节部分的韵律信息的部分;和把韵律信息部分链接成韵律信息的其余部分,从而构造相应于确定的目标节点的韵律信息。
15.根据权利要求14的方法,还包括步骤,使用相应于识别的目标节点的韵律信息,把输入的文本串转变成可听的语音。
16.根据权利要求6的方法,其中韵律信息被进一步定义为音调修改信息和音长修改信息。
17.一种产生使用在文本语音合成系统中的韵律信息的方法,包括步骤接收输入的文本串;确定与输入文本串相关的韵律特性模式;识别来自多个韵律模板的第一个韵律模板,其中每个韵律模板表示可能与文本串相关的韵律特性模式,并且第一个韵律模板具有相关于输入文本串的韵律特性模式;当第一个韵律模板的模式短于输入文本串的模式时,复制第一韵律模板的一部分;和把第一韵律模板的复制部分链接成第一韵律模板的模式,从而构造更相关于输入文本串的产生的韵律模板。
18.根据权利要求17的方法,还包括步骤,使用产生的韵律模板来恢复输入文本串的韵律信息,并且使用韵律信息把输入文本串转变成可听的语音。
19.根据权利要求17的方法,其中每个韵律模板进一步被定义为文本串的每个音节部分的强调级的模式。
20.根据权利要求19的方法,其中确定韵律特性模式的步骤包括步骤将输入文本串分割成多个音节部分;确定输入文本串的每个音节部分的强调级,从而形成每个输入文本串的强调模式。
21.根据权利要求20的方法,其中识别第一韵律模块的步骤还包括步骤穿过一个n路树结构,以便识别韵律特性的匹配模式,其中该树结构基于强调模式,以便该树结构的每个节点提供一个可能与文本串的音节部分相关的强调级。
22.根据权利要求21的方法,其中复制第一韵律模块的一部分的步骤还包括步骤当第一韵律模块中音节部分的数量少于输入文本串的强调模式的音节部分数量时,克隆来自该匹配模式的相邻音节部分的强调级,并且将该强调级链接成第一韵律模块的匹配模式。
全文摘要
树结构形式的韵律匹配模板存储索引和模板信息,该索引指向查询表,该模板信息规定用来对文本语音合成器的输出增加音调变化的音调和音长值。该查询模块使用探究树的每个分支的搜索算法,基于由树节点表示的音节是否匹配目标词的相应音节的指定惩罚分数。具有最低惩罚分数的路径被选择为韵律模板表的索引。在目标词中的音节的数量和在树中的节点的数量之间不可能发现一一匹配的情况下,该系统将通过克隆现有节点来增加节点。
文档编号G10L13/04GK1372246SQ02108480
公开日2002年10月2日 申请日期2002年1月4日 优先权日2001年1月5日
发明者尼古拉斯·基布尔, 泰德·H·阿普莱鲍姆 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1