岳建杰,趙旦峰,張成
1.哈爾濱工程大學信息與通信工程學院,黑龍江哈爾濱 150001
2.哈爾濱工程大學自動化學院,黑龍江哈爾濱 150001
一種改進的自然梯度語音信號盲分離算法
岳建杰1,趙旦峰1,張成2
1.哈爾濱工程大學信息與通信工程學院,黑龍江哈爾濱 150001
2.哈爾濱工程大學自動化學院,黑龍江哈爾濱 150001
自然梯度算法有較快的收斂速度、良好的分離性能,在盲信號分離中占有重要地位?;谧匀惶荻鹊拿ぴ捶蛛x算法一般分為固定步長和變步長的自然梯度算法,固定步長的自然梯度算法存在分離速度與穩定性之間的矛盾,即步長越長時分離速度快,但是穩態誤差又得不到保障;步長太小分離速度又達不到要求。為了改善分離速度與穩定性之間的矛盾,提出了一種變步長的方法來,并用其改進了固定步長的標準自然梯度算法,成功地用于混合語音信號的分離,該方法取得比標準自然梯度算法更好的分離效果,具有更快的收斂速度。
語音信號處理;自然梯度算法;收斂速度;盲信號分離
盲信號分離起源于雞尾酒會問題[1],在雞尾酒會場景下,沒有源信號的任何先驗信息,只知道混合的觀測信號,這就使得盲信號分離成為了解決無源信號問題的最好方法,因為這種估計源信號方法無需知道混合過程的參數等信息[2]。盲信號分離最基本的方法就是獨立分量分析(independent compo-nent analysis,ICA)的方法,其中Fast ICA算法[3]、隨機梯度算法[4]、自然梯度算法[5]、EASI算法[6]、迭代求逆等方法都是常用的算法,這些算法都是最小均方(leastmean square,LMS)型的算法。LMS算法有著固有的缺陷,就是穩態誤差和步長成正相關性,收斂時間和步長成反相關性,這就使得這一類型的算法收斂速度和穩態誤差特性不能同時得到滿足[7]。為了改善這種狀況,本文對前人自然梯度算法[8-11]進行深入研究,采用文獻[12]中把固定步長改變成變步長的思想,不僅大大提高了自然梯度算法分離效率,而且大幅提升了分離的收斂速度。
語音信號盲分離問題瞬時混合模型通常如圖1所示。

圖1 混合系統
s(t)=[s1(t),s2(t),…,sm(t)]T是n個說話者聲音信號組成的n維向量;x(t)=[x1(t),x2(t),…,xm(t)]T是m個觀測信號組成的m維向量,其元素是各個麥克風的輸出;A是m×n維矩陣混合矩陣,其元素aij表示信號的混合情況,如果為語音信號,取決于第i個說話者和第j個麥克風之間的距離。即

或者簡記為
x(t)=As(t)
盲信號分離問題的提法就是只根據觀測信號數據x(t)求得分離矩陣W,W是A的逆矩陣,使得變換后的輸出
y(t)=Wx(t)
是源信號s(t)的一個估計或拷貝。
1.1 信號分離的前提假設
為了保證ICA模型是可解的,做出如下3個合理假設,第1個假設就是源信號s t()為平穩隨機向量且各個源信號是統計上相互獨立的;第2個假設就是源信號中最多只有一個高斯信號,因為多個高斯信號的混合還是高斯信號,信號不可能被分開;第3個假設就是為了簡化估計,未知的混合矩陣是一個方陣且混合矩陣是行滿秩的,即獨立源信號的數目和觀測信號的數目是相等的。如果當信源的數目少于觀測信號的數目時,可以利用主原分析(princi-pal component analysis,PCA)的方法降低維數使混合矩陣為一個方陣。只有這3個假設同時有效時,源信號s(t)才能從混合信號x(t)中被估計出來。

圖2 盲信號分離框圖
此時盲信號分離的實際過程如圖2所示。
y(t)=Wx(t)=WAs(t)=Cs(t)
式中C=WA。
需要指出的是,對瞬時混疊信號盲分離,在源信號可以精確恢復的情況下應有W=A-1。然而由于源信號和混疊矩陣都未知,在以上假設條件約束下的一般分離方法,盲源分離存在2個不確定性,即恢復的信號的幅度不確定性和信源各分量次序的不確定性。在許多應用背景下,絕大多數信息包含在信號的波形而不是信號的幅度和次序中,所以在瞬時混疊情況下,盲信號分離的這2個不確定性是可以接受的。
1.2 信號的預處理
混合信號盲分離前,需要對信號進行預處理,可以大大減少計算和分離效率。最有用的預處理步驟就是對觀測信號去均值和白化,一些特殊的問題,要用低通或高通濾波器去除噪聲信號或擾動[13]。
1.2.1 信號的零均值處理
盲信號分離算法中,源信號的分量變換成零均值,可以大大減少計算量,并且對分離結果無影響。
假設x是一個非零均值的隨機變量,其去均值過程可以用x0=x-E(x)來表示,在真實的計算情況下,算術均值通常由數學期望來估計:

式中:xi(t)是觀測信號x(t)=[x1(t),x2(t),…,xn(t)]T的一個分量,其中i=1,2,…,N,t=1,2,…,N是隨機變量x的N個采樣點。
1.2.2 信號的白化
盲信號分離中,白化是一個通用的改善分離性能的信號預處理方法,因而白化是非常有必要的。
梯度算法有等變化性等優良的性能,應用場合廣泛,但存在步長與穩態誤差間的固有矛盾。
2.1 標準自然梯度算法
在盲信號分離或ICA問題中,輸出y(k)相互獨立性反應了分離的性能,通常情況下使用K-L散度作為獨立性的度量。文中使用py(y,W)作為隨機變量y=Wx的概率密度函數并且創造一個概率密度函數q(y),在q(y)中的所有分量都是在統計意義上獨立的,并將其作為一個參考。當且僅當py(y,W)和q(y)同分布時,K-L散度才會是零,也不會隨著變量yi的非線性變換而變化。獨立性的自然度量表示為


如果K-L散度由輸出y的差分熵H(y)來表示

由文獻[4]得到K-L散度的互信息和差分熵表示為

把式(1)、(2)代入式(3)得到

通過文獻[13]中隨機梯度在線學習算法,式(4)的廣義梯度為

式中:η(k)是依賴于k的學習率,并且?ρ/?W是由元素?ρ/?wij組成的n×n的梯度矩陣。通過差分矩陣的操作,可以得到

式中f(y)=[f1(y1),f2(y2),...,fn(yn)]T是一個列矢量,其第i個元素是

式中:(qiyi)是源信號{si}的概率密度函數的估計,梯度-?ρ/?W是歐幾里得空間中目標函數最速下降方向。
文獻[13]中提到,Amari等人把W引進了自然黎曼空間中并證明了參數W黎曼空間中最速下降的方向并不是標準的負梯度所指向的方向-?ρ/?W,而是

根據黎曼空間中參數的結構,這種自然梯度修改了標準梯度的搜索方向,但是并沒有改變最小值點因而確保了參數估計的全局最優解。自然梯度有著等變化的性質,且不用求逆運算,不受混合矩陣變化的影響,并且沒有像牛頓法在目標函數的均方估計,算法阻止了W(k)的畸變[14],很適合目標函數非線性的模型。綜上,推導可以得到自然梯度算法為
W(k+1)=W(k)+η(k)[I-f(y)yT]W(k)文獻[4]詳細講解了非線性函數f(y)的選擇。
2.2 改進的自然梯度算
標準自然梯度算法有著很好的收斂與分離性能,但是其碼間干擾收斂速度很慢,為了加速碼間干擾的收斂速度,參考文獻[12]將傳統算法中分離矩陣的Frobenius范數變化情況強加于梯度學習算法,將使算法在學習過程中保持相對穩定,采用該思想方法有η(k)迭代調節過程如下:

取

式中tr是求矩陣的跡,此時有

所以改進后的自然梯度算法表現形式仍然為

綜上所述,改進的自然梯度算法的步驟如下:
1)對觀測信號去均值、白化,選取非線性函數f(y)=tan y;
2)初始化系統參數,選取迭代最大步數為l=100步,ρ=0.001,η(1)=0.05,那么,

3)分別計算如下各式:

如果1<lp≤100,則反復執行,直到l=100執行完。
選用2路純凈的語音信號進行算法的驗證性分離試驗,驗證算法的有效性:其中s1內容是:“這就是去洛克菲勒中心的地鐵嗎?是”;s2內容是:“I’m interesting about education!”。使用MATLAB軟件仿真,得到源信號s1和s2的波形圖如圖3所示。


圖3 源語音信號
隨機產生一個混合矩陣A,取3位有效數字得到

源信號s1和s2在混合矩陣A作用下混合得到混合觀測信號,其中x1(t)和x2(t)的波形如圖4。

圖4 混合語音信號
對觀測信號x(t)去均值,白化預處理后,用標準自然梯度算法和改進的自然梯度算法采取相同的參數和迭代步數,迭代計算出的分離矩陣分別為W1和W2,其值分別為

在MATLAB軟件仿真環境下,仿真分離出的波形如圖5、6所示。

圖5 標準自然梯度算法分離的信號

圖6 改進自然梯度算法分離的信號
2種分離方法分離出的波形和原始語音信號的波形相比較,直觀上分離結果波形相似度很高,由于自然梯度算法存在2種不確定性,所以需要引進分離性能評價指標。語音信號分離性能評價指標一般使用性能測度碼間干擾(inter symbol interference,ISI)[13]作為分離性能的評價標準。碼間干擾定義為

式中C=WA,cij,cik分別表示矩陣C的i行j列和i行k列的元素。當信號得以精確分離時,指標I(C)應該為零,實際上一般為較小的值。文中2種分離方法同取ρ=0.001,碼間干擾曲線如圖7所示。

圖7 2種自然頭分離算法的碼間干擾
從圖7中看到這2種算法在分離的初始階段碼間干擾都很大,隨著分離程度的加深,碼間干擾很快的降低,最后穩定在一個很小的值,說明這2種分離算法都能將混合信號得到精確的分離。從圖7中可以看出第10步迭代后碼間干擾迅速下降,標準自然體算法碼間干擾曲線迭代次數到了45步才穩定到一個很小的值;改進后的自然梯度法碼間干擾曲線迭代到了35步就穩定到了一個很小的值。說明改進后的自然梯度算法收斂速度比原始的收斂速度有所提高。
選取不同的ρ得到碼間干擾曲線如圖8所示。

圖8 不同ρ下的碼間干擾誤差
圖8中所示,在改進的自然梯度算法中使用不同的ρ有著不同收斂速度。ρ=0.0001和ρ=0.00001這2條曲線幾乎重合在一起,所以可以推得,當ρ小到一定程度時,碼間干擾曲線幾乎沒有變化。由圖8知,當ρ=0.01時,在迭代次數20步的時候碼間干擾都很小了,其他小于0.01的ρ的碼間干擾迭代了30步以后才收斂到一個很小的數,所以ρ越小碼間干擾收斂的速度越慢,從圖中看出ρ=0.01時收斂的速度幾乎是直線下降,所以在算法中取ρ相對大一些更符合實際要求。
運用標準自然梯度和改進的自然梯度算法都能將混合的語音信號分離開來,通過對比標準自然梯度算法和改進的自然梯度算法分離結果的串音誤差曲線,二者都具備很好的分離性能,改進后的自然梯度算法具有更快的分離速度,這種更快的分離性能用在實時性要求更高的環境中就能獲得更好的分離效果。在此考慮的都是純凈的語音信號,而在真實的環境中不可避免受到噪聲信號的干擾,今后研究噪聲污染的信號的分離更具有實際的意義。
[1]HAYKINS,CHENZ.The cocktail party problem[J].Neu-ral Computation,2011,17(9):1875-1902.
[2]CHOIS,CICHOCKIA,PARK H M,et al.Blind source separation and independent component analysis:a review[J].Neural Information Processing-Letters and Reviews,2005,6(1):1-57.
[3]PRASAD R PR.Fixed-point ICA based speech signal sepa-ration and enhancement with generalized Gaussian model[D].Ikoma:Nara Institute of Science and Technology,2010:89-96.
[4]楊福生,洪波.獨立分量分析的原理與應用[M].北京:清華大學出版社,2006:15-50.
[5]SANDIKO C M,MAGSINO E R.A blind source separation of instantaneous acoustic mixtures using natural gradient method[C]//2012 IEEE International Conference on Con-trol System,Computing and Engineering(ICCSCE).Mel-bourne,Australia,2012:124-129.
[6]CARDOSO JF,LAHELD BH.Equivariant adaptive source separation[J].IEEE Transactions on Signal Processing,2009,44(12):3017-3030.
[7]裴學廣.基于變步長自然梯度算法的盲源分離[J].艦船電子對抗,2007,30(4):65-68.
[8]馬建倉,馮冰,程存虎,等.自然梯度盲分離算法在振動信號處理中的應用[J].火力與指揮控制,2011,36(4):154-157.
[9]付衛紅,楊小牛.改進的基于步長自適應的自然梯度盲源分離算法[J].華中科技大學學報:自然科學版,2007,35(10):18-20.
[10]李廣彪,張劍云.基于分離度的步長自適應自然梯度算法[J].信號處理,2009,23(3):429-432.
[11]劉穎超,張紀元.梯度下降法[J].南京理工大學學報:自然科學版,1993(2):2-5.
[12]張天騏,李雪松,夏淑芳,等.梯度自適應在線ICA的改進[J].北京郵電大學學報,2010,33(5):108-111.
[13]史習智.盲信號處理——理論與實踐[M].上海:上海交通大學出版社,2011:61-85.
[14]BENESTY J.An introduction to blind source separation of speech signals[M].New York:Springer,2000:321-329.
Speech signal blind source separation based on an im proved natural gradient algorithm
YUE Jianjie1,ZHAO Danfeng1,ZHANG Cheng2
1.College of Information and Communication Engineering,Harbin Engineering University,Harbin 150001,China
2.College of Automation,Harbin Engineering University,Harbin 150001,China
A natural gradient algorithm has a fast convergence rate and excellent separation property,and thus plays an important role in blind signal separation.The blind source separation algorithms based on natural gradient are commonly classified into fix-step-size and variable step-size algorithms.The fix-step-size natural gradient algorithm has the inherent contradiction between the speed of separation and the error in steady state.Namely the bigger the step size is,the faster the separation speed is,but the error in steady state cannotmeasure up.Then a small step size would lead to slow separation speed.In order to improve the contradiction,this paper proposes a new method based on variable step-size natural gradient,which is used to improve the fixed-step-size standard natural gradient algorithm and it has been successfully applied to separatemixed speech signals.The new algorithm has gained bet-ter separation performance and faster convergence speed in inter symbol interference than the standard one.
speech signal processing;natural gradient algorithm;convergence rate;bind signal separation
TN971.1
A
1009-671X(2015)03-030-05
10.3969/j.issn.1009-671X.201409015
2014-09-25.
日期:2015-04-20.作者簡介:岳建杰(1986-),男,碩士研究生;趙旦峰(1961-),男,教授,博士生導師.
岳建杰,E-mail:348274742@qq.com.
http://www.cnki.net/kcms/detail/23.1191.U.20150420.1055.011.html