李 鑫,熊 鵬,張 兵,劉秀玲,杜海曼
(河北大學(xué) 電子信息工程學(xué)院 河北省數(shù)字醫(yī)療工程重點(diǎn)實(shí)驗(yàn)室,河北 保定 071002)
心電信號(hào)采集于生物表面,幅值微弱且易受周圍復(fù)雜噪聲的干擾從而丟失有用信息,心電信號(hào)所含噪聲也會(huì)影響心血管疾病的診斷。如何在去除ECG噪聲的同時(shí)仍保留ECG的大部分有用信息成為國(guó)內(nèi)外學(xué)者的研究重點(diǎn)[1]。傳統(tǒng)的心電信號(hào)降噪算法有經(jīng)驗(yàn)?zāi)B(tài)法(empirical decomposition,EMD)[2,3]、小波變換[4-6]、S變換[7]、盲源分離法(blind source separation,BSS)[8,9]等。采用經(jīng)驗(yàn)?zāi)B(tài)法對(duì)ECG進(jìn)行去噪處理會(huì)誤去除與噪聲頻譜有重疊的微弱P波和T波[1];小波變換進(jìn)行ECG降噪受限于閾值的設(shè)定,閾值需經(jīng)多次實(shí)驗(yàn)確定,以致于大大降低了心電信號(hào)去噪的實(shí)時(shí)性;盲源分離法雖能夠分離噪聲和心電信號(hào),但卻對(duì)心電信號(hào)的細(xì)微變化十分敏感;S變換采用設(shè)定需要頻率的方法除去心電信號(hào)中的噪聲分量,但該方法復(fù)雜性高難以保留心電信號(hào)的邊緣特性;劉明等[10]將指導(dǎo)濾波(guided filter,GF)應(yīng)用到ECG降噪上,但是無(wú)法很好地去除變異性心拍中所含噪聲。深度學(xué)習(xí)算法在讀取ECG深層特征的同時(shí)保留了較為完備的信號(hào)信息。張杰爍等[11]等采用遞歸最小二乘法訓(xùn)練回聲狀態(tài)網(wǎng)絡(luò)(echo state network,ESN)的參數(shù)進(jìn)行心電信號(hào)的去噪,保留了心電信號(hào)的低頻信息,但對(duì)于肌電干擾的去除效果不理想。熊鵬等[12]采用降噪自動(dòng)編碼器(denoising auto-encode,DAE)實(shí)現(xiàn)心電信號(hào)的去噪,但網(wǎng)絡(luò)訓(xùn)練的過(guò)程依賴于干凈心電信號(hào)的獲取。因此本文提出一種基于無(wú)損約束降噪自動(dòng)編碼器(lossless-constraint denoising based auto-encoder,LDAE)的降噪算法,算法中兩個(gè)無(wú)損約束項(xiàng)的存在在保證噪聲去除的同時(shí)還保留信號(hào)的大量有用信息。
本文利用無(wú)損約束降噪自動(dòng)編碼器構(gòu)建深度神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)含噪心電信號(hào)的降噪,主要通過(guò)對(duì)設(shè)置合適的網(wǎng)絡(luò)結(jié)構(gòu)以及利用訓(xùn)練集數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)參數(shù)的訓(xùn)練。保存好訓(xùn)練網(wǎng)絡(luò),將測(cè)試集數(shù)據(jù)輸入即得到去噪后的心電信號(hào)。圖1為基于無(wú)損約束自動(dòng)降噪編碼器的降噪模型。
圖1 基于無(wú)損約束自動(dòng)降噪編碼器的降噪模型
無(wú)損約束降噪自動(dòng)編碼器是在降噪自動(dòng)編碼器的原始基礎(chǔ)上進(jìn)行改進(jìn)。降噪自動(dòng)編碼器的傳統(tǒng)算法中有一項(xiàng)輸入為原始干凈的心電信號(hào),但實(shí)際中采集到的ECG總含有噪聲,致使無(wú)法獲取絕對(duì)干凈的ECG。在這種情況下,若選擇降噪自動(dòng)編碼器來(lái)重建數(shù)據(jù),那么它將不可避免地將信號(hào)所含噪聲作為特征來(lái)學(xué)習(xí)[13]。無(wú)損約束降噪自動(dòng)編碼器中的約束項(xiàng)能夠很好地解決這一問(wèn)題。圖2為無(wú)損約束降噪自動(dòng)編碼器的結(jié)構(gòu)。
圖2 無(wú)損約束降噪自動(dòng)編碼器結(jié)構(gòu)
(1)
由于在誤差函數(shù)的構(gòu)建中引入了去噪后的干凈信號(hào)Xc,整個(gè)網(wǎng)絡(luò)需要優(yōu)化的參數(shù)由W和b變?yōu)閃,b和Xc。
(1)初始化Xc賦值為Xn,此時(shí)LDAE為DAE;然后對(duì)W和b初始化,采用梯度下降算法優(yōu)化參數(shù)W和參數(shù)b,兩個(gè)參數(shù)迭代表達(dá)式如式(2)和式(3)所示
W(t+1)=W(t)+ΔW(t)
(2)
b(t+1)=b(t)+Δb(t)
(3)
(2)將優(yōu)化完成的W和b視為常量,再對(duì)Xc進(jìn)行優(yōu)化,得到LLDAE的表達(dá)式如式(4)所示
(4)
(3)對(duì)Xc求偏導(dǎo)來(lái)最小化重構(gòu)誤差函數(shù)LLDAE,即LLDAE在Xc的偏導(dǎo)數(shù)為0,如式(5)所示
(5)
式(5)經(jīng)過(guò)簡(jiǎn)化后得到Xc的表達(dá)式如式(6)所示
(6)
(4)將Xc當(dāng)作常量,對(duì)參數(shù)W和b進(jìn)行優(yōu)化計(jì)算。
(5)更新Xc,并用梯度下降算法對(duì)W和b進(jìn)行優(yōu)化,反復(fù)采用此方法直到LLDAE收斂或者達(dá)到最大迭代次數(shù)。
本文數(shù)據(jù)均選自MIT-BIH心律失常數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)包含48個(gè)長(zhǎng)度為30 min的心電信號(hào)記錄。實(shí)驗(yàn)中噪聲數(shù)據(jù)來(lái)自MIT-BIH中的噪聲壓力數(shù)據(jù)庫(kù)。且為驗(yàn)證降噪效果,將基線漂移、電極干擾和肌電干擾3類噪聲按一定的信噪比疊加到心電信號(hào)中[13]。
本文選擇信噪比(signal-to-noise ratio,SNR)和均方根誤差(root mean square error,RMSE)來(lái)評(píng)價(jià)降噪算法的性能[1]。若Xn表示輸入的心電信號(hào),Xc為經(jīng)過(guò)去噪后的ECG,則信噪比定義式如式(7)所示
(7)
SNR代表的是干凈心電信號(hào)與噪聲間的比值,單位為分貝(dB),是評(píng)估信號(hào)質(zhì)量的一項(xiàng)常用指標(biāo),其數(shù)值越高意味著對(duì)于信號(hào)噪聲濾除的效果越好。另一項(xiàng)指標(biāo)為均方根誤差,其定義式如式(8)所示
(8)
RMSE表征這去噪后信號(hào)和原始真實(shí)信號(hào)的差值,均方根誤差越低說(shuō)明對(duì)于信號(hào)的濾波性能越好。
選擇合適長(zhǎng)度的心電數(shù)據(jù)作為網(wǎng)絡(luò)輸入,例如對(duì)于采樣點(diǎn)Si來(lái)講,網(wǎng)絡(luò)輸入樣本的大小為采樣點(diǎn)的鄰域v={S|Si-δ
圖3為去除213號(hào)數(shù)據(jù)5 dB肌電干擾的結(jié)果。圖3(a)為 213號(hào)心電信號(hào)數(shù)據(jù),圖3(b)為加入5 dB肌電干擾后的213號(hào)心電數(shù)據(jù),原始信號(hào)的P波和T波的形態(tài)被淹沒(méi)。圖3(c)中實(shí)線為原始干凈心電信號(hào),虛線為降噪算法得到的去噪后數(shù)據(jù)。由去噪結(jié)果可知,去噪后的信號(hào)與213號(hào)干凈心電信號(hào)形態(tài)很好地?cái)M合。
圖3 去除肌電干擾結(jié)果
圖4 去除基線漂移結(jié)果
圖4為去除122號(hào)數(shù)據(jù)5 dB基線漂移的結(jié)果。圖4(a) 為122號(hào)心電信號(hào)數(shù)據(jù),圖4(b)為加入5 dB基線漂移后的122號(hào)心電數(shù)據(jù),信號(hào)的整體走勢(shì)已經(jīng)發(fā)生改變。圖4(c)中實(shí)線為原始干凈心電信號(hào),虛線為降噪算法得到的去噪后數(shù)據(jù)。由去噪結(jié)果可知,去噪后的信號(hào)可與122號(hào)干凈心電信號(hào)形態(tài)很好地?cái)M合。
圖5為去除223號(hào)數(shù)據(jù)5 dB電極干擾的結(jié)果。圖5(a) 為223號(hào)心電信號(hào)數(shù)據(jù),圖5(b)為加入5 dB電極干擾后的223號(hào)心電數(shù)據(jù),電極干擾在改變信號(hào)的整體形態(tài)的同時(shí)還出現(xiàn)類似ECG中微弱的P波和T波的波形。圖5(c)中實(shí)線為原始干凈心電信號(hào),虛線為降噪算法得到的去噪后數(shù)據(jù)。由降噪結(jié)果可知,得到的去噪信號(hào)與223號(hào)干凈心電信號(hào)形態(tài)基本一致。
圖5 去除電極干擾結(jié)果
通過(guò)本文構(gòu)建的降噪網(wǎng)絡(luò)分別對(duì)加入5 dB的3種噪聲進(jìn)行濾除,3種噪聲的加入使得心電信號(hào)原始形態(tài)出現(xiàn)不同情況的變化,從降噪算法的結(jié)果可以看出本文方法能夠在濾除掉噪聲的同時(shí)最大程度地保留了信號(hào)的原本形態(tài)特征,即信號(hào)的有用信息。
為了與其它的去噪算法進(jìn)行對(duì)比,將本文算法與文獻(xiàn)[14]中的自適應(yīng)小波(WT-Adaptive),ESN,GF以及DAE進(jìn)行實(shí)驗(yàn)結(jié)果的比對(duì)。與文獻(xiàn)[15]采用改進(jìn)集合經(jīng)驗(yàn)?zāi)B(tài)分解(ensemble empirical decomposition,EEMD)濾除基線漂移以及文獻(xiàn)[7]采用S變換濾除肌電干擾進(jìn)行實(shí)驗(yàn)結(jié)果的比較。
表1為5種降噪算法對(duì)于1.25 dB和5 dB肌電干擾的濾除結(jié)果,圖6為本文所提的降噪算法濾除1.25 dB肌電干擾的SNR柱狀圖和RMSE折線圖。通過(guò)圖形實(shí)驗(yàn)結(jié)果的對(duì)比可看出本文算法在濾除1.25 dB的肌電干擾所得的信噪比明顯高于其余4種降噪算法,且RMSE均低于自適應(yīng)小波,ESN,GF和DAE,其中對(duì)于疊加1.25 dB的肌電干擾后濾除得到的信噪比和均方根誤差達(dá)到為27.91 dB和0.02。
表2為4種降噪算法對(duì)于1.25 dB和5 dB基線漂移的濾除結(jié)果,圖7為本文所提的降噪算法濾除1.25 dB基線漂移的信噪比柱狀圖和均方根誤差折線圖。對(duì)比其它3種降噪算法,本文算法對(duì)105號(hào)數(shù)據(jù)基線漂移的濾除效果不如自適應(yīng)小波變換,是網(wǎng)絡(luò)訓(xùn)練過(guò)程中輸入樣本數(shù)據(jù)的截取所造成的。基線漂移對(duì)于心電信號(hào)的影響明顯表現(xiàn)在長(zhǎng)數(shù)據(jù)中,截取信號(hào)樣本后會(huì)損失基線漂移的相關(guān)信息,使得網(wǎng)絡(luò)不能很好地學(xué)習(xí)到其特征,導(dǎo)致了降噪效果的降低。
表1 濾除肌電干擾結(jié)果
圖6 濾除1.25 dB肌電干擾實(shí)驗(yàn)結(jié)果
表2 濾除基線漂移結(jié)果
圖7 濾除1.25 dB基線漂移實(shí)驗(yàn)結(jié)果
表3為5種降噪算法對(duì)于1.25 dB和5 dB電極干擾的濾除結(jié)果。相對(duì)應(yīng)的圖8為本文所提的降噪算法濾除 1.25 dB 電極干擾的信噪比柱狀圖和均方根誤差折線圖。相比于其它4種降噪算法,本文降噪算法濾除1.25 dB電極干擾所得的信噪比和均方根誤差具有明顯優(yōu)勢(shì)。在對(duì)于105號(hào)數(shù)據(jù)的電極干擾濾除中,本文算法所得信噪比和均方根誤差能夠達(dá)到26.87 dB和0.023。
表4為改進(jìn)EEMD算法和本文算法對(duì)于103號(hào),219號(hào),223號(hào)3個(gè)數(shù)據(jù)進(jìn)行基線漂移得到的SNR和RMSE。其中改進(jìn)EEMD算法對(duì)于3組數(shù)據(jù)疊加的基線漂移均在 2 dB 以上。而對(duì)比的本文算法疊加到3組數(shù)據(jù)上的基線漂移為1.25 dB實(shí)驗(yàn)結(jié)果。通過(guò)實(shí)驗(yàn)結(jié)果的比較,可以看出雖然LDAE算法中加入的基線漂移更強(qiáng),但去噪結(jié)果卻明顯高于改進(jìn)EEMD算法對(duì)于基線漂移的濾除效果。由此更加驗(yàn)證了本文算法的優(yōu)越性。
表5為S變換與LDAE對(duì)于103后,213號(hào),230號(hào)數(shù)據(jù)進(jìn)行5 dB肌電干擾濾除的信噪比。通過(guò)結(jié)果可知,對(duì)于疊加同等強(qiáng)度的肌電干擾,LDAE所得信噪比明顯優(yōu)于S變換所得信噪比。其中本文算法對(duì)于疊加5 dB肌電干擾后的230號(hào)數(shù)據(jù)濾除所得信噪比達(dá)到25.92,遠(yuǎn)遠(yuǎn)高于S變換降噪后所得信噪比。
從表1~表5的噪聲濾除結(jié)果可知,本文所提出的基于無(wú)損約束降噪自動(dòng)編碼器降噪算法能夠有效地去除肌電干擾,基線漂移和電極干擾3種常見噪聲。本文算法通過(guò)提取心電信號(hào)的深層特征,學(xué)習(xí)到信號(hào)微弱的P波、T波等波形特征從而保留心電信號(hào)大部分有用信息和去除信號(hào)中所含噪聲。由于網(wǎng)絡(luò)訓(xùn)練過(guò)程樣本數(shù)據(jù)截取的問(wèn)題以及噪聲本身的特點(diǎn),算法對(duì)于3種噪聲中的肌電干擾和電極干擾濾除效果要優(yōu)于對(duì)基線漂移的濾除。由實(shí)驗(yàn)結(jié)果分析可知,本文算法相比于其它降噪算法得到的信噪比更高,均方根誤差更低,能夠達(dá)到更好的去噪效果。
表3 濾除電極干擾結(jié)果
圖8 濾除1.25 dB電極干擾實(shí)驗(yàn)結(jié)果
表4 改進(jìn)EEMD與LDAE濾除基線漂移結(jié)果
表5 S變換與LDAE對(duì)濾除5 dB肌電干擾結(jié)果
針對(duì)實(shí)際應(yīng)用中心電信號(hào)波形微弱易被淹沒(méi)及完全干凈的心電信號(hào)難以獲得的特點(diǎn),本文提出了一種基于無(wú)損降噪自動(dòng)編碼器的降噪算法,利用LDAE構(gòu)建心電信號(hào)的深層去噪網(wǎng)絡(luò),通過(guò)提取到ECG的深層特征,在濾除ECG中所含噪聲的同時(shí)還保留了大部分的有用信息。實(shí)驗(yàn)結(jié)果表明,本文所提心電信號(hào)降噪算法相比于已有的降噪算法在濾除3種常見的肌電干擾基線漂移以及電極干擾3種常見噪聲所得的SNR有明顯提高并且RMSE有明顯降低,達(dá)到了很好的去噪效果。