張文燕,劉 明,李 鑫
(河北大學(xué) 電子信息工程學(xué)院,河北 保定 071000)
ESN作為一種新型的遞歸神經(jīng)網(wǎng)絡(luò),在訓(xùn)練過程中只需要求解輸出權(quán)值,因此訓(xùn)練速度快,不易陷入局部最優(yōu)解。且ESN具有的非線性傳遞函數(shù)特征恰好可以將時序信號中的波形特征提取出來,尤其是心電信號中QRST復(fù)合波位置的提取。基于遺傳算法優(yōu)化ESN網(wǎng)絡(luò)的特征提取算法,將遠離心臟電極的F波不明顯的V5、V6導(dǎo)聯(lián),作為ESN網(wǎng)絡(luò)的參考信號,訓(xùn)練ESN網(wǎng)絡(luò),獲得完整QRST波形,在房顫明顯的V1導(dǎo)聯(lián)信號上消除得到F波。
儲備池是ESN的核心部分,因為它的稀疏連接特性以及它只需要更新輸出權(quán)值矩陣Wout而其它權(quán)值矩陣(輸入權(quán)值矩陣Win以及內(nèi)部權(quán)值矩陣W)生成就不變的特性,所以ESN特別適用于順序處理數(shù)據(jù),實現(xiàn)房顫實時短數(shù)據(jù)處理。而在房顫提取方面的主要思想是通過參考信號驅(qū)動ESN并在整個訓(xùn)練周期內(nèi)將其非線性變換收集到儲備池狀態(tài)響應(yīng)信號中對ESN進行訓(xùn)練,生成不斷變化的復(fù)雜動態(tài)空間,然后通過狀態(tài)響應(yīng)信號的線性組合去逼近目標向量?;贓SN的房顫F波提取流程如圖1所示。
圖1 基于ESN的F波提取
ESN的輸入信號X(n)的表達式如下
(1)
其中,x(n) 為當前時刻的含有少量房顫的心電信號;x′(n) 及x″(n) 分別是當前心電信號的一階導(dǎo)數(shù)信號和二階導(dǎo)數(shù)信號。
ESN輸出信號y(n)為構(gòu)建后的心室信號,定義如下
(2)
其中,激活函數(shù)g(·), 為了降低復(fù)雜度,適應(yīng)實時提取要求,選為恒等函數(shù);其中變量v(n)的表達式為
(3)
而r(n)是儲備池的狀態(tài)響應(yīng)向量,IS是輸入信號縮放因子。
(n)=e(n)=x1(n)-y(n)
(4)
式中:x1(n)為房顫明顯的V1導(dǎo)聯(lián),y(n)為心室信號。
因此,在訓(xùn)練中需要更新Wout和r(n),使濾波后的心室信號y(n)不含心房信號,房顫F波(n)能夠準確提取。
輸出權(quán)值矩陣Wout的更新采用結(jié)合最小二乘預(yù)白化過程的遞歸最小二乘算法。其中預(yù)白化的過程定義為
z(n)=ψ(n-1)v(n)
(5)
u(n)=ψ-1(n-1)z(n)
(6)
式中:ψ(n)為v(n)的相關(guān)系數(shù)矩陣的逆矩陣,而ψ(n)的更新如下所示
(7)
(8)
設(shè)定Wout(0)=0, 則輸出權(quán)重的更新為
(9)
而儲備池狀態(tài)的更新公式為
r(n)=(1-α)[f(Wr(n-1)+Winu(n))]+αr(n-1)
(10)
式中:輸入權(quán)值Win為4×N的矩陣;儲備池內(nèi)部權(quán)值W為N×N的矩陣;為了將輸入信號非線性地收集到儲備池,儲備池的激活函數(shù)f(·) 的選擇為非線性的tanh(·) 函數(shù);遺忘因子α和λ分別采用值為0.8和0.999,均為小于1的正數(shù)。
基于ESN的消除QRST復(fù)合波得到F波的重要步驟是選擇ESN儲備池初始參數(shù),決定了回聲狀態(tài)網(wǎng)絡(luò)的提取性能。儲備池規(guī)模參數(shù)N與網(wǎng)絡(luò)的復(fù)雜程度和精確度成正比,N越大QRST的構(gòu)建越精確,計算程度越復(fù)雜,甚至過大會產(chǎn)生過擬合的情況,所以本文采用固定參數(shù)100;儲備池矩陣的譜半徑(spectral radius,SR)由W最大絕對特征值定義,并與確保穩(wěn)定性的回波狀態(tài)屬性相關(guān),一般在 [0,1] 范圍內(nèi)取值;輸入縮放因子(input scaling,IS)作為一個尺度因子,將輸入信號驅(qū)動到激活函數(shù)的非線性區(qū)域,在[0,1]范圍內(nèi)取值;儲備池稀疏程度(sparse degree,SD)為儲備池所含連接的個數(shù),決定著網(wǎng)絡(luò)的豐富程度,可以降低儲備池的計算復(fù)雜度,取值范圍為[0.05,0.2]。傳統(tǒng)遺傳算法優(yōu)化ESN往往計算量大,迭代時間長,不能達到實時獲取的要求[10]。進而對遺傳算子在選擇機制,交叉概率以及變異概率方面進行改進,用于加快進化速度和擴大搜索范圍。
因為網(wǎng)絡(luò)參數(shù)的取值范圍比較小,所以采用實數(shù)編碼方式
pop=[SR,SD,IS1,IS2,IS3]
(11)
將目標函數(shù)標準均方誤差NMSE的倒數(shù)作為適應(yīng)度評價函數(shù),公式如下
(12)
其中,s(n)為心電信號中添加的原始F波,(n)為網(wǎng)絡(luò)估計得到的F波。
在親代選擇操作中,根據(jù)適應(yīng)值排序得到最優(yōu)、優(yōu)、良、中、差這5個等級的個體,除最優(yōu)的兩個個體直接遺傳至下一代外,另外4個等級按2∶1∶1∶0的比例進行交叉和變異操作得到新的個體遺傳至下一代。
設(shè)計自適應(yīng)交叉概率以及變異概率,可以有效加快個體的進化速度,同時兼顧擴大搜索范圍的要求,如下式所示
(13)
式中:p0和p分別為初始概率和得到的自適應(yīng)概率;fmax、fav和fmin分別為每一代個體的最大適應(yīng)度值、平均適應(yīng)度值和最小適應(yīng)度值;μ和n都為系數(shù)因子。參數(shù)ε的隨機生成保證了搜索范圍的要求,當ε
當平均適應(yīng)度值接近最大適應(yīng)度值時,自適應(yīng)的概率快速增大,需要交叉變異的概率范圍就會縮小,從而加快完成進化;反之則自適應(yīng)的概率變化較小,需要繼續(xù)交叉變異生成新的個體。圖2為本文自適應(yīng)遺傳算法的具體流程。
圖2 本文自適應(yīng)遺傳算法的具體流程
在正常心電信號上疊加已知F波得到仿真房顫信號,可以量化估計算法的可行性與準確性。第i導(dǎo)聯(lián)仿真F波的生成模型可以由以下公式取得
(14)
其中,諧波個數(shù)M-1,基頻w0=2πf0, 最大頻率偏差Δf,調(diào)制頻率w=2πff, 幅度bm(n)由下式給出
(15)
其中,a表示鋸齒幅度,Δa表示調(diào)制幅度,wa=2πfa表示幅度調(diào)制頻率。各參數(shù)設(shè)置見表1,向量A表示V1、V5和V6導(dǎo)聯(lián)的幅度峰值,A=[0.150,0.020,0.020]mV。
表1 本文中仿真房顫F波的參數(shù)設(shè)置
選取MIT-BIH中PTB心電數(shù)據(jù)庫中的10個健康對照組,每組120 s數(shù)據(jù),采樣頻率為1000 Hz,重采樣為 250 Hz 作為實驗數(shù)據(jù)。在存在QRST形態(tài)固有變化的正常心電數(shù)據(jù)上,去除P波[13]疊加仿真F波,生成仿真房顫信號用于仿真實驗的提取。如圖3所示,圖3(a)為去除P波之后的心室成分,圖3(b)為仿真F波,圖3(c)為仿真房顫信號。
圖3 仿真房顫信號
在應(yīng)用自適應(yīng)遺傳算法時,經(jīng)反復(fù)實驗,為了得到最優(yōu)結(jié)果設(shè)定變量個數(shù)為5,種群規(guī)模為100,而初始交叉概率與初始變異概率分別為0.6和0.01,其它參數(shù)設(shè)定為μc=0.3,μm=0.2,nc=nm=2, 終止代數(shù)為50[12]。得到284號數(shù)據(jù)的最優(yōu)參數(shù)為:SR=0.95,SD=8,IS1=0.989,IS2=0.780,IS3=0.685。
在研究心拍個數(shù)L對各個算法所提取的F波的準確度的影響時,在表2中可以看到GA-ESN算法隨著心拍個數(shù)L的變化最小,而其它兩種算法變化相對較大。ABS算法(圖4(b))、WABS算法(圖4(c))以及GA-ESN算法(圖4(d))在時域圖上的F波提取效果與原始仿真F波(圖4(a))的時域?qū)Ρ冉Y(jié)果如圖4所示。
表2 不同算法的標準均方誤差隨心拍個數(shù)L的變化
圖4 仿真F波及用3種算法所提取的F波
圖5表示對10個仿真信號分別在隨機初始化和遺傳算法調(diào)參的情況下,運行20次所得到的結(jié)果對比圖,用平均值±標準差來表示數(shù)據(jù)的離散程度。
圖5 遺傳算法優(yōu)化回聲狀態(tài)網(wǎng)絡(luò)對NMSE的影響
在真實房顫信號中提取F波時,因房顫信號中房顫F波與心室信號的頻率范圍不同,所以可以采用頻譜集中度(spectral concentration,SC)來衡量提取算法的有效性。房顫F波的提取性能越好,QRST消除性能越好,頻譜集中度SC則表現(xiàn)出越高的數(shù)值,定義請參見文獻[5]。
自MIT-BIH中的PTB數(shù)據(jù)庫中取5例房顫病人的 120 s 心電圖數(shù)據(jù)作為實驗數(shù)據(jù)。分別為153號、201號、254號、257號、286號。ABS算法、WABS算法與GA-ESN這3種算法所提取導(dǎo)聯(lián)中F波的中心頻率f0和頻譜集中度SC見表3。圖6(a)和圖6(b)分別為原始房顫心電信號和ESN重建的心室信號,而圖6(c)為本文算法所獲得的F波,圖6(d)為ABS所提取的F波(本文以153號數(shù)據(jù)為例)。
表3 不同算法所提取的F波的頻譜集中度(SC)
圖6 原始房顫信號所得心室信號及GA-ESN算法和 ABS算法所得F波
由表2可以看出,GA-ESN算法相對ABS算法、WABS算法,從所提取F波的標準均方根誤差NMSE可以看出,前者的受心拍個數(shù)的影響較小,而后兩者所受的影響較大。而L=10時NMSE較大的原因在于數(shù)據(jù)采集時引起的瞬變,所以對計算誤差有一定的影響。因此GA-ESN算法相比于傳統(tǒng)的QRST模板生成方法在處理短數(shù)據(jù)段方面有一定優(yōu)勢。圖4所示的時域?qū)嶒灲Y(jié)果更加直觀地反應(yīng)了GA-ESN算法相比與其它兩種算法的優(yōu)越性。圖5結(jié)果表示遺傳算法調(diào)參的情況下,不僅結(jié)果準確性有所提高,而且數(shù)據(jù)的離散程度不大,結(jié)果更穩(wěn)定。
反映F波的提取質(zhì)量的頻譜集中度(SC)作為真實房顫信號的提取指標取得了較好的效果。表3中的SC表明,GA-ESN相比于ABS和WABS所提取的頻譜集中度均有一定程度的提高,而在房顫F波振幅小(比較難提取)的257號數(shù)據(jù)上頻譜集中度同樣得到提高,提取效果更好。圖6 F波時域波形對比更加形象直觀地驗證了GA-ESN算法相比于ABS算法更加有效,進一步驗證了GA-ESN算法在真實房顫心電信號中提取F波的準確性。
本文提出一種基于遺傳回聲狀態(tài)網(wǎng)絡(luò)來提取房顫F波的方法,網(wǎng)絡(luò)參數(shù)由自適應(yīng)遺傳算法來調(diào)整,再利用不同導(dǎo)聯(lián)之間的生理差異性來消除QRST復(fù)合波,既保證了房顫F波的提取穩(wěn)定性,又提高了房顫F波的提取準確度。經(jīng)驗證,采用遺傳回聲狀態(tài)網(wǎng)絡(luò)來提取房顫F波相比于ABS算法和WABS算法,對仿真房顫信號提取出來的F波的標準均方根誤差均有不同程度的降低;對真實房顫信號F波的提取準確度也明顯提高。本算法在短時數(shù)據(jù)段上有效提高了房顫F波提取的準確性,為遠程便攜式心電監(jiān)護系統(tǒng)的研究提供了可靠基礎(chǔ)。