蘇淏璇,徐秀林
(上海理工大學醫療器械與食品學院,上海 200093)
心血管疾病是全球第一大死亡病因,主要由心臟病和中風引起[1]。因此,臨床上對心血管疾病的精確識別診斷至關重要。心電圖(electrocardiogram, ECG)信號是評估心臟功能最常用的檢查方法,是一種反映潛在心臟狀況的非侵入性檢測,且價格低廉[2-3]。
目前臨床上主要是由經驗豐富的醫生對ECG進行解讀診斷,異常ECG信號的非線性和復雜性,使得很難檢測其特征,往往需要花費大量時間,其準確性也易受醫生主觀因素的影響[4-5]。因此,如何將快速發展的人工智能技術與ECG診斷相結合,開發一種輔助醫生快速精確診斷ECG的系統,是研究人員急待解決的問題。
二十一世紀的醫學診斷以大量的生物醫學數據以及用于數據分析的高性能計算工具的發展為標志[6],伴隨著人工智能的發展和深度學習的出現,尤其是將深度學習神經網絡成功應用于圖像分類后,深度學習技術已在醫學圖像分析中獲得了快速發展[7-8]。深度學習應用于計算機輔助診斷(computer aided diagnosis,CAD),能實現快速和準確輔助醫生對疾病進行診斷和治療。
上世紀七十年代,Hubel等[9]通過對貓視覺皮層細胞的研究,提出感受野概念,即卷積神經網絡(convolutional neural network,CNN)每一層輸出的特征圖上的像素點在輸入圖片上映射的區域大小。后來,Fukushima[10]在感受野概念的基礎上提出的神經認知機(Neocongition)概念,可以看作CNN的第一個實現網絡。深度學習已引起越來越多研究者的關注,在圖像處理、自然語言處理、語音處理等方面均有成功應用,尤其是圖像識別方面[11]。
CNN是受生物思維啟發的多層感知器(multilayer perceptron,MLP),由輸入層、卷積層、池化層、完全連接層和輸出層組成[12],見圖1。與機器學習一樣,CNN模型也需要對輸入數據進行預處理,常見的預處理方式有去均值、歸一化、PCA/SVD降維等。卷積層使用卷積核進行特征提取和特征映射,通常使用多層卷積層來得到更深層次的特征圖。池化層通常周期性插入在卷積層間,其作用是逐漸降低數據體的空間尺寸,進而減少網絡中參數的數量,減少計算資源消耗,同時還能很好地控制過擬合。全連接層是將上一層輸出展開成一維數據,并連接到每一個神經元上,然后輸入到分類器中。CNN通常以softmax作為輸出層,應用于分類問題。

圖1 CNN架構

一維ECG采樣值序列數據往往不能反應波形的局部特征,如陡峭、凹凸程度及傾斜程度等。Huang等[14]提出一種基于二維深度CNN(two dimensional depth neural network,2D-CNN)的心電心律失常分類方法,利用短時傅里葉變換將ECG的時域信號轉換為時域譜圖,將其作為2D-CNN的輸入,對不同心律失常類型的ECG進行識別和分類。利用MIT-BIT數據庫的ECG數據,結果顯示1D-CNN的平均準確率為90.93%,而2D-CNN的平均準確率達到了99.00%。
Rasmus等[15]采用CNN和循環神經網絡(recurrent neural network,RNN)相結合的端到端模型,從ECG分割的RR間隔(RRI)片段中,采用CNN提取高級特征,并且加入循環神經網絡(recurrent neural network,RNN)結構。RNN結構因使用自反饋的神經元,在處理ECG等時間序列數據時具有優越性。將ECG分類為心房顫動(AF)和正常竇心性心率(NSR),該模型在三個不同數據集上進行訓練和驗證,通過5倍交叉驗證,其靈敏度和特異性分別達到98.98%和96.95%,此外,該模型能在1 s內高效分析24 h的ECG記錄。研究結果表明,該模型與標準基準ECG數據集上評估的最新模型相比,在檢測AF上具有更好的性能。
CNN通過局部感受野、權重共享和降采樣三大策略,減低了網絡模型復雜度,同時對圖片特征的平移、旋轉、尺度縮放等形式具有不變性,因此被廣泛應用于醫學影像診斷領域。
RNN和傳統神經網絡一樣,可分為輸入層、隱藏層和輸出層。RNN的特別之處在于其對序列的每個元素均執行相同的任務,輸出取決于先前的計算,具有“記憶”功能,結構原理見圖2。網絡在t時刻接收到輸入Xt之后,隱藏層的值是St,輸出值是Ot。St的值不僅僅取決于Xt,還取決于St-1。
為建立具有自動特征學習方案和高效優化機制的ECG心電節拍分類系統,Wang等[16]提出一種基于RNN和主動學習的全局可更新分類方案,即全局循環神經網絡(global recurrent neural network,GRNN)。利用主動學習擴大了訓練范圍,從而改善了訓練樣本的多樣性,由大型未標記數據池中選擇信息量最大的樣本,并將其添加到訓練集中。GRNN是基于形態和時間信息,采用RNN探索ECG搏動的潛在特征。首先,依靠GRNN的大容量和擬合能力,可使用一個模型對多個不同患者的樣本進行分類。其次,當訓練樣本和測試樣本來自不同的數據庫時,GRNN可以提高泛化能力。此外,RNN能自動識別不同類別樣本之間的潛在差異。

圖2 RNN結構原理圖Fig.2 RNN structure schematic diagram
Elif[17]提出一種基于心電信號為混沌信號的ECG變化自動診斷方法。利用非線性動力學工具計算出四種ECG(正常搏動、充血性心力衰竭搏動、室性心動過速搏動、房顫搏動)的Lyapunov指數,并作為RNN模型的輸入數據。研究表明,Lyapunov指數能很好地體現心電信號的特征,基于這些特征訓練的RNN模型具有很高的分類精度。
給出相關參數,對兩個球體模型進行,給定中心埋深相同z1=z2=20m,質量不同,以及中心埋深不同z1=20m,z2=40m,質量亦不同,其他參數不變,得到成像結果圖7。
為解決RNN在訓練過程中容易出現梯度下降或者梯度爆炸的問題,Hochreater等[18]提出了長短期記憶(long short-term memory ,LSTM)網絡架構,是RNN算法的一種改進。其引用CEC單元解決了隨時間反向傳播算法和RNN模型的梯度消失和梯度爆炸問題。Annisa等[19]提出一種基于RNN的深度學習序列建模方法用于心電節律信號的分類,并與RNN改進的LSTM模型進行了性能比較。對比結果表明,在網絡模型超參數相同的情況下,LSTM在敏感性、特異性和精密性方面均優于標準的RNN,分別達到98.49%、97.97%和95.67%。
RNN通過引進時序,可以根據以往的數據來推測未來的事件,在語音識別和文本推測方面取得了突破性進展,但由于RNN無法進行長期記憶的輸出,一些RNN改進的長期記憶模型正在研究中。
Hinton[20]在2006年提出深度信念網絡(deep belief network,DBN), DBN由多層神經元受限玻爾茲曼機(restricted boltzmann machine,RBM)構成,其結構見圖3。RBM又分為顯性神經元和隱性神經元,其中顯性神經元用于輸入訓練數據,隱性神經元用于提取特征,隱性神經元又稱特征檢測器。玻爾茲曼可用于監督學習和無監督學習。
Sherin等[21]采用RBM和 DBN,對在單導聯ECG檢測心室和室上性心跳進行ECG分類。通過心跳檢測獲取 R波波峰,再經過圖像分割檢測出T波。采用兩種特征集,特征集1包括RR間期、心跳間期和分段形態學,特征集2由RR區間和固定形態組成。將特征集作為DBNs的輸入進行分類,DBNs是一種多層生成神經網絡,它由堆疊的邏輯RBM組成,其中最底層的RBN學習數據的淺模型,下一層RBM學習對第一層隱藏單元建模。在進行分類時,DBN可以使用RBM預訓練過程來初始化深度網絡的權重,然后通過反向傳播的誤差導數對這些權值進行有區別的微調。仿真獲得室性異位搏動平均識別正確率(93.63%)和室上異位搏動平均識別正確率(95.57%)。結果證明,對比傳統方法,基于深度學習框架分類器以更低采樣率和更簡單的特征實現了最先進的性能模型。

圖3 DBN架構
Wu等[22]為了深入提取連續心電信號特征,將高斯-伯努利和伯努利-伯努利兩種類型的受限波耳茲曼機堆疊在一起形成DBN。通過對比散度和持續對比散度兩種訓練算法來學習RBM參數,因此,可以以無監督的方式從原始ECG數據中提取合適的特征。為了提高DBN性能執行微調過程,在結果隱藏表示層的頂部添加softmax回歸層,以執行多分類。結果表明DBN分類心率失常時,在特征學習時間上取得了較好的效果。
通過母體能有效對胎兒心電圖(the foetal electrocardiogram,fECG)進行檢測。Jagannath等[23]提出一種用于fECG信號增強的貝葉斯深度信念網絡(bayesian deep belief network,BDBN)。貝葉斯濾波器為腹部ECG(aECG)中的非線性轉化的母體ECG(mECG)成分提供了理想的近似值。DBN系統評估mECG的非線性變換信號的非線性關系,并準確地將mECG信號與噪聲信號進行消除,得到理想的高質量的fECG信號。
DBN的靈活性使其可與其他模型進行融合拓展。針對高維度數據訓練困難的問題,卷積DBNs(convolutional deep belief networks,CDBNs)利用相鄰像素的空間關系,可輕松得到變換的高維圖像。目前已有張義超等[24]研究的基于優化卷積深度信念網絡的智能手機身份認證方法,但由于模型的學習率受到樣本量大小和計算資源等限制,在臨床圖像應用上還無法訓練出較成熟的模型。
He等[25]提出深度殘差網絡(deep residual networks,DRN),其網絡深度達到152層,比經典的CNN網絡多147層,比GoogleNet多130層,能很好地避免梯度爆炸或消失,其原理見圖4。DRN引入了殘差塊的設計,原理是將前面若干層的數據輸出直接跳過多層,引入到后面數據層的輸入部分,解決了神經網絡層數越深越容易產生模型梯度消失和梯度爆炸的問題。

圖4 DRN工作原理圖
Cao等[27]提出了一種改進的多尺度分解增強殘差卷積神經網絡。該方法將長度差異較大的原始心電記錄重新分割為9 s的短樣本,然后利用導出的小波框架分解,將分割后的段樣本分解,并重構成不同尺度的子信號樣本。利用原始短信號數據集和各尺度重構數據集訓練快速下采樣殘差卷積神經網絡(fast down-sampling residual convolutional neural network,FDResNets),然后應用遷移學習技術將性能良好的三個FDResnet耦合成一個多尺度分解增強殘差卷積神經網絡(multi-scale decomposition enhanced residual convolutional neural network,MSResNet)。結果表明, 基于2017年PhysiNet/CinC[28]比賽提供的大型單導聯ECG數據集,經過6次交叉驗證,多尺度神經網絡平均準確率達到92.1%,F1綜合評分達到89.9%。
Deepankar等[28]開發了一個端對端的框架,利用DRN將不同的ECG片段分為四類,即心房顫動、正常節律、其他非噪聲癥狀心電節律和噪聲節律,從而消除手工制作特征的需要,將DRN結合CNN和卷積遞歸神經網絡進行比較,利用數據增強技術解決了數據不平衡的問題,生成更多的少數類樣本,并利用F1對模型進行了測試。結果表明,采用PhysiNet/CinC心臟病學挑戰杯2017年數據庫,該方法F1評分為0.88±0.02,其準確率和F1評分均優于CNN和RNN。
隨著深度神經網絡層數的不斷增加,模型獲取高階特征的能力也越來越強,而當網絡層級達到一定的深度后,模型訓練精度和測試精度由于梯度消失或梯度爆炸而迅速下降,而DRN可以很好解決該退化問題,通過增加網絡深度提高網絡模型性能。
隨著智能化醫療需求的不斷增加,人工智能正快速地應用于醫療科技領域,深度神經網絡將更加深入地應用于臨床,為廣大醫護人員和患者提供更高質量的醫療服務。
深度神經網絡不同的架構和分類方法映射出不同的模型學習能力及獲取特征的角度,例如在ECG分類識別中,CNN的識別率略高于其他判別模型深度神經網絡,而RNN的優勢是對短時間序列數據更敏感,長短期記憶網絡則解決RNN無法處理長距離依賴的問題。但是由于深度神經網絡無法做到對網絡層級的進一步深化,從而誕生了DRN,大量研究表明,DRN可以很好地解決深度神經網絡層級越深,越出現梯度消失或梯度爆炸的問題,使模型的準確率得到進一步提升。DBN不同于CNN和RNN等圖像處理架構,既可用于非監督學習、特征學習,也可以作為分類器用于監督學習。
應用不同深度網絡架構,研究人員可以很好地開發并構建ECG診斷模型,幫助醫護人員進行精確治療。目前,大部分基于深度學習的ECG輔助診斷系統均在試驗中,且大多使用全球公共數據集來驗證其算法的準確性,公共數據集已經對ECG進行標記分類等預處理。而我國大部分醫院采用的是12導聯的ECG圖片,其未經過導聯的分類和處理,可能同時存在正常心拍與非正常心拍,因此,在應用診斷準確率上有待提高。另一方面大部分神經網絡的學習率因受到訓練樣本和計算資源的限制,尚未訓練出較為成熟的深度模型,各個網絡模型均存在缺陷,如CNN池化層會丟失大量有價值信息,忽略局部和整體之間的關聯性,RNN的梯度爆炸在LSTM及其改進模型中得到了一定程度的解決,但是對于更長的序列數據,LSTM神經網絡的診斷準確率不高,且計算費時。因此,如何通過改進深度神經網絡架構和模型超參數,使其廣泛應用于臨床心電圖,是深度神經網絡在ECG輔助診斷中需要解決的關鍵問題。