Corresponding author: JI Ce, associate professor, E-mail:jice@ise.neu.edu.cn
盲信号分离(BSS)是在不知道传输信道特征和真实源信号的情况下,从传感器阵列中分离源信号的过程.盲分离技术已在许多信号处理领域中得到了广泛应用,如语音信号[1]、图像信号[2]、生物医学信号处理[3]、地震信号等.
盲信源分离具有许多有效的算法,其中以自然梯度算法最为著名.该算法以互信息作为代价函数,通过自然梯度最小化该代价函数,从而迭代得到分离矩阵实现盲分离.影响该算法性能的因素主要有两个: 学习步长和激活函数的估计.在基于传统自然梯度算法的语音信号盲分离中,总是对所有语音信号的分离使用同一个激活函数.实际上不同语音信号的分布是不一样的,因此对所有语音信号使用同一个激活函数的分离效果不尽理想.
为了解决不同语音信号的盲分离问题,提高语音信号的分离性能,本文给出了一种新型的分段激活函数,即将皮尔逊系统作为激活函数引入自然梯度算法,与其他传统的激活函数相结合,构成了一种新的激活函数.以矩估计的方法作为语音信号的判断标准,根据不同的语音信号选择不同的激活函数来实现信号的盲源分离.语音信号的仿真实验证明:本文给出的分段激活函数,在保证收敛速度不变的前提下,大大减少了信号的均方误差,提高了信号的分离性能.
1 盲源分离问题 1.1 语音信号盲源分离的基本模型设S(t)=[s1(t),s2(t),…,sN(t)] T为N个声音源信号,X(t)=[x1(t),x2(t),…,xN(t)]T是由N个传感器接收到的观察信号,忽略传输延迟和噪声信号,X(t)与S(t)满足如下线性关系:
盲信号分离的关键在于寻求最佳分离矩阵Wopt.为此人们想出了不同的求解方法,如最大熵方法、最大似然估计方法、独立分量分析等.运用自然梯度的概念,将这些方法用统一的迭代公式表示如下:
传统的利用自然梯度算法中,总是选用双曲正切(tanh)函数作为激活函数[5]. 这是因为语音信号在大部分情况下是服从超高斯分布的,所以在对分离性能要求不是很高的情况下,tanh完全可以满足分离需要.但是,如果要得到更好的分离效果,必须考虑语音信号的各种分布情况,然后选择相对应的激活函数,代入分离矩阵进行迭代分离.
2 基于皮尔逊系统的盲源分离 2.1 皮尔逊系统Karvanen第一次将皮尔逊系统引入盲分离系统,用来分离简单的超高斯和亚高斯信号[6].皮尔逊系统基本的数学模型为
理想情况下,矩估计应由源信号来计算.但在实际情况下,源信号是未知的.因此,可以用分离出来的估计信号去代替源信号进行计算,即用样本矩来代替理论矩.具体的矩估计公式如下:
皮尔逊系统可以模拟多种信号的分布,可以将皮尔逊系统作为一种激活函数引入语音信号盲分离.但是,由于皮尔逊系统分离的信号是有一定范围的[6],超过这个范围后,用皮尔逊系统作为激活函数便不能实现盲分离或盲分离效果很差.基于这一点,本文提出将皮尔逊系统作为一种激活函数,与传统语音分离的激活函数相结合,构成一种新型的分段激活函数.然后,根据矩估计的方法,为信号选择合适的激活函数进行盲源分离.本文提出的分段激活函数如图 1所示.
图 1中:当α4<α32+1时,语音信号不能分离,而实际上,语音信号不会达到这个区域;当 α32+1<α4<2.6时,语音信号服从亚高斯分布,选用y3函数作为分离矩阵的激活函数;当2.6<α4<α32+4时,选用皮尔逊系统作为激活函数;当α4>α32+4时,语音信号服从超高斯分布,选用tanh函数作为分离矩阵的激活函数.
通过矩估计,计算出信号的三阶矩和四阶矩,再根据上述方法,选择合适的激活函数实现语音信号的盲源分离.
2.3 算法的实现步骤综上所述,基于分段激活函数的盲分离算法实现步骤如下:
1) 对观测信号x进行预处理,即去均值和白化;
2) 设置初始的分离矩阵W和初始学习步长η;
3) 利用公式Y(t)=WX(t)计算分离信号yi;
4) 用矩估计的方法计算信号的三阶矩和四阶矩,根据图 1给出的分段激活函数的范围,选择合适的激活函数;
5) 将选择的激活函数代入式(2)中,求出分离矩阵Wk+1 ;
6) 判断分离矩阵Wk+1是否收敛,即|Wk+1-Wk|<ε是否成立,其中,ε是一个无限小的正数.若收敛,则输出分离信号;反之,则返回到第3)步,直到收敛;
7) 得到所有的估计值yi,输出分离信号Y(t).
3 仿真实验及其性能分析 3.1 仿真实验语音信号分离实验中,应用Matlab仿真软件,选取两路语音信号,其中一路为音乐信号,一路为谈话信号(图 2a)来进行分离.采样频率为10kHz,采样点数为3×104.先将两路语音信号按下列随机矩阵 A 进行混合,进而得到一组混合信号(图2b),
分别采用传统的自然梯度算法以及基于皮尔逊系统的改进算法对混合后的两组语音信号进行分离,分离后的结果如图 3所示.
直观上可以看到两种算法都可以实现语音信号的盲分离.
3.2 性能分析本文选用分离后输出信号的均方误差作为评价指标[8].定义均方误差如下:
为了更加清楚直观地看到算法的优越性,给出两种算法收敛时的均方误差,原始算法和改进算法的均方误差分别为1.25×10-6和0.49×10-6. 从两种算法的均方误差值可以看出,基于皮尔逊系统的语音信号盲分离算法与传统的自然梯度算法相比,收敛速度基本保持不变;但是收敛后的均方误差值却明显要小很多,这说明改进后的算法在分离性能方面优于传统的自然梯度算法.
4 结 论本文通过引入皮尔逊系统,将其作为一种激活函数与其他的激活函数相结合,提出一种新的分段激活函数.利用矩估计的方法,不同语音信号根据自身特点选择合适的激活函数,代入分离矩阵进行盲分离.与原始的自然梯度盲分离算法相比,改进的算法在基本保证收敛速度的同时,明显降低了输出信号的均方误差,即提高了算法的分离性能.
[1] | Choi C H,Chang W,Lee S Y.Blind source separation of speech and music signals using harmonic frequency dependent independent vector analysis[J].Electronics Letters,2012,48(2):124-125.(1) |
[2] | Liang Y,Chen G,Naqvi S M R,et al.Independent vector analysis with multivariate student's t-distribution source prior for speech separation [J].Electronics Letters,2013,49(16):1035-1036.(1) |
[3] | Hesse C W,James C J.On semi-blind source separation using spatial constraints with applications in EEG analysis[J].IEEE Transactions on Biomedical Engineering,2006,53(12):2525-2534.(1) |
[4] | Karvanen J,Koivunen V.Blind separation methods based on Pearson system and its extensions[C]// Proceedings of the Second International Workshop on Independent Component Analysis and Blind Signal Separation.Espoo,2002:663-673.(1) |
[5] | Amari S.Natural gradient works efficiently in learning[J].Neural Computation,1998,10(2):251-276.(1) |
[6] | Karvanen J,Eriksson J,Koivunen V.Pearson system based method for blind separation[C]// Proceedings of the Second International Workshop on Independent Component Analysis and Blind Signal Separation.Espoo,2000:585-590.(2) |
[7] | 季策,胡祥楠,朱丽春,等.改进的高阶收敛FastICA算法 [J].东北大学学报:自然科学版,2011,32(10):1390-1393. (Ji Ce,Hu Xiang-nan,Zhu Li-chun,et al.Improved higher order convergent FastICA algorithm[J].Journal of Northeastern University:Natural Science,2011,32(10):1390-1393.)(1) |
[8] | 程舒慧.动态盲源分离及其在生物医学信号处理中的应用研究[D].合肥:安徽大学,2011.(Cheng Shu-hui.Research of dynamic blind source separation and its application to biomedical signal processing[D].Hefei:Anhui University,2011.)(1) |