基于DTW改进算法的语音识别
摘要:
这篇文章论述了改善的DTW算法。主要基于DTW算法,它使用新的算法来减少不必要的计算点,只有保存必要的帧匹配距离矩阵和累积距离矩阵。改进算法使用MATLAB进行仿真和进行充分测试,通过分析比较结果。该算法将节省存储空间,提高计算效率。
第一部分:介绍:
动态时间规划(DTW)是一个非常早期的模式匹配和模型训练技术,它使用动态规划(DP)把复杂的全局优化问题转化为局部优化决策问题,应用DP成功解决问题的时间是不平等的,把语音信号特征参数序列进行比较,在孤立词语音识别方面得到良好的性能表现。[1] [2] 时间翘曲即时间校正,它是一个词的时变特性的过程,它利用时间翘曲函数映射到输入参数模板的时间线的非线性时间,这样就消除了语音参数和模板参数之间的不平等时间周期所造成的失真。 [3] [6] 目前,基于动态时间规整DTW匹配可以视为最小的、熟练的语音识别算法。系统低成本、快速识别,所以它在孤立词的语音识别控制系统中是一个有效的小数量算法。但这个算法高度依赖于端点检测的精度,且计算成本高,在减少计算成本和节省存储空间的基础上,提出了改进的算法. [4] [5]
第二部分:动态时间规划算法
动态时间规整算法的基本原理是:在训练阶段,用户依次将词汇表中每一个单词说出来,并将特征向量序列作为模板保存在模板库中;在识别阶段,用户将输入的语音特征向量序列与模板库中的每一个模板进行比较,然后将最大的相似性输出作为识别结果。为了取得良好的识别效果,在训练阶段,说话人的讲话速度与识别的速度是一致的,但这是困难的。因此,这就需要采用DTW算法克服了因为时间膨胀的变化导致不均匀的语速的困难。我们将模板库中保存的每一个词汇表作为参考模式,可以表示{R(1)、R(2)、R(m)、R(M)hellip;。m是时间序列标签,m= 1是起始识别帧,m=M是最终的识别帧,M是帧中的帧总数,在这个模式中,R(m)是m的特征向量。我们将一个输入的词汇表的语音识别为测试模式,可以表示为{T(1),T(2),T(n),T(N)。n是测试语音帧标签。这里面总有涉及的帧的语音,T(n)是n的特征向量。参考模式和测试模式采用了相同的特征向量,帧长度,帧窗口的形状和帧移。假设测试模式和参考模式分别表示为T和R来分开比较,为了比较它们的相似性,我们可以计算出它们的失真度D(N,M),失真度越小就更相似。为了计算这种失真,我们应该开始计算从T和R每个对应的帧。假设n和m分别是选择框架T和R,d(n,m)表达两个框架之间的两帧失真的特征向量。如果我们可以列举所有可能的累积失真评分(1,1)到(n,m)。并找出最大,所以路径数从(1,1)到(n,m)将被命名为数量级。
图1 动态时间规划算法
假设测试模板T总有N帧和参考模板R有M模板,分别表示的水平轴和垂直轴,然后就可以形成网格表示每一帧之间的关系。例如图1所示。每个交叉点(n,m)。在网格中表达之间的交叉测试模式T(n)和参考R(m),和这个交叉点的框架变形是D(T(n)、R(m)]。DP算法可以归结为通过这个网络寻求数字交叉点的路径。通过道路的交叉点距离计算框架的测试和参考模板。路径从左边开始降低轴,和结束到右轴上部,使框架变形总额在这条路的交叉点到最低。计算方法是:
- 斜率的速度限制路径必须在0.5和2之间为了避免过度倾斜的路径。
- 假设路径中前面网格为 (niminus;1 ,miminus;1 ),则未来交叉点有3种类型:
(n i ,m i )=(n iminus;1 1,m iminus;1 2)
(n i ,m i )=(n iminus;1 1,m iminus;1 1)
(n i ,m i )=(n iminus;1 1,m iminus;1 )
3使用eta;表示三个约束条件。寻找最短路径问题可以归结为寻找最佳路径eta;函数满足的约束条件. ni-1=ni-1,mi-1,miminus;1可以由以下公式决定
D[(n iminus;1 ,m iminus;1 )]=min{D[(n iminus;1 ,m i )],
D[(n iminus;1 ,m i minus;1)],D[(n iminus;1 ,m i minus;2)],}
然后我们可以寻求(n2,m2)从(n 2,m 2)=(1,1),然后寻求(n 3 m 3)hellip;hellip;,让每一个(ni、mi)保存在相应的格子和相应的帧匹配距离d(ni、mi)。当我们寻求(nN,mM),我们就得到了最好路径,这就是路径DP算法。
第三部分:动态时间算法的改进策略
传统的动态时间算法限制了在匹配过程中的翘曲坡率,所以事实上很多点不能达到,例如,图2显示的帧匹配距离菱形外顶点是不必要的计算。此外,保存所有帧匹配距离矩阵和累积距离矩阵是没必要的,因为网格匹配计算的每一列只使用前一列的三个网格。充分利用这些特征可以降低成本和存储空间的需求。
下图显示实际动态过程可以用3个折线来表示。
(1,Xa),(Xa 1,Xb) 和 (Xb 1,N) , 其中:
Xa=13(2Mminus;N)
Xb=23(2Nminus;M)
图2:改善DTW算法
通过Xa和Xb所有值相似的整数。我们可以获得相应的M和N长度的限制条件
2Mminus;Nge;3
2Nminus;Mge;2
当不能满足上述条件,认为Xa和Xb的区别太大,使动态匹配变形。
比较X轴的每一帧和Y轴的每一帧是不必要的,但必须使每一帧(Ymin,Ymax)在Y轴上,Ymin和Ymax的计算如下:
y min ={12 x,0le;xle;x b 2x (Mminus;2N),X b lt;xle;N
y max ={2x, 0le;xle;N12 x (Mminus;12 N)X a lt;xle;N
Xa gt; Xb的情况可能发生,扭曲的三级匹配(Xa),(Xa 1,Xb)和(Xb 1,N),每帧在X轴、Y轴的数量相比是不同的,但是这种扭曲特性是相同的,更新积累距离的计算公式可以实现如下:
D(x,y)=d(x,y) min[D(xminus;1,y)D(xminus;1,yminus;1,D(xminus;1,yminus;2))]
由于每一帧的X轴前进只需要积累前一列的距离。因此向量的D和d列分别需要保存积累前一列的距离,计算当前列的累积距离,不需要保存整个距离矩阵。未来的每一帧都需要更新,即根据上面的公式,利用积累的距离前一列和所有的帧匹配距离D(x,y)计算当前帧的累积距离,保存矢量d结果,然后给一个新的距离值D作为新积累值用于下面介绍部分中所使用的距离。迭代d和D直到X轴的最后一列,第m个元素矢量D命名为匹配距离的两个模板动态变形。
第四部分:分析和测试结果
为实验方便,我们比较DTW算法和改进的DTW算法之间的积累距离。给10个数字语音数据库文件从0到9的演讲。根据测试两个算法之间的最小距离,比较结果如图3显示,意味着改进动态时间算法的最小失真距离值较小。
图3显示了两个算法的最小距离累积的结果。绿线代表旧的动态时间积累算法的距离,红色的线条代表的改进后算法的累积距离。
图三:两种算法之间的比较
第五部分:最小失真两种算法之间的比较
通过测试我们知道改进算法有效地缩短了在计算最小累积距离产生的距离总数。主要原因是改善DTW算法不仅可以避免计算在网格之外的帧匹配距离的交叉点,还没有必要保存整个帧匹配距离矩阵和累积距离矩阵。因此,它有效地减少总积累的距离。
结论:
通过仿真结果分析,我们可以得出这样的结论:改善DTW算法改进了传统的DTW算法在实际应用方面的计算复杂度和存储空间的不足,有效地减少了计算,降低了计算复杂度,节省存储空间。改善DTW算法将广泛应用嵌入式系统存储空间小和CPU的计算能力较低的这些情况中。
参考文献
1. LR Rabiner, AE Rosenberg, SE Levinson, 'Considerations in dynamic time warping algorithms for discrete word recognition[J]', IEEE Transactions on Acoustics Speech and Signal Processing, December, 1978, vol. 26, no.6, pp.575-582
2. Rabiner L, Juang B., 'An Introduction to Hidden Markov Models [M]', IEEE Acoustics Speech amp; Signal Processing Magazine, JANUARY, 1986, pp.4-16
3. Lee KF., Automatic Speech Recognition: The Development of the SPHINX SYSTEM [M], Kluwer Academic Publishers, 1989
4. Hiroaki Kokubo, Nobuo Hataoka, Akinobu Lee, Tatsuya Kawahara, Kiyohiro Shikanox, Continuous Speech Recognition Software for Microprocessor [S], 2006
5. A Piyush Shanker, Rajagopalan A N., 'Off-line signature verification using DTW [J]', Pattern Recognition Letters, 2007, vol. 28, no.12, pp.1407-1414
6. Keogh E J, Pazzani M J., 'Scaling up dynamic time warping to massive dataset[C]', PKDD 99, pp.1-11
基于DTW算法的孤立词汇的语音识别
摘要:
本文首先对DTW算法进行研究和分析。DTW算法具有需要大量的计算和抗干扰差的弱点。本文提出了改进的路径约束的DTW算法和改进的放松起始点和结束点的DTW算法。实验表明,改进的DTW方法可以提高识别速度,减少对语音识别的噪声干扰,提高语音识别率。
第一部分:说明
孤立词识别系统与DTW-based算法有以下主要组件,语音输入、预处理、端点检测、语音特征提取、模板匹配和识别结果输出等,如图一所示。资料编号:[147269],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。