信息综合课设 - 语音信号的盲分离 联系客服

发布时间 : 星期三 文章信息综合课设 - 语音信号的盲分离更新完毕开始阅读4268a6b658f5f61fb73666f6

武汉理工大学《信息处理课综合训练与设计群》课程设计

来对地球化学数据进行处理是合理的、可行的。从这一意义上看,Fast-ICA技术优越于常用的只建立在二阶统计量的线性处理技术,接下来的小节对Fast-ICA原理进行阐述。

3.1.1 Fast-ICA算法简介

Fast-ICA算法是一种快速而数值稳定的方法,采用拟牛顿算法实现寻优,具有超线性收敛速度,通常收敛速度较梯度下降寻优算法快得多;矩阵特征值分解盲分离方法通过对矩阵进行特征分解或者广义特征分解估计分离矩阵,是一种解析方法,可直接找到闭形式解,没有迭代寻优过程,因此运行速度很快。

快速ICA算法,由于采用了定点迭代的思想,所以又称固定点(Fixed-Point)算法或定点算法,是一种快速寻优神经网络算法。与普通的神经网络算法不同的是这种算法采用了牛顿迭代的思想对采样点采用批处理的方式,在每一步迭代中有大量的样本数据参与运算。基于目标函数的选择不同,从而产生了FastICA算法的基于负熵最大、峭度、互信息最小、最大似然估计等的多种形式。FastICA算法的优点如下:

1.收敛速度快,FastICA收敛速度为2次以上,普通的ICA算法收敛仅为1次。 2.能利用任何的非线性函数直接找出任何非高斯分布的独立分量,而对于其他的算法来说,概率密度函数的估计不得不首先进行。

3.独立分量可被逐个估计出来,类似于做投影追踪,这在仅需要估计几个(不是全部)独立分量的情况下,能减小计算量。

4.Fast-ICA算法有许多神经算法的优点,它是并行、分布式的且计算简单,内存要求很少,它的性能能够通过选择适当的非线性函数来最佳化。

然而FastICA算法也有其自身的缺点,首先是它对初值的选择较自然梯度算法敏感,当初值的选择不是很合适的时候,算法的分离性能急剧的下降,其次算法的迭代步长有待进行自适应的优化。

3.1.2 基于负熵最大的快速ICA

Fast-ICA算法有基于峭度、基于似然最大、基于负熵最大等形式,这里,我们介绍基于负熵最大的FastICA算法。它以负熵最大作为一个搜寻方向,可以实现顺序地提取独立源,充分体现了投影追踪(Projection Pursuit)这种传统线性变换的思想。

14

武汉理工大学《信息处理课综合训练与设计群》课程设计

由信息论理论可知:在所有等方差的随机变量中,高斯变量的熵最大,因而我们可以利用熵来度量非高斯性,常用熵的修正形式,即负熵。根据中心极限定理,若一随机变量X由许多相互独立的随机变量Si?i?1,2,3,...N?之和组成,只要Si具有有限的均值和方差,则不论其为何种分布,随机变量X较Si更接近高斯分布。换言之,Si较X的非高斯性更强。因此,在分离过程中,可通过对分离结果的非高斯性度量来表示分离结果间的相互独立性,当非高斯性度量达到最大时,则表明已完成对各独立分量的分离。

负熵的定义: Ng?Y??H?YGauss??H?Y? (3-1) 式中,YGauss是一与Y具有相同方差的高斯随机变量,H??.为随机变量的微分熵 H?Y????pY???lgpY???d? (3-2) 根据信息理论,在具有相同方差的随机变量中,高斯分布的随机变量具有最大的微分熵。当Y具有高斯分布时,Ng?Y??0;Y的非高斯性越强,其微分熵越小,N?Y?值

g越大,所以Ng?Y?可以作为随机变量Y非高斯性的测度。由于根据式(3.6)计算微分熵需要知道Y的概率密度分布函数,这显然不切实际,于是采用如下近似公式: Ng?Y???E?g?Y???E?g?YGauss??? (3-3)

2?为均值运算;g???为非线性函数,可取g1?y??tanh(a1y),或其中,E?? g2?y??yexp?y2/2或g3?y??y3等非线性函数,这里,1?a1?2,通常我们取a1?1。

快速ICA学习规则是找一个方向以便WTXY?WTX具有最大的非高斯性。这里,非高斯性用式(3.7)给出的负熵Ng(WX)的近似值来度量,WTX的方差约束为1,对于白化数据而言,这等于约束W的范数为1。FastICA算法的推导如下。首先,WTX的负熵的最大近似值能通过对EGWTX进行优化来获得。根据Kuhn-Tucker条件,在

EWTXT?????????????W22?1的约束下,EGWTX的最优值能在满足下式的点上获得。

??T??T EXgWTX??W?0 (3-4) 这里,?是一个恒定值, ??EW0XgW0X,W0是优化后的W值。下面我们利用牛顿迭代法解方程(3.4)。用F表示式(3.4)左边的函数,可得F的雅可比矩阵JF?W?如下:

JF?W??EXXTg'WTX??I (3-5) 为了简化矩阵的求逆,可以近似为(3.9)式的第一项。由于数据被球化,EXXT?I,所以,EXXTg'WTX?EXXT?Eg'WTX?Eg'WTXI。因而雅可比矩阵变成了

????????????????????????????对角阵,并且能比较容易地求逆。因而可以得到下面的近似牛顿迭代公式:

15

武汉理工大学《信息处理课综合训练与设计群》课程设计

这里,W?是W的新值,??EWTXgWTX,规格化能提高解的稳定性。简化后就可以得到FastICA算法的迭代公式:

????W??EXgWTX?Eg'WTXW??W?W/W (3-6)

????????实践中,FastICA算法中用的期望必须用它们的估计值代替。最好的估计是相应的样本平均。

对于Fast-ICA算法,数据预处理是一个最基本、最必要的过程。该过程包括去均值和白化(或球化)。

去均值过程起到了简化ICA算法的作用,白化也是信号源盲分离算法中一个经常用到的预处理方法,对于某些盲分离算法,白化还是一个必须的预处理过程。对混合信号的白化实际上就是去除信号各个分量之间的相关性。

从图3-2是Fast-ICA算法流程图可以看出,通常先对数据进行初步的白化或球化处理,白化处理可去除各观测信号之间的相关性,从而简化了后续独立分量的提取过程。这是由于一般情况下,所获得的数据都具有相关性。通过去均值和白化等预处理在对其进行真正的算法分离。通常情况下,数据进行白化处理与不对数据进行白化处理相比,算法的收敛性比较好,快速ICA算法一般的步骤如下: 1. 对观测数据X进行中心化,使它的均值为0; 2. 对数据进行白化,X?Z;

3. 选择需要估计的分量的个数m,设迭代次数p?1 ; 4. 选择一个初始权矢量(随机的)Wp;

5. 令Wp?EZgWpZ?Eg'WpZW,非线性函数g的选取见前文;

p?1j?1 6. Wp?Wp?????????WW?W;

TTpjjT?? 7. 令Wp?Wp/Wp。

8. 假如Wp不收敛的话,返回第5步; 9.令p?p?1,如果p?m,返回第4步。

16

武汉理工大学《信息处理课综合训练与设计群》课程设计

观测信号x去均值

对去均值后的观测信号 x进行白化 基于负熵最大化理论确定目标函数 TE[G(W x)] 应用牛顿迭代算法求目标函数的最大值,即分 离矩阵w

是 收敛? 获得信号源 图3-2 Fast-ICA算法流程图

否 由w?xy 概括来说,Fast-ICA算法主要包含两部分:预处理部分和核心算法部分。预处理部分主要包括去均值化和白化处理;核心算法部分是基于拟牛顿算法,具体的实现见附录程序。

3.2 主成分分析PCA

3.2.1 主成分分析原理

主成分分析(Principal Component Analysis,PCA)是一种掌握事物主要矛盾的统计分析方法,它可以从多元事物中解析出主要影响因素,揭示事物的本质,简化复杂的问题。计算主成分的目的是将高纬数据投影到较低维空间。

17