《HMM_语音信号处理第5章课件.ppt》由会员分享,可在线阅读,更多相关《HMM_语音信号处理第5章课件.ppt(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、5.15.1概述概述5.25.2隐马尔科夫模型的引入隐马尔科夫模型的引入5.35.3隐马尔科夫模型的定义隐马尔科夫模型的定义5.45.4隐马尔科夫模型的基本算法隐马尔科夫模型的基本算法5.55.5隐马尔科夫模型的各种结构类型隐马尔科夫模型的各种结构类型5.65.6隐马尔科夫模型的一些实际问题隐马尔科夫模型的一些实际问题5.1 5.1 概述概述v隐马尔可夫模型隐马尔可夫模型(HMM)(HMM),作为语音信号的一种统计,作为语音信号的一种统计模型,今天正在语音处理各个领域中获得广泛的应模型,今天正在语音处理各个领域中获得广泛的应用。由于用。由于BellBell实验室实验室RabinerRabine
2、r等人在等人在8080年代中期对年代中期对HMMHMM的深入浅出的介绍,使的深入浅出的介绍,使HMMHMM为世界各国从事语音为世界各国从事语音信号处理的研究人员所了解和熟悉,进而成为公认信号处理的研究人员所了解和熟悉,进而成为公认的一个研究热点。近几十年来,隐马尔可夫模型技的一个研究热点。近几十年来,隐马尔可夫模型技术无论在理论上或是在实践上都有了许多进展。其术无论在理论上或是在实践上都有了许多进展。其基本理论和各种实用算法是现代语音识别等的重要基本理论和各种实用算法是现代语音识别等的重要基础之一。基础之一。 5.25.2隐马尔科夫模型的引入隐马尔科夫模型的引入vHMMHMM是一个输出符号序列
3、的统计模型,具有是一个输出符号序列的统计模型,具有N N个状个状态态 ,它按一定的周期从一个状态转移到另,它按一定的周期从一个状态转移到另一个状态,每次转移时,输出一个符号。转移到哪一个状态,每次转移时,输出一个符号。转移到哪一个状态,转移时输出什么符号,分别由状态转移一个状态,转移时输出什么符号,分别由状态转移概率和转移时的输出概率来决定。因为只能观测到概率和转移时的输出概率来决定。因为只能观测到输出符号序列,而不能观测到状态转移序列(即模输出符号序列,而不能观测到状态转移序列(即模型输出符号序列时,是通过了哪些状态路径,不能型输出符号序列时,是通过了哪些状态路径,不能知道),所以称为隐藏的
4、马尔可夫模型。知道),所以称为隐藏的马尔可夫模型。 12,NS SSv一个简单的三状态一个简单的三状态HMMHMM的例子的例子 v物理过程分析:建立模型来描述这个序列的特征是非常重要物理过程分析:建立模型来描述这个序列的特征是非常重要的。的。v如果在分析的区间内,信号是非时变的或平稳的,那么使用如果在分析的区间内,信号是非时变的或平稳的,那么使用众所周知的线性模型来描述该信号就可以了。例如,语音信众所周知的线性模型来描述该信号就可以了。例如,语音信号在短时间(约号在短时间(约101030ms30ms)内认为是平稳的,所以,在一段)内认为是平稳的,所以,在一段短时间内,就可以用一个全零点模型或极
5、零点模型来描述它,短时间内,就可以用一个全零点模型或极零点模型来描述它,这就是这就是线性预测(线性预测(LPCLPC)模型)模型。v但整体来讲,语音信号是时变的,所以用模型表示时,其参但整体来讲,语音信号是时变的,所以用模型表示时,其参数也是时变的。但是语音信号是慢时变信号,所以,简单的数也是时变的。但是语音信号是慢时变信号,所以,简单的考虑方法是:在较短的时间内用线性模型参数来表示,然后,考虑方法是:在较短的时间内用线性模型参数来表示,然后,再将许多线性模型在时间上串接起来,这就是再将许多线性模型在时间上串接起来,这就是马尔可夫链马尔可夫链(MarkovMarkov链)链)。vMarkovM
6、arkov链虽然可以描述时变信号,但不是最佳的和最有效的。链虽然可以描述时变信号,但不是最佳的和最有效的。 vHMMHMM既解决了用短时模型描述平稳段的信号,又解决了每个既解决了用短时模型描述平稳段的信号,又解决了每个短时平稳段是如何转变到下一个短时平稳段的。短时平稳段是如何转变到下一个短时平稳段的。vHMMHMM是由两个随机过程组成,一个随机过程描述状态和观察是由两个随机过程组成,一个随机过程描述状态和观察值之间的统计对应关系的,它解决了用短时模型描述平稳段值之间的统计对应关系的,它解决了用短时模型描述平稳段的信号的问题;由于实际问题比的信号的问题;由于实际问题比MarkovMarkov链模
7、型所描述的更为链模型所描述的更为复杂,观察到的事件并不是如复杂,观察到的事件并不是如MarkovMarkov链模型中与状态一一对链模型中与状态一一对应,所以应,所以HMM HMM 通过另一组概率分布相联系的状态的转移统计通过另一组概率分布相联系的状态的转移统计对应关系来描述每个短时平稳段是如何转变到下一个短时平对应关系来描述每个短时平稳段是如何转变到下一个短时平稳段的。稳段的。v语音识别的最大困难之一就是如何对语音的语音识别的最大困难之一就是如何对语音的发音速率及声学发音速率及声学变化变化建立模型。随着建立模型。随着HMMHMM被引入到语音识别领域中,这一棘被引入到语音识别领域中,这一棘手问题
8、得到了较圆满地解决。手问题得到了较圆满地解决。HMMHMM很好的描述了语音信号的很好的描述了语音信号的整体非平稳性和局部平稳性,是一种较为理想的语音信号模整体非平稳性和局部平稳性,是一种较为理想的语音信号模型。型。 5.35.3隐马尔科夫模型的定义隐马尔科夫模型的定义 离散离散MarkovMarkov过程过程 MarkovMarkov链是链是Markov Markov 随机过程的特殊情况,即随机过程的特殊情况,即MarkovMarkov链是状链是状态和时间参数都离散的态和时间参数都离散的MarkovMarkov过程。过程。v设在时刻设在时刻t t的随机变量用的随机变量用 、其观察值用、其观察值
9、用 表示,则如果当表示,则如果当 的前提下,的前提下, 的概率是如下式所示,则称的概率是如下式所示,则称其为其为n n阶阶MarkovMarkov过程过程tStsttsSsSsS,221111ttsS)|()|(11111111tnttntttttttsSsSPsSsSPv特别地,当如下式成立时,则称其为特别地,当如下式成立时,则称其为1 1阶阶MarkovMarkov过程,又叫过程,又叫单纯单纯MarkovMarkov过程。过程。 v系统在任一时刻所处的状态只与此时刻的前一时刻所处的状系统在任一时刻所处的状态只与此时刻的前一时刻所处的状态有关。而且,为了处理问题方便,我们只考虑上式右边的态有
10、关。而且,为了处理问题方便,我们只考虑上式右边的概率与时间无关的情况,即:概率与时间无关的情况,即:v同时满足:同时满足: v这里这里 是当时刻是当时刻t t从状态从状态i i在时刻在时刻t+1t+1到状态到状态j j的转移概率,的转移概率,当这个转移概率是与时间无关的常数时,又叫当这个转移概率是与时间无关的常数时,又叫 是具有是具有常数转移概率的常数转移概率的MarkovMarkov过程。过程。v 表示从状态表示从状态i i到状态到状态j j的转移是可能的。对于任意的的转移是可能的。对于任意的i,ji,j都有都有 则这个则这个MarkovMarkov过程是正则的。过程是正则的。)|()|(1
11、11111ttttttttsSsSPsSsSP|) 1,(1itjtijsSsSPttP0) 1,(ijttP1) 1,(1NjijttPijttP) 1,(,21SS0)(ijtP0)(ijtP 隐隐MarkovMarkov模型模型vHMMHMM是一个双内嵌式随机过程:由两个随机过程组成,一个是一个双内嵌式随机过程:由两个随机过程组成,一个是状态转移序列,它对应着一个单纯是状态转移序列,它对应着一个单纯MarkovMarkov过程。另一个是过程。另一个是每次转移时输出的符号组成的符号序列。每次转移时输出的符号组成的符号序列。v在语音识别的在语音识别的HMMHMM中,相邻符号之间是不相关的(这
12、当然不中,相邻符号之间是不相关的(这当然不符合语音信号的实际情况,这也是符合语音信号的实际情况,这也是HMMHMM的一个缺点,对此,的一个缺点,对此,已经有许多改进的已经有许多改进的HMMHMM被提出)。这二个随机过程,其中一被提出)。这二个随机过程,其中一个随机过程是不可观测的,只能通过另一个随机过程的输出个随机过程是不可观测的,只能通过另一个随机过程的输出观察序列观测。设状态转移序列为观察序列观测。设状态转移序列为 ,输出的符号序,输出的符号序列为列为 ,则在单纯,则在单纯MarkovMarkov过程和相邻符号之间是不相过程和相邻符号之间是不相关的假设下(即关的假设下(即 和和 之间转移时
13、的输出观察值之间转移时的输出观察值 和其他和其他转移之间无关),有下式成立转移之间无关),有下式成立:TsssS21ToooO211isisioiov因为是隐因为是隐MarkovMarkov模型,把所有可能的状态转移序列都考虑进模型,把所有可能的状态转移序列都考虑进去,则有:去,则有: 这就是上面我们计算输出符号序列这就是上面我们计算输出符号序列aabaab的输出概率时所用的的输出概率时所用的方法。方法。)|()|()(111iiiiiissPssPSP),|()|()|(11iiiiiiissoPsoPSOP),|()|()()|()(11iiiSSiiissoPssPSPSOPOP HMM
14、 HMM的基本元素的基本元素 根据以上的分析,对于语音识别用根据以上的分析,对于语音识别用HMMHMM可以用下面六个可以用下面六个模型参数来定义,即:模型参数来定义,即:v v : :模型中状态的有限集合,即模型由几个状态组成。设模型中状态的有限集合,即模型由几个状态组成。设有有N N 个状态,个状态, 。记。记t t时刻模型所处状态为时刻模型所处状态为 ,显,显然然 。在球与缸的实验中的缸就相当于状态。在球与缸的实验中的缸就相当于状态。v : :输出的观测值符号的集合,即每个状态对应的可能的输出的观测值符号的集合,即每个状态对应的可能的观察值数目。记观察值数目。记 个观察值为个观察值为 ,记
15、,记t t时刻观察到的观时刻观察到的观察值为察值为 ,其中,其中 。在球与缸实验中所选彩球的颜。在球与缸实验中所选彩球的颜色就是观察值。色就是观察值。 FBAOSM,SNiSSi, 2 , 1|ts),(1NtSSsOMMOO,1to),(1MtOOov : :状态转移概率的集合。所有转移概率可以构成一个转移状态转移概率的集合。所有转移概率可以构成一个转移概率矩阵,即:概率矩阵,即: 其中其中 是从状态是从状态 到状态到状态 转移时的转移概率,转移时的转移概率, 且且有有 , , 。在球与缸实验中,它指描述每次在当前。在球与缸实验中,它指描述每次在当前选取得缸的条件下选取下一个缸的概率。选取得
16、缸的条件下选取下一个缸的概率。 ANNNNaaaaA1111ijaiSjSNji ,110ijaNjija11v :输出观测值概率的集合。:输出观测值概率的集合。 ,其中,其中 是从状态是从状态 到状态到状态 转移时观测值符号的输出概率。即缸中球的颜色转移时观测值符号的输出概率。即缸中球的颜色 出现的概率。根据出现的概率。根据B B可将可将HMMHMM分为连续型和离散型分为连续型和离散型HMMHMM等。等。v :系统初始状态概率的集合,:系统初始状态概率的集合, : 表示初始状态是表示初始状态是 的概率,即,的概率,即, 在球与缸实验中,它指开始时选取某个缸的概率。在球与缸实验中,它指开始时选
17、取某个缸的概率。v :系统终了状态的集合。:系统终了状态的集合。 这里需要说明的是,严格地说这里需要说明的是,严格地说MarkovMarkov模型是没有终了状态模型是没有终了状态的概念的,只是在语音识别里用的的概念的,只是在语音识别里用的MarkovMarkov模型要设定终了状模型要设定终了状态。态。 B)(kbBij)(kbijiSjSk iiis1,(1)iiP SsiN1jFHMM的三个基本问题v概率估计问题:给定模型 和观察序列, 如何计算概率前向算法v最优状态序列问题:Viterbiv模型参数训练问题: 如何调整模型参数最大化Baum-Welch,BAM ToooO21)|(MOPT
18、sssS21)/(MOP5.4 5.4 隐马尔可夫模型的基本算法隐马尔可夫模型的基本算法 前向后向算法前向后向算法 v前向前向- -后向算法(后向算法(Forward-BackwardForward-Backward,简称为,简称为F-BF-B算算法)是用来计算给定一个观察值序列法)是用来计算给定一个观察值序列 以及以及一个模型一个模型 时,由模型时,由模型M M产生出产生出O O的概率的概率 v前向算法前向算法 v前向变量前向变量 可有下面的递推公式计算得到:可有下面的递推公式计算得到: ToooO21,BAM)|(MOP MiqoooPittt|,21(1 1)初始化)初始化 (2 2)递
19、推公式)递推公式 (3 3)最后结果)最后结果 1) 1 (00)(0j) 1(jitijijttobaij)()()(1Nji, 2 , 1,Tt, 2 , 1)()/(NMOPTv后向算法后向算法v后向变量后向变量 可由下面的递推公式计算得到:可由下面的递推公式计算得到:(1 1)初始化)初始化 (2 2)递推公式)递推公式(3 3)最后结果)最后结果 1)(NT0)(jT)(Nj jtijijttobaji)()()(111 , 1,TTtNji, 2 , 1,) 1 ()()/(011iNiiMOP MiqoooPitTttt,21The Viterbi AlgorithmvTo fi
20、nd the single best state sequence, q=(q1q2qT), for the given observation sequence O=(o1o2oT), we need to define the quantity1 2112112( )max(.,.| )tttttq qqiP q qqqi o oo18Viterbi AlgorithmvThat is , is the best score along a single path, at time t, which accounts for the first t observations and end
21、s in state i, by induction we have( )ti11( )max( )()ttijjtiji ab o19Viterbi AlgorithmvThe complete procedure for finding the best state sequence can now be stated as follows:1.Initialization111( )( )1( )0iiib oiNi 20Viterbi Algorithm2.Recursion3.Termination1111( )max( ) ( )1,2( )argmax( )1,2ttijjti
22、Nttiji Nji a b ojNtTji ajNtT 11max( )arg max( )TiNTTiNPiqi 21Viterbi Algorithm4. Path (state sequence) backtrackingvIt should be noted that the Viterbi algorithm is similar in implementation to the forward calculation.11(),1,2,.,1tttqqtTT 22B.Alternative Viterbi ImplementationvBy taking logarithms o
23、f the model parameters, the Viterbi algorithm of the preceding section can be implemented without the need for any multiplications, thus:23Viterbi Algorithm0. Preprocessinglog()1( )log ( )1,1log()1,iiititijijiNb ob oiNtTaai jN 24Viterbi Algorithm1.Initialization2.Recursion 1111( )log( )( )1( )01iiii
24、b oiNiiN 1111( ) log( ( ) max()( )( ) argmax()2,1tttijjti Nttiji Njjiab ojiat TjN 25Viterbi Algorithm3. Termination4. Backtracking 11m a x ( )a rg m a x ( )TiNTTiNPiqi11(),1,2,.,1tttqqtTT 26 Baum-Welch Baum-Welch 算法算法 v这个算法实际上是解决这个算法实际上是解决HMMHMM训练的,即训练的,即HMMHMM参数估计参数估计问题的。或者说,给定一个观察值序列问题的。或者说,给定一个观察
25、值序列 ,该算法能确定一个该算法能确定一个 ,使,使 最大。最大。Baum-Baum-WelchWelch算法利用递归的思想,使算法利用递归的思想,使 局部放大,局部放大,最后得到优化的模型参数最后得到优化的模型参数ToooO,21,BAM )/(MOP)/(MOP,BAM vBaum-WelchBaum-Welch算法算法vHMM_Training.pptHMM_Training.ppt5.5 5.5 隐马尔可夫模型的各种结构类型隐马尔可夫模型的各种结构类型 按照按照HMMHMM的状态转移概率矩阵(参数)分类的状态转移概率矩阵(参数)分类 v各态历经型或遍历型各态历经型或遍历型HMMHMM(
26、Ergodic HMMErgodic HMM) : :严格的讲,所谓严格的讲,所谓的遍历模型就是经过有限步的转移后,系统能达到任何一个的遍历模型就是经过有限步的转移后,系统能达到任何一个状态。即系统从一个状态允许转移到任何一个状态。在某些状态。即系统从一个状态允许转移到任何一个状态。在某些应用系统中,常遇到的是一步遍历模型,即经过一步跳转,应用系统中,常遇到的是一步遍历模型,即经过一步跳转,系统可达到任何一个状态。这样的系统可达到任何一个状态。这样的HMMHMM的状态转移矩阵中的的状态转移矩阵中的每一个元素均为大于零的数,没有零元素。显然,各态历经每一个元素均为大于零的数,没有零元素。显然,各
27、态历经型型HMMHMM不符合时间顺序的要求,因为它可以回到以前到过的不符合时间顺序的要求,因为它可以回到以前到过的状态,所以只能用于不要求时间顺序的语音信号处理,如:状态,所以只能用于不要求时间顺序的语音信号处理,如:与文本无关的说话人识别等。与文本无关的说话人识别等。v从左到右型从左到右型HMMHMM(Left-to-Right HMMLeft-to-Right HMM):):所谓的从左到右模所谓的从左到右模型,就是指随着时间的增加,状态的转移只能是从左到右进型,就是指随着时间的增加,状态的转移只能是从左到右进行或停留在原来的状态,而不能出现返回到以前状态的情况,行或停留在原来的状态,而不能
28、出现返回到以前状态的情况,即从编号高的状态(如第状态)到编号低的状态(如第即从编号高的状态(如第状态)到编号低的状态(如第n-1n-1或或n-2n-2等等状态等等状态)跳转的情况(这实际上是一个时序的问题,)跳转的情况(这实际上是一个时序的问题,因为按照时间顺序,总是从编号低的状态向编号高的状态转因为按照时间顺序,总是从编号低的状态向编号高的状态转移)。因此,其状态转移矩阵具有如下的形式,它是一个上移)。因此,其状态转移矩阵具有如下的形式,它是一个上三角矩阵,而表示终止状态的最后一行除了最后一个元素外三角矩阵,而表示终止状态的最后一行除了最后一个元素外全为零(当终止状态没有自转移时,则最后一行
29、全为零)。全为零(当终止状态没有自转移时,则最后一行全为零)。44343324232214131211000000aaaaaaaaaav另外从状态转移结构上另外从状态转移结构上HMMHMM还有还有其他的一些变体,如由图其他的一些变体,如由图5-55-5(c c)所示的由两条并行的从左到右模所示的由两条并行的从左到右模型组成的型组成的HMMHMM,又称为,又称为HMMHMM网络。网络。它不是一般的情况,是由标准模它不是一般的情况,是由标准模型组合的变体,用于特殊的应用型组合的变体,用于特殊的应用场合。这种模型较复杂,所以性场合。这种模型较复杂,所以性能一般要比单个左右模型要好。能一般要比单个左右
30、模型要好。 按照按照HMMHMM的输出概率分布(的输出概率分布(B B参数)分类参数)分类 v离散离散HMMHMM(DHMMDHMM): :离散离散HMMHMM就是上面一直在介绍的就是上面一直在介绍的HMMHMM。在这种。在这种HMMHMM中,每一个状态的输出概率是按观中,每一个状态的输出概率是按观察字符离散分布的,每一次转移时状态输出的字符,察字符离散分布的,每一次转移时状态输出的字符,是从一个有限的离散字符集中按照一定的离散概率是从一个有限的离散字符集中按照一定的离散概率分布选出的。在语音信号处理中,经过特征分析后,分布选出的。在语音信号处理中,经过特征分析后,语音信号先被分割成若干帧,每
31、帧求取一个特征参语音信号先被分割成若干帧,每帧求取一个特征参数向量,即每帧是用一个特征参数向量表示的。此数向量,即每帧是用一个特征参数向量表示的。此时若要使用离散时若要使用离散HMMHMM,则需要将语音特征参数向量,则需要将语音特征参数向量的时间序列进行矢量量化,通过矢量量化使每一帧的时间序列进行矢量量化,通过矢量量化使每一帧语音信号由特征参数向量表示转变为用码字符号表语音信号由特征参数向量表示转变为用码字符号表示的形式。示的形式。 v连续型连续型HMMHMM(Continuous HMMContinuous HMM,简称为,简称为CHMMCHMM):在连续):在连续HMMHMM中,中,由于可
32、以输出的是连续值,不是有限的,所以不能用矩阵表由于可以输出的是连续值,不是有限的,所以不能用矩阵表示输出概率,而要改用概率密度函数来表示。即用示输出概率,而要改用概率密度函数来表示。即用 表示:在表示:在 和和 之间观察矢量的输出概率。这里之间观察矢量的输出概率。这里 称称为参数为参数 的概率密度分布函数,输出的概率密度分布函数,输出 的概率可以通过的概率可以通过 计算出来。计算出来。 一般用高斯概率密度函数,由于一般用高斯概率密度函数,由于 是多维矢是多维矢量所以要用多元高斯概率密度函数量所以要用多元高斯概率密度函数)(dXXbijXdXX )(XbijXX)(Xbij)(XbijX)()(
33、exp),|()(121)2(12/12tijijijijXXjiXPXbijpv根据协方差矩阵是全协方差矩阵还是对角协方差矩阵,可以根据协方差矩阵是全协方差矩阵还是对角协方差矩阵,可以把连续把连续HMMHMM分成全协方差矩阵分成全协方差矩阵CHMMCHMM和对角协方差矩阵和对角协方差矩阵CHMMCHMM。v另一方面,由于在实际的语音信号处理系统中,往往用一个另一方面,由于在实际的语音信号处理系统中,往往用一个高斯概率密度函数不足以表示语音参数的输出概率分布,所高斯概率密度函数不足以表示语音参数的输出概率分布,所以一种常用于语音信号处理的概率密度函数,称之为以一种常用于语音信号处理的概率密度函
34、数,称之为“高斯高斯元混合密度元混合密度”,即用多个高斯概率分布的加权组合来表示输,即用多个高斯概率分布的加权组合来表示输出概率密度函数。出概率密度函数。v连续混合密度连续混合密度HMMHMM为多个正态分布线性相加的为多个正态分布线性相加的HMMHMM系统,当系统,当M M值较大(如值较大(如M M为为4 4或或5 5)时,系统的识别率较高,但其运算量)时,系统的识别率较高,但其运算量较大。另一方面,每个模型中每个状态的概率密度由较大。另一方面,每个模型中每个状态的概率密度由M M个正个正态分布函数叠加而成,它比前者有更多的自由度,因而逼近态分布函数叠加而成,它比前者有更多的自由度,因而逼近实
35、际分布的效果更好一些,这样识别效果也会更佳,随着词实际分布的效果更好一些,这样识别效果也会更佳,随着词汇量的增加,这一优点更加突出,因而,对一些大词汇量的汇量的增加,这一优点更加突出,因而,对一些大词汇量的与说话人无关的语音识别系统,连续混合密度与说话人无关的语音识别系统,连续混合密度HMMHMM受到重视。受到重视。 )()(exp)()(121)2(1112/12tijmijmijmMmijmMmijmijmijXXwXbwXbijmpv半连续型半连续型HMMHMM(Semi-Continuous HMMSemi-Continuous HMM:简称为:简称为SCHMMSCHMM):离):离散
36、散HMMHMM的模型参数少,对训练数据量要求不高,而且离散的模型参数少,对训练数据量要求不高,而且离散HMMHMM的计算量较少,易于实时实现,但是离散的计算量较少,易于实时实现,但是离散HMMHMM的缺点是识别的缺点是识别精度不高。连续型精度不高。连续型HMMHMM虽然不使用离散概率分布不需要对输虽然不使用离散概率分布不需要对输入信号进行量化,从而提高了识别率,但这是以运算量的增入信号进行量化,从而提高了识别率,但这是以运算量的增加为代价的,而且连续型加为代价的,而且连续型HMMHMM尤其是连续混合密度尤其是连续混合密度HMMHMM的模型的模型参数教多,训练数据不够时训练的模型精度较低。为了结
37、合参数教多,训练数据不够时训练的模型精度较低。为了结合这两种模型的优点,弥补这两种模型的缺点。人们提出了半这两种模型的优点,弥补这两种模型的缺点。人们提出了半连续型连续型HMMHMM,它的输出概率的形式如下式所示:,它的输出概率的形式如下式所示:v这样,对于离散这样,对于离散HMMHMM,半连续型,半连续型HMMHMM用多个正态分布线性相加用多个正态分布线性相加作为概率密度函数弥补了离散分布的误差;对于连续型作为概率密度函数弥补了离散分布的误差;对于连续型HMMHMM,半连续型半连续型HMMHMM用多个各状态共有的正态分布线性相加作为概用多个各状态共有的正态分布线性相加作为概率密度函数弥补了参
38、数数量多,计算量大的缺陷。率密度函数弥补了参数数量多,计算量大的缺陷。),(),(),|()(11kkJkijkkkJkijXNwXNjikPXb 其他一些特殊的其他一些特殊的HMMHMM的形式的形式 v空转移(空转移(Null TransitionsNull Transitions): :在这种类型的在这种类型的HMMHMM中,系统的中,系统的输出是与转移弧相联系的,允许不产生输出的转移,即从一输出是与转移弧相联系的,允许不产生输出的转移,即从一个状态转移到其他状态时,无观察符号(或矢量)输出。这个状态转移到其他状态时,无观察符号(或矢量)输出。这样的转移称为空转移。在连续语音识别系统中,单
39、词或语句样的转移称为空转移。在连续语音识别系统中,单词或语句的的HMMHMM都是由基元都是由基元HMMHMM的连接形成的,一般在连接时,一个基的连接形成的,一般在连接时,一个基元元HMMHMM的终止状态和一个基元的终止状态和一个基元HMMHMM的初始状态相连接,这种连的初始状态相连接,这种连接产生的转移弧就是空转移,如图接产生的转移弧就是空转移,如图5-65-6所示。所以在大词汇所示。所以在大词汇连续语音识别系统中大量使用了这种模型。连续语音识别系统中大量使用了这种模型。 v基元基元HMMHMM的连接的连接 音节HMM单词HMMnullnull连接连接v参数捆绑(参数捆绑(Parameter
40、tieingParameter tieing) : :参数捆绑的基本思想是在参数捆绑的基本思想是在HMMHMM的不同状态转移弧的参数之间建立一定的关系,使得不的不同状态转移弧的参数之间建立一定的关系,使得不同状态转移弧使用相同的参数,其目的就是使模型中的独立同状态转移弧使用相同的参数,其目的就是使模型中的独立的状态参数减少,从而使得参数估计变得较为简单。参数捆的状态参数减少,从而使得参数估计变得较为简单。参数捆绑是解决训练数据不足问题的重要方法,因为模型的参数越绑是解决训练数据不足问题的重要方法,因为模型的参数越多,则需要的训练数据数量就越大,否则训练出的模型精度多,则需要的训练数据数量就越大
41、,否则训练出的模型精度就不够。所以可以通过参数捆绑来降低模型参数数量,减少就不够。所以可以通过参数捆绑来降低模型参数数量,减少对训练数据量的压力。参数捆绑常用于两个或多个状态的输对训练数据量的压力。参数捆绑常用于两个或多个状态的输出观察向量的概率密度分布近似相同的情况,提取的语音特出观察向量的概率密度分布近似相同的情况,提取的语音特征参数可以认为在这些状态转移弧上符合相同的分布。实际征参数可以认为在这些状态转移弧上符合相同的分布。实际上,在如图上,在如图5-75-7所示的连续型所示的连续型HMMHMM中,一个状态的自转移弧和中,一个状态的自转移弧和互转移弧的参数必须进行参数捆绑,因为,对于一个
42、训练参互转移弧的参数必须进行参数捆绑,因为,对于一个训练参数的时间序列,实际上互转移弧上只通过了一帧的语音数据,数的时间序列,实际上互转移弧上只通过了一帧的语音数据,而用一帧的语音数据估计正态分布概率密度函数是不可能的。而用一帧的语音数据估计正态分布概率密度函数是不可能的。 v具有参数捆绑的连续型具有参数捆绑的连续型HMMHMM tietietie5.6 5.6 隐马尔可夫模型的一些实际问题隐马尔可夫模型的一些实际问题 下溢问题下溢问题v在计算在计算HMMHMM的三个问题时,需要计算前向变量的三个问题时,需要计算前向变量 和后向变和后向变量量 ,他们是通过递归运算求得的,例如在,他们是通过递归
43、运算求得的,例如在 ViterbiViterbi算算法中,计算前向变量所用的递归公式如下:法中,计算前向变量所用的递归公式如下: 在上式中,在上式中, 和和 项均为小于的项均为小于的1 1数(甚至远小于数(甚至远小于1 1),),因此在实际运算中,因此在实际运算中, 较较 要小,随着要小,随着t t的增加,的增加, 就有明显得降低,最后,该变量变得非常小,以致会超出就有明显得降低,最后,该变量变得非常小,以致会超出计算动态范围的下限,即使采用双精度运算,当计算动态范围的下限,即使采用双精度运算,当t t相当大时,相当大时,几乎所有的几乎所有的 都趋向于都趋向于0 0,后向变量,后向变量 的计算
44、也有类似的计算也有类似的情况,这就是计算中的下溢问题。因此,在进行相关计的情况,这就是计算中的下溢问题。因此,在进行相关计算时,必须加入定标过程。算时,必须加入定标过程。)(it)(itNitijijttobaij11)()()(ija)(tijob)(it)(1it)(it)(it)(it 参数的初始化问题参数的初始化问题 v从理论上而言,基于标准从理论上而言,基于标准ML(Maximum Likelihood MethodML(Maximum Likelihood Method,简称,简称为为MLML法法) )判据的判据的Baum-WelchBaum-Welch前后向重估训练算法能够给出似
45、然函数前后向重估训练算法能够给出似然函数的局部最大点,一个关键的问题是如何恰当地选择的局部最大点,一个关键的问题是如何恰当地选择HMMHMM的初始参数,的初始参数,使局部最大值尽量的接近全局最优点。此外,好的初值选择还可使局部最大值尽量的接近全局最优点。此外,好的初值选择还可以保证达到收敛所需的迭代次数最小,即计算效率较高。初始概以保证达到收敛所需的迭代次数最小,即计算效率较高。初始概率和状态转移系数矩阵的初值较易确定。由迭代算法可知,如果率和状态转移系数矩阵的初值较易确定。由迭代算法可知,如果任何一个参数的初值定为任何一个参数的初值定为0 0,那么以后的迭代运算中恒为零。因此,那么以后的迭代
46、运算中恒为零。因此,通常对这两组参数的初值设置为均匀分布之值或非零的随机数,通常对这两组参数的初值设置为均匀分布之值或非零的随机数,据有关文献介绍,据有关文献介绍, 和和 的初值设置对识别率的影响不是太大。的初值设置对识别率的影响不是太大。v参数参数B B的初值设置较其它两组参数的设置更至关重要也更困难。对的初值设置较其它两组参数的设置更至关重要也更困难。对离散型离散型HMMHMM等较简单的情况,等较简单的情况,B B的设置较容易,可以采取均匀的或的设置较容易,可以采取均匀的或随机的设置每一字符出现的概率初值。在连续分布随机的设置每一字符出现的概率初值。在连续分布HMMHMM的的B B中,包中
47、,包含的参数越多越复杂,则参数初值的设置对于迭代计算的结果越含的参数越多越复杂,则参数初值的设置对于迭代计算的结果越至关重要,一种较简单的至关重要,一种较简单的B B初值的设置方法是用手工对输入的语音初值的设置方法是用手工对输入的语音进行状态划分并统计出相应的概率分布作为初值,这适合于较小进行状态划分并统计出相应的概率分布作为初值,这适合于较小的语音单位。对于较大的语音单位,目前普遍采用分段的语音单位。对于较大的语音单位,目前普遍采用分段K-K-均值算均值算法,该算法的基本思想和计算流程如图法,该算法的基本思想和计算流程如图5-85-8所示。所示。 ijaKv用分段用分段K-K-均值算法求模型
48、的参数初值均值算法求模型的参数初值 提高提高HMMHMM描述语音动态特性的能力描述语音动态特性的能力v为了保证为了保证HMMHMM计算的有效性和训练的可实现性,基本的计算的有效性和训练的可实现性,基本的HMMHMM模模型本身隐含了以下三个假设:型本身隐含了以下三个假设: 假设假设1 1:状态转移概率与观察序列无关,且时不变;:状态转移概率与观察序列无关,且时不变; 假设假设2 2:状态观察概率密度函数与过去状态无关;:状态观察概率密度函数与过去状态无关; 假设假设3 3:状态观察概率密度函数与过去观察无关。:状态观察概率密度函数与过去观察无关。 由于语音是发音系统连续变化所产生的,具有很强的相
49、关性,由于语音是发音系统连续变化所产生的,具有很强的相关性,以上基本以上基本HMMHMM的假设无疑是不合理的。因此,虽然隐马尔可的假设无疑是不合理的。因此,虽然隐马尔可夫模型是现在最流行的语音识别模型,然而基本型的夫模型是现在最流行的语音识别模型,然而基本型的HMMHMM采采用状态输出独立假设是它的一个固有的缺陷。它影响了用状态输出独立假设是它的一个固有的缺陷。它影响了HMMHMM描述语音信号时间上帧间相关动态特性的能力。描述语音信号时间上帧间相关动态特性的能力。 v v为了弥补这一缺陷,最早人们采用的方法是在利用语音静态为了弥补这一缺陷,最早人们采用的方法是在利用语音静态参数参数 的同时,增
50、加如下式(的同时,增加如下式(5-635-63)所示的语音的动态特)所示的语音的动态特性参数,即以时刻性参数,即以时刻t t(帧)为中心,(帧)为中心, (帧)为幅度的线(帧)为幅度的线性回归系数性回归系数 :v然而这些扩展都没有从根本上解决然而这些扩展都没有从根本上解决HMMHMM假设的不合理性,因假设的不合理性,因而其对识别性能的改进也必然是有限的。因此,基于语音段而其对识别性能的改进也必然是有限的。因此,基于语音段的统计建模方法正是在此基础上于八十年代末、九十年代初的统计建模方法正是在此基础上于八十年代末、九十年代初应运而生了,提出许多方法,如使用线性或非线性预测器法、应运而生了,提出许