顏 菲 胡玉平
1(柳州鐵道職業技術學院信息技術學院 廣西 柳州 545616) 2(廣東財經大學信息學院 廣東 廣州 510320)
心電圖ECG(Electrocardiogram)是一種非入侵性的心臟測試信號,廣泛應用于各類潛在的心臟病的預測[1-2]。近些年,國內外學者歸納出了檢測和分類心律失常信號的三個基本步驟[3-4],即:預處理(消除噪聲和偽影,增強ECG信號),特征提取(基于特征描述或降維方法,從波形中提取特征),特征分類(基于獲取的特征獲得分類器的判別函數)。然而,這些方法得到的分類結果很難滿足美國醫療器械促進協會AAMI(Association for the Advancement of Medical Instrumentation)的評估標準。
為了解決以上問題,研究人員不僅對方法性能的評判標準進行了研究,而且提出了允許醫學專家進行在線交互的半自動分類方法。例如,文獻[5]通過介紹心電信號預處理、心搏分割技術、特征描述方法和學習方法,介紹了基于心電信號的自動異常心搏分類方法的研究現狀,描述了用于評估由AAMI開發的、ANSI/AAMI 2008中的性能評價數據庫,同時提出了方法性能的評價流程。文獻[6]提出了一種用于心電圖診斷的決策支持方法,假設使用數字助理的半自動解釋為最優的心電人機解釋模型。為了提高解釋精度,減少漏診,設計了采用網絡技術的微分診斷方法,通過將傳統方法與提出的半自動方法進行實驗比較可知,提出的方法可以大幅度提高診斷的準確率,這表明通過引入決策支持工具,并將相關方法與認為診斷相結合,確實具有非常好的診斷效果。此外,文獻[7]提出了一種用于設計半自動分類方法的通用集成架構,在對已有方法進行應用驗證的基礎上,開發了一種新的方法設計軟件。然而,這些半自動方法過度依賴于選擇機制,而這些選擇機制并沒有統籌考慮可以提升分類器準確率的樣本,因此診斷精度受到了較大限制。
隨著人工智能技術及需求的不斷發展,深度神經網絡逐漸成為數據分析與信息處理領域的研究熱點[8-11],并在醫療圖像分析等癥多領域得到了廣泛應用。文獻[12]是一篇非常有價值的學術論文,論文作者基于主成分分析和小波變換的特征提取技術以及基于模糊C均值聚類方法的數據縮減技術,同時利用基于多層感知器與反向傳播方法的神經網絡結構,構造了四種不同的ECG分類方法。針對10種不同心律失常信號進行的分類實驗表明,所提方法均具有非常好的分類精度。這些方法的提出,為科研人員進行后續的研究指明了方向。例如,文獻[13]將深度學習方法引入心電信號分類中,利用堆疊式稀疏自編碼器建立分類器,獲取高層特征,同時將軟最大回歸與SAE網絡相結合來完善分類器,從而實現更高精度的心電信號分類,實驗結果證實了所提深度網絡方法在心電信號分類中具有非常好的性能。文獻[14]使用多分辨率小波方法和Gabor濾波器從心電信號中提取波段特征和其他紋理特征,并利于基于支持向量機與神經網絡相結合的方法對特征進行分類,實現了心律失常的快速、高精度分類。
本文在上述研究成果的啟發下,提出一種基于深度神經網絡DNN(Deep neural network)[15]與疊加去噪自動編碼器SDA(Stacked denoising autoencoder)[16]的新型ECG信號主動分類方法,主要創新點包括:
1) 基于稀疏約束的SDA對給定可用訓練數據進行學習,得到具有無監督學習模式的特征描述;
2) 在DNN的隱藏層添加回歸層來構建一種新的DNN,并在AAMI的標準下進行分類;
3) 利用主動調節技術降低專家對標簽數據實例的影響,完善分類器。
為了驗證所提方法的有效性,在三個機構提供的ECG數據庫中對所提方法及另外兩種最新的ECG分類方法進行了實驗對比,結果證明了所提方法在準確率和快速性方面具有明顯的優越性。


圖1 本文方法的流程


SDA由編碼和解碼量部分組成。在編碼階段,通過非線性激活函數f(·)將包含噪聲的輸入映射到隱藏層hi∈Rl:
(1)
式中:W∈Rl×d為編碼權重矩陣;b∈Rl為編碼偏移向量;激活函數f(a)=1/(1+exp(-a))。
在解碼階段,同樣通過非線性激活函數g(·)映射隱藏層來重建輸入向量xi,即:
ri=g(M·hi+q)
(2)
式中:M∈Rd×l為解碼權重矩陣;q∈Rd為解碼偏移向量;激活函數g(a)=max(a,0)。
為了確定SDA運算過程中的參數向量δ=(W,M,b,q),需要求解如下所示代價函數的最小值:
(3)

(4)
式中:ρ為隱藏層節點的目標激活函數;表示第j個隱藏層節點的平均激活函數,其表達式如下:
(5)
為了優化式(3)的代價函數,首先將參數向量初始化為接近于01×4的向量,然后使用擬牛頓方法對其進行更新。為了減少參數數量,在優化過程中將編碼層的權重學習關聯到解碼層,即令W=M。
在完成數據與訓練后,給出一種計算量較小的,包含H個隱含層的深度神經網絡框架構建方法,進而通過在隱含層頂端添加回歸層來完成信號分類,最后通過梯度下降方法最小化式(6),實現DNN的優化。整個過程的流程如圖3所示。
(6)
式中:κ為網絡參數;Wsm為層權重,通過將Wsm初始化為較小的隨機值來估計參數向量σ=(Wi,bi,Wsm),i=1,2,…,H,通過在預訓練階段獲取的編碼權重來初始化H個隱藏層權重。

圖3 深度神經網絡構建流程
在上述步驟的基礎上,提出一種DNN主動調節方法,從而避免已有方法忽略可以提高分類準確性信號的缺點,同時在交互過程中允許專家標記與ECG測試最相關的樣本數據。為了選擇最相關的ECG信號,采用基于熵的信號選擇標準:計算每個測試信號的熵值,然后標記具有最高熵值的信號sme(高熵值意味著可以使用較低可信度對ECG 進行分類),通過將這些ECG信號添加至訓練集合來進一步改善特征空間中分類器的決策區域。
為了避免由訓練數據集中的不確定數據引起的過擬合問題,選用基于進化計算中的優勝劣汰原則來融合當前迭代和先前迭代中DNN的輸出值,可以保證網絡的穩定性。具體的方法如下所示:
(1) 設置輸入數據:訓練數據集S,測試數據集C,DNN參數γ1、γ2、γ3,迭代次數a,每次迭代標記的ECG信號數量sme;
(2) 最優化式(3),使用擬牛頓方法計算DAE權重δ;
(3) 利用δ初始化DNN,通過最小化式(6),使用反向傳播計算σ;
(4) 使用預訓練的DNN分類測試記錄,假設P1為估計的后驗概率;
(5) 假設初始化的訓練集合為空集T=?;
(6) fori=1:a
① 使用P1計算每個測試數據的熵;
② 根據不確定性排序測試C;
③ 專家標記位于序列頂端的sme個信號;
④ 使用新標記的信號擴展訓練數據集;
⑤T=[T|Ss_me];
⑥ 使用T更新DNN權重;
⑦ 使用更新的DNN分類測試記錄C;
⑧ 假設P2是當前估計的后驗概率,使用最大規則更新P2:P2=max(P1,P2);
⑨ 假設P1=P2,根據最大P1選擇測試數據C的標簽;
(7) end
(8) 輸出最終分類結果
分類時,首先使用100 ms寬中值濾波器對所有ECG信號進行預處理,濾除去除P波和QRS復合波;其次,使用400 ms寬中值濾波器去除T波;再次,從原始信號中減去濾波后的信號,得到校正后的ECG信號;并使用截止頻率為20 Hz的低通濾波器濾除高頻噪聲;最后,利用剩下的數據集構架ECG信號初始訓練數據。此外,由于時間信息對識別非常重要,因此需要在數據集中添加相應的時間特征。
為了評估方法的性能,使用分類方法中的標準度量,包括靈敏度、總體準確率和陽性預測值,給出心室異常跳動結果。
為了驗證所提方法的有效性,采用三個典型ECG數據庫進行相關實驗,包括中國心血管疾病數據庫CCDD(Chinese cardiovascular disease database),美國心臟協會AHA(American Heart Association) 心律失常數據庫,歐盟心電圖通用標準CSE(Common Standards for Electrocardiography)數據庫,這三個數據庫的相關信息如表1、表2所示。此外,為了驗證所提方法的優越性,在實驗中將本文方法與目前較新的兩種方法(文獻[13]、文獻[14])進行了對比分析。

表1 ECG數據庫

表2 訓練樣本與測試樣本數量
首先,以CCDD數據庫為例,利用SDA、回歸層和反向傳播微調構建DNN的初始化架構,相應的參數為:δ∈[-0.01, 0.01],ρ=0.1。圖4、圖5給出了CCDD數據集中每種配置得到的訓練結果,通過對比兩幅圖可以看出,與傳統的神經網絡相比,提出的方法使用DNN主動分類能產生較好分類結果。這是因為DNN主動調節方法,在信號交互過程中允許專家標記與ECG測試最相關的樣本數據,采用基于熵的信號選擇標準,計算每個測試信號的熵值,標記具有最高熵值的信號,能夠選擇出最相關的ECG信號,通過將這些ECG信號添加至訓練集合進一步改善了特征空間中分類器的決策區域。可見基于過完備描述方法的DNN具有更好的分類結果,過完備描述增加了神經網絡的信息完整性,可以避免各類擾動度UI訓練結果的不利影響。

圖4 基于傳統神經網絡的CCDD分類精度

圖5 基于深度神經網絡的CCDD分類精度
在CCDD數據庫中對比了三種方法(本文方法,文獻[13],文獻[14])在ECG信號分類中的性能,如圖6至圖8所示。

圖6 數據庫CCDD中三種方法的靈明度對比

圖7 數據庫CCDD中三種方法的總體準確率對比

圖8 數據庫CCDD中三種方法的陽性預測值對比
由圖6至圖8可知,相比文獻[13-14]提出的方法,本文提出的方法具有更優的性能。這是由于本文提出的方法網絡架構更為簡潔,通過特征學習來確定一種合適的深度架構模型,并增加了深度神經網絡構建與微調操作,一定程度上提升方法的總體性能。
圖9所示為三種算法的模型訓練收斂速度對比實驗結果。由圖可知,在進行模型的離線訓練時,提出的方法可以在保證總體準確率最優的情況下,大幅度降低模型訓練所需時間,可以加快參數的快速優化與迭代訓練,即相比文獻[13]和文獻[14]方法,所提方法訓練時的收斂速度更快。分析可知,提出的方法在完成數據預訓練后,給出一種計算量較小的、包含H個隱含層的深度神經網絡框架構建方法對DNN進行優化,可以有效提升收斂速度。

圖9 數據庫CCDD中三種方法的模型訓練速度對比
表3給出了基于優勝劣汰概率方法的分類結果,由該表可知,提出的方法能夠有效濾除不確定信號造成的不穩定行為。

表3 數據庫CCDD分類結果 %
在AHA數據庫中對比了三種方法(本文方法,文獻[13],文獻[14])在ECG信號分類中的性能,如圖10至圖13所示。

圖10 數據庫AHA中三種方法的靈敏度對比

圖11 數據庫AHA中三種方法的總體準確率對比

圖12 數據庫AHA中三種方法的陽性預測值對比

圖13 數據庫AHA中三種方法的模型訓練速度對比
圖10至圖13分別給出了三種方法在AHA數據庫中的性能指標。由這些實驗截圖可知,與數據庫CCDD中的情況類似,與文獻[13-14]中的方法相比,提出的方法獲具有更好的分類性能,同時具備更好的動態特性。表4給出了分類結果的具體數值指標,由該表可知,提出的方法具有更高的性能指標,可以實現ECG信號的高精度分類。

表4 數據庫AHA分類結果 %
在CSE數據庫中對比了三種方法在ECG信號分類中的性能,如圖14至圖17所示。

圖14 數據庫CSE中三種方法的靈明度對比

圖15 數據庫CSE中三種方法的總體準確率對比

圖16 數據庫CSE中三種方法的陽性預測值對比

圖17 數據庫CSE中三種方法的模型訓練速度對比
圖14-圖17中的結果與數據庫CCDD、AHA中的情況類似,此處不做贅述。表5給出了分類結果的具體數值指標,所得結論不再贅述。

表5 數據庫CSE分類結果 %
最后,在包含多個隱藏層的神經網絡上重復上述實驗,實驗中考慮H=3,4,5三種情況,每種情況對應的節點分別為{100,70,100}、{100,70,100,70}和{100,70,100,70,100},這些節點表示了稀疏和密集之間的交替變換。圖18-圖20給出了提出的方法在三種數據庫上獲取的實驗結果(實驗只針對所提方法,由于實驗結果與結論類似,因此不再贅述文獻[13]、[14]中的方法)。從圖中可以看出,基于一個和兩個隱藏層的DNN獲取的分類準確率較高。但是,隨著隱藏層數量的增加到3層或者4層、5層,分類準確率降低較為明顯。提出的方法在使用較少訓練樣本時,分類準確性嚴重下降,由此可見,在利用所提方法進行ECG分類時,較少的訓練樣本不能夠有效更新復雜網絡。

圖18 數據庫CCDD中多隱含層分類結果

圖19 數據庫AHA中多隱含層分類結果

圖20 數據庫CSE中多隱含層分類結果
在基于神經網絡技術的已有研究的啟發下,針對ECG信號分類,提出一種基于深度神經網絡和疊加去噪自動編碼器的新方法。該方法不僅繼承了深度學習在特征分類中所具備的精度優勢,而且充分發揮了帶有稀疏約束的疊加去噪自動編碼器在對原始數據進行特征學習的優點。提出的方法為心電圖分類的后續研究提供了一定的借鑒意義,同時具備較好的實際應用價值。然而,提出的方法在使用較少訓練樣本時,分類準確性下降嚴重,較少訓練樣本不能夠有效更新復雜網絡。下一步將重點研究在復雜網絡環境下提高分類準確率,降低信號交互次數,例如,研究其他更有效的深度框架,定義并聯合適用于深度框架的主動學習條件。