连续数字识别的声韵母跨词建模、解码方法及系统的制作方法

文档序号:2821601阅读:476来源:国知局
专利名称:连续数字识别的声韵母跨词建模、解码方法及系统的制作方法
技术领域
本发明专利涉及汉语连续数字语音识别的建模方法,解码方法和系统。更具体地讲,涉及一种用于汉语连续数字识别的声、韵跨词建模和搜索解码方法和系统。
背景技术
语音识别技术是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的技术。语音识别技术与语音合成技术相结合可以使人们通过语音的输入来甩掉键盘,通过语音命令进行操作,与机器进行语音交流。近二十年来,随着计算机技术的飞速发展,语音识别技术取得显著进步,开始从实验室走向市场。人们预计,未来10年内,语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子产品等各个领域。
连续对数字进行识别属于小词汇语音识别技术的一种,具有非常重要的研究价值和广阔的应用前景。其应用之一是移动电话或车载电话上的数字语音拨号系统。在很多场合下,如在开车、操作等手处忙碌的状态下,在黑暗环境中,在用户的视力、手部有伤残的情况下,用手指拨电话号码是很不方便或不安全的。此时最自然的方式就是采用语音拨号,这就必然需要高效的连续数字语音识别技术。连续数字识别还可以用于家电遥控。利用语音实现家电遥控是智能化家电的一个必然发展方向,其中不可避免地会用到连续数字串识别技术,比如设定电视机的频道、设定空调的温度、洗衣机的定时等。此外,在工业控制领域中,连续数字识别也大有用武之地,利用语音控制,可以避免复杂的控制面板。
数字语音识别的对象非常简单,包括0~9共十个数字(还有0和1的异读等,如1读做“么”)。但是由于数字之间是任意连接的,在连续发音时还有很严重的吞音和音变,这就造成了连续数字识别的困难。
以往的数字识别方法,通常采用整字建模方式(如图1中的第2行所示),也就是为每个数字建立一个单独的隐马尔可夫模型,每个隐马尔可夫模型由8到10个状态组成。在模型训练初始阶段,对应一个数字发音的语音样本被等长地划分为8到10段,每一段分别对应隐马尔可夫模型中的一个状态。这种基于整字建模的方式,可以比较好地刻画数字内部的协同发音现象,目前在数字识别系统中应用比较普遍。这种整字建模方式,在英语等西方语种的数字识别系统中取得了不错的效果;但是对于汉语数字识别来讲,这种整字建模方式的效果并不理想。

发明内容
本发明的目的是提供一种适用于汉语连续数字识别的跨词建模和搜索方法及系统。该方法在声学建模阶段充分考虑汉语数字发音的特点,相对传统的建模方法,更加强调对数字的声母部分进行精确描述;声母左相关、韵母右相关的跨词建模方式可以有效提高模型对于连续数字语音的描述能力;结合上述跨词模型的特点,设计了格式解码算法,可以在识别阶段实现快速搜索解码。
根据本发明的一个方面,提供一种用于汉语连续数字识别的声学建模方法,包括步骤a)为汉语连续数字的不同的声、韵母单独建立模型;b)定义汉语连续数字的上下文相关性,建立上下文相关的声学模型,以准确刻画连续数字语音c)以隐马尔可夫(HMM)模型为基本模型表示,利用状态聚类算法对连续数字的隐马尔可夫模型的参数进行训练,得到连续数字声学模型。
根据本发明的另一个方面,提供一种汉语连续数字识别的声学建模系统,包括特征提取装置,用于接收语音样本,提取原始语音信号的特征参数;和隐马尔科夫模型训练装置,用于根据所述特征提取装置提供的所述特征参数生成以声母、韵母为基本单元的上下文相关声学模型。
根据本发明的再一个方面,提供一种汉语连续数字识别的声学建模系统,包括汉语连续数字语音提供装置,用于提供汉语连续数字语音;特征提取装置,用于接收所述汉语连续数字语音提供装置提供数字语音样本,提取原始语音信号的特征参数;汉语连续数字文字脚本库,用于提供对输入的汉语连续数字语音进行隐马尔科夫模型训练的文字脚本;和隐马尔科夫模型训练装置,用于存储所述特征提取装置提供的特征参数,根据所述特征提取装置提供的所述特征参数生成以声母、韵母为基本单元的上下文相关声学模型。
根据本发明的再一个方面,提供一种汉语连续数字的声母、韵母跨词搜索解码方法,包括步骤a)初始化汉语连续数字的搜索解码过程,生成待识别汉语连续数字的初始活动路径;b)对生成的所述汉语连续数字的初始活动路径进行路径扩展,以检验所有可能的路径并保存的历史路径信息;和c)根据路径扩展中保存的历史路径信息,从后向前回溯得到最终识别结果。
根据本发明的再一个方面,提供一种用于汉语连续数字识别的搜索解码的系统,包括特征提取装置,用于从输入的语音信号中提出特征参数;上下文相关声学模型库,用于提供根据权利要求1所述的汉语连续数字识别的声学建模方法提供的连续数字声学模型;汉语连续数字解码网络,用于在语言层面上对搜索空间进行约束;和搜索解码装置,用于根据所述特征提取装置提供的所述特征参数,在所述汉语连续数字解码网络规定的搜索空间内搜索所述特征参数得分最大的路径作为最终识别结果。
根据本发明的再一个方面,提供一种用于汉语连续数字识别的搜索解码的系统,包括搜索过程初始化装置,用于装载汉语连续数字解码网络和隐马尔可夫声学模型,生成待识别汉语连续数字的初始活动路径,并分配并初始化算法所需的空间资源;路径扩展装置,用于在隐马尔可夫模型的状态间、模型间和词间展开路径扩展,以检验所有可能的路径并保存历史路径信息;和从后向前回溯保留的历史路径以得到最终识别结果的装置。
另外,本发明还提供了存储执行所述用于汉语连续数字的声学建模方法,和汉语连续数字的搜索解码方法的程序的记录介质。


通过下面结合附图对用于解释,而不是限制本发明的优选实施例进行详细描述,将使本发明的上述及其它目的、特征和优点更加清楚,其中图1是表示根据本发明的基本建模单元与现有技术的基本建模单元对比的示意图;图2是根据本发明实施例的声学建模系统的方框图;图3是常用的隐马尔可夫模型的拓扑结构示意图;图4是根据本发明实施例的数字识别声学建模的模型训练的流程图;图5是基于状态聚类的HMM模型训练流程图;图6是根据本发明的HMM模型状态聚类算法的流程图;图7是HMM模型状态聚类共享输出分布示意图;图8是表示根据本发明实施例的搜索解码系统的方框图;图9是表示汉语连续数字识别的搜索解码空间;图10是连续数字识别跨词搜索解码算法的流程图;和图11是连续数字识别跨词解码的路径扩展的流程图。
具体实施方案下面首先说明语音识别的基本原理。语音识别包括两个基本过程,即训练过程和识别过程。训练过程的主要任务是利用大量语音训练样本,建立声学模型,用于描述声学层知识。在复杂的识别系统中,还需要利用大量的文本语料,训练语言模型,用于描述语言层知识。在识别过程中,利用训练过程中得到的声学模型和语言模型,对待测语音样本进行解码,将其识别为文本。
和英语等语种相比,汉语数字识别问题更为困难,主要是由于汉语数字发音更容易混淆造成的。考察汉语数字发音及实际的系统,现有技术中的整字建模方式不太适合汉语数字识别。
通过观察分析汉语数字的发音,从中发现一定的规律,找到适合汉语特点的建模方式。汉语10个数字的发音如表1所示表1.汉语数字发音及发音长度统计

从表1中可以看出,汉语数字的发音之间的混淆性很大,有多组数字很接近,如6和9、1和7、2和8等。这些数字发音的特点是,它们的韵母是相同或相近的,只有声母部分有差异。因此只有很好地区分其声母部分,才有可能正确地区分识别这些数字。但是困难恰恰在于,由于语音能量更多地集中于韵母段的缘故,语音识别中声母识别的难度要远远高于韵母识别。因此,在建模过程中突出声母,增强模型对声母部分的描述能力,才能更好地识别声母,从而达到提高系统的识别性能的目的。很显然,现有技术中采用的整字建模方式没有考虑到这一点。
另外,表1中还给出了10个数字的声母发音长度和韵母发音长度等两组数据,长度的单位是帧(相当于12ms)。根据统计数据可以发现,从时长来看,汉语数字声母发音普遍短于韵母发音(只有少数例外),而且这种差别是非常显著的。在传统的整字建模方法中,对训练样本均匀分段并对应到不同的状态,在这种方式下更多的状态被用来描述韵母部分,在客观上是强调了韵母而非声母,这与前面提到的强化对声母部分的刻画能力是背道而驰的。因此,应该突出声母部分的重要性,至少要将其与韵母部分同等对待。
基于上述分析,本发明提出了在汉语数字识别中以声、韵母为基本建模单元。就是说,为不同的声、韵母单独建立模型。根据本发明定义的基本建模单元如下面的表2所示。
表2.汉语数字识别声、韵母基本建模单元

应当指出的是在本发明中,定义声、韵母基本单元的方式也有别于传统的定义方法。从表2中可以看到,尽管某些数字的声母或韵母部分是相同的,但只要这些声、韵母不是位于相同的数字发音中,我们都将它们定义成单独的建模单元。例如,l(ing)和l(iu),y(i)和y(ao),s(an)和s(i),i(y)、i(s)和i(q),iu(j)和iu(l)等。可以把这样的定义方式称之为区分定义方式。与现有技术的方法相比,尽管增加了基本单元的数量,但是由此带来的便利在模型训练的后续步骤中得到充分体现,同时也使得本发明中涉及的快速解码算法成为可能。
此外,如上所述,汉语数字识别的困难还在于数字连续发音时产生的大量音变现象。例如,连续两个数字“5”组成的数字串“55”和一个发音拖长的数字“5”是很难区分的,类似的情况还有数字“1”等。这种现象对识别系统的性能影响很大,可以说是汉语连续数字识别中的一大难题。
语音识别中,解决这类问题的方法是建立上下文相关的声学模型,用于准确刻画连续语音。所谓上下文,就是指与当前的基本单元(在本实施例中是声、韵母)直接相连,位于其左边和右边的其它若干建模单元。Triphone模型是指同时考虑左边和右边基本建模单元的声学模型;Diphone是指仅考虑左边或右边一侧的基本单元的声学模型。
图1是表示根据本发明的基本建模单元与现有技术的基本建模单元对比的示意图。在现有技术的以整字为基本建模单元的连续数字识别系统中,所建立的上下文相关模型是以整字为基元的triphone模型(参见图1中的第3行)。在为每个数字建模时,除了当前数字外,还要考虑当前数字左边和右边的数字,根据上下文信息的不同来建立不同的模型,所得模型的总个数是11×12×12+1=1585。
根据本发明,以声、韵母为基本建模单元,在相关性建模方面采取声、韵母Diphone建模方式。如图1中第4、5行所示。声、韵母Diphone建模有两种选择,一种是词内上下文相关建模(如图1中的第4行所示),即声、韵母只和它紧邻的同一个词(本发明中的词为数字)内部的声、韵母相关,在本发明中,也就是声母右相关、韵母左相关的建模方式;另一种是跨越词边界的词上下文相关建模(如图1中的第5行所示),即声、韵母只和它紧邻的其它词的声、韵母相关,在本发明中,也就是声母左相关、韵母右相关的建模方式。
如图1中的第5行所示,在为声母建模时,只要考虑此声母和声母之前的上一个韵母或者静音。相应地,在为韵母建模时,只要考虑此韵母和韵母之后的下一个声母或者静音。结果是,所得到的模型的总个数是11×12+11×12+1=265。
下面进一步说明本发明所采用的上述上下文相关方式的合理性。
在现有技术的整字triphone建模方式下,由于每个模型多达8~10个状态,模型最初几个状态与后续数字发音之间的相关性或者说耦合度已经非常弱。同样,模型最后几个状态与前接数字发音之间的耦合度也很弱。因此,本发明将声、韵母定义为基本的建模单元是合理的。
由上面的统计数据可知,汉语连续数字语音中每个单独数字发音长度大致在20帧左右。每个数字开头部分的若干帧和上一个数字发音结束部分的若干帧之间会相互影响,这种影响会导致音变,是需要通过相关性建模方法来克服的问题。词内上下文相关建模方式(如图1中的第4行所示),显然不能准确描述词间发音变化的现象,在描述词内部声、韵母间发音相关方面,这种方式甚至不如整字建模方式。进一步观察可知,通常词间发音相互影响的部分不会超过10帧,也就是说连续数字发音的相互影响通常不会跨越前一个或后一个数字的声韵母边界。如前所述,本发明的建模采用区分定义方式,已经在基本建模单元中隐含考虑了词内部的上下文相关信息。因此,本发明所采用的声母左相关、韵母右相关的Diphone建模方式足以准确地描述语音上下文信息。
此外,相对于triphone模型来讲,Diphone建模大大缩小了模型的规模,减小了模型训练的压力,更加适用于小型化的系统。
下面参考图2描述根据本发明实施例的声学建模系统。如图2所示,本发明的声学建模系统包括特征提取模块13和隐马尔科夫模型训练模块14。图2中包括的汉语连续数字语音数据库11和汉语连续数字文字脚本库12分别为训练过程提供语音样本和文字脚本。语音样本和文字脚本是一一对应的,通常以句子为单元分割并存放在存储器中(图中未示出)。在本实施例中,每一个句子都是一个汉语连续数字串。在模型训练过程中,特征提取模块13从上述语音库11中取出语音样本,对原始语音信号提取特征参数。特征提取的主要操作是把原始语音划分成一定长度的片断(帧),再对各帧数据依次进行时域和频域的短时分析,从中提取出特征参数,每一帧对应的参数通常表示成一个多维向量。本实施例中提取的特征参数是Mel频标倒谱系数(MFCC)(Mel Frequency CepstrumCoefficients)、帧能量以及它们的一阶和二阶差分。这也是目前语音识别中最常用的特征参数之一。特征提取模块13将提取到的特征参数提供给HMM模型训练模块14进行模型训练。在模型训练中需要参考与语音样本对应的文字脚本。文字脚本信息可以从汉语连续数字文字脚本库12中获得。为了优化模型的精度,模型训练过程需要进行多次迭代,而特征提取过程只需执行一次,因此,可以将特征参数存储在HMM模型训练模块14的存储器(图中未示出),并反复使用。模型训练模块14生成最终的声学模型,在本实施例中得到的是以声、韵母为基本单元的上下文相关声学模型,并提供给上下文相关声学模型库15。
下面详细描述适合汉语连续数字识别的声、韵母上下文相关建模的过程,也就是图2中模型训练模块14所执行的模型训练的详细操作。
隐马尔可夫模型(HMM)是语音识别中主流的建模方法,在本实施例中,同样采用HMM作为模型的基本表示。常用的从左到右的HMM的拓扑结构如图3所示,其中各个状态从左至右依次排列,状态自身或不同状态之间可以依据箭头的指向按照一定概率跳转,每个状态输出附着一个概率密度函数(pdf)。
图4示出了图2所示的模型训练模块14中执行的声学模型训练的过程,模型训练的基本方法是基于状态聚类的HMM训练。下面结合图4,对于声学模型训练的各个步骤进行详细描述。首先,在步骤S41,如上所述,为汉语数字的不同的声、韵母单独建立模型。只要声、韵母不是位于相同的数字发音中,都将它们定义成单独的建模单元。然后,在步骤S42,定义上下文相关性,建立上下文相关的声学模型,用于准确刻画连续数字语音。如前所述,上下文是指与当前的基本单元直接相连,位于其左边和右边的其它若干建模单元。其中包括三音素(Triphone)和双音素(Diphone)模型。Triphone模型是指同时考虑左边和右边基本建模单元的声学模型;Diphone模型是指仅考虑左边或右边一侧的基本单元的声学模型。另外,Diphone模型包括两种模式1)词内上下文相关建模(图1中的第4行),即声、韵母只和它紧邻的同一个词(本发明实施例中的词为数字)内部的声、韵母相关,也就是声母右相关、韵母左相关的建模方式;和2)跨越词边界的词上下文相关建模(图1中的第5行),即声、韵母只与和它紧邻的其它词的声、韵母相关,在本发明实施例中,也就是声母左相关、韵母右相关的建模方式。在本发明优选采用跨越词边界的词上下文相关建模方式,即声母左相关、韵母右相关的建模方式。其理由已经前面的描述中说明,在此省略对其描述。然而,本发明不限于此,也可采用词内上下文相关建模,或同时考虑左边和右边基本建模单元的声学模型的方式。
接下来,在步骤S43,基于状态聚类对建模的汉语数字模型进行HMM训练。状态聚类的作用是在不同模型的不同状态之间进行状态输出分布参数共享,从而减少模型参数数目,并保证经过共享的状态输出分布的模型参数都可以得到鲁棒的参数估计。
图5进一步说明了基于状态聚类的HMM训练算法的流程。首先,在步骤S61,对汉语数字的HMM模型的状态输出分布进行初始化。假设汉语数字的每个HMM都包含4个状态,它们分别对应某个基本建模单元的语音观测样本经过平均划分而得到的四段。同一状态所对应的所有特征向量样本构成这个状态的特征空间。初始的时候,使用两个混合的高斯混合模型来描述HMM模型的各个状态空间。对于观测样本数目小于一定阈值的状态,其特征空间使用方差值固定的高斯混合模型来描述。
此后,流程进入步骤S62,定义某个特定基本建模单元对应的上下文相关音素模型(all-phone)。所谓上下文相关音素模型是指,对于某个特定的基本建模单元,由于此单元所处的上下文语境不同而产生的所有HMM。例如,在本发明的实施例中,ing(l)-y(i)、a(b)-y(i)和iu(j)-y(i)等都是基本单元y(i)的上下文相关音素模型,ing(l)-y(i)、ing(l)-q(i)和ing(l)-j(iu)等都是基本单元ing(l)的上下问相关音素模型。定义上下文相关音素模型之后,在状态聚类过程中,只对同一基本建模单元的上下文相关音素模型中位于HMM结构中同一位置的各状态进行聚类。在前面图4的步骤S41中,本发明采取区分定义方式确定声韵母基本建模单元,因而在定义上下文相关音素模型过程中,只需考虑基本单元的单个边的上下文,即声母的左上文以及韵母的右下文。这样在进入下一个状态聚类步骤之前,可以确保在这些被区分定义的不同基本单元的上下文相关音素模型间不会发生合并。接下来,流程进入步骤S63,利用状态聚类算法,在模型间共享输出分布,其具体内容将参考图6详细描述。
图6给出了基于状态聚类进行输出分布共享的详细流程。
在步骤S71,计算任何两个状态之间进行合并所造成的似然概率的损失。似然概率的损失通过下面的公式(1)计算得到Dis=Σk,k∈ClogP(ok)-Σk,k∈C1logP1(ok)-Σk,k∈C2logP2(ok)---(1)]]>如前所述,每个状态的特征空间都使用两个混合的高斯混合模型来描述,P(ok)表示这个特征空间上的观测概率密度函数,ok为输入观测样本向量。C1和C2分别表示合并前的两个状态类,C表示由C1和C2合并以后的所生成的状态类。
在步骤S72,从步骤S71中计算过的所有可能的状态合并集合中寻找似然概率损失最小的两个状态类的合并。然后,在步骤S73,判断这两个状态类的样本数目是否大于一个预定的阈值(M)。如果判断结果为肯定,流程则转到步骤S74,将此合并从上述合并的集合中删除,并在此后返回到步骤S72。如果步骤S73的判断结果为否定,即,如果这两个状态类中至少有一个状态类的样本数目小于该预定的阈值,则在步骤S75将这两个状态类合并起来生成一个新的状态类,新的状态类的特征空间重新用两个混合的高斯混合模型进行描述。此后,在步骤S76判断每个状态类的对应观测样本数目是否大于另一个预定的阈值。如果步骤S76的判断结果为肯定,处理流程则进行到步骤S77,采用K-Means聚类算法对合并后的各状态输出分布的混合高斯模型进行参数估计。相反,如果在步骤S76的判断结果为否定,即,至少一个状态的样本数目不大于该阈值N,流程则返回到步骤S71,继续求任意两个状态合并的似然概率损失。
图7示出了经过合并的状态类的特征空间共享相同的输出分布。
此外,在上述状态聚类过程中,混合高斯模型的高斯混合数可以被预先设定为一个固定的值,也可以根据一定的准则(例如BIC准则)动态确定。
图8是表示根据本发明实施例的汉语连续数字声、韵母跨词搜索解码系统的方框图。实际上,搜索解码对应于汉语数字的识别过程。如图8所示,本发明的汉语连续数字声、韵母跨词搜索解码系统包括上下文相关声学模型库15,特征提取模块22,汉语连续数字解码网络23和搜索解码模块24。特征提取模块22从输入的语音信号中提出特征参数,其作用与图2中的特征提取模块13的作用相同。特征提取模块22把从输入的语音信号(在本实施例中是汉语数字)提取的特征参数提供给搜索解码模块24。搜索解码模块24根据所输入的特征参数执行汉语数字识别过程。在这一过程中,需要根据汉语连续数字解码网络23在语言层面上对搜索空间加以约束。就本实施例而言,就是要说明何种数字连接是被允许的,何种数字串是可以被识别的。此外,搜索解码模块24还要利用上下文相关声学模型库15,即由图2中的HMM模型训练模块14生成的上下文相关声学模型库15。搜索解码模块24根据声学模型提供的声学先验知识,对特征参数进行动态规划打分,并在解码网络23规定的搜索空间内找到得分最大的一条路径,作为最终识别结果。在本实施例中,搜索解码模块24的识别结果是一个连续数字串。
下面详细描述汉语连续数字识别的跨词搜索解码的流程,即图8中的搜索解码模块24的操作流程。
下面首先对本发明中采用的“跨词”概念进行解释。如前所述,所谓“跨词”是指在训练和识别过程中,除了要考虑词内部不同音素之间的上下文语境外,还要考虑词与词边界处的上下文,也就是还要刻画前词词尾音素和后词词头若干音素之间的上下文。具体到汉语连续数字识别问题,每个汉语数字的发音是一个由声母连接韵母构成的音节,“跨词”实际上就是对前一个数字的韵母和后续数字的声母之间的上下文语境进行建模和解码。例如,一个连续的数字串“153853”,它对应的拼音是“yi1 wu3 san1 ba1 wu3 san1”(拼音后面的数字表示该拼音的字调)。如果不考虑词间的上下文,认为两次出现的数字“5”和“3”的发音是相同的,可以用模型序列“sil-y-i y-i-sil sil-w-u w-u-sil sil-s-an s-an-sil sil-b-ab-a-sil sil-w-u w-u-sil sil-s-an s-an-sil”来描述这个数字串;如果考虑词间的上下文,则相同数字的发音可能不同,数字串的模型描述成为“sil-y-iy-i-w i-w-u w-u-s u-s-an s-an-b an-b-a b-a-w a-w-u w-u-s u-s-an s-an-sil”。在本发明实施例中,只需考虑单边的跨词上下文信息,即声母的左上文和韵母的右下文,声母的右下文和韵母的左上文则已经隐含包括在基本建模单元的定义中(参见图2)。
语音识别的本质是一个限定空间上的搜索的问题。在搜索开始阶段,一个输入的待识别句子可能是任何内容,随着搜索过程展开,通过对限定搜索空间内的所有可能路径的检验和评估,找到一条或多条最可能的路径作为确定的识别结果,这个过程就是解码过程。在不同的层次上,路径的含义有所不同在词的层面,所有可能的路径就是指所有可能的词与词的连接而成的词序列;在HMM模型的层面,所有可能的路径就是指所有可能的HMM模型之间连接而成的模型序列;在HMM模型状态的层面,所有可能的路径就是指所有可能的HMM状态跳转相互连接形成的状态序列。在词这个层面的连接通常由语言模型或者解码网络约束;模型层的连接由词的发音以及上下文语境约束;状态层的连接由HMM模型的拓扑结构约束。这样由低到高的三个层次构成了整个搜索空间。一条路径可以由词、HMM模型和HMM模型状态这三个要素一起唯一地标识。
图9示出了根据本发明的汉语连续数字识别的搜索解码空间。在词一层的解码网络中,数字之间可以任意连接,数字之间可以存有或没有静音。
图10示出了搜索解码算法的基本流程。常见的搜索算法是时间同步的Viterbi算法,在本发明的实施例中也采用这一基本算法。应该指出,本发明不限于此,也可采用其它算法。如图10所示,在步骤S10-1,对搜索过程进行初始化。主要工作包括装载连续数字解码网络、HMM声学模型等数据;分配并初始化算法所需的空间资源,用来存储当前活动路径以及扩展到词尾并且得分较高的历史路径;此外还要生成初始活动路径,作为下一步骤中的路径扩展的种子路径。根据上述解码网络结构,初始活动路径是一条表示静音的路径。接下来,在步骤S10-2进行路径扩展。图11示出了根据本发明的连续数字识别跨词解码的路径扩展的详细流程图。
参见图11,整个路径扩展是按照时间顺序依次逐帧进行的,所以也称作时间同步或者帧同步解码。
其中在步骤S11-1判断待识别语音是否已经结束,如果判断结果为否定,则路径扩展可以继续,转入步骤S11-2。
在步骤S11-2对当前每一条活动路径进行状态间扩展。此时参考图9所示状态层的解码网络,也就是当前路径对应的HMM模型的拓扑连接,将此路径从当前状态扩展到新的状态,生成新的活动路径,并利用声学模型和当前特征帧计算更新路径得分,而后删除原有路径。此时原有路径的HMM状态信息就成为新的活动路径的历史。
此后,路径扩展进入步骤S11-3。在这一步,遍历当前所有的活动路径,对于已经扩展到模型最后一个状态的路径,进行模型间扩展。此时参考图9所示模型层的解码网络,也就是HMM模型间的连接关系,把此路径从当前HMM模型的末状态扩展到后接HMM模型的首状态(在本发明实施例中,也即从声母HMM模型的末状态扩展到韵母HMM模型的首状态),生成新的活动路径并删除原有路径。此时原有路径的HMM模型信息就成为新的活动路径的历史。由于使用声母左相关、韵母右相关的Diphone模型,在确定后接韵母HMM模型时,必须跨词预测韵母后接的右下文(即下一个词首的声母或者静音),根据不同的右下文确定不同的后接韵母HMM模型。由于向后的无法预知性,所以必须将所有可能的后接韵母模型同时扩展。
此后,路径扩展进入步骤S11-4。在这一步,遍历当前所有的活动路径,找到已经扩展到当前词的最后一个HMM模型的最后一个状态的路径(在本发明实施例中,也即扩展到韵母或静音HMM模型的最后一个状态),并对这些路径进行词间扩展。此时参考图9所示的词层的解码网络,也就是词之间的连接关系,将此路径从当前词的末状态扩展到所有可能的后接词的首状态,生成新的路径,而后将原有路径保存在为扩展到词尾的高分历史路径所分配的空间中(步骤S10-1)。此时,原有路径的词信息就成为新的活动路径的历史。同样,由于使用声母左相关、韵母右相关的Diphone跨词模型,在确定后接词首的HMM模型(为声母或者静音)时,必须参考当前HMM模型对应的韵母或静音。
此后,路径扩展进入步骤S11-5,对当前活动路径进行裁剪。在这一步,遍历当前所有的活动路径,根据预设的阈值将得分偏低的路径删除,保留得分较高路径的若干条路径,作为下一次路径扩展的种子。裁剪完成后,算法返回步骤S11-1。
在上述判断待识别语音是否已经结束的步骤S11-1中,如果判断结果为肯定,则路径扩展结束。
随着待语音信号达到终点,路径扩展过程结束,搜索解码过程进行到步骤S10-3,根据路径扩展步骤S10-2中保存的历史路径信息(图11中的步骤S11-4),从后向前回溯得到最终识别结果。
如前所述,本发明采用区分定义方式来定义数字基本建模单元,这种定义方式的优点不仅表现在模型训练过程,在解码阶段也有体现。采用区分定义方式可以保证,不会有两条历史不同的路径经过路径扩展合并成为一条路径,也就是说,从不同状态、不同HMM模型或者不同词扩展得到的新路径一定不同。利用这一特点,我们可以大大简化传统解码算法中较为繁琐的路径管理操作。
在本发明的具体实现中,可以使用一个如下面的表3所示的表状结构来保存连续数字识别跨词解码过程中的活动路径。
表3

由于路径扩展过程中每一个活动路径都对应着一个确定的HMM模型和确定的HMM状态,可以在表3的结构对确定的HMM模型和确定的HMM状态迅速定位,因而可以非常高效地在表状结构上进行路径扩展的各种操作,如路径的生成、插入、合并、删除、更新和裁剪等。
应用此表状结构进行路径扩展的具体方式是在步骤S10-1,为该表分配空间并对其进行初始化,代表静音的初始路径存放在表中相应的位置上;在步骤S10-2的子步骤S11-2、S11-3和S11-4中,扫描路径表遍历所有活动路径,并相应进行状态间、模型间和词间等不同扩展,生成的路径可以迅速定位并存储。在步骤S11-5,同样可以扫描路径表迅速遍历所有活动路径,统计当前活动路径的得分情况,并对路径进行裁剪。这样所有的路径操作都可以转化为极其迅速的表格操作,因而解码的速度可以非常快。
由以上描述可见,在词间扩展以及模型间扩展时,要根据上下文扩展所有可能的连接,会导致路径数目大大膨胀。如果HMM模型的左、右语境信息都要考虑,那么路径的数目将十分庞大。在本发明实施例中,我们使用声母左相关、韵母右相关的上下文相关模型,在词间扩展时只需要考虑声母的左语境,而无需考虑其后接的韵母,在模型间扩展时只需要考虑韵母的右语境,而无需考虑其后接的韵母,因此在一定程度上缓解了路径数目膨胀对系统资源的压力,同时加快了识别解码的速度。数字内部声韵母间的相关性,已经由前面所述的区分定义方式保证,并在搜索过程中由解码网络约束;数字边界处的语音相关性可以由声母左相关、韵母右相关的上下文相关模型加以描述,因此系统识别率也较以往整字建模的系统更有保证。
本发明根据传统汉语连续数字识别系统的不足,针对性地提出了一些改进办法,从而提高数字识别系统的系能。以下将给出一组实验结果,通过比较本发明所述方法与传统方法的性能,从而说明本发明的优点。
实验所用的训练数据是我们自行录制的纯净连续数字串,共包括150个说话人,其中男女各75人,每个说话人大约有250个连续数字语音数据。实验所用的测试数据是实验室环境下录制的连续数字串,共包括10个人,其中男女各5人,每个说话人的测试数据为250句连续数字语音。实验的结果如表4所示表4

由此可见,采用声韵母为基本的建模单元,并且采取声母左相关、韵母右相关的语音相关性建模方法,可以有效地提高汉语数字识别系统的性能。与传统的整字建模方式相比,数字串识别率由73.3%提高到83.88%,字识别率由96%提高到97.83%。
根据本发明的汉语连续数字建模和识别方法可以通过硬件。也可以由处理器通过执行具有相应功能的程序通过实现。所述程序可记录在诸如软盘,硬盘,CD-ROM,DVD-ROM之类的计算机可读的记录介质上。
虽然参考优选实施例对本发明进行了描述,本发明并不局限于此,而仅由所附权利要求限定,本领域技术人员在不脱离本发明精神的情况下可对本发明的实施例进行各种改变和改进。
权利要求
1.一种用于汉语连续数字识别的声学建模方法,包括步骤a)为汉语连续数字的不同的声、韵母单独建立模型;b)定义汉语连续数字的上下文相关性,建立上下文相关的声学模型,以准确刻画连续数字语音;和c)以隐马尔可夫(HMM)模型为基本模型表示,利用状态聚类算法对连续数字的隐马尔可夫模型的参数进行训练,得到连续数字声学模型。
2.根据权利要求1所述的方法,其中在所述步骤a)中,只要声、韵母不是位于相同的数字发音中,都将它们定义成单独的建模单元。
3.根据权利要求1所述的方法,其中在所述步骤b)中,使用声、韵母只和紧邻的其它词的声、韵母相关的跨越词边界的上下文相关建模方式定义汉语连续数字的相关性。
4.根据权利要求3所述的方法,其中所述步骤b)使用声母左相关、韵母右相关的建模方式。
5.根据权利要求1所述的方法,其中所述步骤b)进一步包括采用声母只与该声母之前的上一个韵母或者静音相关,韵母只与该韵母之后的下一个声母或者静音相关的建模方式。
6.根据权利要求1所述的方法,其中所述步骤c)进一步包括步骤对汉语数字的隐马尔可夫模型的状态输出分布进行初始化;定义特定基本建模单元对应的上下文相关音素的全音素模型;和利用状态聚类算法进行聚类,在所述全音素模型间共享输出分布。
7.根据权利要求6所述的方法,其中所述对汉语数字的隐马尔可夫模型的状态输出分布进行初始化的步骤包括使用两个混合的高斯混合模型来描述隐马尔可夫模型的各个状态空间,并对观测样本数目小于预定阈值的状态,使用方差值固定的高斯混合模型来描述来所述状态的特征空间。
8.根据权利要求6所述的方法,其中在所述状态聚类过程中,只对同一基本建模单元的上下文相关音素模型中位于HMM结构中同一位置的各状态进行聚类。
9.根据权利要求6所述的方法,其中所述状态聚类步骤进一步包括步骤计算任何两个状态之间进行合并所造成的似然概率的损失;和在计算过的所有可能的状态合并集合中寻找似然概率损失最小的两个状态类。
10.根据权利要求9所述的方法,进一步包括当两个状态类中的至少有一个状态类的样本数目小于预定的阈值时,将这两个状态类合并以生成一个新的状态类,重新用两个混合的高斯混合模型进行描述新的状态类的特征空间。
11.根据权利要求10所述的方法,进一步包括当每个状态类的对应观测样本数目大于另一个预定的阈值时,采用K-Means聚类算法对合并后的各状态输出分布的混合高斯模型进行参数估计。
12.根据权利要求10所述的方法,进一步包括当两个状态类的样本数目都大于一个预定的阈值时,将此合并从所述合并的集合中删除,并继续寻找似然概率损失最小的两个状态类。
13.一种汉语连续数字识别的声学建模系统,包括特征提取装置,用于接收语音样本,提取原始语音信号的特征参数;和隐马尔科夫模型训练装置,用于根据所述特征提取装置提供的所述特征参数生成以声母、韵母为基本单元的上下文相关声学模型。
14.一种汉语连续数字识别的声学建模系统,包括汉语连续数字语音提供装置,用于提供汉语连续数字语音;特征提取装置,用于接收所述汉语连续数字语音提供装置提供数字语音样本,提取原始语音信号的特征参数;汉语连续数字文字脚本库,用于提供对输入的汉语连续数字语音进行隐马尔科夫模型训练的文字脚本;和隐马尔科夫模型训练装置,用于存储所述特征提取装置提供的特征参数,根据所述特征提取装置提供的所述特征参数生成以声母、韵母为基本单元的上下文相关声学模型。
15.根据权利要求14所述的系统,其中所述特征提取装置将原始语音划分成帧,再对各帧数据依次进行时域和频域的短时分析,从中提取出特征参数。
16.根据权利要求14所述的系统,其中所述特征提取装置提取的特征参数是Mel频标倒谱系数(MFCC),帧能量以及它们的一阶和二阶差分
17.一种汉语连续数字的声母、韵母跨词搜索解码方法,包括步骤a)初始化汉语连续数字的搜索解码过程,生成待识别汉语连续数字的初始活动路径;b)对生成的所述汉语连续数字的初始活动路径进行路径扩展,以检验所有可能的路径并保存的历史路径信息;和c)根据路径扩展中保存的历史路径信息,从后向前回溯得到最终识别结果。
18.根据权利要求17所述的方法,所述步骤a)进一步包括步骤装载汉语连续数字解码网络和隐马尔可夫声学模型;和分配并初始化算法所需的空间资源,以存储当前活动路径以及得分高的历史路径。
19.根据权利要求17或18所述的方法,所述步骤b)进一步包括步骤对每一条活动路径进行状态间扩展,以扩展到新的状态并生成新的活动路径,然后删除原有路径;对扩展到声学模型最后一个状态的路径进行从声母隐马尔可夫模型的末状态扩展到韵母隐马尔可夫模型的首状态的模型间扩展,生成新的活动路径并删除原有路径;对扩展到当前词的最后一个隐马尔可夫模型的最后一个状态的路径进行词间扩展,并将原有路径保存在所分配的空间中;和根据预设的阈值删除得分偏低的路径以便对当前活动路径进行裁剪。
20.一种用于汉语连续数字识别的搜索解码的系统,包括特征提取装置,用于从输入的语音信号中提出特征参数;上下文相关声学模型库,用于提供根据权利要求1所述的汉语连续数字识别的声学建模方法提供的连续数字声学模型;汉语连续数字解码网络,用于在语言层面上对搜索空间进行约束;和搜索解码装置,用于根据所述特征提取装置提供的所述特征参数,在所述汉语连续数字解码网络规定的搜索空间内搜索所述特征参数得分最大的路径作为最终识别结果。
21.一种用于汉语连续数字识别的搜索解码的系统,包括搜索过程初始化装置,用于装载汉语连续数字解码网络和隐马尔可夫声学模型,生成待识别汉语连续数字的初始活动路径,并分配并初始化算法所需的空间资源;路径扩展装置,用于在隐马尔可夫模型的状态间、模型间和词间展开路径扩展,以检验所有可能的路径并保存历史路径信息;和从后向前回溯保留的历史路径以得到最终识别结果的装置。
22.一种计算机可读记录介质,用于存储执行用于汉语连续数字识别的声学建模方法的程序,所述方法包括步骤a)为汉语连续数字的不同的声、韵母单独建立模型;b)定义汉语连续数字的上下文相关性,建立上下文相关的声学模型,以准确刻画连续数字语音;和c)以隐马尔可夫(HMM)模型为基本模型表示,利用状态聚类算法对连续数字的隐马尔可夫模型的参数进行训练,得到连续数字声学模型。
23.一种计算机可读记录介质,用于存储执行汉语连续数字的声母、韵母跨词搜索解码方法的程序,包括方法包括步骤a)初始化汉语连续数字的搜索解码过程,生成待识别汉语连续数字的初始活动路径;b)对生成的所述汉语连续数字的初始活动路径进行路径扩展,以检验所有可能的路径并保存的历史路径信息;和c)根据路径扩展中保存的历史路径信息,从后向前回溯得到最终识别结果。
全文摘要
一种用于汉语连续数字识别的声学建模方法,包括步骤a)为汉语连续数字的不同的声、韵母单独建立模型;b)定义汉语连续数字的上下文相关性,建立上下文相关的声学模型,以准确刻画连续数字语音c)以隐马尔可夫(HMM)模型为基本模型表示,利用状态聚类算法对连续数字的隐马尔可夫模型的参数进行训练,得到连续数字声学模型。另外,本发明还公开了汉语连续数字的声母、韵母跨词搜索解码方法,以及声学建模系统和搜索解码系统。
文档编号G10L19/00GK1674092SQ20041003321
公开日2005年9月28日 申请日期2004年3月26日 优先权日2004年3月26日
发明者贾磊, 马龙 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1