隐藏式马可夫模型的中文词音识别方法技术

技术编号:3047698 阅读:196 留言:0更新日期:2012-04-11 18:40
一种基于隐藏式马可夫模型的中文词音识别方法和装置,其特点是采用两阶段步骤处理中文词音识别并运用了二组模型数据库;一组为包含词汇中所有的词音模型,另一组为声、韵母的发声模型;在两阶段过程中第一阶段利用声、韵母模型在词汇中筛选出少量的候选词。然后在第二阶段对这些少量的候选词作全面搜寻。与通常的全面搜寻方法相比,它具有快速而又不牺牲识别率的优点,因而可以应用在个人计算机上。(*该技术在2016年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术提出一中文词音的快速识别方法。此方法为基于隐藏式马可夫模型的一种改良识别方法。随着计算机技术的进步与普及,许多用语音识别技术作为产品开发策略的主张也跟着被提出及试行。虽然经过多方面的努力,语音识别仍被认为是在人工智能及计算机科技上较难处理的问题。用语音作为输入的方式有许多好处,它提供了自然、快速、免于用手、眼,而且可不拘于场所的一种输入介面。对中文而言,语音输入提供了更具吸引力的条件,因为中文的文字输入比起拼音式的文字,譬如英文要困难得多。然而目前仍存在一些障碍,包括成本高、反应不够迅速、需要训练、在噪音环境、说话速度不定,以及音量大小变化的情况下,功能仍不够稳定,对不成文法的话语(nongrammatical speech)仍缺乏处理的能力等等。此外,中文语音中声母(相当于英文中的辅音)的混淆使得前述的问题更为严重。有好几种在识别率上表现得相当准确的语音识别方法曾被提出。这些方法包括NTT Itakura所提的非线性对齐的动态时间标准法,Carnegie-Mellon大学的DRAGON系统(将语音规律的知识化成随机模型stochasticmodelling),Carnegie-Mellon大学的HAPPY系统(结合了DRAGON及HEARSAY的优点,并用网路表示法及光束搜寻法以改善搜寻效率),BellLab的Wilpon系统,(用聚集技术建立较强健的非特定语者词音识别参考模版),Carnegie-Mellon大学的FEATURE系统(使用与语者无关的特征免用文法规则可将英文字母的识别率提升90%以上)。IBM的Tangora系统(可识别大量词汇的自然文句),BBN的BYBLOS系统(使用了音素间前后文相关的模型),以及Bell Labs的Rabiner系统(用连续隐藏式马可夫模型)等。有关这些技术优点及限制的各方面讨论可参考Kai-Fu Lee所著“Automatic SpeechRecognition The development of the SHPHINX System”,Kluwer AcademicPublishers 1989出版。有关隐藏式马可夫模型在语音识别上的应用在其上亦有详细的论述。构成中文字音(Syllable)的基本单位有声母及韵母。而一中文词音由中文字音串接而成。在识别时,输入的语音信号A是以一串特征向量表示。例如A可表示成A=X1X2…Xt…XT。Xt即为第t个音框(frame)的特征向量,而T为信号的总音框数。隐藏式马可夫模型为一统计式的语音信号的描述方式。在此模型中,语音信号根据某种概率分布产生。而此概率分布随时间逐渐改变。换言之,在某一阶段(某段时间)信号以某种概率分布呈现,但在下一阶段会变成另一概率分布呈现。此“阶段”在隐藏式马可夫模型中称为状态(state),每个状态i伴随着一产生信号的概率分布bi(Xt),此被称为产出的观测概率。从某一状态i转移至状态j以状态转移概率aij描述。因此基本上隐藏式马可夫模型由一些可转移的状态组成。转移由aij决定而每次转移所产生的信号Xt由bi(Xt)决定。有关隐藏式马可夫模型的细节可参考L.R.Rabiner及B.H.Juang所著的论文“An Introduction to Hidden Markov Models,”IEEE ASSPMagazine(January 1986)。下文中“隐藏式马可夫模型”以此为参考,不再赘述。在本专利技术所用的术语中,含N个词的词汇(Vocabulary)集以W={W1,W2…WN}表示,Wi的词长(即词中所含的字数)为|Wi|=li。词Wi所对应的发声模型(acoustic model)为Mi,此模型由字音模型串接而成。字音模型出自集合{C1,C2,C3…}。即M=Ci1Ci2…Ci|Wi|,再往下分解,字音模型Gi由声母模型mjI及韵母模型mkF组成,即Ci=[mjI]mkF。声母模型中的中括号表示字音中有可能没有声母。声、韵母模型以隐藏式马可夫模型表示。在识别时,设输入语音信号A为词Wi的发音。所谓识别即在词汇W中找出Wi。在本专利技术中,所谓全面搜寻(full search procedure)即是对所在词汇中的词音模型Mi(i=1,2…,N)计算由Mi产生A的概率Prob(A|Mi)。具有最大概率的词Wk即被辨认为会产生A的词。即k=argMiax(Prob(A|Mi))]]>概率Prob(A|Mi)的计算,是通过具有由左至右(left-to-right)的结构并具有s个状态的隐藏式马可夫模型,对输入信号A=X1X2…Xt…XT进行的。计算过程中的最佳状态通过Viterbi算法获得。此算法的详细内容亦可在L.R.Rabiner及B.H.Juang的文章中“An Introduction to Hidden MarkovModel”,IEEE ASSP Magazine(January 1986)中提到,不在此赘述。前面所提到的识别方法称为全面搜寻法。在此方法中,输入的语音信号要对所有N个模型作计算,当词汇数N很大时,这种作法便非常费时。本专利技术的目的在于提出一种改善中文词音识别的方法。具体而言,在于开发一快速,特别是在即时(realtime)速度上,基于隐藏式马可夫模型的一种中文词音识别方法。本专利技术的另一个目的在于提供一种采用所述方法的中文词音识别装置。本专利技术的目的是这样实现的,即提出一种基于隐藏式马可夫模型的快速的中文词音识别的方法和装置,所述方法在全面搜寻之前先过滤掉词汇中大部份的词,然后再对剩下的少量词做全面搜寻,如附图说明图1的流程图所示。输入信号首先被切割成l个字音段,每段包含一声母段及韵母段。(声母段有时空缺)。此步骤以下式表示为A=([s1I]s1F)([s2I]s2F)…([s1I]s1F)其中A为输入的语音信号,siI(i=1,2…,l)为第i个声母段落,siF为第i个韵母段落。中括号表示声母段落可能不在信号中。如前述,每个字音模型Gi是由声母模型mjI及韵母模型mkF串接而成,即Ci=[mjI]mkF。因此在筛选阶段要用到两组模型的数据库。一组为词音模型Mn,另一组含J个声母模型mjI(j=1,2…,J),及K个韵母模型mkF(k=1,2,…K)。下一步骤即对所有的声韵母段落(即i=1,2,…,l)及对所有的声韵母模型mjI,mjF(即j=1,2,…,J,k=1,2,…K计算logProb(sjI|mjI)及logProb(siF|mkF)。在本专利技术中,在W中每个词长为l的词Wn对应的发声模型为Mn=([[mn1I]mn1F)([mn2I]mn2F)…([mn1I]mn1F)。因此logProb(Wn)可由下式算出logProb(Wn)=Σr=1l(logProb(srI|mnrI)+logProb(srF|mnrF))]]>输入的语音信号A,可能为除了l外的别的词长。因此,必须挑选别的词长对A再作切割,并用上式再计算一遍,直到词汇W中所有可能的词长(通常不外乎2字词,3字词或4字词,即l=2,3或4)均用相同的方式处理过为止。当所有的logProb(Wn)均计算完后,找出前X个具有最大值的词Wi,i=1本文档来自技高网...

【技术保护点】
一种中文词音识别方法,包括以下的步骤: (a)取得第一组数据库,其中该第一组数据库包括一组含N个中文词的词汇集,此词汇集以W={W↓[1],W↓[2],…,W↓[N]}表示,每个词W↓[i]有个发声模型M↓[i],此模型由字音模型串接而成,字音模型的集合以{C↓[1],C↓[2],C↓[3]…}表示,每个字音模型C↓[i]是由声母模型后接一韵母模型形成,其中声母模型可能空缺,声母模型及韵母模型均以统计模型表示; (b)取得第二组数据库,其中该第二组数据库包括一组J个声母模型m↑[I]↓[j](j=1,2,…,J)及另一组K个韵母模型m↓[k]↑[F](k=1,2,…,K); (c)接收一输入语音信号A; (d)将输入语音信号切割成l个段落(segment),其中该l为一整数,而输入语音信号可以以下式表示 A=([s↓[1]↑[I]]s↓[1]↑[F])([s↓[2]↑[I]]s↓[2]↑[F])…([s↓[l]↑[I]]s↓[l]↑[F]) 其中s↓[i]↑[I](i=1,2,…,l)为声母子段落,而s↓[i]↑[F](i=1,2,…l)为韵母子段落,[ ]表示有些声母子段落可能为空段落; (e)对词汇W中的每一个词长为l的词W↓[n],此词的发声模型为M↓[n]=([m↓[n1]↑[I]]m↓[n1]↑[F])([m↓[n2]↑[I]]m↓[n2]↑[F])…([m↓[n1]↑[I]]m↓[n1]↑[F]),由下式计算logProb(W↓[n]), logProb(W↓[n])=*(logProb(s↓[r]↑[I]|m↓[nr]↑[I])+logProb(s↓[r]↑[F]|m↓[nr]↑[F])); (f)在词汇W中找X个词,这些词的logProb(W↓[n])值在词汇W中的所有词的logProb(W↓[n])值中为前X个最大值,设这些X个词的集合为W’; (g)对每个在词汇W’内的词W↓[n],计算Prob(A|M↓[n])(n=1,2,…,X),即在已知M↓[n]模型下产生A的概率;及 (h)输出识别出的词W↓[x],其中 x=arg *ax(Prob(A|M↓[n])) n=1,2,…,X。...

【技术特征摘要】
1.一种中文词音识别方法,包括以下的步骤(a)取得第一组数据库,其中该第一组数据库包括一组含N个中文词的词汇集,此词汇集以W={W1,W2,...,WN}表示,每个词Wi有个发声模型Mi,此模型由字音模型串接而成,字音模型的集合以{C1,C2,C3…}表示,每个字音模型Ci是由声母模型后接一韵母模型形成,其中声母模型可能空缺,声母模型及韵母模型均以统计模型表示;(b)取得第二组数据库,其中该第二组数据库包括一组J个声母模型mjI(j=1,2,...,J)及另一组K个韵母模型mkF(k=1,2,...,K);(c)接收一输入语音信号A;(d)将输入语音信号切割成l个段落(segment),其中该l为一整数,而输入语音信号可以以下式表示A=([s1I]s1F)([s2I]s2F)…([s1I]s1F)其中siI(i=1,2,...,l)为声母子段落,而siF(i=1,2,...l)为韵母子段落,[ ]表示有些声母子段落可能为空段落;(e)对词汇W中的每一个词长为l的词Wn,此词的发声模型为Mn=([mn1I]mn1F)([mn2I]mn2F)…([mn1I]mn1F),由下式计算logProb(Wn),logProb(Wn)=Σr=1l(logProb(srI|mnrI)+logProb(srF|mnrF));]]>(f)在词汇W中找X个词,这些词的logProb(Wn)值在词汇W中的所有词的logProb(Wn)值中为前X个最大值,设这些X个词的集合为W’;(g)对每个在词汇W’内的词Wn,计算Prob(A|Mn)(n=1,2,…,X),即在已知Mn模型下产生A的概率;及(h)输出识别出的词Wx,其中x=argMnax(Prob(A|Mn))----n=1,2...,X.]]>2.如权利要求1所述的方法,其中声母模型与韵母模型均用隐藏式马可夫模型表示。3.如权利要求1所述的方法,其中输入语音信号采用Viterbi算法进行切割。4.如权利要求1所述的方法,其中包括用不同的词长l重复步骤(d)及(e)。5.如权利要求4所述的方法,其中所述不同的词长l分别为2,3及4。6.如权利要求1所述的方法,其中X是个等于或大于10的整数。7.如权利要求1所述的方法,其中X是个整数,且至少是N的2%。8.一种中文词音识别装置,包含(a)取得第一组数据库的装置,其中该第一组数据库包括一组含N个中文词的词汇集,此词汇集以W={W1,W2,…WN}表示,每个词Wi有个发声模型Mi,此模型由字音模型串接而成,字音模型的集合以{C1,C2,C3…}表示,每个字音模型Ci是由声母模型后接一韵母模型形成,其中声母模型可能空缺,声母模型及韵母模型均以统计模型表示;(b)取得第二组数据库的装置,其中该第二组数据库包括一组J个声母模型mjI(i=1,2,...,J)及另一组K个韵母模型mkF(k=1,2,...K);(c)接收一输入语音信号A的装置;(d)将输入语音信号切割成l个段落的装置,其中该l为一整数,而输入语音信号可以以下式表示A=([s1I]s1F)([s2I]s2F)…([s1I]s1F)其中sjI(i=1,2,...,l)为声母子段落,而siF(i=1,2,...l)为韵母子段落,[ ]表示有些声母子段落可能为空段落;(e)对词汇W中的每一个词长为l的词Wn,此词的发声模型为Mn=([mn1I]mn1F)([mn2I]mn2F)…([mn1I]mn1F),由下式计算logProb(Wn)的装...

【专利技术属性】
技术研发人员:彭吴忠谋
申请(专利权)人:财团法人工业技术研究院
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利