獨(dú)立分量分析在心電信號處理中的應(yīng)用
獨(dú)立分量分析ICA(Independent Component Analysis)是近來發(fā)展起來的一種新的盲源分離方法BSS(Blind Source Separation)[1]。ICA處理的對象是一組相互統(tǒng)計獨(dú)立的信源經(jīng)線性組合而產(chǎn)生的混合信號,其最終目的是在源信號和混合方式都未知的情況下,從混合信號中恢復(fù)出源信號各個獨(dú)立成分的過程。ICA這種能夠提取獨(dú)立成份的特性已被廣泛應(yīng)用于生物醫(yī)學(xué)信號處理、混合語音信號分離、圖象的消噪等方面。
人體的心電信號在采集過程中,由于儀器、人體等內(nèi)外環(huán)境的影響,不可避免地混雜了各種干擾信號,如工頻干擾、人工偽跡、基線漂移和肌電干擾等。這些噪聲干擾與心電信號混雜,會引起心電信號的畸變,使心電波形模糊不清, 從而影響信號特征點(diǎn)的識別,難以分析和診斷,因此有效分離各種干擾信號對心電信號處理有著重要的意義[2]。在論文中,將采用ICA方法對心電信號進(jìn)行分析處理,消除干擾信號。
1 ICA基本理論
1.1 ICA 模型
假設(shè)是一組N維的觀測信號,
源信號通過混合以后得到觀測信號,如式(1)所示:
素表示源信號之間的線性混合情況。
獨(dú)立分量分析就是在源信號S及混合矩陣A未知的情況下,通過求得一M×N的解混矩陣W,使得通過它可以僅從觀測信號X來恢復(fù)出源信號S。其中y為源信號的估計矢量:?????
??
ICA原理如圖1所示。
對于以上描述的ICA模型,由于源信號S和線性組合方式A均未知,如果沒有任何先驗知識,要想僅從觀測信號恢復(fù)出源信號是不可能的。為使問題可解,一般做如下假設(shè):
(1)各源信號之間相互統(tǒng)計獨(dú)立;(2)源信號間的混合方式是線性的;(3)信號中最多只允許有一個高斯信號,因為多個高斯信號的線性混合仍然服從高斯分布,從而導(dǎo)致信號不可區(qū)分;(4)觀測信號的數(shù)目不能小于獨(dú)立信號源的數(shù)目,一般討論兩者相等的情況;(5)源信號的各分量均值均為零。
而且,y只是在滿足上述條件下對S的逼近。換句話說,ICA算法任務(wù)的實質(zhì)是優(yōu)化問題。因此ICA方法的具體實現(xiàn)主要包括兩個方面,確定優(yōu)化判據(jù)即目標(biāo)函數(shù)以及選擇優(yōu)化算法。
目標(biāo)函數(shù)通常也稱為對比函數(shù)或代價函數(shù)。目標(biāo)函數(shù)的定義主要是確定分析的目標(biāo)和建立判斷是否獨(dú)立的判據(jù)。ICA方法的判別依據(jù)根據(jù)度量各分量之間獨(dú)立程度的判據(jù)不同, 有多種形式。如信息最大化(info-max)方法、最大熵(ME)和最小互信息(MMI)方法、極大似然(ML)法及快速ICA(fastICA)方法等。其中FastICA算法使用方便,程序編寫也比較成熟,應(yīng)用較多[3]。對于同一個目標(biāo)函數(shù)亦可以有不同的優(yōu)化算法。常見的優(yōu)化算法主要有梯度法和牛頓迭代法。
1.2 FasICA算法
FasICA又稱為固定點(diǎn)(Fixed-Point)算法,是一種基于負(fù)熵或極大似然估計等獨(dú)立性判決準(zhǔn)則的分離算法。與普通的神經(jīng)網(wǎng)絡(luò)算法不同的是,這種算法采用了批處理的方式,即在每一步迭代中都存在大量的樣本參與運(yùn)算。另外,該算法采用了定點(diǎn)迭代(Fixed-Point Iteration)的優(yōu)化方式,使得收斂速度快且穩(wěn)健[4-5]。
使用FasICA算法分離單個獨(dú)立分量時,首先進(jìn)行白化處理,使X的相關(guān)矩陣E[XXT]=1,即令X=BS,其中B是混合矩陣,其列向量是正交的。再考慮用kurtosis作為對比函數(shù),從而使得kurtosis達(dá)到最大化得到W(W=BT)。其對比函數(shù)如下:
其中,w?=Wi(為W一行),且||?W||=1
具體實現(xiàn)過程如下:
(1)初始化權(quán)值向量W(0),令||W(0)||?=1,k=1;
(2)迭代運(yùn)算:w(k)=E[x(W(k-1)Tx3]-3W(k-1),W=(bj)且||W||?=1,bj為B的第j列,其中數(shù)學(xué)期望可以用X的大量樣本點(diǎn)的均值代替;
(3)將W(k)標(biāo)準(zhǔn)化,即W(k)/||?W(k)||;
(4)如果W(k)TW(k-1)不是足夠地接近1,令k=k+1,返回步驟2,否則輸出向量W(k)。算法最后給出的向量W(k)意味著分離了混合信號x(k)中的一個非高斯信號W(k)Tx(k),其中k=1,2…等于其中的一個源信號[6-7]。
對于多個獨(dú)立分量,可重復(fù)使用上述過程進(jìn)行分離,但每提取出一個獨(dú)立分量后,要從觀測信號中減去這一獨(dú)立分量,如此重復(fù),直到所有獨(dú)立分量完全分離。
與其他ICA算法相比,F(xiàn)astICA有以下優(yōu)點(diǎn):(1)立方收斂,相比普通的基于梯度下降方法的線性收斂,收斂速度更快;(2)不需要選擇學(xué)習(xí)步長或其他參數(shù),更易使用;(3)不管是具有超高斯分布還是亞高斯分布的分量都能被提取出來;(4)獨(dú)立成分可以逐個估計,在僅需要估計幾個(不是全部)獨(dú)立分量的情況下,能減少計算量。(5)FastICA還有許多神經(jīng)算法的優(yōu)點(diǎn),如并行、計算簡單、要求的內(nèi)存少等。
工頻干擾是由電力系統(tǒng)引起的一種干擾,由50Hz及其諧波構(gòu)成,是心電信號中最常見的干擾源之一。可以說消除工頻干擾是心電信號檢測與處理過程中最經(jīng)典的話題。
由于心電信號和工頻干擾信號可以被看成是由不同的相對獨(dú)立的源產(chǎn)生的,因此可以認(rèn)為它們之間是相互獨(dú)立的,觀測到的信號混合方式是線性的;嚴(yán)格地說心電信號及這些干擾信號都不是高斯信號,這樣就滿足了ICA的前3個條件,對于第4個條件,可以通過增加通道數(shù)目來滿足。因此在實驗中,可以利用ICA算法來分離源信號,消除工頻干擾。
工頻干擾的數(shù)學(xué)模型可表示為:
其中,A, f, θ分別為工頻干擾的幅值、頻率以及相位。f為50?Hz,而A, θ為未知的參數(shù),且θ通常較難估計。利用sin(2π?f?)和cos(2π?f??)的線性組合可以得到任何相位的正弦信號,因此用一個正弦信號s1(t)=sin(2π?ft)和一個余弦信號s2(t)=cos(2π?ft)正交來構(gòu)造工頻干擾源。
圖2為原始心電信號(數(shù)據(jù)來源于MIT-BIH Arrhythmia Database,采樣個數(shù)為3?000)以及所構(gòu)造的工頻干擾信號。將這三路信號混合后的觀測信號作為FastICA算法的輸入,即可分離出相應(yīng)的工頻干擾,分離結(jié)果如圖3所示。
比較源信號以及經(jīng)過ICA分離后的信號圖,可以看到,分離出的信號除了波形的次序、極性和波幅發(fā)生變化之外,源信號的波形被很好地分解出來,能比較真實地反映源信號??梢?,利用ICA方法能成功地將工頻干擾消除,在沒有破壞原有有用信息的基礎(chǔ)上,還能使某些特征由于干擾的消除變的更明顯。
本文將ICA方法應(yīng)用于心電信號干擾消除過程,成功分離出干擾信號,較好地保留了原始心電信號中的細(xì)節(jié)信息,且不受信號頻譜混迭的限制,具有良好的效果。實驗證明獨(dú)立分量分析方法是一種有效可行的信號分離方式,必將得到生物醫(yī)學(xué)信號處理領(lǐng)域的廣泛應(yīng)用。
但作為一種新的信號處理技術(shù),ICA理論體系并不完善,一些實際問題還有待于進(jìn)一步解決。如分析各獨(dú)立分量時在很大程度上依賴于人的經(jīng)驗,各分量的輸出次序不確定,觀測數(shù)目如果小于信號源數(shù)目的情況以及信號源非線性混合等情況都還需要繼續(xù)研究。
評論