劉 婷,張 錦,李燈熬
(太原理工大學(xué)信息學(xué)院,太原030024)
改進(jìn)的自然梯度盲源分離算法在非平穩(wěn)環(huán)境中的應(yīng)用*
劉婷,張錦*,李燈熬
(太原理工大學(xué)信息學(xué)院,太原030024)
對(duì)于傳統(tǒng)的自然梯度算法,在處理非平穩(wěn)信號(hào)時(shí),在步長(zhǎng)更新迭代過程中,非平穩(wěn)信號(hào)變化幅度過快而導(dǎo)致分離矩陣幅度變化的不穩(wěn)定,從而影響分離效果。針對(duì)此問題,結(jié)合變步長(zhǎng)的思想,提出了基于正交約束的自然梯度盲分離算法,該算法主要對(duì)恢復(fù)信號(hào)進(jìn)行約束,通過使用瞬時(shí)誤差有目的地控制變步長(zhǎng),從而加快算法收斂速度且提高了分離精度,同時(shí)保證了非平穩(wěn)環(huán)境下分離過程的穩(wěn)定性。結(jié)果表明,正交約束下的盲源分離算法可以高效地分離出非平穩(wěn)環(huán)境下的源信號(hào)。
盲源分離;自然梯度;非平穩(wěn);正交約束
目前基于獨(dú)立分量分析ICA(Independent Component Analysis)的盲信號(hào)分離算法在生物醫(yī)學(xué)工程[1]、語音增強(qiáng)、通信系統(tǒng)和機(jī)械故障診斷等信號(hào)處理領(lǐng)域應(yīng)用廣泛。盲分離算法按具體解決途徑分為自適應(yīng)和批處理[2]。批處理算法數(shù)值穩(wěn)定性較好,但需要預(yù)先已知大量的觀測(cè)數(shù)據(jù),不宜進(jìn)行實(shí)時(shí)的在線信號(hào)分離。自適應(yīng)算法計(jì)算量小,計(jì)算時(shí)間短,且適于非平穩(wěn)環(huán)境,因而被廣泛應(yīng)用,該類算法主要有EASI算法[3],F(xiàn)ast-ICA算法[4],隨機(jī)梯度,迭代求逆和自然梯度算法[5],算法最關(guān)鍵的部分是平衡收斂速度和穩(wěn)態(tài)誤差之間的矛盾。自適應(yīng)變步長(zhǎng)具有良好的全局收斂性,然而自然梯度控制步長(zhǎng)依賴于輸出的估計(jì)信號(hào)和分離矩陣,而迭代的過程中,分離矩陣在某些情況下只在其等價(jià)矩陣集合內(nèi)更新,使算法停滯不前,這樣既增加了計(jì)算量又使收斂變慢,為了解決上述問題,本文引入了可變步長(zhǎng)的正交約束,對(duì)混合的觀測(cè)信號(hào)進(jìn)行分離,通過仿真實(shí)驗(yàn),證明了算法的有效性。
1.1自適應(yīng)盲源分離模型
盲源分離是指從混合信號(hào)中提取出各個(gè)獨(dú)立成分,分離之前,任何先驗(yàn)知識(shí)都是未知的,模型可被寫為:
項(xiàng)目來源:國(guó)家自然科學(xué)基金項(xiàng)目(61371062);山西省留學(xué)回國(guó)人員科研項(xiàng)目(2013-032);山西省國(guó)際合作項(xiàng)目(2012081031)
收稿日期:2015-06-04修改日期:2015-07-30
其中s(t)是源信號(hào)向量,零均值且相互獨(dú)立的量,A是未知的滿秩混合矩陣,x(t)是s(t)經(jīng)線性瞬時(shí)混合得到的混合信號(hào)向量。盲源分離一般是先選定一個(gè)目標(biāo)函數(shù),根據(jù)目標(biāo)函數(shù)尋找一種最優(yōu)算法,解混的過程是通過算法使得恢復(fù)出的信號(hào)y(t)盡可能地接近源信號(hào),分離的結(jié)果是要找出一個(gè)最優(yōu)分離矩陣W,分離過程可用公式表達(dá)為:
定義全局矩陣為G=WA,理想情況下,算法應(yīng)找到一個(gè)分離矩陣W使得G=WA=I,I為單位陣,但通常情況下,只能得到一個(gè)與單位陣相似的矩陣,即G=ΛP,Λ表示任一可逆對(duì)角陣,P為任一置換矩陣,當(dāng)且僅當(dāng)y(t)=ΛPs(t)時(shí),y(t)的分量相互獨(dú)立,源信號(hào)即被很好地分離出來,Λ表示分離出的信號(hào)可能與源信號(hào)存在幅度上的差異,P表示排列次序的不確定性,實(shí)際應(yīng)用中,這兩者都是可以接受的。自適應(yīng)盲分離的過程如圖1所示[6-8]。
圖1 自適應(yīng)盲源分離算法圖
由此過程可以看出,迭代產(chǎn)生的獨(dú)立成分y(t)反饋到分離矩陣W,連同觀測(cè)信號(hào)一起作為下一次的輸入,觀測(cè)信號(hào)x(t)輸入算法目的是自適應(yīng)地估計(jì)源信號(hào)y(t),達(dá)到盲源分離的目的。
1.2自然梯度算法
盲分離的關(guān)鍵是尋找最優(yōu)的分離矩陣Wopt,使得各信號(hào)分量yi之間盡可能的相互獨(dú)立,相依性最小,常用Kullback-Leibler散度I(W)作為獨(dú)立性測(cè)度,并使其最小化。公式表示如下[9]:
式(3)中,p(y)是y的聯(lián)合概率密度函數(shù),pi(yi)是y的邊緣概率密度函數(shù),當(dāng)且僅當(dāng)p(y;W)與pi(yi)具有相同的分布時(shí),KL散度I(W)為0,且不隨變量yi的非線性變換而變化,此時(shí),分離效果達(dá)到理想情況。基于散度得到隨機(jī)梯度的盲源分離算法如下:
但是隨機(jī)梯度收斂慢,且易受混合矩陣的影響,此外,由公式可以看出,迭代過程需要求逆,計(jì)算復(fù)雜,因此,在隨機(jī)梯度的基礎(chǔ)上提出自然梯度算法,其通用的迭代公式為:
其中μ(t)是取決于t的學(xué)習(xí)速率,f為所謂的評(píng)價(jià)函數(shù)(Score Function),f(y)=(f1(y1),f2(y2),…,fn(yn)T,是列向量,定義如下:
如果源信號(hào)滿足非高斯性,則 fi(yi)為非線性函數(shù)。
對(duì)于式(5)算法,當(dāng)學(xué)習(xí)步長(zhǎng)參數(shù)取固定值時(shí),步長(zhǎng)太大則收斂較快,但是穩(wěn)態(tài)變差;反之,步長(zhǎng)太小則穩(wěn)態(tài)性好,但是收斂變慢,不適合實(shí)時(shí)處理,甚至可能導(dǎo)致混合信號(hào)永遠(yuǎn)無法得到分離。本文提出一種新的自適應(yīng)變步長(zhǎng)算法,該算法用瞬時(shí)誤差信號(hào)自動(dòng)控制分離的快慢達(dá)到收斂速度與穩(wěn)態(tài)的平衡。
經(jīng)典模式的目標(biāo)函數(shù)有基于互信息、最大似然和信息最大化準(zhǔn)則,基于這些函數(shù)的算法都屬于無約束的盲源分離算法,通常情況下,為去除各混合信號(hào)間的相關(guān)性,簡(jiǎn)化后續(xù)獨(dú)立信號(hào)分量的提取算法,運(yùn)用分離算法之前都先用主分量分析方法,PCA (Principle Component Analysis)對(duì)混合信號(hào)進(jìn)行白化處理。白化后的混合信號(hào)x(t)變?yōu)榫哂袉挝环讲畹男盘?hào)且各混合信號(hào)相互正交,經(jīng)推導(dǎo)證明輸出的分離信號(hào)也具有單位方差,并且分離矩陣一定是正交矩陣,即滿足W-1=WT。
但是,基于預(yù)白化數(shù)據(jù)的盲源分離不具有等變化性。等變化性的意思是算法的全局矩陣G=WA,與混合矩陣A無關(guān),即使當(dāng)系統(tǒng)混合方式發(fā)生變化時(shí),算法的全局矩陣也不會(huì)發(fā)生變化,這種性質(zhì)是盲源分離算法的重要性質(zhì)之一。因此,基于預(yù)白化數(shù)據(jù)的盲源分離雖然可以簡(jiǎn)化算法,但同時(shí)也限制了算法的應(yīng)用,而且在遇到病態(tài)混合矩陣或者源信號(hào)很弱時(shí),基于預(yù)白化數(shù)據(jù)的盲源分離,其分離性能會(huì)很差。因此,需要考慮加權(quán)正交約束WRxWT=I[3-4],此方法不僅可以達(dá)到預(yù)白化的效果且還可保留盲源分離的等變化性質(zhì),分離效果更穩(wěn)定。只需在每一次迭代后,對(duì)分離矩陣進(jìn)行正交性處理,方法如下:
其中,自相關(guān)矩陣可以用式(8)估計(jì):
傳統(tǒng)的自然梯度算法中,步長(zhǎng)因子μ(t)通常采用固定值,步長(zhǎng)太大則收斂快,但是穩(wěn)態(tài)誤差也隨之變大,不能很好的恢復(fù)信號(hào);步長(zhǎng)太小則穩(wěn)態(tài)效果較好,但收斂變慢,不利于實(shí)時(shí)處理。要解決這個(gè)矛盾,必須要采用自適應(yīng)變步長(zhǎng)算法,任何自適應(yīng)變步長(zhǎng)系統(tǒng)調(diào)整參數(shù)的目的都是為了找到收斂速度與穩(wěn)態(tài)誤差的最佳平衡點(diǎn)。
本文引入正交約束后用瞬時(shí)誤差信號(hào)的Frobenius范數(shù)的平方作為參數(shù)控制步長(zhǎng)使其自適應(yīng)地變化,令誤差為:
可以看出,E(t)恒大于等于零。對(duì)于非平穩(wěn)信號(hào)幅度變化太大,分離的過程中步長(zhǎng)也可能波動(dòng)較大。因此,為了使分離結(jié)果滿足要求,本文的步長(zhǎng)自適應(yīng)調(diào)整的原則是:在自適應(yīng)分離的過程中,為了不使步長(zhǎng)變化太大或太小,本文設(shè)置了步長(zhǎng)上限和下限,μmax=0.03和 μmin=0.000 005。當(dāng)步長(zhǎng)處于最大值和最小值之間時(shí),本文規(guī)定步長(zhǎng)的更新依據(jù)誤差信號(hào)的變化量來定,具體過程描述如下:令ΔE(t)=E(t)-E(t-1),如果ΔE(t)增大,則說明步長(zhǎng)太大,出現(xiàn)了動(dòng)蕩,下一時(shí)刻的步長(zhǎng)需要比這一時(shí)刻的步長(zhǎng)小,本文采用在這一時(shí)刻的步長(zhǎng)前乘以一個(gè)小于1且接近于1的系數(shù)對(duì)步長(zhǎng)進(jìn)行微調(diào),其中β是為了調(diào)整λ(t)引入的參數(shù),是經(jīng)過大量實(shí)驗(yàn)得到的,根據(jù)實(shí)驗(yàn)所需,β取0.001;相應(yīng)地,如果ΔE(t)進(jìn)一步減小,說明還沒有進(jìn)入收斂領(lǐng)域,也即還沒有得到最佳分離矩陣,迭代繼續(xù)進(jìn)行。如式(11)、式(12)所示。
最終,新的正交約束下的自然梯度變步長(zhǎng)算法的分離矩陣更新公式為:
為了驗(yàn)證算法的有效性,本實(shí)驗(yàn)對(duì)如圖2所示的三個(gè)非平穩(wěn)源信號(hào)分別是突變信號(hào)、FSK信號(hào)和語音信號(hào)進(jìn)行了線性混合,隨機(jī)生成一個(gè)3×3維的混合矩陣A,并服從區(qū)間[-1,1]上的均勻分布,采樣頻率用10kHz,初始步長(zhǎng) μ0=0.03,進(jìn)行200次蒙特卡洛仿真實(shí)驗(yàn),激活函數(shù)取 f(y(t)=y3(t)。
算法的分離性能用“串音誤差”(Cross-talking Error)來衡量,公式如下:
其中G是全局矩陣,表示為G=WA,gpq為第p行第q列元素。從以上指標(biāo)可以看出,當(dāng)Ect越大,分離獨(dú)立分量效果越差。反之,Ect越小,分離效果越好。
圖2 源信號(hào)
正交約束自然梯度變步長(zhǎng)算法的實(shí)驗(yàn)流程:
(1)隨機(jī)產(chǎn)生混合矩陣,對(duì)源信號(hào)進(jìn)行線性混合,得到3個(gè)混合信號(hào)。
(2)初始化分離矩陣W0=0.5?I3×3,自相關(guān)矩陣Rx(t)=I3×3,學(xué)習(xí)步長(zhǎng) μ0=0.03。
(3)參數(shù)值的大小β=0.001,α=0.995,ρ=0.28。
(4)計(jì)算y(t)=W(t)x(t)。
(5)更新學(xué)習(xí)步長(zhǎng)μ(t)、更新自相關(guān)矩陣Rx(t)、更新分離矩陣W(t)。
(7)t<T,回到步驟(4),否則進(jìn)行步驟(8)。
(8)依據(jù)y(t)和Ect(t)繪制恢復(fù)的源信號(hào)波形和算法性能曲線。
為了進(jìn)行比較,將本文提出的正交約束算法與基于預(yù)白化處理數(shù)據(jù)一同應(yīng)用于處理上述混合信號(hào),從圖3(a)、圖3(b)可以看出,基于預(yù)白化的算法與隨機(jī)矩陣的選擇有關(guān),所以分離效果不穩(wěn)定,本文加入正交約束后的算法對(duì)非平穩(wěn)信號(hào)的處理效果更好一些,實(shí)用性較強(qiáng)。
圖3 基于預(yù)白化處理和正交約束處理的分離信號(hào)
為了驗(yàn)證變步長(zhǎng)算法的有效性,用本文算法與固定步長(zhǎng)的自然梯度算法作了對(duì)比,取固定步長(zhǎng)μF=0.002,分別計(jì)算兩種算法運(yùn)行過程中的平均串音誤差,其學(xué)習(xí)曲線如圖4所示。從串音誤差曲線可以看出,變步長(zhǎng)使得分離過程收斂變快且分離到最后階段的時(shí)候穩(wěn)態(tài)誤差明顯比固定步長(zhǎng)小。
圖4 斂曲線對(duì)比圖
盲源分離算法作為一種功能強(qiáng)大的信號(hào)處理工具越來越受到重視,研究也越來越趨于實(shí)用化。本文針對(duì)非平穩(wěn)信號(hào)較難處理的問題,提出了一種基于正交約束的盲源分離算法,實(shí)驗(yàn)結(jié)果表明,本文算法可以高效可靠地分離出非平穩(wěn)信號(hào),且相較于固定步長(zhǎng)算法,變步長(zhǎng)算法收斂快、穩(wěn)定性好,為非平穩(wěn)信號(hào)的處理提供了一種新思路。
[1] Yong X,Ward R K,Birch G E.Generalized Morphological Component Analysis for EEG Source Separation And Artifact Removal [C]//Neural Engineering,2009.NER'09.4th International IEEE/ EMBS Conference on.IEEE,2009:343-346.
[2] 羅志增,周煒.一種改進(jìn)的盲源分離技術(shù)及其在SEMG中的應(yīng)用[J].傳感技術(shù)學(xué)報(bào),2009,22(8):1204-1207.
[3] Cardoso J F,Laheld B H.Equivariant Adaptive Source Separation [J].IEEE Transactions on Signal Processing,1996,44(12):3017-3030.
[4] 王小敏,曾生根,夏德深.獨(dú)立分量分析算法的改進(jìn)研究[J].電子器件,2008,31(5):1681-1684.
[5] Amari S I.Natural Gradient Works Efficiently in Learning[J]. Neural computation,1998,10(2):251-276.
[6] Zhu X L,Zhang X D,Ding Z Z,et al.Adaptive Nonlinear PCA Algorithms for Blind Source Separation Without Prewhitening[J]. IEEE Transactions on Circuits and Systems I:Regular Papers,2006,53(3):745-753.
[7] Ye J,Huang T.New Fast-ICA algorithms for Blind Source Separation without Prewhitening[M]//Applied Informatics and Communication.Springer Berlin Heidelberg,2011:579-585.
[8] 高穎,李月,楊寶俊.變步長(zhǎng)自適應(yīng)盲源分離算法綜述[J].計(jì)算機(jī)工程與應(yīng)用,2007,43(19):75-79.
[9] Yuan L,Wang W,Chambers J A.Variable Step-Size Sign Natural Gradient Algorithm for Sequential Blind Source Separation[J]. Signal Processing Letters,IEEE,2005,12(8):589-592.
劉婷(1988-),女,漢族,山西朔州人,太原理工大學(xué)碩士,從事醫(yī)電信號(hào)處理工作1097898450@qq.com;
張錦(1964-),女,漢族,山西黎城人,山西大醫(yī)院博士,從事醫(yī)院醫(yī)技科室的管理與研究工作,zhangjin_99@126.com;
李燈熬(1971-),男,漢族,山西忻州人,太原理工大學(xué)博士,從事醫(yī)電信號(hào)處理研究工作,lidengao@tyut.edu.cn。
An Improved Blind Source Separation Based on Natural Gradient Algorithm Used in Non-Stationary Environments*
LIU Ting1,ZHANG Jin2*,LI Dengao1
(Information Engineering,Taiyuan University of Technology,Taiyuan 030024,China)
Traditional natural gradient algorithm may lead to unstable variations for separating matrix during the processing of non-stationary signals,which may greatly affect separation.To solve this problem,combined with the idea of variable step,we propose a natural gradient algorithm for blind source separation based on orthogonal constraints,it constrains the strength of the recovery signals in order to ensure the stability of the separation process under non-stationary environment;in addition,we employ the instantaneous error to control variable step purposefully,for this reason,the convergence speed increases and the separation accuracy is improved.The results showed that blind source separation algorithm by using orthogonal constraints can efficiently separate the source signals even in non-stationary environments.
blind source separation;natural gradient algorithm;non-stationary;orthogonal constraints
TN912.3
A
1005-9490(2016)03-0675-05
EEACC:7220;0290Z10.3969/j.issn.1005-9490.2016.03.034