专利名称:一种语音识别应用领域中的置信度快速计算方法
技术领域:
本发明属于语音识别技术领域,具体的说,本发明涉及一种语音识别应用领域中 的置信度快速计算方法。
背景技术:
在语音识别及其相关的诸多应用领域中,置信度的计算都是一个非常重要的部 分。置信度用于评价某事件的可靠程度,在形式上,可以将其定义为函数C(A),A为事件空 间{~,4,...4...}中的一个元素,C(A)满足若发生事件A1的可靠性比发生A2高,则有 C(A1) > C(A2)。置信度可以对语音识别系统的识别结果进行假设检验,通过试验设定的阈 值对识别结果的可靠性进行评价,定位结果中的错误,从而提高识别系统的识别率和稳健 性。在关键词检测中,置信度被用于对虚警和漏检率的控制;而在发音评估中,置信度被当 作为发音是否正确的测度;在命令词识别领域,置信度被用于某些无关词汇的拒识。总之, 与语音识别相关的各个应用中,几乎都需应用到置信度这一指标。置信度有很多种计算方式,包括基于假设检验的置信度,基于后验概率的置信度, 以及基于多种预测特征融合的置信度等等。在目前的基于隐马尔可夫模型的语音识别系统 中,最常用且有效的置信度是基于后验概率的置信度。传统的基于声学层信息的后验概率 主要有以下两种1)基于帧平均的后验概率2)基于音素累计概率的后验概率前者需要对每一帧语音在整个声学空间(所有的隐马尔可夫状态)上计算观察概 率,后者在计算后验概率的分母的时候需要对一个音素循环网络进行解码。这两个算法的 时间复杂度都相当高,因此在实际应用中难以推广。
发明内容
本发明的目的是克服现有技术计算复杂度高的缺点,提供一种快速而又不降低性 能的声学层置信度(下文中简称为置信度)计算方法。此方法以后验概率置信度为基础, 做了一系列的改进。本发明中,对某个识别单元的置信度采用如下公式计算 其中分子P(0|M。ph)表示当前识别单元语音段0在表征当前识别单元cph的隐马 尔可夫模型M。ph上计算的累积概率;分母赃P(01 it^)表示当前语音段在识别单元集合 中所有识别单元模型上的累积概率的最大值。在实际的计算过程中,对分母部分,本发明首先构建了一个包含所有识别单元的 隐马尔可夫模型网络,如图1所示。网络中的每条路径代表一个识别单元,如图中的phi、ph2等表示的是识别单元1、识别单元2等。此处的识别单元是音素(phone),也可以是其他 的语音单元(如音节等)。在图1中,一个识别单元用一个包含三个状态的隐马尔科夫模型 来表征,此处的状态数也可以是其他的任意数目。对当前的语音帧序列,在这个网络上进行 Viterbi搜索,在结束节点上的最优累积概率即为分母^;J。在这个过程中,本 发明还可以采用有效的剪枝策略减少计算量,比如,可采用beam剪枝和/或n-best剪枝。 其中,Beam剪枝是语音识别中常用的一种提高搜索效率的方法,其基本思想是在搜索过程 中,将那些累积概率比较低的路径当做不应该出现的路径而直接剪掉。N-best剪枝的思想 是在搜索过程中,始终保持一定数量的路径,将所有路径按照累积概率排序,剪除那些概率 较低且超出规定数量的路径。Beam剪枝的具体方法如下1.计算当前帧在所有状态上的累积概率;2.计算所有状态上的当前累积概率的最大值maxProb ;3.检查每一条路径,如果这条路径上所有状态的最大累积概率小于 maxProb-curBeam,这条路径即被剪掉,之后的计算中不再考虑此路径;4.重新设定 curBeam 为 curBeam+beamStep ;5.新的语音帧到来,转到步骤1,重复以上步骤。其中,curBeam的处理当前语音帧时所设定的beam值,在搜索过程开始时,为其设 定一初始值,此初始值表示为beamBase ;beamStep是随着搜索过程的推进,每次对curBeam 的增加量,它的值等于(beamMax-beamBase)/frameNum,其中beamMax为剪枝过程中所允许 的最大beam值,frameNum是当前语音段的帧数。n-best剪枝的具体方法如下1.计算当前帧的所有状态的累积概率;2.将所有路径按照此路径上的最大累积概率降序排序;3.保留前curBestNum条路径,剪除其后概率较小的路径4.重新设定 curBestNum 为 bestNumBase-bestNumStep X curFrameNum5.新的语音帧到来,转到1,重复以上步骤。其中,curBestNum是在处理当前语音帧时所需保留的路径数目,在搜索过程开始 时,为其设定初始值,此初始值表示为bestNumBase,curFrameNum是当前已处理的语音帧 数,bestNumSt印设为(bestMin-bestBase)/frameNum, bestNumMin 为搜索过程结束时所保 留的最少的路径数目。在实际执行过程中,beam剪枝和n-best剪枝是同时进行的。本发明具有下列技术效果通过简化后验概率分母的计算方式,以及通过采用多种剪枝方式,在不降低性能 的前提下,大大减少所需概率计算次数,有效降低算法的时间复杂度,提高置信度计算速度。
图1是为计算本发明中的后验概率的分母所构建的识别单元隐马尔可夫模型网 络的示意图2是本发明用于发音准确度的计算时的流程图。
具体实施例方式下面结合附图及具体实施例对本发明做进一步描述实施例本实施例是一个用于发音评估中的置信度计算方法。在发音评估中,置信度实际 上就是发音准确度。如图2所示,该用于发音评估中的置信度计算方法包含如下步骤1)前端处理对输入语音进行预处理,进行特征提取;在本实施例中,将输入数据进行16K采样率数字化(此处也可采用其他的采样率, 比如,8K,32K等等),并进行预加重、分帧、加窗处理,对每一帧提取MFCC(mel-frequency c印stral coefficient)特征矢量及两阶差分矢量。2)强制对齐将1)中得到的语音特征序列与参考文本进行强制对齐,得到特征序 列与识别单元序列的对应关系。此处以音素作为本实施例的识别单元。在实际应用中,识 别单元还可以是音节,单词等语音单元。在本实施例中,其处理过程为首先将参考文本根据字典以及声学模型转化为隐马 尔可夫模型状态序列,然后采用Viterbi算法解码得到最佳匹配路径,即得到语音特征帧 与音素的对应序列。这个对应序列描述了每个音素在整段语音中的位置,即起始的时间点。 这些时间点将整段的特征序列切分成一个个的音素片段。在下面的步骤中,将根据这些时 间点,对每一个音素计算其后验概率。3)后验概率计算对音素序列中的每一个音素用本发明中的计算方法计算其后 验概率,作为置信度输出,也即为此音素的发音准确度。此处,公式⑴中的0即为本音素所对应的特征帧序列,也即在强制对齐过程中所 切分出来的音素特征片段本实施例中的剪枝算法中所涉及的各项参数在本实施例中设置如下beamBase = 5000beamMax = 16000bestNumBase =音素总数-10bestNumMin = 5实验验证采用汉语单词和句子数据(包含100个单字词,100个双字词,以及100个短句,短 句的长度在15个字以内)作为测试数据。由30个人在安静环境下朗读这些单词和句子, 男女各15个。语音数据按照16K,16bit,单声道的格式来存储。采用如下方法来构造负样 本(发音错误的样本)对上述的朗读数据,从中随机挑选一些音节,通过修改参考文本的 方式来构造负样本。这样,对单字词数据和句子数据,分别包含约30%的负样本(以音节为 单位来计算)。对发音质量评估的性能采用对错读音节检测的等错率(EER)来评价,系统的 速度采用实时率来评价。使用两种不同的方法来计算发音准确度,一种是前面所述的基于音素累计概率的 后验概率方法,一种是本文所提出的快速置信度计算方法。它们的准确性和实时率比较如 下 从上表中看出,本文所提出的快速置信度计算方法,在保证等错率指标基本不变 的情况下,速度提高了约3倍,提升效果显著。
权利要求
一种语音识别应用领域中的置信度快速计算方法,其特征在于,1)对一个识别单元,计算当前语音段在当前识别单元模型上的累积概率,将其作为后验概率的分子;2)计算当前语音段在所有识别单元模型上的累积概率的最大值,将其作为后验概率的分母;3)将步骤1)的分子与步骤2)得出的分母相除得出后验概率,并将该后验概率作为当前识别单元的置信度。
2.如权利要求1所述的置信度快速计算方法,其特征在于,所述的后验概率采用如下 公式计算 其中,分子P (O ι Mcph)表示当前识别单元语音段0在当前识别单元cph的隐马尔可夫模 型M。ph上计算的累积概率;分母^…表示当前语音段在当前语言的识别单元集合中所有识别单元模型上的累积概率的最大值。
3.如权利要求1所述的置信度快速计算方法,其特征在于,所述步骤1)中,构建一个包 含所有识别单元模型的模型并联网络,然后通过Viterbi搜索算法搜索最佳的路径,以结 束节点上的最优概率作为所述后验概率的分母。
4.如权利要求1所述的置信度快速计算方法,其特征在于,所述步骤2)中,在Viterbi 搜索算法中,采用beam剪枝和/或n-best剪枝的方法以降低搜索复杂度。
5.如权利要求3所述的置信度快速计算方法,其特征在于,所述的模型并联网络中的 每条路径表示一个隐马尔可夫模型,每个隐马尔可夫模型代表一个识别单元,由若干个状 态组成;所述的模型并联网络包含一个连接到所有隐马尔可夫模型起始状态的开始节点和 一个连接到所有隐马尔可夫模型结束状态的结束节点。
6.如权利要求4所述的置信度快速计算方法,其特征在于,所述的beam剪枝方法包含 如下步骤a)设定初始的beam为curBeam;b)计算当前帧在所有状态上的累积概率;c)计算所有状态上的当前累积概率的最大值maxProb;d)检查每一条路径,如果这条路径上的最大累积概率小于maxProb-curBeam,这条路 径即被剪掉,之后的计算中不再考虑此路径;e)curBeam累加beamSt印,为事先设定的累加量,即每过一帧,当前的beam增加 beamStep ;f)新的语音帧到来,重新执行步骤a)。
7.如权利要求4所述的置信度快速计算方法,其特征在于,所述的n-best剪枝方法包 含如下步骤a)设定初始的需保留的路径数目curBestNum;b)计算当前帧的所有状态的累积概率;c)将所有路径按照此路径上的最大累积概率降序排序;d)保留前curBestNum条路径,剪除其后概率较小的路径;e)根据当前已处理的语音帧数重新设定curBestNum;f)新的语音帧到来,重新执行步骤a)。
全文摘要
本发明涉及一种语音识别应用领域中的置信度的快速计算方法。此方法采用一种改进的后验概率作为置信度。此后验概率的分母用当前语音段在所有识别单元上的累积概率的最大值来代替。在分母的计算过程中,首先构建了一个包含所有识别单元的隐马尔可夫模型网络,然后采用Viterbi算法在此网络上搜索最佳路径累积概率。在搜索过程中,采用了beam剪枝和n-best剪枝的方法来降低观察概率的计算次数,有效降低了时间复杂度。本算法可大大提高置信度的计算效率,而且基本不降低置信度的性能,便于推广应用。
文档编号G10L15/04GK101894549SQ20101021803
公开日2010年11月24日 申请日期2010年6月24日 优先权日2010年6月24日
发明者刘常亮, 潘复平, 董滨, 颜永红 申请人:中国科学院声学研究所