唐建軍 李興秀 華 晶 楊富豪
1(江西農(nóng)業(yè)大學計算機與信息工程學院 江西 南昌 330045) 2(江西農(nóng)業(yè)大學軟件學院 江西 南昌 330045)
世界衛(wèi)生組織公布的數(shù)據(jù)表明:全球有1/3的死亡事例源于心血管疾病,隨著人口老齡化,該比例在不斷上升。對心電圖(ECG)的分析,可以進行生物識別、活動識別,以及更重要的患者篩查和診斷方面的活動[1]。心電圖不僅在各種心律失常和心肌梗死等病癥的檢查、診斷、治療中扮演著重要的角色,在人們?nèi)粘5捏w檢以及醫(yī)療人員的研究中也具有重要意義。對于心律失常等常見的不健康的心電信號,診斷程序主要依賴于醫(yī)生或臨床技術(shù)人員對ECG的視覺檢查。然而,有的異常信號缺乏特異性,與健康信號存在的區(qū)別非常小,有專業(yè)領(lǐng)域知識的醫(yī)生專家不僅需要花費長時間的觀察來尋找病因,在可能無法檢測到異常的同時也容易對心電信號形態(tài)的識別出現(xiàn)錯誤判斷。
近年來,除了資深醫(yī)生深入研究病因,從心電圖這種生理時間序列中自動檢測病理或心理狀態(tài)已成為新的研究熱點,如KNN[2]、決策樹、樸素貝葉斯、支持向量機(SVM)[3]、隱馬爾可夫模型(HMM)[4-5]、人工神經(jīng)網(wǎng)絡(luò)[6]、專家系統(tǒng)混合方法[7]等。SVM和HMM通常與人工選擇的特征一起使用,提取特征的質(zhì)量對所引用的分類/預測策略的可靠性和性能及其結(jié)果具有最顯著的影響。然而,基于專家知識的特征提取技術(shù)是耗時且容易出錯的,并且提取的特征在許多變化方面通常不是魯棒的,例如平移、噪聲、縮放和位移等。此外, ECG信號特征高度依賴于主體,提取有效特征通常需要深入的領(lǐng)域知識和專業(yè)知識。為了自動檢測心電圖中的心律失常,算法必須能夠隱含地識別不同的波類型并且隨著時間的推移識別它們之間的復雜關(guān)系。傳統(tǒng)的時間序列分類方法高度依賴于提取的特征,但是很難提取捕獲時間序列數(shù)據(jù)的內(nèi)在屬性中正確和關(guān)鍵的信息。深度學習算法對ECG信號的檢測一般分為三個步驟:信號預處理,特征學習和ECG分類。經(jīng)過訓練后的網(wǎng)絡(luò)架構(gòu),能夠快速檢測到心電信號的異常并實現(xiàn)正確分類。深度神經(jīng)網(wǎng)絡(luò)的最近應用之一是時間序列分類問題,專門處理大量數(shù)據(jù)的時間序列分類問題,從而被廣泛用于醫(yī)療保健系統(tǒng)、自然語言處理、生物信息學、視頻動作行為識別等各種應用中。
本文旨在將心電圖分類的深度學習算法做詳細的文獻評述。以前的工作主要探索了能夠提高分類精度的算法,如傳統(tǒng)自動分類算法和各種神經(jīng)網(wǎng)絡(luò)算法。然而本文著重于各種不同模型的性能表現(xiàn),特別是卷積神經(jīng)網(wǎng)絡(luò)和長短期記憶模型的顯著優(yōu)點。
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network, ANN)方法能夠模擬生物大腦的功能。ANN模型一般由輸入層、隱藏層和輸出層組成[8],如圖1所示,其中:n表示神經(jīng)元;b表示偏置項。人工神經(jīng)元中的激活函數(shù)充當生物神經(jīng)元的核,輸入信息以及各自的權(quán)重分別模擬樹突和突觸[8],圖2為神經(jīng)元結(jié)構(gòu)。由于人工神經(jīng)網(wǎng)絡(luò)添加了一個偏置項,即其可以平移或偏移,將其用作分類器產(chǎn)生的分類結(jié)果可能不太準確。因此,產(chǎn)生了人工神經(jīng)網(wǎng)絡(luò)的擴展版——卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)。
圖1 傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型[8]
圖2 神經(jīng)元結(jié)構(gòu)[8]
卷積神經(jīng)網(wǎng)絡(luò)可以確保平移或偏移的不變性,在信號特征的提取方面具有很好的性能,是近兩年來使用最多的網(wǎng)絡(luò)結(jié)構(gòu)。卷積神經(jīng)網(wǎng)絡(luò)能夠提供強大的特征向量,得益于其具有的結(jié)構(gòu):卷積層,池化層和完全連接層[8]。
卷積層:輸入樣本與該層的內(nèi)核(權(quán)重)進行卷積,其中步幅控制內(nèi)核與輸入樣本卷積的程度。卷積運算通過學習各種輸入的信息而充當特征提取器。提取的特征用于后續(xù)層中的分類或預測任務。
池化層:即下采樣層,采用池化操作可以減少輸入樣本的空間維度,同時保留重要信息。池化操作可以是最大值池化、均值池化或組合池化,如文獻[9]使用最大池化操作實現(xiàn)降維和減少特征空間。
完全連接層:表示前一層中的每個神經(jīng)元都連接到當前層中的所有神經(jīng)元上。最后一層中的完全連接的神經(jīng)元的總數(shù)決定了類的數(shù)量。神經(jīng)元都是連接的且每個連接都有一個特定的權(quán)重。該層建立前一層的所有輸出的加權(quán)和,以確定特定目標的輸出。
CNN有助于學習數(shù)據(jù)的層次化表示,并且已被證明在分類任務中非常有效。在匯集層中,通過學習這些特征圖來提供類的自動預測,圖3展示了其學習過程。CNN有利于提取樣本內(nèi)部形態(tài)特征,但不擅長利用節(jié)拍之間的信息。循環(huán)神經(jīng)網(wǎng)絡(luò)不同于前饋網(wǎng)絡(luò),其擅長利用時序信息,其網(wǎng)絡(luò)輸出取決于先前的計算。
圖3 卷積神經(jīng)網(wǎng)絡(luò)
傳統(tǒng)的時間序列分類方法高度依賴于提取的特征,但是難以捕獲時間序列數(shù)據(jù)固有屬性的所有基本特征和關(guān)鍵特征[10]。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)與經(jīng)典前饋神經(jīng)元結(jié)構(gòu)之間的運作不同, RNN為索引的所有項重復相同的任務,具體取決于先前的輸出。RNN適合短期依賴性問題,但是在處理長期依賴問題方面經(jīng)常遇到梯度消失或梯度爆炸問題。引入長短期記憶網(wǎng)絡(luò)(LSTM)和門控復發(fā)單位可以克服RNN的缺點,隱藏層中的每個傳統(tǒng)節(jié)點都被LSTM細胞單元替換,同時也解決了訓練期間的梯度消失或梯度爆炸的問題。LSTM網(wǎng)絡(luò)是由存儲器塊和細胞單元,以及它們包含的門單元組成的特殊結(jié)構(gòu),圖4-圖5顯示了LSTM存儲器塊及細胞單元內(nèi)部結(jié)構(gòu)[11]。輸入門控制到細胞單元的輸入流,輸出門控制細胞單元的輸出流到其他LSTM塊。
圖4 LSTM細胞單元的內(nèi)部結(jié)構(gòu)
圖5 LSTM存儲器塊
遺忘門由簡單的單層神經(jīng)網(wǎng)絡(luò)控制。其激活公式如下:
f1=s(W[xt,ht-1,Ct-1]+bf)
(1)
式中:xt是輸入序列;ht-1是前一個塊輸出;Ct-1是前一個LSTM塊存儲器;bf是偏置向量;W表示每個輸入的單獨權(quán)重向量;s是Sigmoid激活函數(shù)。遺忘門決定細胞的歷史狀態(tài)信息有多少允許進入當前狀態(tài)。
輸入門:作用于細胞單元狀態(tài),決定哪些新的信息被記錄到當前單元狀態(tài)中。輸出門:生成當前LSTM單元輸出的部分。
it=s(W[xt,ht-1,Ct-1]+bi)
(2)
Ct=ft·Ct-1+it·tanh(W[xt,ht-1,Ct-1]+bc)
(3)
ot=s(W[xt,ht-1,Ct-1]+bo)
(4)
ht=tanh(Ct)·ot
(5)
除了上述常見的三種神經(jīng)網(wǎng)絡(luò)外,還有基于BP神經(jīng)網(wǎng)絡(luò)的多階分類算法[12]、多層神經(jīng)網(wǎng)絡(luò)的徑向基函數(shù)算法(Radial-Basis Function,RBF)[13],以及其他多網(wǎng)絡(luò)架構(gòu)算法。研究表明,通過使用心電數(shù)據(jù)庫訓練過的神經(jīng)網(wǎng)絡(luò),在對未經(jīng)訓練的心電信號分類上都有較好的表現(xiàn)。
使用準確率、靈敏度、特異性、陽性預測性、F-Score作為評估指標,其中:真陽性(TP)為正確肯定的數(shù)目;真陰性(TN)為正確被否認的非匹配數(shù);假陽性(FP)為給出的匹配不正確的數(shù);假陰性(FN)為沒有找到的匹配數(shù)目。
① 準確率(Accuracy,Acc):測量了所有類別節(jié)拍的整體系統(tǒng)性能。
(6)
② 靈敏度(Sensitivity,Sen):真陽性率,也稱為召回率(Recall),是所有正例事件中被正確分類為正例的比率,衡量模型對正例事件的識別能力。
(7)
③ 特異性(Specificity,Spe):真陰性率,是所有負例事件中被正確分類為負例的比率,衡量模型對負例事件的分類能力。
(8)
④ 陽性預測性(Positive Predictive Value,PPV):也稱為準確率(Precision),是在所有檢測到的事件中正確分類的事件的概率。
(9)
⑤ F-Score:綜合考慮陽性預測性與靈敏度的調(diào)和值。
(10)
(11)
當β為1時,稱為F1-Score,此時表明,準確率和召回率都很重要,權(quán)重相同。若準確率更為重要則調(diào)整β值小于1,召回率更為重要則β值大于1。
魯棒性:是指控制系統(tǒng)在一定結(jié)構(gòu)、大小的參數(shù)變動下,維持它某些性能的特性。在異?;蛭kU情況下,該性能是系統(tǒng)生存的關(guān)鍵。
(1) 數(shù)據(jù)集。影響模型性能的關(guān)鍵是一個大的標注數(shù)據(jù)集和一個深度神經(jīng)網(wǎng)絡(luò),可以映射一系列心電信號樣本中的心律失常標簽。心電信號獲取方式普遍分為兩種:私有數(shù)據(jù)庫;網(wǎng)上公開可下載的數(shù)據(jù)庫,如研究者使用最多的PhysioNet 數(shù)據(jù)庫和MIT-BIH 數(shù)據(jù)庫。
PhysioNet[14]是一個不斷擴充、免費提供了大量生理信號及相關(guān)處理工具的資源網(wǎng)站。其中大部分數(shù)據(jù)帶有詳盡的標簽信息,數(shù)據(jù)來源于正常人及常見多發(fā)病種的病人,如心臟猝死、心力衰竭、心律失常等。其擁有50個心電信號的數(shù)據(jù)庫,共10 000個心電信號數(shù)據(jù)。另外PhysioNet/Computing in Cardiology Challenge 2017(CinC17)[15]在研究者中使用也較為廣泛,共包含8 528個心電信號用于公共訓練和3 658個私人ECG記錄用于測試。
MIT-BIH數(shù)據(jù)庫[16]是國際上公認的可作為標準的心電數(shù)據(jù)庫之一,在文獻中應用最為廣泛。其包含48條記錄,每條記錄包含半小時的通道持續(xù)時間的雙通道ECG信號。信號選自47個受試者,進行24小時記錄連續(xù)ECG信號,并以0.1~100 Hz進行帶通濾波,然后以360 Hz數(shù)字化。該數(shù)據(jù)庫的一個心電記錄包含3個文件,分別是頭文件、數(shù)據(jù)文件,以及由獨立專家驗證的時序信息和節(jié)拍類信息的注釋文件。標注的數(shù)據(jù)是按每個心電圖周期進行標記的,即對每個周期的P-QRS-T波形都進行了標注,部分信號類型記錄及節(jié)拍數(shù)量見表1。
表1 MIT-BIH數(shù)據(jù)庫每種心電節(jié)拍的數(shù)量
除以上數(shù)據(jù)集,中國心血管疾病數(shù)據(jù)庫(Chinese Cardiovascular Disease Database,CCDD)[17]被構(gòu)造用來研究面向臨床的ECG分析算法,其中的數(shù)據(jù)全部來自臨床,目前包含近18萬條12導聯(lián)心電圖記錄,采樣率為500 Hz,所有記錄都有完整的診斷結(jié)論[18]。目前,國內(nèi)部分學者使用該數(shù)據(jù)庫進行實驗,以使網(wǎng)絡(luò)架構(gòu)更具有適用性。
除了網(wǎng)絡(luò)上可用的數(shù)據(jù)庫外,有一些研究工作者使用建模方法,即使用ECG模擬器構(gòu)建合成數(shù)據(jù)集,模擬器可以根據(jù)設(shè)置不同的參數(shù)模擬合成不同類型的ECG信號,通過模擬合成大量的ECG信號進行實驗,可以評估其提出的網(wǎng)絡(luò)模型的性能表現(xiàn),然后再使用公共數(shù)據(jù)庫進行驗證或在現(xiàn)實的臨床數(shù)據(jù)上評估其性能[19]。同時,由于數(shù)據(jù)不夠,為滿足網(wǎng)絡(luò)訓練的需要,通過增強數(shù)據(jù)而不會導致過度擬合,還利用神經(jīng)網(wǎng)絡(luò)生成心電信息,以滿足研究中數(shù)據(jù)缺乏的問題。
(2) 數(shù)據(jù)處理。ECG信號預處理包括消除噪聲、基線漂移和增強數(shù)據(jù)等。消除噪聲主要有濾波器組、均值濾波、Butterworth濾波、小波變換[20]等。使用均值濾波時,由于增加了平滑點,導致其幅度下降,故而需要采用補償方法將波信號的幅值補償?shù)皆瓉頂?shù)值。文獻[21]中指出,Butterworth濾波在幅度上會下降還會在波信號上發(fā)生形變,導致信號在一定程度上失真。經(jīng)驗模態(tài)分解算法(EMD)是近年來信號處理技術(shù)的一個新熱點,其可以將給定的數(shù)據(jù)分解為本質(zhì)模態(tài)函數(shù)(IMF),使得隱藏信息暴露,更便于處理[22]。Ji等[23]使用經(jīng)驗分解算法將ECG信號分解成10個本質(zhì)模態(tài)函數(shù)(IMF),通過小波變換算法將高頻的IMF1和IMF2進行去噪,通過中值濾波算法消除低頻的IMF9和IMF10的基線漂移,之后對處理過的IMF模式和剩余的未處理的IMF模式進行重構(gòu)以獲得平滑且無噪聲的ECG信號。另外,數(shù)據(jù)增強可以充當正則化方法以防止神經(jīng)網(wǎng)絡(luò)過度擬合,并改善具有不平衡類頻率的問題的分類性能[24]。
在對信號經(jīng)過一定的處理后,對輸入到神經(jīng)網(wǎng)絡(luò)中的信息還需要進一步處理。心電圖分類的一個重要基礎(chǔ)是檢測R波峰,因此定位心跳節(jié)拍,心跳周期如圖6所示(心臟電活動的去極化表現(xiàn)為心電圖上的P波和QRS波,心臟電活動的復極化表現(xiàn)為心電圖上的T波,其中PR、ST分別表示心電圖上的P-R段和S-T段)。用于R峰提取的當前算法傾向于使用小波變換計算來自原始ECG信號的特征,其次是基于精細調(diào)節(jié)的閾值分類器。根據(jù)小波理論,R波峰值點對應于模極大值的過零點。通過檢測R波的模極大值的位置來定位R波峰值位置,然后根據(jù)R峰值位置向前和向后搜索QRS波的起點和終點。此外,離散小波變換結(jié)合自適應閾值去噪方法檢測心電信號的R波。檢測模數(shù)最大值和過零點以找到QRS波的位置,然后使用自適應噪聲閾值方法來判斷檢測的峰值是R波還是毛刺。
圖6 心跳周期示意圖
特征提取即根據(jù)信號特征從波形信號提取重要特征,分類器性能最重要的組成部分之一是輸入數(shù)據(jù)的特征。被用于分類的特征可以分為手工提取的特征和神經(jīng)網(wǎng)絡(luò)學習得到的特征?;谛〔ㄗ儞Q(通過小波變換和數(shù)字形態(tài)學相結(jié)合)提取的特征常常和支持向量機、KNN等特定的分類器同時使用。Kumar等[25]使用最小平方支持向量機分類器,對來自小波變換獲得的特征進行分類,準確度、敏感度和特異性都達到了99.5%以上。Oh等[26]分解ECG信號提取重要的特征,輸入到K最近鄰分類,獲得的性能超過了Kumar等的表現(xiàn)。另外,主成分分析、高階統(tǒng)計、獨立分量分析和Lyapunov指數(shù)(LE)[27]等方法也常用于對ECG信號的提取,表2為部分使用傳統(tǒng)自動分類算法的信息。
表2 傳統(tǒng)自動分類算法
將分段信號直接用于分類器執(zhí)行在性能上表現(xiàn)得不是很好,在深度學習領(lǐng)域,特征提取和分類階段在一個網(wǎng)絡(luò)中循環(huán)執(zhí)行,以使網(wǎng)絡(luò)學習提取特征并學會分類。用于網(wǎng)絡(luò)中的經(jīng)過預處理之后的信號,有兩種方式作為輸入信息:第一種是將分割后的節(jié)拍信息輸入到網(wǎng)絡(luò)中;第二種是將其轉(zhuǎn)換為時頻域進行特征的提取,能夠?qū)崿F(xiàn)更好的分類精度。在關(guān)于人工神經(jīng)網(wǎng)絡(luò)的相關(guān)文獻中,Sánchez等[28]開發(fā)并評估了兩種用于心律失常(Atrial Fibrillation,AF)信號分類的神經(jīng)網(wǎng)絡(luò)架構(gòu)。一種是傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Network,F(xiàn)NN)輸入時間序列格式的ECG信號,另一種是將歸一化的ECG信號經(jīng)過GASF變換之后的圖像輸入卷積神經(jīng)網(wǎng)絡(luò)。實驗結(jié)果表明,前饋神經(jīng)網(wǎng)絡(luò)中的平均準確度為86.4%,與卷積神經(jīng)網(wǎng)絡(luò)的平均精度97.6%相差較遠。作者認為其原因是將信號轉(zhuǎn)換為圖像之后放大了信號的特征,更容易檢測到異常。另外,Jun等[29]使用GASF變換將Q波峰值切片變換成二維灰度圖像,獲得了99.05%的準確度。
深度學習方法中,與LSTM相比,CNN具有更快的計算時間和更少的復雜性,由此常使用卷積神經(jīng)網(wǎng)絡(luò)中的卷積層和最大池化層來提取節(jié)段中的重要信息,使用循環(huán)神經(jīng)網(wǎng)絡(luò)學習節(jié)拍時序上的信息,最后通過一個完全連接層(該層常使用Softmax激活函數(shù))進行分類。Logistic回歸類標簽取值通常為0或1,Softmax回歸是在Logistic回歸上的擴展??筛鶕?jù)提取到的不同特征,設(shè)計相對應的類標簽[30]。在對CNN與LSTM的混合模型文獻解讀中,CNN常用作特征提取器,LSTM網(wǎng)絡(luò)用作順序?qū)W習,之后使用完全連接層進行分類[31]。
在對網(wǎng)絡(luò)模型訓練中,通常使用Adam優(yōu)化器和分類交叉熵函數(shù)來優(yōu)化參數(shù)。優(yōu)化訓練結(jié)果的方法有:
(1) 添加Dropout層。網(wǎng)絡(luò)中通常會添加一個Dropout層,可以有效防止由于參數(shù)膨脹引起的緩慢梯度下降。Dropout是一種正則化技術(shù)[32],旨在訓練過程中,網(wǎng)絡(luò)節(jié)點以指定的速率隨機丟棄,通過概率地減少同一層的節(jié)點來減少層之間的依賴性即通過防止單元彼此過于順從而顯著減少過度擬合。文獻[33]通過實驗發(fā)現(xiàn),與丟棄 20%的LSTM循環(huán)連接和輸入連接的單元(方案A)相比,丟棄20%的LSTM循環(huán)連接和隨后的匯集層的單元(方案B)的模型具有更好的泛化能力。
(2) 使用非線性激活函數(shù):ReLU,Softmax函數(shù)。Nair等[34]實驗表明使用ReLU可以更快地收斂并提高精度。ReLU函數(shù)表示為:f(x)=max(x,0)。
(3) 目標復制和輔助輸出。文獻[35]的實驗表明,目標復制[36]和輔助輸出都可提高性能并減少過度擬合。目標復制即為在每個時間步復制目標使得整個序列的分類任務更容易,目標復制不僅僅是正則化,而是通過提高本地目標來減少對遠程依賴的程度。輔助輸出不及目標復制所帶來的性能提升顯著,但是其正則化效果更大,原因在于其以緩慢的訓練為代價。
(4) 批量標準化(Batch Normalization)。批量標準化的位置通常在激活函數(shù)之前和卷積層之后應用。而根據(jù)文獻[29]的經(jīng)驗,在有些情況下激活功能之后放置標準化層有利于心電圖心律失常分類。
(5) 改變訓練集和驗證集的比例。驗證集用于確定模型是否已達到給定訓練集的足夠精度。如果沒有驗證程序,模型可能會過度擬合。當訓練集和驗證集的比例發(fā)生改變時,可以改變模型的性能。驗證數(shù)據(jù)集用于調(diào)整參數(shù)并確定設(shè)計模型的最佳單元數(shù)。
文獻[19]與利用人工選擇的特征或從原始信號域?qū)W習特征的傳統(tǒng)方法不同,Zhang等提出了基于深度卷積神經(jīng)網(wǎng)絡(luò)的方法(DCNN),使用傅里葉變換將ECG信號變換到時頻域后,設(shè)計了一個涉及二維卷積的深度CNN架構(gòu)。其架構(gòu)針對特定長度的ECG樣本訓練特定的DCNN,以端到端的方式從時域?qū)W習ECG波信號的特征并進行分類。其將ECG信號變換為二維頻譜圖作為輸入,從頻譜圖中可以得到信號的時頻特征,有更好的分類精度。但是其無法學習過去的決策和特征,導致其分類上需要更精細的可視化分類,否則有些聚類會與其他類混合,影響分類結(jié)果。李端等[45]將ECG信號經(jīng)過小波自適應閾值去噪算法之后,使用20層深度殘余卷積網(wǎng)絡(luò)對5種心電圖異常進行分類,分類準確度達到了99%以上。文獻[46]提出了具有塊結(jié)構(gòu)的10層深度卷積神經(jīng)網(wǎng)絡(luò)模型,對所有ECG導聯(lián)信號單獨訓練和驗證。該模型在檢測心肌梗死(Myocardial Infarction)上產(chǎn)生了超過99%的準確度和靈敏度性能,適用于可穿戴設(shè)備和重癥監(jiān)護病房。Fan等[47]將DCNN結(jié)合多尺度融合技術(shù)用于單導聯(lián)短ECG信號,以此篩查心房顫動。
Acharya等[48]提出了一個11層CNN網(wǎng)絡(luò)模型,該模型不需要去噪及R峰檢測。Teplitzky等[31]使用12層CNN模型用于移動遙測全自動心室異位搏動的分類,其特異性和敏感性達到了99%。文獻[49]搭建了34層的卷積神經(jīng)網(wǎng)絡(luò),將29 163個心電樣本映射到12種類型分類中,其性能超越了專家的診斷。文獻[10]將CNN應用于ECG的特征學習機制上,用于篩查患者的信號,其學習機制能夠生成具有魯棒性的特征而無需專業(yè)領(lǐng)域知識和特征選擇算法。同時,該文獻將CNN與其他標準分類器集成,即K-近鄰、SVM和多層感知器(MLP)網(wǎng)絡(luò)進行比較。實驗結(jié)果得出CNN在端到端上的性能優(yōu)于CNN與其他分類器集成所達到的性能。在早期,Kiranyaz等[50]使用平移不變的二元小波變換來提取形態(tài)特征,為避免維度災難現(xiàn)象,使用主成分分析方法進一步減少高維數(shù)據(jù)空間的冗余信息,其網(wǎng)絡(luò)在MIT-BIH數(shù)據(jù)庫上實現(xiàn)了99%的準確度。表3為近三年使用卷積神經(jīng)網(wǎng)絡(luò)進行心電圖分類的文獻總結(jié)。
表3 基于卷積神經(jīng)網(wǎng)絡(luò)的心電圖異常分類
Saadatnejad等[53]首先將輸入的數(shù)字化心電樣本分割成心跳,提取RR間隔和小波特征,然后將心電信號和特征輸入到兩個基于RNN的模型中,對每個心跳分類,然后將兩個輸出混合到MLP中形成對每一個心跳的最終分類。該算法是輕量級的,可用于連續(xù)監(jiān)測心電分類的個人可穿戴設(shè)備中。文獻[11]提出了深度雙向LSTM的網(wǎng)絡(luò)模型,其通過對ECG信號分類時組成每個ECG搏動的特征向量和Lyapunov指數(shù)并輸入到循環(huán)神經(jīng)網(wǎng)絡(luò)分類器進行分類。文獻[54]用于ECG分類的RNN方法,使用人工選擇特征和RNN網(wǎng)絡(luò)作為分類器,核心思想是:從ECG記錄中的心跳序列中提取多種特征,用作RNN聚合的輸入特征,使用Softmax輸出層的多層感知器將各個模型的預測混合到每類分類的F1分數(shù)中。RNN訓練識別其他心律失常主要集中在心律的突然延長的停頓上,以確定該記錄最可能是其他心律失常。表4記錄了使用循環(huán)神經(jīng)網(wǎng)絡(luò)進行心電圖分類的文獻。
表4 基于循環(huán)神經(jīng)網(wǎng)絡(luò)的心電圖異常分類
與文獻[22]類似,文獻[55]提出的雙向LSTM和CNN展現(xiàn)的功能不同。其根據(jù)CNN有利于提取內(nèi)部形態(tài)特征但不利于節(jié)拍之間信息的特點,將ECG搏動的形態(tài)特征用CNN提取,然后通過雙向LSTM考慮每個節(jié)拍的特征,最后通過完全連接層進行分類。文獻[56]應用了疊加CNN和LSTM網(wǎng)絡(luò)用于CAD心電信號分類,獲得了99.85%的準確度,但其局限于少量數(shù)據(jù)的高準確度。文獻[33]使用七層CNN獲得特征映射,隨后使用LSTM從特征圖中提取時間信息,最后通過完全連接層進行心律失常分類,其沒有消除噪音而獲得了98.1%的分類精度。由于CNN具有提取局部光譜和空間/時間變化不變的特征的能力,文獻[24]提出了兩種架構(gòu)進行比較,其中:第一種架構(gòu)為24層的CNN,使用線性分類器循環(huán)訓練;第二種架構(gòu)是用24層CNN和3層LSTM訓練。得出數(shù)據(jù)增強時,CRNN產(chǎn)生了比CNN更高的總體準確度。表5為部分使用多網(wǎng)絡(luò)架構(gòu)進行心電圖分類的文獻總結(jié)。
表5 基于多網(wǎng)絡(luò)架構(gòu)的心電圖異常分類
通過神經(jīng)網(wǎng)絡(luò)診斷心電圖的諸多研究中,使用最多的是將卷積神經(jīng)網(wǎng)絡(luò)作為特征提取器,將長短期記憶模型用于學習心率節(jié)拍信息。大部分經(jīng)過訓練的網(wǎng)絡(luò)都已經(jīng)表現(xiàn)出了很好的性能,其中許多研究的精度和特異性都超過了99%,甚至針對特定的心電異常信號其精度能達到100%,超過了人類醫(yī)生的診斷能力。雖然基于神經(jīng)網(wǎng)絡(luò)的心電圖分類進展已經(jīng)發(fā)展得較好,但是也存在一些問題需要進一步研究解決:(1) 心電信號預處理方面,對是否需要處理存在一定的爭論,比如有的研究表明未處理的信號因為噪聲等存在一定的失真,而有的研究表明,通過小波變換等處理后的信號特征會有缺失,不能很好地還原原始信號。(2) 有的網(wǎng)絡(luò)模型的表現(xiàn)僅限于部分心電信號異常分類,其用于訓練和驗證的數(shù)據(jù)集非常專一,沒有結(jié)合臨床數(shù)據(jù)訓練網(wǎng)絡(luò)而不具備泛化能力。(3) 有的網(wǎng)絡(luò)雖然能夠達到很好的性能,如文獻[51]的預測精度已經(jīng)超過了專家評估,但未給出算法的計算效率。(4) 雖然有的網(wǎng)絡(luò)其性能已經(jīng)達到非常高的水平,但是目前為止還不能完全替代醫(yī)生用于實際操作,進一步的確定仍需醫(yī)生的專業(yè)領(lǐng)域知識。
本文對神經(jīng)網(wǎng)絡(luò)在心電圖分類的應用進行了全面回顧,重點關(guān)注了網(wǎng)絡(luò)架構(gòu),特別是對不同類型的神經(jīng)網(wǎng)絡(luò)進行了分類研究。給出了神經(jīng)網(wǎng)絡(luò)算法和心電檢測步驟的介紹,并對網(wǎng)絡(luò)應用于分類中的性能指標進行了回顧。研究表明,使用深度學習進行自動分類的性能已經(jīng)達到了比較高的水平,如準確度和特異性都超過了99%。就其表現(xiàn)而言,可替代傳統(tǒng)的手工提取的特征與特定自動分類器結(jié)合方法。但是,只考慮準確度等指標還遠遠不足以支持其在臨床上得以應用,在未來需要考慮的是優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)以減少計算或者增強其泛化能力。隨著輕便式可穿戴醫(yī)療保健系統(tǒng)的發(fā)展,平臺化、用戶可操作性、簡約化是未來研究中應考慮的問題。國外已經(jīng)有研究者在開展平臺化研究,文獻[60]設(shè)計了自動檢測心律失常的系統(tǒng)和Android健康云平臺。 本文提出一個新的方法:即將文獻[61]對心電信號不進行預處理直接用于訓練,不破壞信號特征的思想,結(jié)合文獻[57]的網(wǎng)絡(luò)架構(gòu),可建立一個具有強泛化能力并滿足準確度的網(wǎng)絡(luò)架構(gòu)。未來,在應用深度學習可以接近資深醫(yī)生的診斷能力之前,仍有許多工作在等待解決。