CN103021408B - 一种发音稳定段辅助的语音识别优化解码方法及装置 - Google Patents

一种发音稳定段辅助的语音识别优化解码方法及装置 Download PDF

Info

Publication number
CN103021408B
CN103021408B CN201210514763.9A CN201210514763A CN103021408B CN 103021408 B CN103021408 B CN 103021408B CN 201210514763 A CN201210514763 A CN 201210514763A CN 103021408 B CN103021408 B CN 103021408B
Authority
CN
China
Prior art keywords
path
state
expansion
hmm
hidden markov
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210514763.9A
Other languages
English (en)
Other versions
CN103021408A (zh
Inventor
刘文举
杨占磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Automation of Chinese Academy of Science
Original Assignee
Institute of Automation of Chinese Academy of Science
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Chinese Academy of Science filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN201210514763.9A priority Critical patent/CN103021408B/zh
Publication of CN103021408A publication Critical patent/CN103021408A/zh
Application granted granted Critical
Publication of CN103021408B publication Critical patent/CN103021408B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种基于发音稳定段的语音识别解码方法。针对语音识别解码过程复杂度较高的问题,本发明提出利用语音的稳定性信息改善解码过程中路径扩展的方式,达到降低解码复杂度的目的。本发明的方案包括下列步骤:对语音信号计算语谱图;计算语音信号的分频带能量及其变化率;定位语音信号中能量发生跳变的时间点;获取语音的发音稳定段;根据解码过程中路径扩展发生的位置,将扩展划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型内部各状态间的扩展两类;跟踪语音识别解码过程,定位隐马尔科夫模型之间的扩展;在发音稳定段,删除原解码框架下的隐马尔科夫模型之间的扩展,只允许路径在隐马尔科夫模型内部各状态间进行扩展。

Description

一种发音稳定段辅助的语音识别优化解码方法及装置
技术领域
本发明涉及语音信号处理中分频带能量计算、语音识别中的帧同步的Viterbi束搜索领域,尤其涉及一种发音稳定段辅助的语音识别优化解码方法。
背景技术
解码算法是语音识别系统的核心模块之一。解码算法,或称搜索算法,是利用已掌握的知识(声学知识、语音学知识、词典知识、语言模型知识等),按照一定的优化准则,在指定的空间中(从高层至底层依次为词、声学模型、HMM状态空间),寻找最优词序列的过程。最终的词序列是对输入的语音信号在一定准则下的一个最优描述。整个解码过程被分解成扩展、打分、路径合并、剪枝、最优路径回溯五个阶段(参考文献1:Xavier L Aubert,“An Overview of Decoding Techniques for Large Vocabulary ContinuousSpeech Recognition”,Computer Speech and Language,vol.16,no.1,pp.89-114,Jan.2002.)。从整体上讲,解码器在解码过程中执行了两个最主要的操作:1)扩展阶段:产生所有可能的候选词序列,同时将相似的候选词序列以一定的结构合并,最终构建一个由N元文法及声学模型状态支撑而形成的一个庞大的有限状态网络,作为语音识别的搜索空间。2)搜索阶段:在这一阶段,完成活动路径的概率计算、路径查找、路径得分比较、路径合并、插入、删除、替换等操作。
由于隐马尔科夫模型(Hidden Markov Model,HMM)能够很好地描述语音的时变性和平稳性,传统的语音识别系统多采用HMM为基本声学单元进行建模,并且已成功应用于大词汇量连续语音识别(Large VocabularyContinous Speech Recognition,LVCSR)的声学建模(参考文献2:L.R.Rabiner,″A tutorial on hidden Markov models and selected applications inspeech recognition″,inProc.IEEE,vol.77,no.2,pp.257-285,1989.)。但是,利用HMM模型为语音信号建模是建立在语音信号短时平稳的假设上,因此HMM只能描述短时语音信号,这种声学建模方法缺乏利用语音的长时信息,而以长时的语音段为建模单元的声学建模方法虽然更能够反映语音信号非平稳的本质,但由于计算复杂度较高,限制了它在语音识别中的应用(参考文献3:M.Ostendorf,V.Digalakis,and O.Kimball.From HMM′s tosegment models:A unified view of stochastic modeling for speech recognition.IEEE Transactions on Speech Audio Processing,4(5):360-378,Sept.1996.)。
此外,传统的语音识别系统的解码模块在为每一条路径计算得分时,会使用声学模型得分与语言模型得分,并将二者融合后的总概率作为扩展或剪枝的依据。在当前帧t下,路径的总概率为:
P(t)=P(t-1)+α1Pam2Plm    (1)
其中P(t-1)是历史路径得分,Pam为当前帧的声学概率,Plm为语言模型概率。α1和α2分别为声学概率与语言模型概率的权重。
上述这种解码方式仅利用了语音帧的声学及语言学的统计特性。事实上,每一帧语音都属于发音过程的发音起始、发音持续、发音结束等不同阶段,因此具有不同的发音稳定性。一般来讲,处于发音起始及发音结束阶段的语音帧属于不稳定帧,而处于发音持续阶段的语音帧属于稳定帧。但是,传统的语音识别系统中缺乏利用这种语音帧的发音稳定性信息。
发明内容
(一)要解决的技术问题
本发明的目的在于解决现有技术中基于隐马尔科夫模型HMM的建模缺乏利用长时的语音段层次信息,以及现有搜索算法中缺乏利用语音帧的发音稳定性信息等不足。
(二)技术方案
为了解决上述技术问题,本发明首先对语音信号进行分析,检测出语音中发音动作平稳的语音段,即发音稳定段,然后作为语音段层知识加入到解码过程中。在解码方面,根据待解码语音帧的稳定性信息,以及路径扩展到的位置,有选择地跳过部分路径,不再对其进行解码。从路径总概率计算的角度讲,相当于增加了新的限制,修改了路径总概率的计算方法,从而实现了基于发音稳定段的语音识别解码算法,提高了声学模型解码速度和精度。
本发明的提出的基于发音稳定段的语音识别解码方法,包括下列步骤:
步骤一、获取语音信号在时频域上的能量分布并根据语音信号在时频域上的能量分布,计算获得语音信号的分频带能量曲线,以及分频带能量随时间的变化率曲线;
步骤二、由所述分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的跳变点;
步骤三、对任一跳变点p,设定一时长r,定义跳变点p附近的[p-r,p+r]区域为语音信号的非平稳段区域,未被划定为非平稳段区域的部分为发音稳定段区域;
步骤四、在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展;其中根据路径的扩展在隐马尔科夫模型中发生的位置,所述前一帧到当前帧的路径扩展被划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型的内部扩展两类。
本发明还提出了一种基于发音稳定段的语音识别解码装置,其包括:
获取装置,用于获取语音信号在时频域上的能量分布并根据语音信号在时频域上的能量分布,计算获得语音信号的分频带能量曲线,以及分频带能量随时间的变化率曲线;
确定装置,用于由所述分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的跳变点;
划分装置,用于对任一跳变点p,设定一时长r,定义跳变点p附近的[p-r,p+r]区域为语音信号的非平稳段区域,其中未被划定为非平稳段区域的部分为发音稳定段区域;
语音识别装置,用于在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展;其中根据路径的扩展在隐马尔科夫模型中发生的位置,所述前一帧到当前帧的路径扩展被划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型的内部扩展两类。
(三)有益效果
本发明所提出的一种将长时的语音稳定性信息融入语音识别解码过程中的方法,融合了长时语音信息的新方法能够弥补基于隐马尔科夫模型HMM建模方法中语音信号短时平稳的假设,更能反映语音信号非平稳的本质。另一方面,通过融合语音帧的稳定性信息,修改解码过程中路径扩展的方式,可以减少部分不必要的隐马尔科夫模型HMM之间的扩展,从而降低语音识别解码方法的复杂度,有利于减少语音识别的时间。同时,在相同的运算复杂度下,识别系统能够在更宽泛的范围内,对更多潜在的最优路径进行计算,有利于找到最优的识别结果,最终提高语音识别系统的准确率。
附图说明
图1是根据本发明的一种基于发音稳定段的语音识别解码方法的流程图;
图2是根据本发明的一个计算语音信号语谱图的流程图;
图3是根据本发明的一个计算分频带能量及分频带能量变化率的流程图;
图4是根据本发明的一个语音信号能量跳变点检测的流程图;
图5是根据本发明的一个划定语音信号的发音非稳定段及发音稳定段的流程图;
图6是根据本发明的一个将扩展划分为隐马尔科夫模型内部扩展与隐马尔科夫模型之间的扩展流程图;
图7是根据本发明的一个根据语音帧的发音稳定性删除隐马尔科夫模型之间的扩展、保留隐马尔科夫模型内部扩展的解码过程的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
本发明在对语音信号进行分析的基础上,寻找到语音信号中的发音稳定段区域。在解码时,利用待解码语音帧的发音稳定性信息(即考察待解码语音帧是否位于发音稳定段区域),修改解码过程中路径扩展的规则,降低解码方法的复杂度,从而降低语音识别系统所消耗的时间。另一方面,在相同的解码时间内,识别系统能够在更宽的范围内进行搜索,从而可以获得准确度更高的识别结果。具体的步骤如下:
一种基于发音稳定段的语音识别解码方法包括下列步骤:
步骤a:计算语音信号的语谱图,得到语音信号时频域上的能量分布;
步骤b:根据语音信号在时频域上的能量分布,计算信号的分频带能量曲线,以及分频带能量随时间的变化率曲线;
步骤c:由分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的时间点;
步骤d:根据能量跳变的时间点,划定语音信号的发音非稳定段区域和发音稳定段区域;
步骤e:在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展。其中,根据路径的扩展在隐马尔科夫模型中发生的位置,可以将路径的扩展划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型内部各状态间的扩展两类。
其中,在步骤a中,所述对语音信号计算语谱图,得到信号在时频域上的能量分布,包括:
对原始语音信号加汉宁窗,其中窗长可以选用为6ms,帧移可以选用1ms,再经过快速傅里叶变换(FFT),得到语音信号在时频域上的能量分布。
在步骤b中,根据所述语音信号在时频域上的能量分布,计算信号的分频带能量曲线,以及分频带能量随时间的变化率曲线,具体步骤包括:
对语音信号s(n)进行预加重,预加重系数a=0.97。预加重后的语音信号s2(n)为s2(n)=s(n)-a*s(n-1)。通过预加重,消除发生过程中声带和嘴唇的效应,来补偿语音信号被发音系统所压抑的高频部分。
之后,对语音信号s2(n)加汉宁窗得到s′(n)=s2(n)*w(n)。其中N为窗内采样点的个数。在本例中N=0.006*16000=96;0.006表示窗长(单位:秒),16000表示语音采样率(单位:赫兹)。对s′(n)进行FFT,得到频谱上的能量分布。
计算0~2kHZ范围内三个频带上的频谱能量:0~0.8kHZ、0.8~1.5kHZ、1.2~2.0kHZ。后两个频带略有重叠是为了尽可能捕捉共振峰变化。为克服信号中的短时的声门脉冲及噪声扰动,方法采用当前帧前后特定时间(如当前帧前后各10ms,共20ms)范围内的信号对当前帧的频谱能量进行平滑,得到平滑后的分频带能量曲线E(t)。
E ( t ) = 1 2 M + 1 Σ t 0 = - M M e ( t + t 0 )
其中e(t+t0)表示t+t0时刻的初始分频带能量。其中M=10,表示平滑时采用的当前帧前后的语音帧数量,总数量为2M+1。
分频带能量随时间t的变化率曲线ΔE(t)通过下式得到:
ΔE ( t ) = E ( t + Len 2 ) - E ( t - Len 2 )
其中,Len表示时间范围阈值,表示从时刻至时刻,经过Len时长后能量的变化情况,而非瞬时变化。方法中可以采用Len=50ms,得到分频带能量随时间的变化率曲线。
在步骤c中,所述根据分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的时间点,具体包括如下步骤:
根据所述分频带能量随时间的变化率曲线ΔE(t),选择所述分频带能量随时间的变化率超过一定阈值(9db/ms)的语音帧作为可能的跳变点。由于发音器官动作较快时,语音能量在短时间内可能存在多个跳变点,方法进一步对间距过近的候选点进行筛选。例如,对第t帧,如果在[t-Ts,t]范围内检测出多个跳变点,则只保留其中能量变化率最大的一个作为最终跳变点,其中,可以选择时间区域阈值Ts=20ms。
在步骤d中,所述根据能量跳变点,划分语音的发音非稳定段区域及发音稳定段区域,具体包括以下步骤:
对任一跳变点p,设定p前后r帧范围[p-r,p+r]内的语音段为该频段的发音非平稳段。其中r为非平稳段区域划定参数。r取值越大,非平稳段区域的范围越广,其中可以选用r=10。对三个子频带,分别计算得到其发音非平稳区域,其中不同子带的发音非平稳区域之间可能会有交叠。将三个子频带的非平稳段区域合并,得到整个语音信号的非平稳段区域。其中语音信号中未被划定为非平稳段的部分,即为检测到的发音稳定段。
在步骤e中,所述在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展,具体步骤包括:
根据检测得到的发音稳定段区域判断当前帧Ot的发音稳定性:若Ot位于发音稳定段区域,则称Ot为发音稳定帧,否则为发音非稳定帧;将发音稳定性已知的当前帧Ot送入解码器进行解码。
在解码时,当前帧所处的状态被称为激活状态,扩展到激活状态的路径被称为处于激活状态的路径。将所有处于激活状态的路径的集合记为L,路径扩展到的状态的集合记为SS(State Set)。那么,L与SS存在这样一种关系:L中任意一条路径l,是在解码Ot-1时(即对第t-1时刻的语音帧进行解码)扩展至状态s后形成的,且s∈SS。也即,s是路径l的状态序列中最后一个状态。状态集合SS中仅包括路径集合L中任意路径l的状态序列中的最后一个状态。在第t时刻,即对Ot解码时,将根据HM  拓扑结构,预测路径l可能到达的所有状态s′,其中s′表示s经过一次或多次跳转到达的第一个发射状态。显然,s与s′可能位于同一个HMM(HMM内部扩展),也可能位于不同的HMM(HMM之间的扩展)。若当前帧Ot为稳定帧,且s′与s属于不同的HM,则并不进行从s至s′的扩展;否则,若当前帧Ot为稳定帧且s′与s属于同一个HM,或者当前帧Ot为非稳定帧,则允许路径l从s扩展至s′,扩展后的新路径记为l′,其中,路径l′的状态序列比路径l的状态序列多一个状态s′,同时计算当前帧Ot在s′上的声学概率p(Ot|s′),并将s′加入到t时刻已扩展到的状态的集合newSS,将路径l′加入到处于激活状态的路径的集合newL。其中,扩展后得到路径l′的总概率,是在路径l的总概率基础上乘以当前帧Ot在s′上的声学概率p(Ot|s′)得到的,以对数形式表示,即路径l′的总概率等于路径l的总概率加logP(Ot|s′)。此外,newSS及newL分别只包含当前时刻下新扩展到的状态的集合及新形成的路径的集合。依次处理完SS中所有的状态后,会得到在第t时刻新扩展到的状态的集合newSS,以及新形成的路径的集合newL。例外的是,对第一个语音帧O1解码前,上述路径的集合L及状态的集合SS为空。对语音帧O1进行解码时,将在所有HMM的第一个发射状态上计算声学模型概率,并将这些状态加入到newSS及newL。其中,newL中所有路径的状态序列只包含唯一的状态,且任一条路径l′的总概率等于logP(Ot|s′),其中s′为路径l′扩展到的状态。在完成当前帧的路径扩展后,在下一步的剪枝过程中,首先选择newL中总概率最大的路径,记此总概率的对数值为pmax,设定剪枝阈值pbeam,通过剪枝,裁减掉newL中的对数概率值低于pmax-pbeam的所有路径,同时将这些路径所到达的状态从newSS中删除,完成对当前帧Ot的解码。使用剪枝后的newSS对SS进行更新,替换SS中的内容,并将newSS置空,使用剪枝后的newL替换L,并将newL置空,可以开始对下一帧Ot+1的解码。基于发音稳定段的解码过程,通过记录t时刻发生的所有的状态跳转{St-1,St},其中St-1与St可能位于同一HMM内部,也可能分属于不同的HMM;根据当前帧Ot的发音稳定性及St-1与St在HMM中的位置关系,确定路径扩展的方式:若Ot为发音稳定帧,且从St-1至St的跳转为隐马尔科夫模型之间的扩展,则将此扩展删除;否则,执行扩展。
其中所述根据路径的扩展在隐马尔科夫模型中发生的位置,将路径的扩展划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型的内部扩展两类,具体步骤包括:
首先,隐马尔科夫模型采用从左向右单向、带自转的拓扑结构,模型只有惟一的一个初始状态和一个终止状态,并且只要进入一个新的状态就不能返回到以前的状态。除初始状态及终止状态外,所有中间状态均采用高斯混合模型来描述语音帧特征所服从的分布。所以,在初始状态及终止状态上并不消耗语音帧,只有在中间状态(也称发射状态)上才会消耗语音帧,并计算得到语音帧在相应状态所对应的高斯混合模型上的声学概率。在帧Ot时刻扩展某一路径l时,根据隐马尔科夫模型的拓扑结构,计算Ot时刻l扩展到的隐马尔科夫模型的状态St,以及前一帧Ot-1在隐马尔科夫模型中所处的状态St-1,若St与St-1位于同一个隐马尔科夫模型,即St与St-1之间不存在隐马尔科夫模型的初始状态或终止状态,则称在t时刻发生的从St-1至St的路径扩展为隐马尔科夫模型的内部扩展。所以,此类扩展发生在隐马尔科夫模型内部各状态间,扩展的方向只受到隐马尔科夫模型拓扑结构的限制。扩展时,解码器只计算语音帧在相应状态上的声学概率。
例如,采用带自转的从左至右线性拓扑结构的隐马尔科夫模型对上下文相关的三音子“l-a1+b”进行建模。其中,“1-a1+b”表示在前一个发音为“l”、后一个发音为“b”的情况下音素“a1”的发音的模型。该HMM模型包括5个状态,3个发射状态,其中第1、第5状态为非发射状态,第2、3、4状态为发射状态(分别记为第1、2、3发射态)。在“l-a1+b”上进行打分时,假设在第t帧下,路径集合中的某一条路径l扩展至“l-a1+b”的第3个状态(即第2发射态)“State 3”,且记此时刻(帧)t路径l的总概率(语音开始至第t帧的声学模型概率与语言模型概率的乘积,在对数域为二者的加和)为p,那么,在下一时刻t+1,由隐马尔科夫模型的拓扑结构可知,l扩展成两条不同的路径:
1)路径l在“State 3”内自转,得到新的路径l′(l′的状态序列比l的状态序列多一个“State 3”),相应的概率更新为p′=p+log(P(Ot+1State3)),其中λState3表示“State 3”的声学模型参数,本例中为高斯混合模型的参数,P(Ot+1State3)表示t+1时刻的语音帧Ot+1在状态“State 3”上的声学概率,log(P(Ot+1State3))表示声学概率的对数值;
2)路径l跳转至“State 4”,得到新的路径l″(l″的状态序列比l的状态序列多一个“State 4”),相应的概率更新为p′=p+log(P(Ot+1State4)),其中λState4表示“State 4”的声学模型参数,P(Ot+1State4)表示t+1时刻的语音帧Ot+1在状态“State 4”上的声学概率,log(P(Ot+1State4))表示声学概率的对数值;
对于路径l来讲,在t+1时刻路径l的扩展是在模型“l-a1+b”内部的各状态间进行的,称这类扩展为隐马尔科夫模型内部扩展。
此外,根据隐马尔科夫模型的拓扑结构,计算当前帧Ot所处的状态St,以及前一帧Ot-1的状态St-1,若St与St-1分别属于不同的隐马尔科夫模型,则称在t时刻从St-1至St的路径扩展为隐马尔科夫模型之间的扩展。
例如,路径l″在t+1时刻下位于“State 4”,在下一语音帧t+2,由隐马尔科夫模型的拓扑结构可知,l″同样会扩展成两条不同的路径,即在“State4”上完成自转及跳至下一状态。但是,由于“State 4”是“l-a1+b”模型的最后一个发射态,“State 5”不是发射状态,既不消耗语音帧也不输出概率,因此,在跳转至下一个发射态时,扩展是在不同的HMM之间进行的:解码器首先根据词树找到当前模型“l-a1+b”的相邻模型,如“a1-b+o3”。此时,t+2时刻l″的扩展发生在“l-a1+b”的最后一个发射态“State 4”与“a1-b+o3”的第一个发射态(即第2个状态)“State 2”之间。从发射态的角度讲,是从一个HMM模型的最后一个发射态跳转至另一个HMM模型的第一个发射态。扩展是跨HMM模型进行的,称为隐马尔科夫模型之间的扩展。
在汉语大词汇量连续语音识别任务下,实验给出了使用基于发音稳定段解码算法前后的系统的识别精度。实验训练数据为863连续语音库,录音语料取自《人民日报》,考虑了语音的声学平衡和覆盖性。录音环境为安静的实验室环境,采样率16KHz,采样位数16bits。使用83位男性说话人的数据训练声学模型(48373句,55.6小时)。测试数据为863-Test数据集的240句男声语料。实验表明,通过使用语音帧的稳定性信息,在解码时对路径扩展的方式进行预测,可以减少不必要的HMM之间的扩展,将解码速度提升22.1%。通过限制部分不必要的HMM之间的扩展,解码器能够在相同的解码时间内,在更宽的Beam范围内寻找最优路径。在扩大Beam后,能够避免最优路径在局部得分过小被剪枝,从而使局部得分较低、但整体得分较高的路径存活下来,避免了原系统的部分剪枝错误。实验结果表明,可以将系统的汉字相对错误率降低5.24%。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于发音稳定段的语音识别解码方法,包括下列步骤:
步骤一、获取语音信号在时频域上的能量分布并根据语音信号在时频域上的能量分布,计算获得语音信号的分频带能量曲线,以及分频带能量随时间的变化率曲线;
步骤二、由所述分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的跳变点;
步骤三、对任一跳变点p,设定一时长r,定义跳变点p附近的[p-r,p+r]区域为语音信号的非平稳段区域,未被划定为非平稳段区域的部分为发音稳定段区域;
步骤四、在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展;其中根据路径的扩展在隐马尔科夫模型中发生的位置,所述前一帧到当前帧的路径扩展被划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型的内部扩展两类;
其中,根据隐马尔科夫模型的拓扑结构,计算当前帧Ot所处的状态St,以及前一帧Ot-1的状态St-1,若St与St-1位于同一个隐马尔科夫模型,则称在t时刻从前一帧到当前帧的路径扩展为隐马尔科夫模型的内部扩展;否则,若St与St-1分别属于不同的隐马尔科夫模型,则称在t时刻从前一帧到当前帧的路径扩展为隐马尔科夫模型之间的扩展;
步骤四具体包括:
在解码时,当前帧所处的状态被称为激活状态,扩展到激活状态的路径被称为处于激活状态的路径,将所有处于激活状态的路径集合记为L,路径扩展到的状态集合记为SS,即L中任意一条路径l,是在第t-1时刻扩展至状态s时形成的,且s∈SS;在第t时刻,预测路径l可能到达的所有状态s′;若当前帧Ot为稳定帧,且s至s′的跳转为隐马尔科夫模型之间的扩展,则并不进行路径l从s至s′的扩展;否则,允许路径l从s扩展至s′,扩展后的新路径记为l′,其中,路径l′的状态序列比路径l的状态序列多一个状态s′,并将s′加入到t时刻已扩展到的新的状态集合newSS,将路径l′加入到t时刻处于激活状态的新的路径集合newL;依次处理完SS中所有的状态后,得到在第t时刻扩展到的状态的集合形成新的状态集合newSS,以及处于激活状态的路径的集合形成新的路径集合newL;使用newSS对SS进行更新,即将SS中的状态全部替换为newSS的状态,并使用newL对L进行更新,即将L中的路径全部替换为newL中的路径,并将newSS和newL置空,然后开始对下一帧Ot+1的解码。
2.如权利要求1所述的方法,其特征在于,步骤一中,所述获取语音信号在时频域上的能量分布,具体为:
对所述语音信号加汉宁窗,并对加窗后的语音信号经过快速傅里叶变换(FFT),得到语音信号在时频域上的能量分布。
3.如权利要求2所述的方法,其特征在于,所述汉宁窗的窗长为6ms,帧移为1ms。
4.如权利要求1所述的方法,其特征在于,步骤一中,所述根据语音信号在时频域上的能量分布,计算获得语音信号的分频带能量曲线,具体步骤包括:
计算0~2kHZ范围内三个频带上的频谱能量:0~0.8kHZ、0.8~1.5kHZ、1.2~2.0kHZ;采用当前帧前后特定时间范围内的信号对当前帧能量进行平滑,得到平滑后的分频带能量曲线E(t):
E ( t ) = 1 2 M + 1 Σ t 0 = - M M e ( t + t 0 )
其中,e(t+t0)表示t+t0时刻的初始分频带能量;其中M表示平滑时采用的当前帧前后的语音帧数量,总数量为2M+1。
5.如权利要求4所述的方法,其特征在于,步骤一中,所述计算分频带能量随时间的变化率曲线,具体通过下面公式得到:
ΔE ( t ) = E ( t + Len 2 ) - E ( t - Len 2 )
其中,ΔE(t)为分频带能量随时间的变化率曲线,Len表示时间范围阈值。
6.如权利要求1所述的方法,其特征在于,步骤二中,所述由分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的跳变点,包括以下步骤:
根据所述能量曲线E(t)及分频带能量随时间的变化率曲线ΔE(t),选择能量变化率超过一定阈值的语音帧作为跳变点;
其中,对于在一预定时间范围内存在多个跳变点时,选择能量变化率最大的一个作为跳变点。
7.如权利要求1所述的方法,其特征在于,在得到第t时刻的新的状态集合newSS,以及处于激活状态的新的路径集合newL后,选择newL中声学概率和语言模型概率之总和最大的路径,并记t时刻当前帧在该路径上对应的当前状态s′的声学概率的对数值为pmax,设定剪枝阈值pbeam,通过剪枝,裁减掉newL中所述声学概率的对数值低于pmax-pbeam的所有路径,同时将这些路径所到达的状态从newSS中删除,完成对当前帧Ot的解码;然后使用剪枝后的newSS和newL分别对SS和L进行更新,并开始对下一帧Ot+1的解码。
8.一种基于发音稳定段的语音识别解码装置,其包括:
获取模块,用于获取语音信号在时频域上的能量分布并根据语音信号在时频域上的能量分布,计算获得语音信号的分频带能量曲线,以及分频带能量随时间的变化率曲线;
确定模块,用于由所述分频带能量曲线及分频带能量随时间的变化率曲线,确定语音信号能量发生跳变的跳变点;
划分模块,用于对任一跳变点p,设定一时长r,定义跳变点p附近的[p-r,p+r]区域为语音信号的非平稳段区域,其中未被划定为非平稳段区域的部分为发音稳定段区域;
语音识别模块,用于在语音识别解码过程中,若当前帧在所述发音稳定段区域,且前一帧到当前帧的路径扩展为发生在隐马尔科夫模型之间的扩展,则不执行该路径的扩展,否则执行该路径的扩展;其中根据路径的扩展在隐马尔科夫模型中发生的位置,所述前一帧到当前帧的路径扩展被划分为隐马尔科夫模型之间的扩展,以及隐马尔科夫模型的内部扩展两类;
其中,根据隐马尔科夫模型的拓扑结构,计算当前帧Ot所处的状态St,以及前一帧Ot-1的状态St-1,若St与St-1位于同一个隐马尔科夫模型,则称在t时刻从前一帧到当前帧的路径扩展为隐马尔科夫模型的内部扩展;否则,若St与St-1分别属于不同的隐马尔科夫模型,则称在t时刻从前一帧到当前帧的路径扩展为隐马尔科夫模型之间的扩展;
语音识别模块具体如下实现语音识别解码过程:
在解码时,当前帧所处的状态被称为激活状态,扩展到激活状态的路径被称为处于激活状态的路径,将所有处于激活状态的路径集合记为L,路径扩展到的状态集合记为SS,即L中任意一条路径l,是在第t-1时刻扩展至状态s时形成的,且s∈SS;在第t时刻,预测路径l可能到达的所有状态s′;若当前帧Ot为稳定帧,且s至s′的跳转为隐马尔科夫模型之间的扩展,则并不进行路径l从s至s′的扩展;否则,允许路径l从s扩展至s′,扩展后的新路径记为l′,其中,路径l′的状态序列比路径l的状态序列多一个状态s′,并将s′加入到t时刻已扩展到的新的状态集合newSS,将路径l′加入到t时刻处于激活状态的新的路径集合newL;依次处理完SS中所有的状态后,得到在第t时刻扩展到的状态的集合形成新的状态集合newSS,以及处于激活状态的路径的集合形成新的路径集合newL;使用newSS对SS进行更新,即将SS中的状态全部替换为newSS的状态,并使用newL对L进行更新,即将L中的路径全部替换为newL中的路径,并将newSS和newL置空,然后开始对下一帧Ot+1的解码。
CN201210514763.9A 2012-12-04 2012-12-04 一种发音稳定段辅助的语音识别优化解码方法及装置 Active CN103021408B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210514763.9A CN103021408B (zh) 2012-12-04 2012-12-04 一种发音稳定段辅助的语音识别优化解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210514763.9A CN103021408B (zh) 2012-12-04 2012-12-04 一种发音稳定段辅助的语音识别优化解码方法及装置

Publications (2)

Publication Number Publication Date
CN103021408A CN103021408A (zh) 2013-04-03
CN103021408B true CN103021408B (zh) 2014-10-22

Family

ID=47969940

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210514763.9A Active CN103021408B (zh) 2012-12-04 2012-12-04 一种发音稳定段辅助的语音识别优化解码方法及装置

Country Status (1)

Country Link
CN (1) CN103021408B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104934032B (zh) * 2014-03-17 2019-04-05 华为技术有限公司 根据频域能量对语音信号进行处理的方法和装置
CN105338148B (zh) 2014-07-18 2018-11-06 华为技术有限公司 一种根据频域能量对音频信号进行检测的方法和装置
CN110070859B (zh) * 2018-01-23 2023-07-14 阿里巴巴集团控股有限公司 一种语音识别方法及装置
CN109036381A (zh) * 2018-08-08 2018-12-18 平安科技(深圳)有限公司 语音处理方法及装置、计算机装置及可读存储介质
CN110110038B (zh) * 2018-08-17 2023-04-18 平安科技(深圳)有限公司 话务预测方法、装置、服务器及存储介质
CN111081226B (zh) * 2018-10-18 2024-02-13 北京搜狗科技发展有限公司 语音识别解码优化方法及装置
CN113707137B (zh) * 2021-08-30 2024-02-20 普强时代(珠海横琴)信息技术有限公司 解码实现方法及装置
CN117357073B (zh) * 2023-12-07 2024-04-05 北京清雷科技有限公司 基于gmm-hmm模型的睡眠分期方法及设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769580B2 (en) * 2002-12-23 2010-08-03 Loquendo S.P.A. Method of optimising the execution of a neural network in a speech recognition system through conditionally skipping a variable number of frames
CN101118745B (zh) * 2006-08-04 2011-01-19 中国科学院声学研究所 语音识别系统中的置信度快速求取方法
CN102426836B (zh) * 2011-08-25 2013-03-20 哈尔滨工业大学 基于分位数自适应裁剪的快速关键词检出方法

Also Published As

Publication number Publication date
CN103021408A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103021408B (zh) 一种发音稳定段辅助的语音识别优化解码方法及装置
US9934777B1 (en) Customized speech processing language models
US10121467B1 (en) Automatic speech recognition incorporating word usage information
JP4545456B2 (ja) 最適区画の分類神経網の構成方法、最適区画の分類神経網を用いた自動ラベリング方法、並びに装置
US5884259A (en) Method and apparatus for a time-synchronous tree-based search strategy
Hwang et al. Predicting unseen triphones with senones
CN104157285B (zh) 语音识别方法、装置及电子设备
US20160005398A1 (en) Method and system for efficient spoken term detection using confusion networks
US20110077943A1 (en) System for generating language model, method of generating language model, and program for language model generation
Alleva et al. An improved search algorithm using incremental knowledge for continuous speech recognition
Moore et al. Juicer: A weighted finite-state transducer speech decoder
US11302310B1 (en) Language model adaptation
Bai et al. End-to-end keywords spotting based on connectionist temporal classification for mandarin
US11705116B2 (en) Language and grammar model adaptation using model weight data
Deoras et al. Joint Decoding for Speech Recognition and Semantic Tagging.
Robinson The 1994 ABBOT hybrid connectionist-HMM large-vocabulary recognition system
Razavi et al. Acoustic data-driven grapheme-to-phoneme conversion in the probabilistic lexical modeling framework
JP2013125144A (ja) 音声認識装置およびそのプログラム
CN103035244A (zh) 一种可实时反馈用户朗读进度的语音跟踪方法
Rasipuram Improving grapheme-based ASR by probabilistic lexical modeling approach
WO2012076895A1 (en) Pattern recognition
Wang et al. Realization of Mandarin continuous digits speech recognition system using Sphinx
Tabibian A survey on structured discriminative spoken keyword spotting
CN114512121A (zh) 语音合成方法、模型训练方法及装置
Sidiq et al. Design and implementation of voice command using MFCC and HMMs method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant