![2019年华北五省(市、自治区)大学生机器人大赛:人工智能与机器人创意设计赛论文集](https://wfqqreader-1252317822.image.myqcloud.com/cover/956/35276956/b_35276956.jpg)
2 基于小波包分解和Volterra自适应模型的语音识别
2.1 语音时间序列相空间重构
混沌时间序列的分析、确定和预测在相空间中进行,因此语音时间序列的相空间重构是分析混沌特性的第一步[3-4],根据Takens定理,延迟坐标嵌入方法表示如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_34_01.jpg?sign=1739241033-bsZRt4bsDP7UNdczC4vQ1WhpHhzSat30-0-caf15c3909213b191bc87b22ec98acb9)
式中,M是相空间中的点数,M =L-(m-1)τ;L是时间序列的结束;τ是延迟时间;m是嵌入维数。
2.2 小波包变换
小波包变换是传统小波变换的扩展。小波变换只能进一步分解信号的低频部分,无法解决高频部分的要求[5]。小波包变换可以分解低频信号和高频信号,这意味着小波包分解可提供比小波分解更准确的频率分辨率。
根据小波的多分辨率分析,缩放函数φ(t)与小波函数ϕ(t)之间的关系是相互的。二维方程定义如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_01.jpg?sign=1739241033-qCeeDiAet6fNdCaa2cTsJhiHB6O28zni-0-9ad54f3832b24f1a74377569b89e7bb9)
式中,h(k)和g(k)是一对共轭正交镜滤波器,g (k )=(-1)k h(1-k )。信号通过小波包法被分解为低频信号和高频信号,小波包分解算法如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_02.jpg?sign=1739241033-XOsVw2LNyaj5V5k1E2WW2abyXbfvuJcK-0-3f8c5b5c15fc738afa54fa314eff2889)
式中,p 是节点号; j是分解级别。在第j-th级分解系数的基础上,通过式(3)和式(4)中的小波包系数递推公式得到第( j+1)-th级分解系数。类似地,所有级别系数都可以通过式(3)和式(4)获得。以上第j-th级所有子带的频率范围为
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_03.jpg?sign=1739241033-CfKFuXwbNElJ4TH0mD8J8JQVNsOexzTl-0-ca87e84be5e1ce4e1bc0f51b49b36bf9)
其中fs是采样频率。
近似小波包分解仍然是更原始的信号频谱信息。图1是语音信号“blue sky”三重db4小波包分解系数的重构子带信号。在“y”是原始语音信号的情况下,“y1~y8”是小波包系数的八个子带。
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_04.jpg?sign=1739241033-WHg7P5FDYpuAHDrrGIKhcCTyZL3FjZg4-0-1ab4d9697b1dfb805061f6577e1c041c)
图1 语音信号“blue sky”,三重db4小波包分解系数图
Fig.1 Speech signal"blue sky", triple db4 wavelet packet decomposition coefficient diagram
2.3 Volterra自适应模型的提取特征
Volterra 函数序列通常可以描述响应和记忆函数的非线性行为,它可以以任意精度逼近任意连续函数。对于非线性系统,基于Volterra的自适应预测滤波方法可以反馈滤波器参数的迭代调整,从而实现最优滤波器[6-10]。Volterra系列的表现形式如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_05.jpg?sign=1739241033-KsEO9scEwqdzb6scY33NP7EPAtgDKkVh-0-ab4a99a69c044425cde4e964d94a5960)
非线性动态系统输入表示为X (n)=[x(n), x(n-1),…, x(n-N+1)] ,输出表示为Y ( n )=x ( n+1)。Volterra 膨胀的非线性动力系统表示如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_35_06.jpg?sign=1739241033-zBCt3VOZtCDcRAUx7m24akcuYYxUukBB-0-74393e4908a4c32107fea109f476db2d)
式中, h1 , h2 ,…, h p是Volterra系列的核函数,它是系统的隐函数,反映了语音信号的宏观;p是滤波器长度。根据语音时间序列的特点,为了减少计算量,通常选择二阶Volterra自适应预测模型来截断,表达式如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_01.jpg?sign=1739241033-5hoT0hWGsbzOFCPDyMhaGGXGZx6V7iD6-0-6d2fa85a6627ecfce506efbd9a57a366)
通过Volterra系列扩展的混沌时间序列,该案例是m项二阶Volterra滤波器截止( m是混沌时间序列的最小嵌入维数)。通过状态扩展,系统总数为M =1+m+m(m-1)/2 ,滤波器系数向量和输入向量分别如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_02.jpg?sign=1739241033-x9FJboZTRHAvOvKswqGI8iw36m5uu7Rd-0-c2823d8395a4d6eaf69a6971d02388b0)
由于 Volterra 自适应滤波器系数可以通过线性自适应FIR 滤波器算法直接确定,因此式(7)可以表示为:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_03.jpg?sign=1739241033-9fiIiVb6HgsrU38woiFPUaR2DUPttS7g-0-05aa9e788f7b3a7bcff8fead2ce3998e)
本文采用LMS自适应算法,它具有良好的稳定性和简单的结构,并且易于实施,它广泛用于自适应控制和信号处理领域。自适应滤波算法由以下两个过程组成:
(1)滤波过程:计算滤波器输出对输入的响应,并比较实际输出和所需输出,以获得估计误差。
(2)适应过程:根据滤波过程得到的估计误差调整滤波器参数。
上述两个过程形成具有反馈的环结构。首先,使用横向滤波器完成单输入滤波处理。然后,通过自适应控制算法更新和调整横向滤波器抽头权重。
抽头输入向量U (n)为x(n), x(n-1),…, x(n-m+1) ,抽头权重向量 ω(n) 为0ω(n), 1ω(n),…ωm-1 (n)。使用LMS自适应算法计算权重向量,该值表示估计值。主过滤器结构如图2所示。
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_04.jpg?sign=1739241033-dhAYUCFnyypqNuWkLOKmHs0OaNoyTJNG-0-769a9b8b67a4352e0408a00a93e51aa2)
图2 自适应滤波器控制算法的框图
Fig.2 Block diagram of the adaptive filter control algorithm
预期响应d (n)和抽头输入向量U (n)在滤波过程中同时进行。在上述过程中,实际输出由具有给定输入的滤波器产生;实际输出y(n)显示为:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_05.jpg?sign=1739241033-hBp9UDBU7GYh4hqsnOZrevK2KV9Scm3Y-0-a9fe6445c9aa69df5646793efcad2e1f)
确定估计误差e(n)为预期响应d (n)与实际输出y(n)之差,即
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_06.jpg?sign=1739241033-1h0Z3DuXqVrAAVT8EAVTgnkvOIMOQU88-0-29536386d6804242e10fa6dc982da0bd)
LMS自适应滤波过程使用最小准则的均方值来调整权重向量,表达式如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_07.jpg?sign=1739241033-wEhGwrSZDPdBczxqc9prM8n7RdYVJtOO-0-b5f57321525fcfcf79556bd7327dfce2)
LMS自适应算法的权重调整过程如下:
(1)使用给定的输入U (n)得到滤波器的输出如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_36_08.jpg?sign=1739241033-dZgXxZ9STokZ7TnOEawha2VWrId5nEQp-0-4dd80465b85f2456987b74289a42feb4)
(2)计算预期响应d (n)和实际输出y(n)得到估计误差e(n)为:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_01.jpg?sign=1739241033-zwp6qmllsvYjp3igqnpnZsIAsvIANkQc-0-566b3bf535ae7d74215b53954628d687)
(3)计算绩效指标的功能如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_02.jpg?sign=1739241033-tCE9Xa8cWJV8Y47yZJiqbWNK3SgXDmpf-0-7376c8d00ca1eeaf5360792d7e136887)
(4)根据性能指标函数、估计误差,自适应调整抽头权重向量如下:
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_03.jpg?sign=1739241033-jLXmQ5JzlVvfvAJJOgxj4I8xDltzBst4-0-334be750c69e71477bdcd83c58d74f7c)
式中,μ是正常数的收敛因子,它用于调整自适应迭代步骤。参数μ决定收敛速度,大步长会使算法变得不稳定;如果μ太小,则会带来额外的错误。
语音信号“blue sky”由3级和6级小波包分解,所有子带信号分别用于 AR 模型和Volterra模型实验。这里我们从3级小波包中选择一个子带信号,两种比较方法的预测结果如图3和图4所示。我们从6级小波包中选择一个子带信号进行预测,两种比较方法的结果显示在图5和图6中(为了清楚地显示,这些图仅显示70个预测值)。
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_04.jpg?sign=1739241033-p2c8wLbnfmCDcHm2sajTvvWfoWh0Q5ud-0-207221154f622163ce173e6c36dcbe05)
图3 具有3级小波包分解的混沌语音信号的Volterra自适应预测和线性预测
Fig.3 Volterra adaptive prediction and linear prediction of chaotic speech signals with 3-level wavelet packet decomposition
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_05.jpg?sign=1739241033-F8fBjj2UPlALLTQAxMjnQP8r1aFqXw2p-0-cd13577edf617268a42d2caf74c6dd8a)
图4 具有3级小波包分解的混沌语音信号的Volterra自适应预测和线性预测误差
Fig.4 Volterra adaptive prediction and linear prediction error of chaotic speech signals with 3-level wavelet packet decomposition
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_37_06.jpg?sign=1739241033-0Ewyme31IW28KKqxoUo4ZlkhuCxUTgsE-0-a0948b925194bb7f6ddbee8825fe5437)
图5 具有6级小波包分解的混沌语音信号的Volterra自适应预测和线性预测
Fig.5 Volterra adaptive prediction and linear prediction of chaotic speech signals with 6-order wavelet packet decomposition
具有3级小波包的Volterra自适应预测误差为0.102,AR模型预测为0.2144。具有6级小波包的Volterra自适应预测误差为0.0612, AR模型预测误差为0.1744。使用传统线性预测方法实现差异预测值的对比效果比前者差。这些结果表明使用语音信号预测模型的非线性系统效果更好。
![](https://epubservercos.yuewen.com/CA9355/18822094501534106/epubprivate/OEBPS/Images/37659_38_01.jpg?sign=1739241033-2yaI5bUjmAAe3vhnQ13R120uz8MXt8Kh-0-59cecf07ca29b8362893de2f1a44964f)
图6 具有6级小波包分解的混沌语音信号的Volterra自适应预测和线性预测误差
Fig.6 Volterra adaptive prediction and linear prediction error of chaotic speech signals with 6-order wavelet packet decomposition