趙治棟,徐 雯,張曉紅,葉?;?/p>
(1.杭州電子科技大學電子信息學院,杭州310018;2.杭州電子科技大學通信工程學院,杭州310018;3.浙江大學醫(yī)學院附屬婦產(chǎn)科醫(yī)院,杭州310006)
基于改進FastICA的胎兒心電提取算法研究*
趙治棟1*,徐雯2,張曉紅1,葉?;?
(1.杭州電子科技大學電子信息學院,杭州310018;2.杭州電子科技大學通信工程學院,杭州310018;3.浙江大學醫(yī)學院附屬婦產(chǎn)科醫(yī)院,杭州310006)
針對FastICA算法容易陷入局部最優(yōu),導致提取的胎兒心電往往含有較多噪聲的問題。本文將修正BFGS法(MBFGS)和混沌優(yōu)化算法相結合來代替?zhèn)鹘y(tǒng)的牛頓迭代法,提出一種新的獨立分量分析方法,并用于胎兒心電信號的提取。分別用合成信號和臨床信號對該算法進行驗證,實驗結果表明本文提出的算法能提取出清晰并不含母體心電的胎兒心電信號,而且算法性能更優(yōu)于FastICA。
生物醫(yī)學信號處理;胎兒心電信號;快速獨立分量分析;MBFGS;混沌優(yōu)化
EEACC:7230doi:10.3969/j.issn.1004-1699.2015.09.002
胎兒心電信號是胎兒心臟活動最源發(fā)性信號,其電位變換的時間、方向和次序等都具有一定的規(guī)律,能反映胎兒在宮內(nèi)的生長和健康狀況[1]。胎兒心電信號的分析與評估是胎兒監(jiān)護的重要部分[2]。通過對胎兒心電波形的分析,可以在早期診斷胎兒宮內(nèi)缺氧、先天性心臟病等疾病,從而降低圍產(chǎn)期胎兒的發(fā)病率和死亡率[3]。
胎兒心電信號的檢測方法有直接法、間接法兩種。由于間接法是非入侵性無創(chuàng)的,使其在臨床上得到更為廣泛的使用。但是胎心活動的生物電流需要通過羊水、孕婦腹腔、孕婦皮膚組織等傳到電極,導致檢測的胎兒心電信號十分微弱、信噪比很低,常常被母體心電和其他噪聲覆蓋。為此,人們提出了各種提取胎兒心電的方法,如奇異值分解法[4]、自適應濾波法[5]、小波變換[6-7]、盲源分離法[8-9]等等。
獨立分量分析(ICA)是解決盲源分離的常用方法,ICA具有較好的分離效果所以被認為是最有應用前景的方法。對此,研究者們提出了一些著名的ICA算法,能夠實現(xiàn)亞高斯和超高斯分布信號的分離。比如:基于信息量最大準則的在線迭代算法(Informax算法)、基于相對梯度的在線算法(EASI算法)、快速定點算法(FastICA)。Informax算法需要對矩陣求逆,收斂速度慢,算法性能會受源信號混合程度影響。EASI算法,具有較好的漸進收斂性。FastICA算法與上述幾個算法不同,它不需要步長,收斂速度快。
由于上述ICA方法大都是采用梯度迭代求取混解矩陣,初始值和步長會影響算法性能,導致算法容易陷入局部最優(yōu),使得提取的胎兒心電中含有母體心電成分。本文從構造目標函數(shù)和尋優(yōu)算法這兩方面出發(fā),針對FastICA算法存在的缺點提出混沌MBFGS算法,將混沌優(yōu)化算法和MBFGS算法結合起來獲得全局最優(yōu)解,從而提高算法的分離性能。
設n個獨立未知源信號S=[s1…sn]T,m維觀測信號X=[x1…xm]T,則有X=AS,A是m×n階滿秩矩陣,稱為混合矩陣。獨立分量分析就是根據(jù)觀測信號X,按照一定準則尋找矩陣W,使得Y=WTX,Y=[y1…yn]T是源信號,W稱為混解矩陣。
快速定點獨立分量分析(Fast Independent Component Analysis,F(xiàn)astICA)由芬蘭赫爾辛基大學Hyvarinen等人提出[10],是獨立分量分析中的一種迭代尋優(yōu)算法。FastICA算法穩(wěn)健、具有較快的收斂速度[1]、,采用快速定點算法,以負熵最大來衡量信號的非高斯性[11],牛頓法作為其迭代方向,
其中:X是中心化、白化后的觀測信號,解得的wk+1是混解矩陣W的其中一列。
上述FastICA算法是基于牛頓迭代法原理求得混解矩陣W,牛頓法是二次收斂的,而且速度很快。但是該算法存在一些缺點:①每步都要計算Hessian矩陣?2f(x),這將導致計算困難、計算難度大大增加。②當函數(shù) f(x)的Hessian矩陣奇異時,迭代方向不存在,使得算法不一定收斂。③在目標函數(shù)的非凸區(qū)域中,牛頓方向有可能不是函數(shù)的下降方向,這時算法會不穩(wěn)定[12]
2.1構造目標函數(shù)
負熵是衡量信號非高斯性的方法之一,而非高斯性是獨立分量分析的一類主要判據(jù)。當負熵到達最大值時,表明各獨立分量完成了分離[13]。本文提出采用混沌MBFGS法代替?zhèn)鹘y(tǒng)的牛頓法,對目標函數(shù)進行優(yōu)化,提高算法的穩(wěn)定性和性能。負熵通常用式(3)來逼近
其中ygauss是與y具有相同均值和方差的高斯隨機變量,G(·)是任意非線性二次函數(shù),本文中G(·)為
負熵最大準則就是要‖W ‖2=1的條件下在最大化目標函數(shù)(5)
f(W) 的最大值可以轉化為求式(6)的最大值
由于我們在每次迭代計算后都對W歸一化,即‖ ‖W=1,所以我們將目標函數(shù)簡化為式(7)
通過最大化式(7),就可以提取到各個獨立分量。
2.2混沌MBFGS法
MBFGS是一種近似的牛頓法,具有超線性收斂速度和較好的穩(wěn)定性,但是容易陷入局部最優(yōu)。另外,混沌優(yōu)化算法基于遍歷性、內(nèi)在隨機性等特點[14],遵循混沌搜索規(guī)律能使目標函數(shù)收斂于全局最優(yōu)。本文將這兩種算法結合起來,從而使新的算法兼顧了混沌搜索的遍歷性和MBFGS算法穩(wěn)定、收斂速度快的特點,可以很好地解決單一算法的局限性。
本文采用負熵的近似作為目標函數(shù)實現(xiàn)獨立分量的提取。用MBFGS算法對目標函數(shù)進行最大化,求取混解矩陣,得到新的迭代公式:
sk=wk+1-wk,yk=gk+1-gk,gk=?f(wk),文中步長αk由Armijo型線性搜索確定。
我們用上述MBFGS法解得最優(yōu)解wM作為混沌變量的初始值,用式(9)將混沌變量y與待優(yōu)變量w對應起來
wi=a+(b-a)yii=1,2,…n(9)
其中a、b分別是變量w的最小值和最大值,然后用Logistic映射式(10)
產(chǎn)生混沌變量[15]進行混沌搜索,得到搜索后的最優(yōu)解wC,最后比較兩個最優(yōu)解對應的目標函數(shù)值,從而得到全局最優(yōu)解。
利用混沌MBFGS算法求解目標函數(shù)最大值,得到混解矩陣W的具體步驟為:
①給定混沌優(yōu)化算法的最大迭代次數(shù)N,獨立分量個數(shù)為n,并令迭代次數(shù)k=1;
②初始化向量w0,且滿足
③w0作為初始值進行MBFGS算法迭代,得到收斂后的最優(yōu)點,計算目標函數(shù)值 fM()wk;
⑥對wk正交化
⑦對wk單位化:;
⑧令k=k+1,若k<n,則轉至2;
2.3基于混沌MBFGS提取胎兒心電信號
本文針對FastICA算法存在的缺點,提出混沌MBFGS的改進算法。為了驗證混沌MBFGS算法提取獨立分量的可行性,我們首先用該算法直接分離合成信號,并與FastICA算法的實驗結果進行比對,同時分析算法的性能。
將混沌MBFGS算法應用于臨床胎兒心電信號的提取時,由于臨床信號在采集過程中會受到嚴重的噪聲干擾,我們采用小波變換對臨床信號進行預處理。小波變換能顯著增強信號的非高斯性,從而提高算法的分離性能[16],所以本文將混沌MBFGS算法轉換到小波域中,實現(xiàn)胎兒心電信號的提取。其改進算法框如圖1所示。①用db2小波對信號進行6層分解,然后將第6層的逼近系數(shù)置零從而去除基線漂移,對第1、2層細節(jié)系數(shù)用硬閾值去除其他噪聲;②將小波系數(shù)進行中心化、白化處理,以降低算法的復雜度;③在小波域中結合混沌MBFGS算法進行獨立分量提?。虎軐μ崛〉母鱾€獨立分量進行離散小波逆變換,最終得到胎兒心電信號。
圖1 總體算法框圖
對于合成信號,性能指數(shù)PI和輸出修正信噪比SNR可以衡量算法性能。一般常用混解矩陣W與混合矩陣A的差異程度來表示算法的有效性,并將其定義為性能指數(shù)PI[17]:
式(11)中,n是獨立分量個數(shù);cij是全局矩陣C的第i行、第 j列元素,其中C=WqA,q是白化矩陣。max||cik是全局矩陣C的第i行絕對值最大的數(shù),max||ckj是C的第 j列絕對值最大的數(shù)。PI值越小表示信號的分離效果越好,算法的性能越好。
輸出修正信噪比SNR定義為[18]:
SNR的值越大,說明分離的信號效果越好。式(12)中的si是源信號,yi是分離信號,
對于臨床信號,我們采用可視化結果和量化指標來衡量算法性能??梢暬Y果就是通過視覺觀察胎兒心電信號波形是否清晰、是否含有母體心電成分和其他噪聲。尤其要觀察在孕婦腹部信號中母體心電和胎兒心電的QRS波群有重合的部分。量化指標為峰度Kurt,它是信號非高斯性的衡量指標,峰度值越大分離信號的獨立性越強、算法的性能越好,所以可用峰度值來判斷算法對母體信號和胎兒信號的分離程度[19]。信號x(t)的峰度定義為
4.1合成信號實驗
本文利用McSharry[20]提供的心電信號模型生成心率為70的母體心電信號s1和120的胎兒心電信號s2,可得合成腹部心電信號X=A×S。由于考慮到實際采集到的孕婦腹部心電信號中,孕婦心電信號的幅度一般是胎兒心電信號的5到10倍[21],本文使用的合成信號如圖2所示,其樣本長度為1 500。
本文設定待分離獨立分量個數(shù)n=2,混沌搜索最大迭代次數(shù)N=500,并用本文提出的算法對信號X進行分離,得到的結果如圖3所示,其中a為合成腹部心電信號x1、b為提取的胎兒心電信號、c為提取的母體心電信號。從圖3可以看到,在母體腹部心電信號僅含有微弱胎兒心電成分的情況下,本文算法依然能準確分離信號、提取出清晰的胎兒心電。從合成實驗結果可知,本文算法對于臨床信號的分離具有可行性。
圖3 分離信號
為了再次驗證本算法的性能,我們用心電信號模型產(chǎn)生不同長度的母體心電和胎兒心電,分別取長度為1 000,1 500,…,4 500,5 000的九組數(shù)據(jù)。用本文算法和FastICA進行胎兒心電提取模擬實驗,并且計算輸出信噪比SNR和算法性能指數(shù)PI。對于不同樣本長度的胎兒心電提取,兩個算法的SNR比較如圖4所示,PI比較如圖5所示。從圖4、圖5可以看出,本文算法的SNR均大于FastICA而PI均小于FastICA,說明本文算法性能優(yōu)于FastICA。當樣本長度為3 500時,兩個算法的SNR和PI最接近。綜合分析量化指標SNR和PI可以得出:當樣本長度為5 000時,本文算法的性能最好。
圖4 信噪比SNR
圖5 性能指數(shù)PI
4.2臨床信號實驗
本文使用的臨床實驗信號來自Database for the Identification of Systems(DaISy)數(shù)據(jù)庫。DaISy數(shù)據(jù)庫含有8個母體體表心電信號,采樣時間t=10 s,采樣頻率 fs=250 Hz[22]。如圖6所示(a)~(e)是母體部心電信號,(f)~(h)是母體胸部心電信號。5個母體腹部心電信號中,(a)中所含的胎兒心電成分最明顯,如7(a)所示,可見腹部信號是母體心電和胎兒心電的混合。(d)中噪聲多、采集效果差,幾乎不含胎兒心電;(e)中的胎兒心電成分相對微弱。
本文設定待分離獨立分量個數(shù)n=8,混沌搜索最大迭代次數(shù)N=1 000,并用本文算法對上述8導聯(lián)信號進行胎兒心電信號提取,結果如圖7(b)所示;用FastICA算法提取胎兒心電信號,結果如圖7(c)所示。兩個算法都實現(xiàn)了胎兒心電的提取。將圖6中的第一通道腹部信號a與兩個算法提取的胎兒心電進行對比,如圖7所示,可以發(fā)現(xiàn)本文算法提取的信號更加清晰、含噪聲更少。為了進一步說明本文算法的優(yōu)點,分別從圖7(a)、圖7(b)、圖7(c)中截取一段信號并放大,如圖8所示。由圖8可知,本文算法的效果非常好,得到的胎兒心電波形整齊、清晰,無論QRS波群有無重合都能有效的抑制母體心電和其他噪聲。而觀察FastICA算法得到的結果發(fā)現(xiàn),提取的胎兒心電中母體心電成分(橢圓標注)均沒有得到很好的抑制。
圖6 8導聯(lián)母體體表信號
圖7 各種算法提取的胎兒心電圖
圖8 各種算法提取的胎兒心電局部放大圖
為了全面驗證本算法性能,下面我們將圖6中的5個腹部信號和3個胸部信號組合,進行分組實驗。由于第一通道含有明顯的胎兒心電成分,我們將信號a放入每個實驗組。第1組實驗信號為a、b、c,第2組為a、b、c、d,第3組為a、b、c、d、f,第4組為a、b、c、d、e、f,第五組為全部信號。用本文算法提取的胎兒心電結果如圖9所示,然后我們分別計算本文算法和FastICA算法提取的胎兒心電峰度值來對比兩個算法的分離程度,計算結果如表1所示。從實驗結果可以看出本文算法具有較強的穩(wěn)定性,能提取出清晰、相對穩(wěn)定峰度值的胎兒心電,輸入信號個數(shù)對算法影響較小。而FastICA算法提取的胎兒心電峰度值隨輸入信號的增加而增加,可見FastICA算法性能依賴于輸入信號個數(shù)。從以上實驗結果可以得出:本文算法的性能明顯優(yōu)于FastICA。
圖9 運用本文算法得到各組的胎兒心電
表1
為了對比第一通道信號a(即采集質(zhì)量高的腹部心電信號)在胎兒心電提取中的作用,接著我們對圖6中的8導聯(lián)體表信號進行第二次分組實驗,設定實驗組均不含信號a。第1組實驗信號為b、c、 d、e、f、g、h,第2組為c、d、e、f、g、h,第3組為d、e、f、g、h,第4組為e、f、g、h。分別用本文算法對各組進行胎兒心電提取實驗,結果如圖10所示。
圖10 運用中文算法得到各組的胎兒心電
由圖10可知,由于圖6中的母體腹部信號b、c所含的胎兒心電成分比d、e明顯,所以第一組和第二組大致能提取出胎兒心電,但是噪聲較多而且沒有完全抑制母體心電,而第三組和第四組沒能成功提取胎兒心電。通過比較圖9(含有第一通道信號a)和圖10(不含第一通道信號a)可以得出:具有明顯胎兒心電成分的母體腹部信號對于胎兒心電提取有著極其重要的作用。想要提取整齊、清晰的胎兒心電,對提取母體腹部信號也有一定技術要求,如將導聯(lián)盡量靠近胎兒心臟位置、在安靜的狀態(tài)下進行腹部信號獲取等等。
為了克服FastICA算法存在的諸多問題,本文介紹了更簡便、更穩(wěn)定的FastICA改進算法。該算法主要由小波變換對母體體表信號預處理和混沌MBFGS算法提取胎兒心電這兩部分組成。通過對合成信號和臨床信號的分析,可以得出:①本算法對于提取胎兒心電具有可行性,②本算法能夠提取出整齊清晰并且不包含母體心電的胎兒心電信號,③本算法在性能上優(yōu)與FastICA算法。本文是基于多導聯(lián)情況下的胎兒心電提取,下一步我們將研究單導聯(lián)情況下的胎兒心電提取。
[1] 馬明,吳江標,邱麗娟,等.聯(lián)合時序結構和負熵的FECG盲提取算法[J].傳感技術學報,2013,26(5):600-605.
[2] Ivanushkina N,Ivanko K,Lysenko E,et al.Fetal Electrocardiogram Extraction from Maternal Abdominal Signals[C]//Kyiv2014: 334-338.
[3] Sato M,Kimura Y,Chida S,et al.A Novel Extraction Method of Fetal Electrocardiogram From the Composite Abdominal Signal [J].Biomedical Engineering,IEEE Transactions on,2007,54 (1):49-58.
[4] Oosterom A van,Alsters J.Removing the Maternal Component in the Fetal ECG Using Singular Value Decomposition[C]//Amsterdam,1984:171-176
[5] Widrow B,Jr Glover J R,McCool J M,et al.Adaptive Noise Cancelling:Principles and Applications[C]//1975:1692-1716.
[6] Jafari M G,Chambers J A.Fetal Electrocardiogram Extraction by Sequential Source Separation in the Wavelet Domain[J].Biomedical Engineering,IEEE Transactions on,2005,52(3):390-400.
[7] Awal M A,Mostafa S S,Ahmad M,et al.An Adaptive Level Dependent Wavelet Thresholding for ECG Denoising[J].Biocybernetics and Biomedical Engineering,2014,34(4):238-249.
[8] Zarzoso V,Nandi A K.Noninvasive Fetal Electrocardiogram Extraction:Blind Separation Versus Adaptive Noise Cancellation [J].Biomedical Engineering,IEEE Transactions on,2001,48 (1):12-18.
[9] Immanuel J J R,Prabhu V,Christopheraj V J,et al.Separation Of Maternal And Fetal ECG Signals From The Mixed Source Signal Using FASTICA[J].Procedia Engineering,2012,30:356-363.
[10]Hyvarinen A,Oja E.Independent Component Analysis:Algorithms and Applications.[J].Neural Networks:the Official Journal of the International Neural Network Society,2000,13(4-5): 411-430.
[11]Shehada D,Khandoker A H.Non-Invasive Extraction of Fetal Electrocardiogram Using Fast Independent Component Analysis Technique[C]//Doha.2014:349-352.
[12]金紅艷.求解大規(guī)模優(yōu)化問題的有限記憶擬牛頓法[D].長沙:湖南大學,2013.
[13]席旭剛,左靜,張啟忠,等.多通道表面肌電信號降噪與去混迭研究[J].傳感技術學報,2014,27(3):293-298.
[14]Gao S,Vairappan C,Wang Y,et al.Gravitational Search Algorithm Combined with Chaos for Unconstrained Numerical Optimization [J].Applied Mathematics and Computation,2014,231:48-62.
[15]Xiaohui Y,Anjun S,Yanbin Y,et al.A Chaotic Hybrid Cultural Algorithm for Constrained Optimization[C]//Hubei2008:307-310.
[16]Jafari M G,Chambers J A.Fetal Electrocardiogram Extraction by Sequential Source Separation in the Wavelet Domain[J].Biomedical Engineering,IEEE Transactions on,2005,52(3):390-400.
[17]張智林.獨立分量分析在生物醫(yī)學信號處理中的應用[D].成都:電子科技大學,2005.
[18]徐明彪,朱維彰.關于信號盲分離分離效果評判指標的分析[J].杭州電子工業(yè)學院學報,2002(3):63-66.
[19]姚文坡.基于健壯獨立分量分析及其改進方法的胎兒心電信號提取的研究[D].南京:南京郵電大學,2013.
[20]McSharry P E,Clifford G D,Tarassenko L,et al.A Dynamical Model for Generating Synthetic Electrocardiogram Signals[J]. Biomedical Engineering,IEEE Transactions on,2003,50(3): 289-294.
[21]Yunxia L,Hui Z.A New Method for FECG Extraction[C]//Chengdu2013:124-126.
[22]L.Lathauwer DaISy:Database for the Identification of Systems [EB/OL].http://www.esat.kuleuven.ac.be./sista/daisy.
趙治棟(1976-),男,教授,2004年畢業(yè)于浙江大學生物醫(yī)學工程系,獲博士學位。2004年9月起在杭州電子科技大學工作。研究方向為生物醫(yī)學信號處理、醫(yī)療電子和生物識別技術等,zhaozd@hdu.edu.cn。
Research of Fetal ECG Extraction Based on Modified FastICA Algorithm*
ZHAO Zhidong1*,XU Wen2,ZHANG Xiaohong1,YE Haihui3
(1.College of Electronics and Information,Hangzhou Dianzi University,Hangzhou 310018,China;2.College of Communication,Hangzhou Dianzi University,Hangzhou 310018,China;3.Women's Hospital School of Medicine Zhejiang University,Hangzhou 310018,China)
Due to fast independent component analysis(FastICA)method is easy to strap into local optimum values,the extracted fetal electrocardiogram(ECG)is often mixed with noise especially maternal ECG.To solve those problem,this paper presents a novel method for extracting the fetal ECG signal,which combines modified BFGS(MBFGS)method and chaos optimization algorithm instead of Newton iteration method.The experiments are conducted by the analog signals and clinical signals respectively.The results indicate that the proposed method in this paper could well extract fetal ECG and there is almost no maternal ECG in fetal ECG,also our method is superior to FastICA.
biomedical signal processing;fetal electrocardiogram(FECG);fastICA;MBFGS;chaos optimization
R318
A
1004-1699(2015)09-1275-07
項目來源:浙江省自然科學基金項目(LY14F010021);浙江省公益性技術研究工業(yè)項目(2015C31085);浙江省新苗人才計劃項目(2014R407056)
2015-04-14修改日期:2015-07-01