具体实施方式
现请参阅图1,该图显示出一个汉语普通话语音音节10图形表示。音节10包括声母12和韵母14。声母12为辅音,韵母14有一元音开头。声母12相应于音节的声母部分,韵母14相应于音节的韵母部分。
本发明便利地包括当确定一个音节的声母和韵母来辨识音节的语音结构时的上下文相关成分。当辨识声母和韵母时,本发明更为精确地确定音节的语音结构且便利地辨识了音节的音调。
现请参阅图2,按本发明构造的,该图显示出一个识别汉语普通话语音系统16的方框图。该系统16优选地包括处理器18、输入装置20、显示装置22、数据存储装置24和存储器26。处理器18、输入装置20、显示装置22、数据存储装置24和存储器26,通过总线28耦合于一台冯。诺依曼体系结构计算机,例如一台个人计算机。处理器18优选地是一台微处理器,例如Motorola 68040;显示装置20优选地是一台视频监视器;数据存储装置24包括用于存储数据的随机存取存储器(″RAM″)和只读存储器(″ROM″),优选地是磁盘驱动器;存储器26包括存储数据程序指令的RAM和ROM。输入装置20包括键盘,鼠标类型控制器,麦克风和模拟到数字(″A/D″)转换器。总线28是传送数据和命令的常规总线。在优选的实施例中,系统16是一台在California,Cupertino的Apple计算机公司生产的MacintoshQuadra 840AV计算机系统。本领域的技术人员明白该系统16也可由IBM个人计算机或其它计算机系统实现。
存储器26包括一个语音识别系统30,一个训练装置40,和一个平滑装置42。语音识别系统30,训练装置40,平滑装置42,存储器26的组成部分将在下面分成单独装置讨论,本领域的技术人员明白组成部分在单个的存储空间中将占据相邻部分,在优选的实施例中,存储在存储器26的程序在被处理器18执行时完成语音识别系统、训练装置和平滑装置的功能。
该语音识别系统30包括预处理装置32、HMM存储装置34、语音辨识装置36和语音决策装置38。预处理装置32接收来自输入装置20的数字化音节输入信号并处理数字化音节以供识别。预处理装置32采用常规方法处理输入信号。预处理装置32优选地对表示音节的、从输入装置20接收的数字信号进行快速傅立叶变换(″FFT ″)。预处理装置32也可替换地对数字信号进行线性预测编码(″LPC″)。在其它备选方案中,预处理装置32可以产生FFT或LPC的矢量量化信号。还有许多其它方法预处理数字化音节信号;本领域的技术人员会明白这些方法且这些方法可能应用在预处理装置32中。预处理装置32有一个输入耦合到输入装置20,以便通过总线28接收数字信号。预处理装置32也含有一个输出,通过总线28耦合到语音决策装置38,并且预处理装置32通过总线28传送处理后的、数字信号到语音决策装置38。
HMM存储装置34存放构成汉语普通话语音可能音节的声母和韵母的隐马尔可夫模型。隐马尔可夫模型被用来对语音、手写体和其它信号建模。本领域的技术人员会明白隐马尔可夫模型。HMM存储装置34将参考图4详尽描述。HMM存储装置34有一个输出通过总线28耦合到语音决策装置38,将模型提供给语音决策装置38。
语音辨识装置36存储例如汉语普通话的有调语言声母和韵母的所有合法组合的表示。语音辨识装置36描述整个汉语普通话语言。语音辨识装置36将参考图3详尽描述。语音辨识装置36通过总线28耦合到语音决策装置38。
语音决策装置38是一个装置,它采用存储在语音辨识装置36的声母和韵母和存储在HMM存储装置34的模型来确定被预处理装置32处理过的音节的语音结构和音调。语音决策装置38按照存储在语音辨识装置36的排列声母和韵母排列从HMM存储装置34接收的模型。本发明优选地采用声母和韵母的隐马尔可夫模型。声母的模型可以添加到韵母的模型后面构成完整的音节模型。
语音决策装置38比较从预处理装置32接收到的处理后的输入与被排列后的模型,并确定最佳匹配于处理后的输入的模型排列。语音决策装置38采用常规技术,例如维特比搜索或动态规划,来比较模型的排列与处理后的输入。语音决策装置38包括存储数据的存储器,因此在内部识别音节时,该存储器可以存储靠连接声母和韵母子音节的模型产生的音节的模型。语音决策装置38通过总线28耦合到预处理装置32、HMM存储装置34、语音辨识装置36和处理器18。
训练装置40产生汉语普通话语音声母和韵母的模型。训练装置40采用存储在数据存储装置24的发音作为输入来产生模型。训练装置40和存储在数据存储装置24的发音,将参考图6A和6B来详细描述。产生了模型后,训练装置40将它们传送到HMM存储装置34。训练装置40通过总线28耦合到数据存储装置24和HMM存储装置34。
平滑装置42修正在HMM存储装置34内的隐马尔可夫模型,以便语音决策装置38用它们更好地辨识音节。平滑装置42接收存储在HMM存储装置34的模型并修正模型来更好地描述汉语普通话语音的声母和韵母。可供选择的,平滑装置42可以直接从训练装置40接收模型,平滑后,可以将模型传送到HMM存储装置34。平滑装置42包括组存储装置44、LDM产生装置46和细化模型修正装置48。组存储装置44、LDM产生装置46和细化模型修正装置48分别有一个耦合到总线28的输入和输出。组存储装置44、LDM产生装置46和细化模型修正装置48将参考图7详细讨论。平滑装置42通过总线28耦合到处理器18,HMM存储装置34和训练装置40。
现请参阅图3,该图显示出语音辨识装置36示例性实施例的方框图。该语音辨识装置36的实施例用于示例性的有调语言。在这个示例性的有调语言中共有3个声母、4个韵母和2个音调。该有调语言用来容易、清楚地表示HMM存储装置34和语音辨识装置36的结构和功能。本领域的技术人员明白怎样提升HMM存储装置34和语音辨识装置36以适用有更多声母、韵母和音调以及特定合法组合的汉语普通话或任何其它实际语言。
语音辨识装置36存储待识别语言的所有声母、韵母和音调合法组合。语音辨识装置36包括多个音节部分。每个音节部分包括声母部分,韵母部分和音调部分。音节部分的声母部分和韵母部分一起构成一个有调语言的合法音节。音调部分存储音节可能含有的音调表示。并非每个合法音节包含有调语言的全部音调。这样,一个音节部分51有表示声母i1的声母部分50和表示韵母f1的韵母部分52。音节部分51也可以包含表示音节/i1 f1/可能含有音调的音调部分。对于含2个音调的示例语言,音调部分包括2位,01表示仅仅有T1,10表示仅仅有T2而11表示T1和T2。声母部分50和韵母部分52成对的共同表示音节/i1 f1/。例如,i1可能是/b/而f1可能是/at/。这样,声母部分50和韵母部分52描述音节/bat/。音调部分114表示音节/bat/可能含有T1或T2作为音调。音节部分耦合到总线28。
如前所述,语音辨识装置36描述示例性的语言的所有合法音节。音节部分53描述了另一个音节。音节部分53有声母部分54和韵母部分56。声母部分54含有i1的参考,而韵母部分56含有韵母f4的参考。继续上述例子,i1为/b/和f4可能是/it/。声母部分54和韵母部分56的成对描述音节/bit/。音节部分53也含有音调部分55。音调部分55包含指示可能含有音调T1或音调T2的音节/i1 f4/的指示器。
图3表示不含声母的音节的音节部分的优选实施例。本发明便利地对不含有声母的音节,或称单独韵母采用伪声母。按照常规,现有的语音识别系统将单独韵母仅按韵母建模。但是人的发音系统却不能产生仅有韵母的声学信号。人的发音系统在单独韵母前产生一个声门闭塞。常规语音识别系统对识别单独韵母有困难。本发明便利地在语音辨识装置36中,采用伪声母辨识声门闭塞。伪声母被当做声母对待。例如,音节部分57包括存放伪声母PI4的伪声母部分58和韵母部分60。音节部分57包括表示仅仅有音调T2的音节/f4/的音调部分59。图3所用的示例性语言有2个伪声母,PI1和PI4。对于汉语普通话,本发明采用6个伪声母。附录A列出了优选的伪声母及其对应韵母。伪声母按照韵母开头元音来与相应的韵母匹配。例如伪声母AH_A与所有的由元音A开头的单独韵母匹配。语音辨识装置36便利地提供声母部分与韵母部分对来描述所有的合法音节。
现请参阅图4,该图表示按照本发明构造的HMM存储装置34方框图。HMM存储装置34存储在语音辨识装置36中列出的每个声母,韵母和伪声母的隐马尔可夫模型。HMM存储装置34包括3组模型:第一组62存储声母的模型,第二组64存储韵母的模型以及第三组66存储伪声母和单独韵母的模型。本发明便利地在模型的细化上表现出灵活性。图4表示本发明最为详细的模型。然而HMM存储装置36,可能配置来存放粗化模型。模型的细化程度取决于能得到的训练数据量。
现有的语音识别系统为每个声母和韵母提供一个模型。与此相对照,本发明提供上下文相关的子音节模型来表示汉语普通话语音。模型依赖于它们相应的声母或韵母以及音节的音调。这样,当识别声母时,语音决策装置38纳入与声母成对的韵母和音节的音调作为识别的因素。现有的系统有1个模型描述示例性的语言的i1,而本发明有6个i1的模型。本发明优选地作出许多额外的比较以便在确定时包括上下文相关信息。在HMM存储装置34存贮的每个模型优选地是声母、韵母和伪声母的隐马尔可夫模型。本领域的技术人员明白HMM存储装置34可存放其它形式声母、韵母和伪声母的模型。
语音决策装置38从语音辨识装置36接收可能音节并从HMM存储装置34接收模型。语音决策装置38按照从语音辨识装置36接收到的音节排列模型。例如,为了构造由音节部分51描述的音节,语音决策装置38连接依赖于f1和T1的i1的模型与依赖于i1与T1的f1的模型。依赖于f1和T1的i1的模型68存储在HMM存储装置34,而依赖于i1和T1的f1的模型80也存储在HMM存储装置34。语音决策装置38也采用含有不同音调的音节的模型。为此,语音决策装置38连接依赖于f1和T2的i1的模型70与依赖于i1和T2的f1的模型52。注意在最详细的例子里,对语音辨识装置36的每个组合产生多个模型,每个对应于该语言的一个音调。进一步要注意的是,当语音决策装置38连接音调相关模型时,它总是连接具有相同音调相关性的模型。存储在部分70的依赖于f1和T2的i1模型永远不与存储在部分80依赖于i1和T1的f1模型连接。最后,注意依赖于韵母的声母组合当与依赖于声母的韵母成对,是一个音节相关。换言之,等效于依赖于音节的声母和依赖于音节的韵母。
语音决策装置38连接声母和韵母或伪声母和韵母的模型产生有调语言合法音节的模型。本发明便利地采用声母、伪声母和韵母的隐马尔可夫模型,因为隐马尔可夫模型可能被连接起来构成大的结构,例如音节模型。本领域的技术人员明白怎样连接韵母的隐马尔可夫模型与声母或伪声母的隐马尔可夫模型来构成音节的隐马尔可夫模型。
如前所述,图4中存储在HMM存储装置34的该实施例的模型是最为详细的子音节模型。然而本发明可能采用粗化子音节模型。例如,不需要依赖于相应的声母或韵母的模型。在这种情况下,每个模型仅仅依赖于音节的音调。可供替换地,模型可能是音调无关但依赖于相应的声母或韵母。最后,有些模型可能是上下文无关,或依赖于相应的声母、相应的韵母或音调。各种可能的组合导致层次模型。父模型为上下文无关模型。在这种情况下,声母或韵母有一个单一模型描述所有的出现的声母或韵母。在上下文无关模型中,相应的音节声母或韵母及音调的相关性未被建模。上下文无关模型可被改进成两类上下文相关模型。第一类上下文相关模型仅仅依赖于音节的音调。第二类上下文相关模型仅仅依赖于相应的声母或韵母。这两类上下文相关模型也可合并构成更为详细的上下文相关模型。在这种最为详细的上下文相关模型,模型依赖于相应的声母或韵母而且依赖于音节的音调。图4表示这类最为详细的上下文相关的模型。
每类更为详细的模型比较前面粗化模型需要更大量的训练数据来产生模型。当训练数据有限时,使用粗化模型可能更为有利。模型上下文相关仅仅需要与组62、64和66一致。这样,第一组62中的声母可能仅仅依赖于音调,而第二组64中的韵母可能仅仅依赖于相应的声母。一般来说最为细化模型更好。然而当训练数据有限时,仅仅依赖于韵母的第一组62中的声母,以及仅仅依赖于音调的组64中的韵母则更好。
第三组66包括数据部分,存储对应于伪声母的伪声母和韵母模型。本发明将伪声母按声母一样对待。例如,为构成在语音辨识装置36中描述的音节部分57的音节,语音决策装置38连接从HMM存储装置34来的伪声母模型88,PI4(f4,T1)和韵母模型90,f4(PI4,T1)并连接从HMM存储装置34来的伪声母模型92,PI4(f4,T2)和韵母模型94,f4(PI4,T2)。同层次的上下文无关和上下文相关模型像应用于声母和韵母一样应用于伪声母及相应的韵母。即,伪声母的模型可能是上下文无关,仅仅依赖于相应的韵母,仅仅依赖于音节的音调,或依赖于相应音节的韵母和音调。
图4也表示本发明如何不用音调分析来确定音节的音调。只要音调相关模型用于声母或韵母,语音决策装置38从处理后的输入与模型的比较中确定音节的音调。这样,本发明便利地同时确定音节的语音结构和音节的音调。
现请参阅图5,该图显示出在该系统16中数据流动及信号处理的方框图。该系统16通过输入装置20接收音频信号。输入装置20包括麦克风和A/D转换器。麦克风接收模拟、音频信号并将其转化为模拟电子信号。A/D转换器接收模拟电子信号并将其转化为数字电子信号。A/D转换器将数字电子信号传送给语音识别系统30。
在该语音识别系统30中,预处理装置32接收数字电子信号。预处理装置32产生数字电子信号的FFT信号而且产生FFT的系数信号。预处理装置32可替换地产生数字电子信号的线性预测编码信号。预处理装置32将处理后的信号传送给语音决策装置38。语音决策装置38接收信号并产生信号给语音辨识装置36来传送可能的音节。语音决策装置38从语音辨识装置36接收表征可能音节的信号并产生信号给HMM存储装置34来传送声母和韵母的模型。当语音决策装置38从HMM存储装置34接收模型的信号时,语音决策装置38按照从语音辨识装置36接收到的音节信号,将这些模型连接到一起。语音决策装置38靠将韵母连接到声母后面来连接声母和韵母。类似的,语音决策装置38靠将韵母连接到伪声母后面来连接伪声母和韵母。然后语音决策装置38比较从预处理装置32来的处理后的信号与声母和韵母的连接模型。语音决策装置38采用维特比搜索或动态规划来确定哪个连接模型最佳匹配语音信号。这样,语音决策装置38比较输入信号与汉语普通话所有的合法音节模型。然后语音决策装置38产生并输出一个表征连接模型声母,韵母和音调的信号这一模型最佳匹配于从预处理装置32接收到的信号。语音决策装置38可以将输出信号传送给查找表或存储装置。存储装置可以象在常规词处理器中一样存储信号。查找表也可以确定表示音节的合适字符并传送信号给显示装置22以显示选取的字符。
如上所述本发明被配置成识别汉语普通话语音的音节。音节是汉语普通话语音的基本单元,而且音节识别是语音识别的通常形式。本发明也可替换地被配置成识别更高级的语言单元,例如词、短语、句子或任何高级单元。例如,为识别3个可能输入的句子,语音辨识装置36可被配置为包含表示组成每个句子的音节的部分。当语音决策装置38从预处理装置32接收处理后的输入信号时,语音决策装置38从语音辨识装置36接收句子信号并从HMM存储装置34接收声母、韵母和伪声母的模型的信号。然后语音决策装置38按照句子将模型连接在一起。语音决策装置38比较从预处理装置32接收到的输入与连接模型并选取最佳匹配于输入的连接模型的集合。语音决策装置38产生并输出表示最接近匹配输入句子的信号。
现请参阅图6A和6B。图6A表示当训练装置40产生存储在HMM存储装置34的模型时,在系统16内数据和信号流动的方框图。训练装置40接收多个语音输入,训练装置40为每个含有声母、伪声母或韵母的发音从数据存储装置24中产生模型。训练装置40可替换地从存储器26的另一部分接收语音输入信号。训练装置40接收的所有的发音有合适的语言结构,输入训练装置40为它产生一个模型。例如,如果训练装置40产生依赖于f1和T1的一个i1的模型,那么训练装置40接收含有i1,f1和T1的音节发音信号。训练装置40采用常规技术,例如Baum-Welch训练算法,来产生一个隐马尔可夫模型。训练装置40接收至少20个发音输入来产生一个充分的模型。优选地,训练装置40接收几百个发音输入来产生一个模型。一旦训练装置40产生了一个模型,它产生一个信号将模型传送给HMM存储装置34。
图6B是一个详尽地表示数据存储装置24的方框图。数据存储装置24包括存贮含有共同声母、韵母或伪声母以及共同相关的多个发音的多个单元。单元96存储含有i1,f1和T1的语音输入。单元存放训练装置40用于产生模型的语音输入。例如,训练装置40采用存储在单元96的语音输入来产生依赖于f1和T1的i1的模型。训练装置40在产生模型后,将模型传送给HMM存储装置34。HMM存储装置34在部分68中存储由以上例子产生的模型。语音决策装置38采用存储在HMM存储装置34的模型68来为由语音辨识装置36的音节部分51所标识的音节建模。每个单元存储至少20个语音输入并优选地存储几百个语音输入。示例性的语言需要在数据存储装置24中有36个单元。那意味着数据存储装置24存储至少720个语音输入且优选地存储几千个语音输入。为产生必要的识别汉语普通话的模型,数据存储装置24需要几百个单元来存放含有不同声母、韵母、音调和声门闭塞的语音输入。每个单元存放至少20个语音输入且优选地存储几百个语音输入。本领域的技术人员明白如何修改数据存储装置24来适应汉语普通话。
现请参阅图7。图7表示,当系统16采用平滑装置42修正存储在HMM存储装置34中的模型时数据和信号的流动的方框图。正如从图6B和配合的文字可看出的,最为详细的模型集合,依赖于声母或韵母和音调,需要非常大量训练数据。优选地有足够训练数据使训练装置40产生精确、鲁棒的最为详细的模型。如果没有足够训练数据使训练装置40产生精确、鲁棒的模型,模型可能不够精确的描述该语言的声母、韵母和伪声母。在这种情况下,平滑装置42可以靠粗化模型平滑它们来改进模型。
一个粗化模型有更少的上下文相关成分。例如,仅仅依赖于音调的模型或仅仅依赖于声母或韵母的模型就比同时依赖于音调和声母或韵母的模型更为粗化。上下文无关模型是最少相关的模型。
更为细化模型可能被任何粗化模型平滑。这样,依赖于声母或韵母和音调的最为细化模型,可能被仅仅依赖于声母或韵母、仅仅依赖于音调或上下文无关的模型平滑。类似地,粗化模型甚至可能被粗化模型平滑。例如,仅仅依赖于声母或韵母的模型可能被上下文无关模型平滑,而仅仅依赖于音调的模型可能被上下文无关模型平滑。如图7所示,平滑装置42从HMM存储装置34接收模型。LDM产生装置46发送一个信号给HMM存储装置34使其产生待平滑的模型信号并把信号传送给平滑装置42。平滑装置42优选地一起接收每个组中的模型。亦即,平滑装置42接收第一组62的声母,然后接收第二组64的韵母,然后接收第三组66相应韵母的伪声母。平滑装置42确定粗化模型,并用粗化模型平滑模型。然后平滑装置42发送平滑后的模型回HMM存储装置34。
如图7所示,平滑装置42包括组存储装置44、LDM产生装置46和细化模型修正装置48。当一组模型被平滑装置42接收,该组是被组存储装置44和LDM产生装置46接收。组存储装置44是存放模型的数据存储装置,而LDM产生装置46产生粗化模型,细化模型修正装置48则修改该组的每个模型。
LDM产生装置46产生粗化模型,细化模型修正装置48将用它修正细化模型。LDM产生装置46采用细化模型来产生粗化模型。如果平滑装置42正在用仅仅依赖于韵母的模型平滑第一组62的声母模型,LDM产生装置46从第一组62的声母中产生仅仅依赖于韵母的声母模型的粗化模型。LDM产生装置46靠确定有相似相关性的模型的算术平均值来产生粗化模型。继续这个例子,模型68将被仅仅依赖于f1的i1的模型平滑。为产生仅仅依赖于f1的i1的模型,LDM产生装置46确定模型68和模型70的算术平均值。模型68和70都是i1的,都依赖于f1,而不同之处仅仅在于它们对音调的依赖性。模型68和70的算术平均值的模型是单独依赖于f1而与音调无关的i1的模型。类似地,为产生单独依赖于f4的i1的模型,LDM产生装置46确定模型76和模型78的算术平均值。结果是i1模型依赖于f4而与T1或T2无关。同样地,LDM产生装置46可以确定仅仅依赖于音调而与声母或韵母无关的模型。为确定i1仅仅依赖于T1的模型,LDM产生装置46确定模型68,72和76的算术平均值。得出i1的模型仅仅依赖于T1。LDM产生装置46采用同样的方法来确定上下文无关的父模型。为产生i1上下文无关的模型,LDM产生装置46确定模型68,70,72,74,76和78的算术平均值。
LDM产生装置46采取基于逐点的方式计算模型的算术平均值。LDM产生装置46确定每个模型相应的点的算术平均值,得出的均值点序列是算术平均值模型也是粗化模型。
一旦LDM产生装置46产生了粗化模型,LDM产生装置46产生一个表示粗化模型的信号并将信号传送给细化模型修正装置48。细化模型修正装置48也从组存储装置44接收信号表示待平滑的模型。然后细化模型修正装置48用粗化模型平滑这些从组存储装置44接收到的模型,采用常规平滑技术例如线性插值或删除插值。本领域的技术人员会明白这些技术。然后细化模型修正装置48产生一个信号使平滑后的模型传送给HMM存储装置34。HMM存储装置34从平滑装置42接收信号并用从平滑装置42接收到的平滑后的模型替换原来的模型。得到的平滑后的模型比平滑以前更为粗化,能更好的且更为鲁棒的为声母、韵母和伪声母建模。
在可替换的实施例中,平滑装置42不包括组存储装置44。模型组被LDM产生装置46接收到并传送给细化模型修正装置48。细化模型修正装置48直接从HMM存储装置34接收模型。
存储在HMM存储装置34的模型可能被任何粗化模型、粗化模型的组合以及粗化模型的不同组合平滑。然而优选地,组62,64,或66中的模型类似的在每个组中被平滑。例如,第一组62的声母可能仅仅依赖于音调的模型平滑,第二组64的韵母可能被仅仅依赖于声母的模型平滑,而第三组66的伪声母及相应的韵母可能被仅仅依赖于音调的模型和上下文无关模型平滑。粗化模型的任何其它组合是可能的。
组存储装置44有一个输入耦合到总线28来从HMM存储装置接收信号34,并有一个输出通过总线28耦合到细化模型修正装置48。LDM产生装置46有一个输入耦合到HMM存储装置34和一个输出通过总线28耦合到细化模型修正装置48。细化模型修正装置48有一个第一输入耦合到组存储装置44,一个第二输入耦合到LDM产生装置46及一个输出通过总线28耦合到HMM存储装置34。
现请参阅图8,该图表示HMM存储装置34的第二实施例的方框图。图4中的最为详细的模型集合包括大量模型。图8表示HMM存储装置34的一个实施例,其中最为详细的模型数目比图4中的模型数目减少了。
在最为详细的模型集合中,声母依赖于韵母和音调。然而韵母相关性主要由韵母开头元音的相关性来获取。这样对于声母,可用元音相关性取代韵母相关性。这减少了模型的数目。
图8中HMM存储装置34包括第一组98声母模型,第二组64韵母模型和第三组100伪声母模型。第二组64与图4中的相同。第一组98声母模型包括的部分比第一组62少。参考图3扩展到上述示例性的语言,f2为/is/而f3为/am/。通过将声母相关性建立在韵母的头元音上而不是整个韵母上,HMM存储装置34的第二实施例减少了描述声母所需的模型数目。i1依赖于f1的模型68和模型70可能与i1依赖于f3的模型72和74组合。韵母f1和f3都由元音/a/开头。这样,对于声母相关性来说,这些韵母可以被组合。得到的依赖于开头元音/a/和音调的i1的模型为模型102和104。类似地,关于f2和f4的声母相关性可能组合,因为它们的韵母都由/i/开头。模型106和108是依赖于/i/和音调的i1模型。第三组100也采用开头元音相关性而非整个韵母相关性。模型110是依赖于/i/和T1的PI1模型,而非依赖于f4和T1的PI1模型—模型88。
通过采用元音相关性,本发明减少了模型的数目和由语音决策装置38所做的比较的数目。因为汉语普通话中韵母的数目比声母多,这一措施大大减少了HMM存储装置34的大小并增加了模型的鲁棒性。
现请参阅图9,该图描述本发明中识别汉语普通话语音的单独韵母音节的方法。该方法由步骤200开始,在步骤200该系统16接收输入汉语普通话语音音节的音频信号。输入装置20的麦克风将音频信号转化成模拟电子信号。然后输入装置20的A/D转换器把模拟电子信号转换成数字电子信号。在步骤202,该语音识别系统30的预处理装置32接收待处理的数字电子信号。预处理装置32确定数字电子信号的FFT信号,然后确定FFT信号的矢量量化码字。预处理装置32也可替换地确定LPC信号而非FFT信号。下一步,在步骤204,语音决策装置38从HMM存储装置34接收伪声母和韵母的模型;语音决策装置38按照从语音辨识装置36接收到的音节,排列并连接模型。在步骤206语音决策装置38比较处理后的输入信号与排列好的模型,并在步骤208选取最佳匹配处理后的输入信号的模型排列。这样,在步骤206,语音决策装置38将输入信号不仅仅与单独韵母模型而且与单独韵母前表示由伪声母表示的声门闭塞的模型比较。在步骤210,语音决策装置38产生并输出表示在步骤208选取的模型排列的韵母和音调的信号,本方法结束。
现请参阅图10A和10B,该图表示识别汉语普通话语音音节方法的流程图。方法由步骤300开始,系统16接收汉语普通话语音音节的输入音频信号。输入装置20的麦克风将音频信号转化成模拟电子信号。然后输入装置20的A/D转换器把模拟电子信号转换成数字电子信号。在步骤302,该语音识别系统30的预处理装置32接收待处理的数字电子信号。预处理装置32确定数字电子信号的FFT信号,然后确定FFT信号的矢量量化码字。预处理装置32也可替换地确定LPC信号而非FFT信号。在步骤304,语音决策装置38选取还未选取的汉语普通话韵母。步骤304采用多次运行的方法;第一次步骤304运行时,语音决策装置38可选取任何汉语普通话韵母。下次运行时,语音决策装置38选取它还没有选取的韵母。同样的,语音决策装置38在步骤306选取汉语普通话音调并在步骤308选取声母。在步骤310语音决策装置38确定是否选取的声母、韵母和音调是汉语普通话语音的合法音节。语音决策装置38靠比较该组合与从语音辨识装置36接收到的汉语普通话语音音节来确定组合的合法性。如果组合为一合法音节,在步骤312语音决策装置38选取依赖于韵母和音调的声母模型,并选取依赖于声母和音调的韵母模型,并将两个模型连接在一起。语音决策装置38从HMM存储装置34接收模型。然后语音决策装置38在其中存储连接模型。该方法从步骤312进入步骤314。如果组合不是合法音节,该方法也可从步骤310运行到步骤314。在可选的方法中,语音决策装置38可以连接仅仅依赖于音调,仅仅依赖于相应的韵母或声母,或上下文无关的模型。
在步骤314,语音决策装置38确定是否有另一个还未与现在选取的韵母和音调匹配的声母。如果有这样一个声母,方法回到步骤308去选取另一个还未与现在选取的韵母和音调匹配的声母。如果没有这样一个声母,方法运行到步骤316,在此语音决策装置38确定是否有另一个还未与现在选取的韵母匹配的音调。如果有这样一个音调,方法回到步骤306在那儿语音决策装置38去选取另一个还未与现在选取的韵母匹配的音调。当语音决策装置38选取一个音调时,它重置声母使得所有的声母与当前的韵母和刚刚选取的音调匹配。在步骤316如果没有这样一个音调,方法运行到步骤318,在那里语音决策装置38确定是否有还未与从语音辨识装置36接收到的音节比较的韵母。如果没有这样一个韵母,方法回到步骤304,在那里语音决策装置38选取还未与从语音辨识装置36接收到的音节比较的韵母。当语音决策装置38选取一个韵母时,它重置声母与音调使得所有的声母、音调与刚刚选取的韵母组合成音节并与从语音辨识装置36接收到的音节比较。
在步骤318如果没有这样一个韵母,语音决策装置38将模型组对来构成汉语普通话语音所有的合法音节。方法继续到步骤320,在那里语音决策装置38比较处理后的输入信号与连接模型。语音决策装置38采用维特比搜索或动态规划来比较处理后的输入信号与连接模型。还有许多其它技术来做比较;本领域的技术人员会明白这些技术。上下文相关性产生的比较是将整个输入信号与整个连接模型比较,它对于上下文协同发音(声母、韵母和音调)的声母和韵母采用详细的上下文相关模型。通过采用依赖于音调的模型,该方法在比较中包括额外一维的比较,即比较整个信号与不同音调的协同发音模型。这样,采用最为细化模型,本发明在步骤320增加了3个维数的比较,使得步骤322的决策更为精确。采用粗化模型,例如仅仅依赖于音调的模型,相应的减少步骤320比较的维数。这使得步骤322的决策不太精确但比用上下文无关模型更精确。在步骤322,语音决策装置38选取最佳匹配处理后的输入的模型排列,并在步骤324,语音决策装置38产生并输出表示在步骤322选取连接模型的声母、韵母和音调信号。该方法结束。
现请参阅图11A,11B和11C,该图表示识别汉语普通话语音音节方法的流程图,它采用本发明用于识别单独韵母的音节。方法开始步骤与图10A所示一致。为方便起见,相同的方法步骤采用相同的号码。第一个独特的方法步骤为步骤318之后的步骤420。在步骤420,语音决策装置38选取一个单独的韵母和相应的尚未被选取的伪声母。在步骤422,语音决策装置38为该单独韵母选择一个尚未被选取的单调。下一步在步骤424,语音决策装置38确定是否选取的单独韵母和音调构成合法音节。语音决策装置38比较选取的单独韵母和音调与从语音辨识装置36接收到的音节来完成这一决策。如果选取的单独韵母和音调构成合法音节,方法进行到步骤426,在此语音决策装置38将依赖于所选取的韵母和音调的伪声母模型添加到依赖于该伪声母和所选音调的韵母模型之后。这些模型是从HMM存储装置34接收到的。该方法从步骤426进行到步骤428;如果在步骤424选取的单独韵母和音调不构成合法音节,方法也进行到步骤428。在步骤428语音决策装置38确定是否有另一个音调还没有与当前单独韵母组合。如果有这样一个音调,方法回到步骤422去选取另一个还未与单独韵母组合的音调。在步骤428如果没有这样一个音调,方法继续到步骤430,在此语音决策装置38确定是否还有另一个单独韵母要被分析。如果有这样一个单独韵母,方法回到步骤420,语音决策装置38选取未被分析单独韵母。在步骤430如果没有这样一个单独韵母,在步骤432语音决策装置38比较处理后的输入信号与排列后的声母和韵母或伪声母和单独韵母模型。语音决策装置38采用与步骤320同样的技术进行比较,例如维特比搜索。在步骤434,语音决策装置38选取最佳匹配处理后的输入的排列后的模型。最后在步骤434,语音决策装置38产生并输出表示选取的排列后的模型的伪声母、韵母和音调的信号。该方法结束。
现请参阅图12,该图表示按照本发明平滑声母、韵母和伪声母的模型的方法流程图。方法开始,在步骤500,平滑装置42从HMM存储装置34接收模型。平滑装置42按照组平滑模型,组为第一组62,第二组64和第三组66。平滑装置42可以一次接收模型一个组,也可以一次接收所有的模型但按组平滑它们。在步骤502,LDM产生装置46产生粗化模型。LDM产生装置46从较为细化模型产生粗化模型。LDM产生装置46通过计算含有共同相关性的相似模型的算术平均值来产生粗化模型。例如,LDM产生装置46计算依赖于f1和T1的i1模型和依赖于f1和T2的i1模型的算术平均值来产生依赖于f1而与音调无关的i1模型。LDM产生装置46用逐点方式计算算术平均值模型。LDM产生装置46平均较为细化模型相应点的模型值来得到粗化模型相应点的模型值。
一旦LDM产生装置46产生了粗化模型,它便将粗化模型传送给细化模型修正装置48。在步骤504,细化模型修正装置48从组存储装置44接收更为细化模型并用粗化模型平滑更为细化模型。细化模型修正装置48采用常规平滑技术来平滑更为细化模型。然后在步骤506平滑装置42将平滑后的模型传送给HMM存储装置34,并替换未平滑的模型。本方法结束。
现请参阅图13A和13B,该图表示按照本发明识别汉语普通话语音音节方法的流程图。方法与图10A和10B极为类似,为方便起见,相同的步骤采用相同的数字。与图10A和10B相应步骤不同的第一步骤是在步骤310后、在步骤314前的步骤600。在步骤600,语音辨识装置38连接依赖于音节的音调和相应韵母开头元音的声母模型,与依赖于音节的音调和声母的韵母模型。与图10A和10B相应的步骤不同的其它方法步骤为步骤602,在此语音决策装置38比较处理后的输入与排列后的模型。在步骤602,语音决策装置38比较处理后的输入与声母模型,该声母模型仅仅依赖于音节的音调和与该声母模型相接的韵母开头元音。
附录 A
伪声母 |
韵母 |
音节 |
。AH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AAH_AEH_EEH_EEH_EEH_EEH_EEH_EEH_EEH_EEH_E | A_1A_2A_3A_4A_5AI_1AI_2AI_3AI_4AN_1AN_3AN_4ANG_1ANG_2ANG_4AO_1AO_2AO_3AO_4E_1E_2E_3E_4EN_1EN_4ER_2ER_3ER_4 | A1A2A3A4A5AI1AI2AI3AI4AN1AN3AN4ANG1ANG2ANG4AO1AO2AO3AO4E1E2E3E4EN1EN4ER2ER3ER4 |
OH_OOH_OOH_OWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_UWH_U |
OU_1OU_3OU_4UA_1UA_2UA_3UA_4UAI_1UAI_3UAI_4UAN_1UAN_2UAN_3UAN_4UANG_1UANG_2UANG_3UANG_4UI_1UI_2UI_3UI_4UN_1UN_2UN_3UN_4UENG_1UENG_3UENG_4U0_1U0_3U0_4 |
OU1OU3OU4WA1WA2WA3WA4WAI1WAI3WAI4WAN1WAN2WAN3WAN4WANG1WANG2WANG3WANG4WEI1WEI2WEI3WEI4WEN1WEN2WEN3WEN4WENG1WENG3WENG4W01W03W04 |
WH_UWH_UWH_UWH_UYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_I |
U_1U_2U_3U_4IA_1IA_2IA_3IA_4IAN_1IAN_2IAN_3IAN_4IANG_1IANG_2IANG_3IANG_4IAO_1IAO_2IAO_3IAO_4IE_1IE_2IE_3IE_4I_1I_2I_3I_4IN_1IN_2IN_3IN_4 |
WU1WU2WU3WU4YA1YA2YA3YA4YAN1YAN2YAN3YAN4YANG1YANG2YANG3YANG4YAO1YAO2YAO3YAO4YE1YE2YE3YE4YI1YI2YI3YI4YIN1YIN2YIN3YIN4 |
YH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IYH_IVH_VVH_VVH_VVH。VVH_VVH_VVH_VVH_VVH_VVH_VVH_VVH_VVH_VVH_V |
ING_1ING_2ING_3ING_4IONG_1IONG_2IONG_3IONG_4IU_1IU_2IU_3IU_4VV_1VV_2VV_3VV_4VVAN_1VVAN_2VVAN_3VVAN_4VVE_1VE_4VVN_1VVN_2VVN_3VVN_4 |
YING1YING2YING3YING4YONG1YONG2YONG3YONG4YOU1YOU2YOU3YOU4YU1YU2YU3YU4YUAN1YUAN2YUAN3YUAN4YUE1YUE4YUN1YUN2YUN3YUN4 |