胡津津
(安徽電子信息職業技術學院 電子信息工程系,安徽 蚌埠 233030)
基于信息極大化的ICA混合語音信號盲分離算法的研究
胡津津
(安徽電子信息職業技術學院 電子信息工程系,安徽 蚌埠 233030)
混合語音信號的分離是盲分離的重要內容,也是信號處理領域的一個難題。獨立分量分析是一種無需知道信號的先驗信號而實現信號分離的盲源分離技術,本文介紹了獨立分量分析的基本理論和算法,探討了獨立分量分析在混合語音信號分離中的應用,給出了信息最大化盲源分離算法并對瞬時混合語音信號進行了盲分離仿真。實驗結果表明,該方法能有效地提高運算效率并獲得較好的分離效果。
獨立分量分析;信息極大化;盲信號分離;語音信號
人們通過傳感器檢測獲取大量信息的數據在信號傳輸的通道特性是未知的情況下,得到的信號往往是混合信號,因此,必須對檢測得到的混合信號進行分離,才能得到真實原始信號的源信號。雖然自適應濾波、小波理論、統計信號處理、視頻分析、神經網絡信號處理等各種信號處理方法都能應用于混合信號的盲分離,但是當信號源的先驗知識非常少加之傳輸通道不詳時,傳統的處理方法就顯得難以達到良好的分離效果[1]。
二十世紀九十年代左右發展起來一種與傳統的處理方法完全不同的信號處理技術即盲源分離(Blind Souse Separation,BSS)。 它是指根據源信號的統計特性,在信源和傳輸通道先驗知識不足的前提下,僅從傳感器得到的混合信號中恢復或分離原始信號的過程[2]。
獨立分量分析 (Independent component analysis,簡稱ICA)是多道信號處理方法,是近年來由盲信源分解技術發展的一種較新的分析方法[3]。它即是在只有觀測數據且信號源混迭方法未知的情況下對信號獨立源進行提取的一種信號處理方法。它的特點是按照統計獨立的原則把多路觀測信號通過優化算法分解成若干相互獨立的成分,進而實現信號的分析和分離。在獨立分量分析中有基于峭度的盲分離方法、有基于極大似然估計的盲分離方法、有基于信息極大化的盲分離方法等。
本文采用信息極大化的獨立分量分析方法對瞬時混合語音信號進行盲源分離,并通過實驗對混合語音信號進行仿真分離,同時對分離結果進行評價。
獨立分量分析是一種新的盲源分離技術,在一定的條件下,獨立分量分析算法可以有效地將多通道觀測的混合信號進行分離獲得原始的信號源。
假定從N個通道獲得N個觀測信號X=[x1,x2,…xN,]T,原始信號源為M個獨立信號源S=[s1,s2,…sM,]T,則混合信號與原始信號源之間的關系可以表達為

式中A=[a1,a2,…aM,]為N×M的混合矩陣
式(1)也可以描述為

由于混合信號中獨立信號源S和A混合矩陣都是未知的,所以常規的信號處理方法無法解決。獨立分量分析方法可以實現盲源分離,其主要任務就是估計出分離矩陣W,以實現從多通道混合觀察信號中分離出原始的信號源 ,即:

對于分離結果就是希望分離出的信號源 與真實的原始信號源S可以實現較好的逼近。
獨立分量分析的多變量分離算法就是要求輸出信號盡可能統計獨立,因此在ICA算法設計中就是要建立對輸出變量獨立性度量的目標函數,然后優化目標函數,尋找最佳的分離矩陣[4]。目前已經提出了多種ICA算法,其中信息極大化ICA盲源分離(Informax)算法是最具代表性的。Informax算法就是在輸出端引入一個合適的非線性函數使輸出的信息熵得到最大化,Informax算法原理框圖如圖1所示:

圖1 Informax算法原理框圖
上圖中,對應信息極大化算法的獨立性判據是信息極大傳輸準則[5],調整分離矩陣W,使輸出的總信息熵量H(y)取得最大值。
非線性輸出y與輸入x的互信息定義如下:

這里H(y)是輸出熵,而H(y|x)是輸出y中來自輸入之外的任意熵。為避免復雜性,考慮如下形式系統:

式中 n=(n1,n2,…,nN)T是輸出噪聲。
在這種情形下,H(y|x)=H(n)。由于 H(n)不依賴于W,因此式(4)的兩邊對W微分可得關系式:

從而調節W使互信息I(y,x)最大與調節W使輸出熵H(y)最大等價。考慮無噪聲輸出情形:y=g(u),u=Wx,取 g 為 sigmoid 函數:

由概率統計理論可知,yi與ui的概率密度函數之間的關系為:

上式中,g,(·)為 g(·)的導數。 從而可以得到:

從而可以推出如下的在線最速梯度下降學習規則:

為避免矩陣求逆,采用Amari的自然梯度修正準則,即用WTW右乘上式,則基于信息最大的分離算法具有如下形式:

式中μ為學習率。
我們采用真實的混合語音信號來進行仿真實驗,仿真軟件采用MATLAB仿真,驗證基于信息極大化的ICA盲分離算法的可行性。信號采用一段女人的聲音,一段音樂,一段男人的聲音,一段汽車喇叭聲,和一段小孩的聲音作為源信號,如圖2所示。
混合矩陣A如下:

由于信息最大化得盲分離算法要求信號各個分量之間相互獨立才能進行分離,因此信號進行混合后,首先要進行進行白話預處理,白化處理的盲目地是去除各信號之間的相關性。經白化處理后的混合信號的波形如圖3所示。

圖2 原始源信號波形圖

圖3 白化處理后的混合信號波形圖
這里采用信息極大化的ICA盲分離算法得到分離后的信號,波形圖如圖4所示。從圖4可以看出,此算法分離算法可以很好的分離出混合語音信號,但是分離后的信號的幅值和順序都發生了變化,這個就是所謂的幅值不確定性和順序不確定性,但是信號的波形已經得到還原,即信號已經分離開來。

圖4 混合信號盲分離后的信號波形圖
經過算法處理后,混合信號可得到源信號的估計序列和混合矩陣,為評價算法的性能,再將其與已知的源信號序列和混合矩陣進行比較實現量化評價。常用的有基于混合矩陣的和基于信號的兩類量化評價準則。
在獨立分量分析中,常利用合成矩陣C=WA與廣義交換矩陣的偏差程度來衡量算法的有效性來反映獨立信源分離的效果,又稱為串音誤差(Crosstalk Error),其形式為

當合成矩陣C遠離廣義交換矩陣時,指標取值就會變大,分離獨立分量的效果就會變差。反之,指標變小,分離效果變好。
也可以用系統矩陣C和單位陣I之間的距離來度量盲分離算法的分離程度。在理想情況下,盲分離算法應能使分離矩陣W收斂于最優值,使得WA=I,或者使系統矩陣C=WA收斂于單位陣I。定義系統矩陣與單位陣之間的誤差為:

式中,n表示源信號的個數。ρ越小,說明分離的效果越好。
采用量化評價準則,對分離信號和原始信號之間的差異以及分離算法的有效性進行評價,系統矩陣與單位陣之間的誤差矩陣ρ以及信號間干擾指

標串音誤差CE數據如下。
從評價指標可以看出,基于信息極大化的獨立分量分析對于瞬時混合語音信號具有很好的分離效果。
本文主要討論的對象是線性混合語音信號的盲源分離技術。主要介紹了ICA的理論算法以及信息極大化Informax算法的具體內容,對目標函數的建立以及算法的實現進行了詳細的研究和闡述。通過語音信號的混合并采用Informax算法對信號進行分離的實驗可以得到Informax算法可以很好地實現混合信號的分離,通過評價指標也可以得出這樣的結論。
[1]D.Chan.Blind Signal Separation[D].Cambridge:,Cambridge University.1997:321-335.
[2]劉據,魯子奕,何振亞,等.基于信息理論準則的盲源分離方法[J].應用科學學報,1999,17(2):156-162.
[3]張賢達,保錚.盲信號分離[J],電子學報,2001,29(12A):1766-1771.
[4]朱孝龍,張賢達,冶繼民.基于自然梯度的遞歸最小二乘盲信號分離[J].中國科學:E 輯,2003,33(8):741-748.
[5]Bell A.J,Sejnowski T.J.An information maximization approach to blind separation and blind deconvolution[J].Neural Computation,1995,7(6):1004-1034.
TN912
A
1674-1102(2011)03-0040-03
2011-04-11
胡津津(1983-),女,安徽望江人,安徽電子信息職業技術學院教師,碩士,研究方向為信息處理技術與應用。
[責任編輯:桂傳友]