瞿文鳳
摘? 要:心電圖(ECG)信號(hào)基本上與人體心臟的電活動(dòng)相對(duì)應(yīng),所以心電圖通常在醫(yī)療領(lǐng)域被用來檢測(cè)心血管疾病。通過計(jì)算機(jī)對(duì)心電信號(hào)進(jìn)行自動(dòng)分類,可以幫助醫(yī)生更有效地進(jìn)行心血管疾病的診斷,提高準(zhǔn)確率。該文提出了一種一維卷積神經(jīng)網(wǎng)絡(luò)模型,可從原始心電數(shù)據(jù)中提取有效特征并實(shí)現(xiàn)自動(dòng)分類。該模型實(shí)現(xiàn)了對(duì)5種典型心律失常信號(hào)的分類,即正常心搏(N)、室上性早搏(S)、室性早搏(V)、心室融合心跳(F)、未分類心跳(Q)。在MIT-BIH心律失常數(shù)據(jù)庫(kù)上的實(shí)驗(yàn)結(jié)果表明,該方法的分類準(zhǔn)確率較高,達(dá)到了97.8%,并且穩(wěn)定性也較高。
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò)? 心電信號(hào)分類? 小波變換? 心律失常
中圖分類號(hào):TP391 ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2019)08(b)-0008-04
當(dāng)代社會(huì),心血管疾病已經(jīng)成為威脅人們生命健康的重大殺手[1]。心律失常作為心血管疾病中發(fā)病率最高的典型之一,對(duì)其進(jìn)行精確的分類一直是生物醫(yī)學(xué)領(lǐng)域的研究熱點(diǎn)。
心電信號(hào)檢測(cè)是診斷心律失常最有效的手段之一。傳統(tǒng)診斷心律失常的過程一般需要有經(jīng)驗(yàn)的心臟病專家仔細(xì)研究心電圖,既繁瑣又費(fèi)時(shí)。因此,在過去的幾十年里,計(jì)算機(jī)輔助診斷(CAD)算法被應(yīng)用于心律失常的自動(dòng)分析,算法主要包括信號(hào)預(yù)處理、波形檢測(cè)、特征提取和疾病分類4個(gè)步驟[2]。這種傳統(tǒng)的基于機(jī)器學(xué)習(xí)的研究方法雖然在特定的數(shù)據(jù)集上取得了較為顯著的研究成果,但其嚴(yán)重依賴人工設(shè)計(jì)特征,算法工作量大,所以在實(shí)際應(yīng)用中尚未達(dá)到令人滿意的效果。
近年來,隨著人工智能技術(shù)的興起,以卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)為代表的深度學(xué)習(xí)技術(shù)發(fā)展火熱,其優(yōu)勢(shì)在于可以通過訓(xùn)練網(wǎng)絡(luò)參數(shù)從海量數(shù)據(jù)中自動(dòng)學(xué)習(xí)得到深層次特征而無需人工設(shè)計(jì)特征,其在多種任務(wù),例如圖像分類與定位、語音識(shí)別等領(lǐng)域都展現(xiàn)出了十分強(qiáng)大的性能[3]。雖然CNN在圖像識(shí)別領(lǐng)域應(yīng)用比較廣泛,但是ECG信號(hào)具有與圖像比較相似的局部與整體的相關(guān)性,因而也可以將CNN應(yīng)用到ECG信號(hào)處理領(lǐng)域,該文處理的ECG心拍是一維信號(hào),故該文所提出的CNN模型也是一維的。該模型可以直接對(duì)以下5種ECG心律失常類型進(jìn)行分類,包括正常心搏(N)、室上性早搏(S)、室性早搏(V)、心室融合心跳(F)、未分類心跳(Q)。這5種類型是根據(jù)AAMI的標(biāo)準(zhǔn)劃分的。
1? 方法
1.1 數(shù)據(jù)預(yù)處理
1.1.1 數(shù)據(jù)降噪
心電信號(hào)是一種微弱的生理電信號(hào),易受噪聲干擾。常見的噪聲主要包含肌電干擾、基線漂移和工頻干擾[4]這三種。為了提取有用的心電信息,必須要對(duì)心電信號(hào)進(jìn)行降噪處理。因此,該文通過結(jié)合小波閾值法和小波分解重構(gòu)算法[5]進(jìn)行噪聲的濾除。其中,小波閾值法通過設(shè)置一個(gè)合適的閾值將閾值以下的噪聲系數(shù)置零,保留閾值以上的信號(hào)系數(shù),然后對(duì)閾值處理后的小波進(jìn)行信號(hào)重構(gòu),得到降噪后的信號(hào)。采用小波分解重構(gòu)算法將原始信號(hào)分解為多級(jí),每一級(jí)分解為高頻和低頻信息。最后,通過確定有效信號(hào)的頻率范圍對(duì)信號(hào)進(jìn)行重構(gòu),即可得到降噪后的信號(hào)。通過這兩種算法的有機(jī)結(jié)合,前者可以有效地濾除肌電干擾和工頻干擾,后者進(jìn)行基線漂移的校正,從而完成信號(hào)降噪工作。
1.1.2 數(shù)據(jù)分段
心電信號(hào)進(jìn)行降噪處理后,由于一條充分長(zhǎng)的心電記錄中包含的信息太多,可能包含了很多種類型的心拍,直接全局處理不利于精細(xì)的識(shí)別,故而需要對(duì)其進(jìn)行分段處理。首先進(jìn)行R波峰的檢測(cè)。常用方法是小波變換[6]。該文在樣條小波的基礎(chǔ)上,采用B-樣條小波函數(shù)作為尺度函數(shù),將心電信號(hào)進(jìn)行4個(gè)尺度的小波分解,得出模極大值對(duì)過零點(diǎn),即對(duì)應(yīng)R波峰值點(diǎn)。在成功檢測(cè)出R波峰后,以R點(diǎn)位置為基準(zhǔn)分割信號(hào)。在R點(diǎn)左右兩側(cè)選取100個(gè)采樣點(diǎn),可得到一段長(zhǎng)度為201個(gè)采樣點(diǎn)的心電信號(hào),然后,運(yùn)用下采樣函數(shù)將心電數(shù)據(jù)長(zhǎng)度減少到130個(gè)采樣點(diǎn)。本工作共提取到109450個(gè)心電樣本數(shù)據(jù)。
1.1.3 數(shù)據(jù)擴(kuò)充與歸一化
數(shù)據(jù)的擴(kuò)充可以有效地減少過擬合,保持類之間的均衡分布[7]。根據(jù)心電類數(shù)據(jù)具有周期性的特點(diǎn),通過“平移起點(diǎn)法”,包括N、S、V、F、Q等5類的心電樣本總數(shù)增加到453050個(gè)。最終利用Z-score歸一化方法[8]對(duì)每個(gè)樣本數(shù)據(jù)進(jìn)行歸一化,解決幅值縮放問題,消除偏移效應(yīng),經(jīng)過處理后的心電信號(hào)可直接輸入到CNN模型中進(jìn)行訓(xùn)練和測(cè)試。
1.2 CNN模型
該文所提出的CNN模型主要由特征提取和分類兩部分組成。特征提取部分負(fù)責(zé)對(duì)心電信號(hào)自動(dòng)提取有效特征,而分類部分負(fù)責(zé)利用提取的特征對(duì)心電信號(hào)進(jìn)行準(zhǔn)確分類。
1.2.1 特征提取部分
特征提取部分主要由卷積層和池化層組成。卷積層由若干卷積單元組成,每個(gè)卷積單元的參數(shù)都是通過反向傳播算法最優(yōu)化得到的。卷積運(yùn)算的目的是提取輸入的不同特征,從低級(jí)特征中迭代提取更復(fù)雜的特征。卷積層的輸出表達(dá)式如式(1)所示:
(1)
其中Xjl為對(duì)應(yīng)于第l層的第j個(gè)卷積核的特征向量;Mj為當(dāng)前神經(jīng)元的感受野(接受域);而Wij1為分配給第l層的第j個(gè)卷積核的權(quán)重系數(shù);f(*)為一個(gè)非線性激活函數(shù)。
池化層(亦名下采樣層),其具體操作與卷積層的操作基本相同,只不過池化層的卷積核只取對(duì)應(yīng)位置的最大值、平均值等(最大池化、平均池化),并且不經(jīng)過反向傳播的修改。其作用是可以忽略目標(biāo)的傾斜、旋轉(zhuǎn)之類的相對(duì)位置的變化,以此提高精度,同時(shí)降低了特征圖的維度并且一定程度上可以避免過擬合。其公式如式(2)所示:
(2)
其中down(*)為下采樣函數(shù);βjl為權(quán)重系數(shù);bjl為偏置系數(shù)。
1.2.2 分類部分
分類部分主要是全連接層。全連接層是將經(jīng)過多個(gè)卷積層和池化層的特征圖中的特征進(jìn)行整合,獲取特征具有的高層含義,之后用于分類。
1.2.3 1D-CNN模型
CNN通常運(yùn)用于圖像領(lǐng)域,處理二維數(shù)據(jù)?;谛碾娦盘?hào)是一維的,故該文對(duì)CNN模型進(jìn)行了調(diào)整。優(yōu)化后的CNN心電分類模型如圖1所示。其基本結(jié)構(gòu)包括一個(gè)輸入層、兩個(gè)卷積層(C1、C3)、兩個(gè)池化層(S2、S4)、一個(gè)全連接層(FC)和一個(gè)輸出層。通過卷積層和池化層交替執(zhí)行提取特征,并將提取到的特征作為全連接層的輸入進(jìn)行分類。
在卷積層C1中,使用28個(gè)7×1的卷積核對(duì)輸入的ECG 信號(hào)進(jìn)行卷積操作,得到28個(gè)特征圖,每個(gè)特征圖的大小為(1×124)。在池化層S2中,對(duì)C1的每個(gè)特征圖進(jìn)行尺度為2×1的最大池化操作,特征圖個(gè)數(shù)仍為28,經(jīng)池化之后每個(gè)特征圖的大小為(1×62)。C3也設(shè)置了28個(gè)卷積核,用7×1的卷積核對(duì)S2進(jìn)行卷積,此時(shí)特征圖大小為(1×56)。在S4層中,對(duì)C3的每個(gè)特征圖進(jìn)行尺度為2×1的最大池化操作,特征圖個(gè)數(shù)為28,此時(shí)特征圖的大小為(1×28)。FC是一個(gè)全連接層,輸出層設(shè)置5個(gè)神經(jīng)元,使用Softmax函數(shù)分別輸出每個(gè)類,即N、S、V、F、Q這5種類型。
2? 實(shí)驗(yàn)與結(jié)果分析
2.1 實(shí)驗(yàn)數(shù)據(jù)
該文所使用的數(shù)據(jù)集來源于MIT-BIH心律失常數(shù)據(jù)庫(kù)[9]。該數(shù)據(jù)庫(kù)包含48組記錄,每組記錄時(shí)長(zhǎng)約30min,采樣率為360Hz。并且每組記錄均包含兩個(gè)導(dǎo)聯(lián)的ECG數(shù)據(jù)?;谠搶?shí)驗(yàn)研究的是一維模型,故從每組記錄中選取第II導(dǎo)聯(lián)的心電圖記錄共44條,來訓(xùn)練驗(yàn)證該方法的可行性。根據(jù)AAMI標(biāo)準(zhǔn)[10],(102,104,107,217)這4條記錄被排除,因?yàn)檫@些記錄在后期處理時(shí)信號(hào)質(zhì)量較差。
2.2 實(shí)驗(yàn)結(jié)果
該文采用了十倍交叉驗(yàn)證策略[11]。將生成的心電樣本數(shù)據(jù)隨機(jī)分為10等份。基于提出的模型,其中的9份被用作訓(xùn)練集,剩余的1份被用于測(cè)試集,交叉驗(yàn)證重復(fù)10次實(shí)驗(yàn)。然后,在每一次實(shí)驗(yàn)中評(píng)估性能指標(biāo)(準(zhǔn)確率、靈敏度和特異性)。最后,通過評(píng)估10次結(jié)果的平均值,得到算法總體性能。
2.2.1 卷積層參數(shù)的選擇
在卷積層中,卷積核的大小和數(shù)量可以影響到模型的質(zhì)量,當(dāng)學(xué)習(xí)率一定時(shí),為了使得模型最優(yōu)化,該文進(jìn)行了4組對(duì)比實(shí)驗(yàn)。在每組實(shí)驗(yàn)中所設(shè)置的卷積核個(gè)數(shù)不同,分別為3,5,7,9。實(shí)驗(yàn)結(jié)果表明,4組實(shí)驗(yàn)的錯(cuò)誤率隨卷積核個(gè)數(shù)的增加而變化。當(dāng)卷積核大小分別為7和9時(shí),實(shí)驗(yàn)錯(cuò)誤率隨卷積核個(gè)數(shù)的增加而改變的趨勢(shì)相對(duì)穩(wěn)定。并且當(dāng)特征圖個(gè)數(shù)為28時(shí),錯(cuò)誤率幾乎達(dá)到最小值。Lecun最近的評(píng)論表明,在計(jì)算精度相同的情況下,選擇較小尺寸的卷積核更好。為了防止卷積核尺寸過大而導(dǎo)致計(jì)算復(fù)雜,該文最終確定卷積核的大小為7,每層特征圖的最優(yōu)個(gè)數(shù)為28。
2.2.2 學(xué)習(xí)率的選定
為了研究學(xué)習(xí)率對(duì)錯(cuò)誤率是否有影響,在卷積核大小和數(shù)量固定的情況下,該文設(shè)定了不同大小的學(xué)習(xí)率,研究實(shí)驗(yàn)的錯(cuò)誤率和訓(xùn)練時(shí)間。實(shí)驗(yàn)結(jié)果表明,當(dāng)學(xué)習(xí)率小于0.1時(shí),實(shí)驗(yàn)錯(cuò)誤率都是2.5%左右。然而隨著學(xué)習(xí)率的提高,訓(xùn)練時(shí)間也逐漸減少。例如,當(dāng)學(xué)習(xí)率為0.001時(shí),收斂速度最慢;反之,當(dāng)學(xué)習(xí)率為0.1時(shí),數(shù)據(jù)收斂速度更快,訓(xùn)練時(shí)間最短。當(dāng)學(xué)習(xí)率大于0.1時(shí),錯(cuò)誤率呈不規(guī)則變化,時(shí)而增加,時(shí)而減少。據(jù)認(rèn)為,這種現(xiàn)象是由于學(xué)習(xí)率過快,導(dǎo)致數(shù)據(jù)無法收斂。總之,不僅要保證正確率,還要設(shè)定合適的學(xué)習(xí)率來減少訓(xùn)練時(shí)間。所以該文最終選定學(xué)習(xí)率為0.1。
2.2.3 迭代次數(shù)的選擇
為了準(zhǔn)確研究迭代次數(shù)與測(cè)試正確率之間的關(guān)系,該文在固定卷積核大小、數(shù)量和學(xué)習(xí)率的前提下,通過調(diào)整迭代次數(shù)來評(píng)估測(cè)試集的正確率。實(shí)驗(yàn)結(jié)果表明,隨著迭代次數(shù)的增加,錯(cuò)誤率呈下降趨勢(shì)并逐漸趨于平穩(wěn)。當(dāng)?shù)螖?shù)為50時(shí),錯(cuò)誤率高達(dá)15%;而迭代次數(shù)達(dá)到300時(shí)錯(cuò)誤率為3.5%。當(dāng)?shù)螖?shù)設(shè)置為300、350、400時(shí)錯(cuò)誤率保持不變。此時(shí),需要考慮訓(xùn)練時(shí)間。當(dāng)其他參數(shù)固定時(shí),每個(gè)訓(xùn)練步驟的時(shí)間成本是相似的,訓(xùn)練越多,所需時(shí)間越長(zhǎng)。
2.2.4 性能評(píng)價(jià)
CNN模型比較消耗計(jì)算資源,而且神經(jīng)網(wǎng)絡(luò)的任何變化都需要新的訓(xùn)練,這會(huì)非常消耗時(shí)間和資源,這個(gè)方面需要優(yōu)化和重視。所以該文選擇所有階段的最優(yōu)參數(shù),在上述優(yōu)化參數(shù)的基礎(chǔ)上得到訓(xùn)練模型,其中模型的學(xué)習(xí)率設(shè)為0.1,兩層卷積層的卷積核大小均為7。對(duì)于最大池化操作,兩個(gè)池化層的采樣因子都為2,迭代次數(shù)為300次。最后的測(cè)試結(jié)果表明,該方法的準(zhǔn)確度為97.8%。實(shí)驗(yàn)結(jié)果的混淆矩陣如表1所示。其中N、S、V、F、Q分別代表5種心律失常心拍類型。
最后,該文還與前人研究的心電分類算法進(jìn)行比較。如表2所示,與以前研究者所提出的方法和實(shí)驗(yàn)成果相比,該文所提出的方法提高了心電分類的準(zhǔn)確率。
3? 結(jié)語
心電信號(hào)是用于診斷和預(yù)防心律失常等心血管疾病的有效手段,對(duì)其進(jìn)行精確的分類具有重要的臨床意義。該文在前人研究的工作基礎(chǔ)上,提出了一種一維的卷積神經(jīng)網(wǎng)絡(luò)模型,首先對(duì)MIT-BIH心律失常數(shù)據(jù)庫(kù)的數(shù)據(jù)利用小波變換相關(guān)算法進(jìn)行預(yù)處理操作,再將經(jīng)過預(yù)處理的心電數(shù)據(jù)輸入到CNN模型中進(jìn)行訓(xùn)練和測(cè)試。最后經(jīng)實(shí)驗(yàn)驗(yàn)證該文所提出的模型可有效地對(duì)N、S、V、F、Q等5種心律失常類型進(jìn)行分類,且分類的穩(wěn)定性和準(zhǔn)確率較高,為進(jìn)一步提高心電圖自動(dòng)分類的效果實(shí)現(xiàn)了有益的探索。
參考文獻(xiàn)
[1] 陳偉偉,高潤(rùn)霖,劉力生,等.《中國(guó)心血管病報(bào)告2016》概要[J].中國(guó)循環(huán)雜志,2017,32(6):521-530.
[2] Selcan Kaplan Berkaya, Alper Kursat Uysal, Efnan Sora Gunal, et al. A survey on ECG analysis[J].Biomedical Signal Processing and Control,2018(43):216-235.
[3] Chatfield K, Simonyan K,VedaldiA, et al. Return of the Devil in the Details: Delving Deep into Convolutional Nets[J].Computer Science,2014(156):52-54.
[4] Alyasseri ZA,Khader AT,Al-Betar MA,et al. Hybridizing beta-hill climbing with wavelet transform for denoising ECG signals[J].InfSci(Ny),2018(429):229-246.
[5] 焦運(yùn)良,邢計(jì)元,靳堯凱.基于小波變換的心電信號(hào)閾值去噪算法研究[J].信息技術(shù)與網(wǎng)絡(luò)安全,2019,38(5):62-66.
[6] Ismaiel,F(xiàn)atima Osman Mohamed. Classification of Cardiac Arrhythmias Based on Wavelet Transform and Neural Networks[D].Sudan University of Science&Technology,2015.
[7] Paolo Vecchiotti, Giovanni Pepe, Emanuele Principi, et al. Detection of activity and position of speakers by using Deep Neural Networks and Acoustic Data Augmentation[J].Expert Systems With Applications, 2019.
[8] Jin Lin-peng, Dong Jun. Deep learning research on clinical electrocardiogram analysis[J].Science China: Information Sciences,2015,45(3):398-416.
[9] Ritu Singh, Rajesh Mehta,Navin Rajpal. Efficient wavelet families for ECG classification using neural classifiers[J].Procedia Computer Science,2018(132):11-21.
[10] Brian Young,Johann-Jakob Schmid.Updates to IEC/AAMI ECG standards, a new hybrid standard[A].Journal of Electrocardiology[C].2018.
[11] Han Meng,Ding Jian.An improvement and implementation of BP algorithm based on cross-validation[J].Computer Engineering and Design,2008,29 (14):3738-3739.
[12] N.P.Joshi, P.S.Topannavar, Support vector machine based heartbeat classification[A].In Proc.of 4th IRF Int. Conf[C].2014:140-144.
[13] M. Zubair,J. Kim,C.Yoon. An Automated ECG Beat Classification System Using Convolutional Neural Networks[A].International Conference In IT Convergence and Security(ICITCS)[C].2016:1-5.
[14] Wei Jiang, Seong G,Kong. Block-based neural networks for personalized ECG signal classification[J].IEEE Transactions on Neural Networks,2007,8(6):1750-1761.
[15] 陳宇飛,張博,林楠,等.一種高效檢測(cè)心律不齊的深度學(xué)習(xí)算法[J].小型微型計(jì)算機(jī)系統(tǒng),2018,39(11):2436-2440.