塵昌華,喬風娟,李 彬
(1.上海開放大學奉賢分校,上海 201499;2.齊魯工業(yè)大學(山東省科學院) 數學與統(tǒng)計學院,山東 濟南 250353)
據統(tǒng)計,心血管疾病的死亡率在所有疾病中居于首位,遠高于惡性腫瘤、呼吸系統(tǒng)疾病等。心電圖(Electrocardiogram,ECG)能夠反映人體的電信號活動情況,是醫(yī)生用來診斷心血管疾病的重要依據。由于ECG中包含各種噪聲,如基線漂移、肌電干擾和工頻干擾等,醫(yī)生在診斷時往往需要先忽略干擾較多的波形再進行判斷。
近年來,計算機輔助ECG診斷技術有了較大發(fā)展?,F有的診斷技術主要包括三個步驟:去噪、特征提取和分類。常用的去噪方法主要有:基于小波變換的方法[1]、基于數字濾波器的方法[2]以及基于閾值的方法[3]等。Singh[4]將經驗小波變換(Empirical Wavelet Transform,EWT)用于ECG信號的去噪,證明了該算法的有效性;Sai[5]證明了在ECG信號的去噪過程中,提升小波變換(Lifting Wavelet Transform,LWT)的去噪性能優(yōu)于中值濾波。
深度學習方法能夠同時實現ECG信號的特征提取和分類,近年來在ECG輔助診斷方面取得了令人滿意的成果。Acharya等[6]設計了一種九層的卷積神經網絡結構,在MIT-BIH數據集上實現了94.03%的識別準確率;Chauhan等[7]采用LSTM網絡對正常心跳和異常心跳進行分類,準確率為96.45%;Shu等[8]將LSTM與CNN相結合,開發(fā)了一種新的處理變長心電信號的混合結構,在MIT-BIH數據集上的識別準確率為98.10%。但是,現有的大多數算法都是僅基于MIT-BIH這一個數據集得出的結論,該數據集僅采集了47個人的心電圖,算法的泛化性和實用性難以得到驗證。
為了較好地提高ECG信號的分類識別率和處理效率,該文提出了基于EWT的提升小波閾值去噪方法:對含噪信號進行經驗小波分解,得到多頻率的模態(tài)分量IMFs;對IMFs作提升小波閾值去噪處理;用經過提升小波閾值去噪技術處理過的模態(tài)分量進行重構,得到最終去噪后的信號。然后,設計了LRF-BLSTM-Attention模型,利用三個交替的隨機卷積層和最大池化層提取ECG信號的空間特征,利用BLSTM獲得ECG信號的時間特征,在BLSTM隱藏層的輸出中引入注意力機制,給重要的特征分配更多的注意力,進一步挖掘序列信息的相關性,提高ECG識別的準確率。最后,基于CCDD和MIT-BIH數據集進行仿真實驗,驗證該所提出模型算法結構的實用性。
針對心電信號的自動分類工作進行研究,首先,現有的算法大多都是基于MIT-BIH數據集,該數據集的心電信號來自于少數個體,代表性不強。這造成有些算法在該數據集上能夠取得很好的識別準確率,在臨床應用上的識別效果很差。該文不僅采用了MIT-BIH Arrhythmia數據集,還采用了CCDD數據庫,該數據庫數據量大,且背景噪聲較多,共有17萬條來自不同病人的心電信號,更具有臨床代表性。同時,現有的心電信號自動分類方法多是針對單導聯數據進行分類,不能考慮其他導聯的特征信息。該文考慮了導聯之間的相關性,提出了多通道模型,能夠實現多導聯心電信號的分類。
經驗小波變換[9]是Gilles結合經驗模態(tài)分解和小波分析而提出的信號處理方法。
首先,將信號頻譜范圍規(guī)范化到[0,π],并將其分割為連續(xù)的N段,每段為Λn,即:
(1)
假設為以ωn為中心,即Λn=[ωn-1,ωn],則寬度為Tn=2τn。
(2)
(3)
其中,β(x)=x4(35-84x+70x2-20x3)。
(4)
(5)
提升小波法[10]是Swelden在小波變換的基礎上提出的第二代小波算法,繼承了第一代小波算法的多分辨率特性,且不依賴于傅里葉變換,大大降低了算法復雜度和內存需求,是目前對離散信號進行分析的重要方法。
提升小波法主要分為分裂、預測、更新三個步驟:首先,根據原始信號x(n)的奇偶性分解為兩個互不重疊的奇序列{xo(k)=x(2k+1)}和偶序列{xe(k)=x(2k)};根據相關性原則,利用偶序列來預測奇序列,產生細節(jié)信號d(k):d(k)=xo(k)-P(xe(k));根據完整性原則,對偶序列進行更新,得到信號的逼近序列c(k),更新公式為c(k)=xe(k)+U(d(k)),U為更新算子。
文中所使用的閾值去噪方法是Donoho等人提出的軟閾值去噪法,軟閾值函數為:
(6)
其中,λ為閾值,x為高頻小波系數。
在上文所述基礎上,提出了EWT的提升小波閾值去噪方法[11],該方法的主要操作過程如下:首先,對含噪的原始信號進行經驗小波分解,得到多頻率的模態(tài)分量IMFs;然后,對IMFs作提升小波閾值去噪處理;最后,重構經過提升小波閾值去噪技術處理過的模態(tài)分量,即可得到最終去噪后的信號。
基于局部感受野的極限學習機(Local Receptive Fields Based Extreme Learning Machine,ELM-LRF)是在極限學習機的基礎上引入局部感受野的概念而提出的一種網絡模型,能夠實現特征的自動提取和分類,具有模型復雜度低、速度快的優(yōu)點[12]。
ELM-LRF模型的網絡結構主要包括隨機卷積層、池化層和輸出層三個部分,如圖1所示。
圖1 ELM-LRF模型的網絡結構
(1)隨機卷積層。隨機卷積的概念借鑒于卷積神經網絡中的卷積操作。不同點在于:隨機卷積過程中,卷積核中的每一個元素都根據概率分布隨機生成并確定,不需要進行迭代、微調。假設模型的輸入是大小為d×1的向量,卷積核的大小為r×1,第k個特征圖的權重表示為ak∈Rr×1,輸出節(jié)點(i,1)處的值ci,1,k(x)為:
i=1,2,…,(d-r+1)
(7)
(2)最大池化層。利用最大池化去除冗余信息,減少特征維數。設池化大小為s×1,第k個特征圖在節(jié)點(p,1)處的值hp,1,k為:
hp,1,k=max(ci,1),i=p-s/2,…,p+s/2
(8)
其中,p,q=1,2,…,(d-r+1)。
(3)輸出層。通過最后一個隱藏層的輸出H求解輸出權重β,計算公式為:
(9)
LSTM是循環(huán)神經網絡[13](Recurrent Neural Network,RNN)的一種變型,能夠避免RNN訓練過程中出現的梯度消失或梯度爆炸問題,目前已廣泛應用于文本分類[14]、電力預測[15]等多個領域。
一般的LSTM記憶單元結構如圖2所示。LSTM網絡由輸入層、隱藏層和輸出層組成,與傳統(tǒng)RNN不同的是,LSTM網絡的隱藏神經元由LSTM記憶單元構成,每個記憶單元包括遺忘門(Forget Gate)、輸入門(Input Gate)、輸出門(Output Gate)三個部分,遺忘門確定當前的細胞狀態(tài)中的舍棄信息,輸入門確定更新當前細胞狀態(tài)的信息,輸出門確定隱藏層的輸出狀態(tài)。
圖2 一般的LSTM記憶單元結構
LSTM的計算過程如下:
ft=σ(Wf[xt,ht-1]+bf)
(10)
it=σ(Wi[xt,ht-1]+bi)
(11)
gt=tanh(Wg[xt,ht-1]+bg)
(12)
ot=σ(Wo[xt,ht-1]+bo)
(13)
ct=ft⊙ct-1+it
(14)
ht=ot⊙tanh(ct)
(15)
其中,ft、it、ot、ct分別表示遺忘門、輸入門和輸出門和細胞狀態(tài)在t時刻的輸出,Wf、Wi和Wo分別表示各個門結構的權重,bf、bi和bo分別表示它們的偏置。xt表示t時刻的輸入,ct表示t時刻的細胞狀態(tài),ht表示隱藏層在時刻t的輸出,σ表示sigmoid函數,tanh表示雙曲正切激活函數,⊙表示Hadamard乘積。
心電圖信號的分類識別依賴于過去和未來的時間特征信息,而LSTM只能考慮過去的信息,不能考慮未來的信息,在一定程度上影響了心電圖的識別效果。BLSTM模型是在LSTM的基礎上提出的[13],能夠彌補LSTM模型的不足,通過正向LSTM傳播和反向LSTM傳播能夠分別學習心電信號的前向特征和后向特征。二者結合,就能得到心電信號的總體特征。
注意力機制(Attention Mechanism)于2014年由Bahdanau提出[15],模仿了人類大腦中特有的圖像處理機制。該方法能夠根據需要有選擇地分配注意力,提高計算機進行信息處理的效率。注意力機制目前廣泛應用于各種深度學習領域,如機器翻譯[16]、圖像處理[17]、文本分類[18]等。注意力機制在BLSTM中的計算過程如下:
首先,根據當前時刻信號過去和未來信號的依賴關系,對BLSTM網絡隱藏層輸出的信號特征ht賦予注意力權重at。其計算公式為:
at=tan(ht)
(16)
接著,通過softmax函數對注意力權重at進行歸一化處理。計算公式表示為:
(17)
最后,分配注意力權重。根據注意力權重的大小給特征向量ht分配注意力資源,增強信號的特征表達能力。計算公式表示為:
(18)
在心電圖識別任務中,通過隨機卷積層和池化層能夠獲得心電信號的局部空間特征,通過BLSTM網絡能夠進一步得到心電信號的時間特征表示。然而,這兩部分都沒有突出心電信號當前采樣點與之前、之后采樣點之間的關聯性,不利于長時間的心電信號識別任務。為了增強距離較遠采樣點之間的相關性,該文引入了注意力機制,即有選擇地給與不同重要程度的采樣點不同的注意力資源。在模型中引入注意力機制,不僅能夠獲得心電信號的空間特征和時間特征,還能夠考慮當前采樣點和上下文時刻采樣點的關聯性,使得模型在具有重要信息的區(qū)域獲得更多的注意力資源,提高心電圖分類識別的準確率。
結合ELM-LRF、BLSTM和注意力機制,該文提出了一種新的網絡結構,記為LRF-BLSTM- Attention模型。下面以多導聯數據的心電信號自動分類任務為例,介紹該模型的網絡結構。如圖3所示,該模型由輸入層、ELM-LRF特征提取器、BLSTM網絡層和注意力層四大部分組成。
圖3 LRF-BLSTM-Attention模型結構
(1)輸入層。
該模型的輸入是去噪后的心電信號,以每一個導聯分別作為輸入,訓練多個ELM-LRF特征提取器。設一段心電信號共有m個導聯,n個采樣點,則該信號可以表示為:
(19)
共訓練m個ELM-LRF特征提取器,第i個特征提取器的輸入是xi=(xi1,xi2,…,xin)。
(2)ELM-LRF特征提取器。
ELM-LRF特征提取器通過三個堆疊的隨機卷積層和最大池化層對輸入的心電信號進行深層特征提取,隨機卷積層和池化層交替出現。首先,利用第一個隨機卷積層對心電信號特征提取,并將輸出作為第一個最大池化層的輸入,該層的輸出為第二個隨機卷積層的輸入,依此循環(huán),共有三個隨機卷積層和三個最大池化層。將最后一個最大池化層的所有特征子圖合并,傳送到BLSTM部分。
卷積核大小的不同代表局部感受野的不同,能夠提取到不同層次的特征。在實際任務中,隨機卷積層中卷積核的大小和池化大小根據經驗確定大致范圍,并通過試湊法確定。
(3)BLSTM網絡層。
ELM-LRF特征提取器的輸出表示為(s1,s2,…,sn),以此作為BLSTM網絡層的輸入。BLSTM網絡可以看作一個正向LSTM和一個反向LSTM,隱層輸出分別表示為hf=(hf1,hf2,…,hfn)和hb=(hb1,hb2,…,hbn),將hf和hb進行拼接,得到h=(hf;hb),即為BLSTM網絡層所提取的特征向量,反映了輸入序列的時間信息和依賴關系。
(4)注意力層。
為了進一步凸顯心電信號的主要特征,引入注意力機制。將BLSTM網絡層所提取的特征向量h=(hf;hb)進行整合,得到注意力層的輸入,表示為H:(h1,h2,…,hn)。由式(16)、(17)、(18),得到最終的特征向量,并利用softmax函數得到分類結果。
所提出模型算法中,隨機卷積層的參數是根據概率分布隨機確定的,不需要通過迭代調整。因此,僅需要訓練BLSTM和注意力機制中的參數。本模型在最后一個Dense層利用softmax進行分類,計算公式如下:
(20)
其中,j為類別,xi表示輸入的第i個樣本,P(yi=j|xi)為獲得第i個樣本的類標簽的概率函數。N表示樣本數目,w表示模型中的參數。
在訓練過程中,優(yōu)化器選擇Nadam[19],損失函數為交叉熵損失函數,計算公式為:
(21)
其中,yi為第i個樣本的類標簽,m為類別總數。
為了防止過擬合,在訓練時引入Dropout,以一定的概率丟棄一些隱層神經元。為了提高運行速度,降低對內存的要求,實驗采用分批次訓練方法,批次大小設為128。
實驗所利用的處理器是3.70 GHz Intel(R) Core(TM) i7-8700K,內存為32 GB,使用的編程語言為MATLAB R2018a和Python 3.5,調用的庫主要有:Keras、Numpy、wfdb、matplotlib、pandas、scipy、math等。
為了驗證所提出方法的有效性,以特異性、靈敏度和準確率作為模型性能的評價指標。
(1)中國心血管疾病數據集。
中國心血管疾病數據集(Chinese Cardiovascular Disease Database,CCDD)是針對中國的心血管疾病患者而建立的[20],數據庫的所有數據均來自于醫(yī)院的臨床數據。該數據庫中共包含17萬多條數據,每條數據都來自不同的患者,共包含十二導聯數據,采樣時間為10 s左右,采樣頻率為500 Hz。
(2)MIT-BIH Arrhythmia數據集。
MIT-BIH心律失常數據集[21]包含了來自Beth Israel Hospital (BIH)住院患者的48條心電圖信號記錄。每一個心電信號都超過30分鐘,并由心血管疾病專家進行注釋。在該數據集上,以單個的心拍為單位進行分類。首先,對數據下采樣到250 Hz[22]并去噪,通過pan-tompkin算法檢測R峰[23],并取R峰前100、后149個采樣點組成一個完整的心拍。本實驗中,共使用四種心拍類型,分別是正常竇性心律(Normal Sinus Rhythm,NSR)、左束支傳導阻滯(Left Bundle Branch Block,LBBB)、右束支傳導阻滯(Right Bundle Branch Block,RBBB)、室性早縮(Ventricular Premature Contraction,VPC)。
(1)讀取數據。由于導聯數據的正交性,實驗中讀取八個導聯的數據,分別是Ⅱ、Ⅲ、Ⅴ1、Ⅴ2、Ⅴ3、Ⅴ4、Ⅴ5、Ⅴ6導聯,其他導聯的數據可由這八個導聯推導得出。
(2)剔除標簽為“0x00”(無效)和采樣時間不足9 s的心電記錄。由于操作失誤等原因可能會導致心電信號一直為0,將這類記錄也剔除。
(3)考慮到內存需求和數據平衡性要求,在剩下的數據中選擇前5萬正常數據和前5萬異常數據作為本次實驗的數據集,共計10萬數據。將實驗數據集隨機打亂,并按照7∶3的比例分為訓練集和測試集。
(4)為了降低模型訓練的復雜度,根據文獻[22],實驗中將CCDD的數據下采樣到250 Hz。
(5)去噪。對CCDD數據庫中的心電記錄進行基于EWT的提升小波閾值去噪實驗。
(1)CCDD。
LRF-BLSTM-Attention模型用于CCDD數據集時的結構設計如表1所示。第一至六層為特征提取器,隨機卷積層和最大池化層交替出現,隨機卷積層中分別采用4、8、16個大小為7×1、6×1、5×1的卷積核;第七層和第八層分別為BLSTM層和Attention層,第九層為Dense層,利用softmax函數輸出心電信號的類別概率。
表1 CCDD的LRF-BLSTM-Attention結構設計
利用Dropout防止過擬合處理中,選擇合適的丟棄概率對網絡模型的訓練至關重要,如果丟棄概率太小,可能難以達到消除過擬合的作用,如果丟棄概率太大,則可能會丟失數據中的重要信息。實驗中分別選擇不同的Dropout值進行多次實驗,結果如圖4所示。當Dropout取值為0.3時,測試集的準確率達到最高,為86.12%,因此,最終Dropout的取值為0.3。
圖4 不同Dropout值下的測試集準確率
為了進一步評估所提出的LRF- BLSTM-Attention模型在心電圖信號識別領域的性能,將該模型與LSTM、BLSTM、LRF-BLSTM(未引入注意力機制)、LRF-BGRU-Attention (Bidirectional Gated Recurrent Unit)和LRF-BLSTM- Attention模型進行對比,結果如圖5所示。
圖5 各模型的loss變化曲線
由圖5可以看出,隨著迭代次數的增加,所有模型的損失值逐漸下降并最終收斂趨于穩(wěn)定。LSTM模型和BLSTM模型收斂較快,但loss函數最終收斂的值偏大,說明這兩種模型的學習能力較差。而LRF-BLSTM模型、LRF-BGRU-Attention模型、LRF-BLSTM-Attention模型的loss函數最終收斂的值較小,說明ELM-LRF與BLSTM模型的結合提高了模型的學習能力。
在這三種模型中,LRF-BLSTM模型在訓練約90輪后loss曲線趨于平穩(wěn),而LRF-BGRU-Attention模型和LRF-BLSTM- Attention模型的loss函數達到最終收斂大約需要經過50輪迭代訓練。這說明注意力機制的引入加強了序列信息之間的關聯性,進一步優(yōu)化了模型的特征表達能力,從而使得loss函數達到收斂所需的迭代次數降低。
各模型在CCDD上的識別結果如表2所示。可以看出,LSTM模型的識別準確率為75.43%,BLSTM模型的識別準確率為75.91%,這是因為單項LSTM模型只能學習時間序列的歷史信息,而BLSTM模型能夠同時學習歷史和未來的信息,優(yōu)化了模型的特征表達能力,因此接下來的實驗中均采用BLSTM層LRF-BLSTM-Attention模型的loss值比LRF-BGRU-Attention模型低,說明LRF-BLSTM- Attention模型具有更好的特征表達能力。相較于其他對比模型,所提出的LRF-BLSTM-Attention模型的靈敏度和識別準確率均最高,分別為89.32%和86.12%。同時,可以發(fā)現使用未去噪數據的LRF-BLSTM-Attention模型(No Denoising)準確率為84.26%,相較于使用去噪數據的LRF-BLSTM- Attention模型準確率較低,證明了所提出的去噪算法(基于EWT的提升小波閾值去噪方法)的實用性。
表2 不同算法在CCDD上的識別結果 %
表3列出了不同算法訓練一輪的時間??梢钥闯?,LSTM在CCDD數據上訓練一輪所需要的時間是41 s,BLSTM需要61 s。對比LSTM模型和BLSTM模型,LRF-BLST模型訓練一輪僅需要29 s,這是因為LRF模型能夠通過卷積和池化操作減少輸入特征的維數,進而減少訓練時間。LRF-BGRU-Attention模型訓練一輪的時間為27 s,比LRF-BLSTM模型的時間少,這是因為BGRU模型比BLSTM模型的復雜度更低,但是BGRU模型的震蕩幅度較大,說明該模型的穩(wěn)定性較差。LRF-BLSTM-Attention模型訓練一輪的時間為45 s,比LRF-BLSTM所需的時間多,說明進入注意力機制的LRF-BLSTM-Attention模型復雜度更高,所需的訓練時間更長。由圖5和表3,相比于其他對比模型,LRF-BLSTM-Attention模型達到最小loss值所需要訓練的輪數更少,loss值也最小,因此,認為增加模型復雜度是有必要的。
表3 不同算法訓練一輪的時間對比
為了進一步評估所提出算法的性能,表4給出了在CCDD上多種模型的識別結果比較。Wang L P等[24]提出了ECG-MTHC(Multi-way Tree Based Hybrid Classifier,MTHC)模型,以犧牲特異性為代價,達到了較高的靈敏度,最終識別準確率為77.70%。Jin L P[25]針對多導聯心電圖,設計了多導聯卷積神經網絡,達到了83.66%的識別準確率。Li H H[26]首先篩選異常數據,然后使用導聯卷積神經網絡進行分類,識別準確率達到了84.77%。與其他的識別算法比,LRF-BLSTM-Attention模型的識別準確率最高,為86.12%,特異性和靈敏度分別為82.94%和89.32%。該實驗證明了LRF-BLSTM-Attention模型在計算機輔助心血管疾病診斷領域的實用性和高效性。
表4 在CCDD上多種模型的識別結果比較 %
(2)MIT-BIH數據集。
由于目前大多數心電識別算法的評估都是基于MIT-BIH數據集進行的,為了進一步驗證所提出的LRF-BLSTM-Attention模型的性能,實驗中也將該模型用于MIT-BIH數據集的識別。在MIT-BIH數據庫的識別任務中,一條心拍的長度為250,因此模型的輸入為250×1,相比于CCDD數據集中一條記錄的長度為2 250少了很多。為了防止在訓練過程中丟失過多信息,實驗中減小了池化層中的核的大小,其具體設計如表5所示。
表5 MIT-BIH數據庫的LRF-BLSTM-Attention
各模型的loss曲線如圖6所示。對比其他模型,LRF-BLSTM-Attention模型的loss曲線達到穩(wěn)定狀態(tài)所需的訓練論數最少,并且達到的loss值最小,說明了所提出模型的優(yōu)越性。
圖6 各模型的loss變化曲線
與大多數現有的心電圖分類模型相比,所提出的算法具有優(yōu)勢。不同模型的識別結果如表6所示。Elhaj[27]通過多種特征提取方式進行特征提取并融合,利用SVM進行分類,得到98.91%的識別準確率;Acharya[6]通過9層的CNN實現心電信號的自動分類,識別準確率為94.03%;Yang[28]利用PCANet提取特征,并利用SVM分類,實現97.08%的識別準確率;Yang[29]結合ICA和PCANet對心電信號進行識別,識別準確率達到98.63%;在之前的文章中,利用LRF-BLSTM模型分別實現了99.32%,97.15%的準確率和靈敏度[30]。與對比模型相比,所提出的算法在MIT-BIH數據集上達到較高的識別準確率,為99.87%。
表6 MIT-BIH上不同模型識別結果
ELM-LRF能夠學習心電信號的空間信息。卷積操作通過構建隨機濾波器平滑時間序列,學習其特征表示;池化操作能夠去掉冗余特征,減小輸入的特征維數,具有平移不變性、旋轉不變性和尺度不變性等特點。BLSTM模型能夠充分學習歷史和未來的時間信息,獲得序列的時間特征表示。LRF-BLSTM模型結合ELM-LRF模型和BLSTM模型的優(yōu)點,使得模型的識別效率提高。在LRF-BLSTM中引入注意力機制,能夠加強當前時間信息與歷史、未來信息的關聯性,利用分配注意力權重的大小凸顯特征向量的重要程度,從而進一步優(yōu)化模型的特征提取和表達能力。因此,所提出的LRF-BLSTM-Attention模型能夠強化心電信號的特征表示,實現較高的識別準確率,在CCDD和MIT-BIH數據集上分別達到了86.12%和99.87%。
在時間復雜度方面,由于ELM-LRF模型能夠降低輸入特征的維數,減少訓練時間,因此LRF-BLSTM模型訓練一輪所需的時間比單一的BLSTM模型少。LRF-BLSTM-Attention模型由于引入了注意力機制,使得模型復雜度增加,但loss曲線收斂速度加快,總體訓練時間減少。
實驗結果表明,LRF-BLSTM-Attention模型在心血管疾病的計算機臨床輔助診斷中具有較好的實用性和計算效率。
針對心電圖識別問題,提出了一種基于EWT的提升小波閾值去噪方法,并設計了LRF-BLSTM- Attention模型。ELM-LRF、BLSTM和注意力機制的結合能夠提高模型的特征提取能力,進而提高識別準確率。分別在CCDD和MIT-BIH數據集上進行實驗,識別準確率分別為86.12%和99.87%,驗證了LRF-BLSTM-Attention模型在心電圖識別問題上的優(yōu)勢。注意力機制的引入增加了模型復雜度,在未來的心電圖識別中,將進一步改進該模型,降低時間復雜度,處理更多、更復雜的心電圖數據。