鄭淋文,周金治,黃 靜
(1.西南科技大學 信息工程學院,綿陽 621000;2.特殊環(huán)境機器人技術(shù)四川省重點實驗室,綿陽 621000)
國家心血管病中心最新發(fā)布文件[1]指出,中國心血管?。–VD)患病率持續(xù)上升,居所有死因首位。作為診斷心血管疾病的重要依據(jù),心電圖(ECG,Electrocardiogram)可以反映出心臟節(jié)律和傳導的生理信息。利用機器學習建立心電信號智能分析系統(tǒng)也成為了當前智慧醫(yī)療中的研究熱點。心電信號自動分類算法的研究主要集中在心電特征圖像和心電波形特征向量空間兩個方向,其中基于心電特征圖像的方法主要有圖像自相性法[2],遷移學習[3]等;基于心電波形特征的算法主要有邏輯判斷[4]、神經(jīng)網(wǎng)絡(luò)[5,6]、模式識別[7]、支持向量機[8]、模糊系統(tǒng)[9~11]等。
在心臟疾病的診斷中,醫(yī)生的診斷過程具有模糊性、經(jīng)驗性與主觀性,為消除此影響,研究人員將模糊聚類應用于心律失常的診斷中,原因在于心電信號中異常心律所占比例較小,而模糊聚類對此類稀有數(shù)據(jù)較為敏感,因此該算法能取得較好的結(jié)果,其中性能較為出色的是FCM算法。FCM算法通過多次迭代求解最小目標函數(shù),具備閉環(huán)反饋的特點,因此聚類精度較高。如劉世雄[9]應用兩段聚類,先應用聚合法獲得較為準確的聚類數(shù)目作為FCM聚類算法的輸入,算法整體的準確率在90%以上,但分類精度還不是很高;吳志勇[10]等人以DBN抽取心電信號的高層抽象特征為數(shù)據(jù)基礎(chǔ),采用FCM進行特征分類,總準確率達96.54%,但實現(xiàn)過程較為復雜,時間復雜度高;C K Roopa[11]等人對比了三種特征選擇方法,結(jié)合鄰域信息,使用高斯核作為FCM算法的距離度量標準,結(jié)果表明應用正則化局部保留索引與健壯空間內(nèi)核FCM算法在心律失常分析上的性能優(yōu)于傳統(tǒng)FCM和內(nèi)核FCM,但該算法的性能主要取決于初始群集中心的選擇,應用受到限制。綜合以上算法的優(yōu)缺點,本文提出一種基于LKDP-FCM的異常心律分類方法。使用小波變換識別心電信號中的特征點,提取出21維典型特征組成特征矢量矩陣,并采用邏輯判斷分割出大部分正常心拍,然后應用K近鄰優(yōu)化的DP算法與FCM算法相結(jié)合完成心電信號特征的分類,克服了FCM算法需要先驗知識的不足,提高了算法的無監(jiān)督性,從而實現(xiàn)對異常心律更高的檢出率。
心電信號的心律失常分析包括心電信號采集、預處理、特征提取和處理、異常波形自動分類。如圖1是本文特征分類系統(tǒng)流程。
圖1 心電信號特征分類分析系統(tǒng)流程
基于LKDP-FCM的心律失常分類方法分為兩個階段實現(xiàn),第一個階段的輸入為經(jīng)過預處理、周期分割及特征提取的心電信號,輸出為正常心拍與異常心拍,主要目的在于減少分類模型的輸入量,該階段分割出的異常心拍將作為輸入進入到第二個階段,即KDP-FCM分類模型,通過改進的算法,最終輸出心律失常的五個類別。
ECG信號中,多數(shù)的心拍都是屬于正常心拍,異常心拍則較為稀少,如果采用迭代聚類的方式,ECG信號的數(shù)據(jù)量大,則迭代次數(shù)較多,將大大增加運行時長,因此本文在第一階段心電信號分類時,采用邏輯判斷,將心拍分為正異兩類。單一使用邏輯判斷雖不能精確的將所有正異心拍分開,但可以分辨出大部分正常心拍,將會大幅減少下一階段聚類的數(shù)據(jù)量。
考慮心電信號的個體差異,參照正常心電波形特征的標準值[12],本文設(shè)定正常心拍模版如表1所示。
表1 正常波形特點和參考值
1.2.1 FCM算法
FCM算法的聚類思想是通過不斷迭代,形成反饋,把n個數(shù)據(jù)點xi(i=1,2,…,n)分到K個類簇中,取得最小目標函數(shù),達到類間距離最大,類內(nèi)距離最小的目的。FCM算法聚類精度高,系統(tǒng)誤差小,其實現(xiàn)步驟如下:
1)設(shè)定類簇個數(shù)C,初始化模糊權(quán)重指數(shù)m,m∈[1,+∞),設(shè)定算法迭代停止條件ε和迭代計數(shù)器,初始化隸屬度矩陣;
2)根據(jù)式(1)計算或更新隸屬度矩陣;
隸屬度函數(shù)表示第K個樣本對于第i類的隸屬度,更新隸屬度需要滿足約束條件:。
3)計算新的聚類中心
4)根據(jù)式(2)計算目標函數(shù),判斷是否達到迭代停止條件,如果達到則停止迭代并輸出聚類結(jié)果,否則迭代計數(shù)器加1,轉(zhuǎn)向步驟2)。
1.2.2 結(jié)合K近鄰與密度峰值的模糊C均值聚類(KDPFCM)
聚類是典型的無監(jiān)督學習算法,但FCM算法需要人為輸入類簇個數(shù),將會大大降低了算法的無監(jiān)督性,且每次聚類都是隨機選擇聚類中心,影響聚類結(jié)果,尤其在大數(shù)據(jù)量時,算法的耗時也將成倍增加。
為解決上訴問題,國內(nèi)外學者展開了眾多研究,其中效果較好的是密度峰值算法優(yōu)化的FCM[13]。隨著研究的深入,該算法逐漸呈現(xiàn)出以下問題:針對不同規(guī)模數(shù)據(jù)集有兩種局部密度的計算方式,在實際應用中,客觀估量數(shù)據(jù)量的大小較為困難,從而導致算法靈活性降低;此外,截斷距離的選取是基于若干數(shù)據(jù)集的經(jīng)驗值,導致DP算法不能有效地處理結(jié)構(gòu)復雜的數(shù)據(jù)集。為此,本文在前人的研究基礎(chǔ)上,提出了以下改進方案:1)引入K近鄰優(yōu)化局部密度,統(tǒng)一不同規(guī)模數(shù)據(jù)集下局部密度的計算方式;2)利用K近鄰求出最優(yōu)截斷距離dc。具體方法如下。
對于心拍樣本點,定義其近鄰密度:
dij為心拍xi,xj的歐式距離,KNN(i)為xi的K個近鄰樣本構(gòu)成的集合。從式中可以得知,近鄰密度只與xi的K個近鄰心拍有關(guān),且距離越小,近鄰密度越大,更能反應心拍點局部信息,本實驗中K的取值在5~7之間。
高密度點間距離的定義為心拍點到任何比其密度大的點的最小值:
計算出心拍點的近鄰密度和高密度點間距離之后,傳統(tǒng)DP算法通過構(gòu)建決策樹,手動選取聚類中心,也會降低算法的無監(jiān)督性,且對于分布稀疏的矩陣難以準確確定聚類中心。本文將其相乘得,并選擇前大的點為疑似類中心。由于本文主要研究五種異常心拍,故選擇前8個作為疑似類中心。
定義截斷距離:
將X最大的疑似類心拍點作為真實類中心,判斷剩下的疑似類中心與該點的距離。當距離小于截斷距離時,將該疑似類中心點作為類成員處理,然后依次判斷剩下疑似類中心點間的距離,得到聚類中心和類簇個數(shù)。
通過對上述各算法的計算與理論分析,將K近鄰改進后的DP算法與FCM算法相結(jié)合,避免了FCM算法選取聚類中心的隨機性以及人工輸入類簇個數(shù)的主觀性,使得算法全程無監(jiān)督,聚類精度得到大幅提高?;贚KDP-FCM的心律失常分類方法具體實現(xiàn)步驟如下:
步驟1:將心電數(shù)據(jù)進行預處理,利用二次樣條小波函數(shù)對ECG信號進行6層小波變換,在第三尺度下通過檢查模極大值位置確定R波,以及QRS波群的位置,在第四尺度下確定P、T波位置,提取出21組特征值,標準化和歸一化后組成特征矩陣;
步驟2:設(shè)定正常心拍模板,應用邏輯判斷進行初步的正異分類,將大多數(shù)的正常心拍分割出來,減少后續(xù)模糊聚類的數(shù)據(jù)量;
步驟3:計算剩余心拍的近鄰密度以及高密度心拍點間的距離,確定類簇個數(shù)c;
步驟4:設(shè)置FCM算法的迭代停止條件ε=0.0001,最大迭代次數(shù)為100,根據(jù)劉世雄[9]等人的研究結(jié)論,令模糊權(quán)重指數(shù)m=2,利用FCM聚類完成異常心律的分類識別。
為了驗證所提出方法的有效性與實際應用性,本實驗在CPU主頻為2.6GHz,64位Window10操作系統(tǒng)MATLAB2016a為開發(fā)平臺完成。采用的心電數(shù)據(jù)為肢體導聯(lián)II,選取自美國麻省理工大學提供的MIT-BIH心律異常數(shù)據(jù)庫[14],包含48個病例,每個病例30分鐘,總計18種專家注釋的心跳類型,109655個心拍,采樣頻率為360Hz。本文主要分析五種心律類型,包括正常(N)、左/右束支傳導阻滯(L/R)、房性早搏(A)和室性早搏(V)。為了囊括五種異常心律,本文選擇109、114、118、200、202、214、228、231、232、233號總計10個病例進行分類實驗。
ECG信號的頻率主要集中在5~20Hz,其中包含的噪聲干擾主要有30~300Hz肌電干擾、50Hz的工頻干擾以及低于1Hz基線漂移。本文采用實現(xiàn)方便、性能優(yōu)良的數(shù)字濾波器對ECG信號進行噪聲處理。參照文獻[15],應用并行式分數(shù)零相移濾波器,濾除基線漂移,工頻噪聲和肌電噪聲則使用巴特沃斯低通濾波器濾除。
圖2 ECG信號預處理對比
ECG信號特征的選擇應該具有明顯的醫(yī)學意義,且病例間差別較為明顯,為了使結(jié)果更加準確,高寧化[16]通過實驗驗證,相比于采用單一的時域或頻域特征進行識別,同時對時頻域進行特征融合的識別率更高。因此本文選擇時域、頻域以及小波域的信號特征。以MITBIH中109號病例為例,進行六層小波變換,得到如圖3尺度系數(shù)和小波系數(shù)。
圖3 ECG信號在j=1、2、3、4尺度下的尺度系數(shù)和小波系數(shù)
在j=3尺度下,確定小波系數(shù)中超過設(shè)定閾值的正負模極大值對的位置信息;
圖4 j=3、4尺度下小波系數(shù)的模極大值點
如圖5為ECG信號的波形識別結(jié)果。
圖5 109號ECG波段識別
將提取到ECG信號特征進行標準化和歸一化處理后組成特征矩陣,作為分類模型的輸入。
本文采用靈敏度(Se)、陽性預測值(Ppv)和正確率(Acc)三種指標對實驗結(jié)果進行評估,計算方法如下。
TP為正確分類心拍個數(shù),TN表示不同心拍被正確分開個數(shù),F(xiàn)P為不同心拍被分到同一心拍的個數(shù),F(xiàn)N表示同類心拍錯誤分類的個數(shù)。
實驗結(jié)果統(tǒng)計按病例劃分和按心律類型劃分為兩大類。
表2是按病例劃分的聚類統(tǒng)計結(jié)果,按病例劃分可用于評價算法對個體差異的有效性。從表中可以看出,本文提出的ECG信號分類方法的聚類準確率較高,平均誤聚類率為2.09%,對病例差異的適應性較好,118和231號病例的準確率相對較低是因為記錄中含有較多的右束支傳導阻滯(R),在單導聯(lián)上,與房性早博的某些特征非常相似,可通過增加多導聯(lián)分析來提高分類的準確率。
表2 按病例劃分統(tǒng)計結(jié)果
圖6 按心律類型劃分混淆矩陣
圖7是按照心律類型劃分的混淆矩陣,按心律類型劃分可用于評價算法對稀有數(shù)據(jù)的檢出率。由圖中可知,提出的方法對各失常心律的檢出率都較高,具有穩(wěn)定性,可通過計算得出本方法對正常心電靈敏度為98.68%,陽性預測值為98.97%,左束支傳導阻滯的靈敏度為96.86%,陽性預測值為97.73%,右束支傳導阻滯的靈敏度為97.64%,陽性預測值為96.96%,房性早搏的靈敏度為95.53%,陽性預測值為92.11%,室性早搏的靈敏度為94.24%,陽性預測值為94.87%,總體準確率為97.58%。表3是本文的方法與其他研究的比較,從表中可以看出,本文提出的方法對左束支傳導阻滯分類有明顯的提高,對稀有數(shù)據(jù)有較為不錯的檢出率。
表3 與其他方法對比
本文提出一種基于LKDP-FCM的心電特征分類方法,首先采用小波變換提取出特征矢量,利用邏輯判斷進行初步的正異心拍劃分,減少后續(xù)算法的計算量,并將引入K近鄰優(yōu)化的DP算法與FCM算法相結(jié)合完成對ECG信號的分類。仿真結(jié)果表明,本文提出的方法對各病例的適應性較好,對各類型的失常心律的劃分準確率較高,且算法在運行過程中全程無監(jiān)督,實現(xiàn)簡單,具有優(yōu)良的實用價值。但由于心律失常不止文中研究的五種,因此對多導聯(lián)信號的魯棒性研究分析是下一步的工作重點。