专利名称:掌上电脑非特定人语音识别方法
技术领域:
本发明涉及自动语音识别领域,特别涉及掌上电脑非特定人语音识别方法。
为实现上述目的,掌上电脑非特定人语音识别方法包括语音训练过程和语音识别过程,语音识别过程包括步骤对特征MFCC进行定点计算;对搜索过程中概率密度函数进行定点计算。
经过本发明的简化处理,识别率的变化小于0.2%,但是识别速度提高三十倍以上。在不作概率密度函数定点实现以前识别一个词需要的时间超过四十秒,经过简化处理后识别一个词的时间小于1.5秒,基本上达到实时要求。
图2是常规提取MFCC特征过程图;图3是本发明提取MFCC特征过程图。
发明的
具体实施例方式
语音识别的过程如
图1所示。其中训练过程可以在PC机上进行,在掌上电脑上进行识别过程。这里我们就识别过程的两个方面进行改进,以达到识别过程在掌上电脑上得以实时实现。
●特征MFCC的定点计算提取MFCC特征需要经过预加重、汉明窗、FFT、Mel滤波、取对数、DCT(离散余弦变换)等几个步骤,如图2所示,传统的算法每个步骤都需要浮点数运算。
本发明采用移位放大的方法来将浮点运算转变成定点计算,在保证不会溢出的情况下尽可能地取得较高的精度。采用的步骤如图3所示,但这里的预加重、汉明窗、FFT、Mel滤波以及DCT(离散余弦变换)都是定点计算。
为了减少定点计算对精度的影响,利用FFT的性质FFT(ax)=a*FFT(x),先将语音放大一定倍数后进行预加重、汉明窗计算以保证语音在进入FFT前语音的最大值接近16bit整数的最大值,具体对每帧语音,放大倍数是变化的,幅度小的语音放大倍数就大,幅度大的语音放大倍数就小这样保证在计算没有溢出的情况下,使由于定点FFT计算舍去小数带来的误差达到最小。预加重,汉明窗计算时将预加重系数和汉明窗系数移位变成16bit的整数,将浮点运算转化成整数运算,FFT采用16bit整数定点FFT算法,后面取对数计算将放大的倍数变成加一个常数,经过DCT变换后,对语音放大一定倍数对特征的计算结果没有影响。DCT变换系数也是经过预先计算后放大处理,使DCT变换也是定点计算。这样取对数计算外,其它步骤都是定点计算。经过这样的处理后,计算速度有大幅度的提高,采用MFCC谱定点实现其特征提取时间在掌上电脑上约为0.20倍实时,这为整个识别器在掌上电脑上的实现创造了条件。
●声学模型在连续语音流中,一连串的语音紧密连接,发音部位和发音方法不断变化,从而产生音变、吞音等协同发音现象,相邻音素之间的影响非常严重。为了提高声学模型的准确性,在建模时必须考虑上下文的影响,常用的建模单元有声韵母,音节和整词。由于声韵母的数目较少,在建立上下文相关声学模型时能够得到有效的训练。这里我们选用声韵母为建模单元,建立上下文相关的三音子隐马尔可夫模型。
有两种设计三音子模型的方法,决策树和聚类方法。这两种方法都是数据驱动,不同的是,基于决策树的方法是“从上到下”,数据按照有关上下文的问题进行分裂;而聚类方法是“从下到上”,按照一定的原则将某些上下文的数据合并。聚类方法不能建模训练数据中没有出现的三音子,对此往往采用Back-off方法,用上下文无关的模型来代替,这将大大影响识别器的性能。而决策树方法是基于数据驱动和专家知识引导的分类法,其基本思想是首先根据专家知识精心设计问题集,选择相似度度量以及决策树停止分裂准则,在决策树每次分裂时都要从问题集中选择一个最优问题(及根据该问题分裂时所获得的相似度的增加值最大),并按该问题进行分裂。基于决策树理论的分类方法具有如下优点1)专家知识的引导语音学和语言学知识可以很方便地与模型的分类过程集成在一起,可以保证声学模型的准确性。2)数据驱动分类的数目可以根据数据的多少以及预先设定的门限确定,声学模型的大小可以按要求调整。3)预测能力可以预测到训练语音库中看不到的三音子,对于这样的三音子仍然可以通过遍历决策树找到与之匹配的模型,因此提高了数据库中没有样本或样本很少的三音子模型的准确度。
该识别引擎的声学模型是基于决策树的三音子模型,其基本建模单元为声母和韵母,根据上下文的影响建立决策树。由于掌上电脑的内存有限,所以只考虑上下文没有考虑音调的影响,在决策的时候控制分裂条件,三音子模型数量与概率密度函数为800左右,每个概率密度函数由多个个混合高斯密度函数组成,声学模型的大小约为500Kbytes,对男女分别建立基于决策树的声学模型。
●搜索及其概率计算的定点实现搜索算法采用词树引导的帧同步的束搜索算法(Beam-ViterbiSearch),首先根据识别词典建立基于声韵母的词树,该词树的根节点为静音模型,每个叶节点对应一个词的结束,从根节点到每个叶节点的路径对应于该叶节点所指词的声韵母。搜索过程就是在由识别词典所生成的词树上进行扩展,搜索到某个叶节点其总的概率得分表示该叶节点所指词产生这些特征的概率。搜索完成后能够根据结束叶节点的数目及其概率得分能回溯出多个候选词,可以根据用户要求输出需要的识别结果(一个或多个识别结果)。
其中在搜索过程中包含浮点计算的是概率密度函数的概率计算,传统的方法如公式A所示,要计算多个聚类中心的概率并且还要进行对数计算和指数计算。我们改进的基本思想是移位放大的方法将浮点计算改为定点计算,将概率计算公式进行简化,把必须的浮点计算在PC机上预先计算,在识别的过程中只进行部分定点计算,具体做法如公式B所示。 A传统方法计算某一帧特征的输出概率 B改进方法计算某一帧特征的输出概率其中j为0,1,2,...,n-1中的某个数,通过建立码本确定,Aij=log(Cij(2π)d/2|Σij|1/2)]]>可以在PC机器上预先计算,这里的ot,uij,∑都经过移位放大处理,进行的是定点计算。具体推导过程如下
搜索的实质是根据一个语音序列,根据最大后验概率准则,找到词序列,它产生该特征序列的概率最大,即W^=argmwaxP(W|O)----(1)]]>这里本识别器为孤立词识别,也就是根据最大后验概率准则,从识别辞典中找到某词,其产生该特征序列的概率最大。上式中P(W|O)表示特征序列O产生词W的概率,由于不能直接计算这个后验概率,根据贝叶斯公式,并考虑到P(O)不依赖于词W,且在孤立词识别中P(W)也无法预先确定,所以1式可以变为W^=argmwaxP(W|O)]]>=argmwaxP(O|W)P(W)P(O)]]>∝argmwaxP(O|W)----(2)]]>上式中P(O|W)表示某词产生特征序列O的先验概率,可以由声学模型计算得到。为了计算的方便以及防止计算过程中数据的溢出,我们一般在对数域中进行计算,因此2式可以变为W^=argmwax[log(P(O|W))]----(3)]]>我们把所有可能的HMM状态序列构成的空间表示出来,搜索空间就是在HMM状态空间中找出最优的状态序列,并进一步映射到词。对每一帧特征向量,其由某个马尔可夫模型的某个状态产生的概率为(这里每个概率密度函数由n个混合高斯密度函数组成)bi(o‾t)=Σj=0nCijN(o‾t,u‾ij,Σij)----(4)]]>其中N(o‾t,u‾ij,Σij)=1(2π)d/2|Σij|1/2exp(-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij))----(5)]]>在对数域中计算则,log(bi(o‾t))=log(Σj=0nCij1(2π)d/2|Σij|1/2exp(-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij)))----(6)]]>为了将概率密度函数由浮点运算改为定点运算,除了将ot,uij,∑ij进行移位放大以外,这里将上述公式改写为bi(o‾t)=MAXj=0n{CijN(o‾t,u‾ij,Σij)}----(7)]]>这样在对数域计算某一帧由某个HMM的某个状态产生的概率为log(bi(o‾t))=MAXj=0n{log[CijN(o‾t,u‾ij,Σij)]}]]>=MAXj=0n{log[Cij(2π)d/2|Σij|1/2]-12(o‾t-u‾ij)TΣij-1(o‾t-u‾ij)}----(8)]]>经过这样的简化处理,将上式中第一项取对数运算预先在PC机上计算保存在声学模型参数中,在实际识别搜索时只有第二项整数运算。可以通过建立码本,进行快速计算只计算距离该帧最近的一个聚类中心的概率。
权利要求
1.一种掌上电脑非特定人语音识别方法,包括语音训练过程和语音识别过程,其特征在于所述的语音识别过程包括步骤对特征MFCC进行定点计算;对搜索过程中概率密度函数进行定点计算。
2.按权利要求1所述的方法,其特征在于所述的特征MFCC定点计算包括步骤将语音放大;进行预加重、汉明窗计算,以保证语音在进入FFT前语音的最大值接近16bit整数的最大值;FFT采用16bit整数定点FFT算法;进行浮点计算的对数计算将放大的倍数变成加一个常数;进行DCT变换。
3.按权利要求2所述的方法,其特征在于所述的语音放大满足如下条件在计算没有溢出的情况下,幅度小的语音放大倍数大,幅度大的语音放大倍数小。
4.按权利要求2所述的方法,其特征在于所述的放大语音利用FFT性质;FFT(ax)=a*FFT(x)。
5.按权利要求1所述的方法,其特征在于所述的对搜索过程中概率密度函数进行定点计算按下式计算
全文摘要
一种掌上电脑非特定人语音识别方法,包括语音训练过程和语音识别过程,语音识别过程包括步骤对特征MFCC进行定点计算;对搜索过程中概率密度函数进行定点计算。经过本发明的简化处理,识别率的变化小于0.2%,但是识别速度提高三十倍以上。在不作概率密度函数定点实现以前识别一个词需要的时间超过四十秒,经过简化处理后识别一个词的时间小于1.5秒,基本上达到实时要求。
文档编号G06F15/02GK1427368SQ01144549
公开日2003年7月2日 申请日期2001年12月19日 优先权日2001年12月19日
发明者陈振标, 徐波 申请人:中国科学院自动化研究所