張文英, 郭興明, 翁 漸
(重慶大學 生物工程學院,生物流變科學與技術教育部重點實驗室,重慶 400044)
心音作為人體重要生理信號之一,包含心臟各部分及瓣膜功能狀態的生理、病理信息[1],直接反映心臟及大血管機械運動狀況。因此心音分析對心臟疾病診斷具有重要意義。心音信號分類識別旨在據不同心音信號特征判定所屬疾病類型。目前主流研究方法為由心音信號中提取特征參數,借助于分類器對心音信號進行分類識別。李戰明等[2]利用S變換提取心音信號特征,用于不同類型心音信號識別;Olmez等[3]利用小波變換提取心音信號的時、頻域特征參數,訓練人工神經網絡(Artificial Neural Networks,ANNs)作為分類器對7種不同心音信號的分類識別,識別率達99%,但ANNs的頻域計算繁瑣,計算量大,識別過程運算時間過長;Choi[4]用小波包變換對信號進行分解并提取小波包能量均值及標準差,利用支持向量機(Support Vector Machine,SVM)較好識別出瓣膜性心臟病。SVM為基于小樣本統計學習理論方法,不適應大量數據處理;Saracoglu[5]利用離散傅里葉變換提取心音信號的頻域特征參數,通過主成分分析方法對該特征參數降維處理,用隱馬爾科夫模型(Hidden Markov Models,HMM)分類識別,獲得較ANNs與傳統K-近鄰分類器更高的識別率,但單獨使用HMM的分類決策能力較差;Rios-Gutierrez等[6]采用離散小波變換及短時時頻變換方法提取心音信號特征參數,再借助矢量化(Vector Quantization,VQ)模型對4種常見心雜音分類識別,獲得67.05%的識別率。因VQ模型用離散數值表示各種矢量,故識別率有限。
高斯混合模型(Gaussian Mixture Model,GMM)為近年生物識別中常用模式識別方法之一,并在HMM基礎上發展。為單一高斯概率密度函數的延伸,且能平滑近似任意形狀的密度分布,在語音識別中得到廣泛應用[7]。傳統的GMM利用K-means算法對參數初始化,再通過期望最大化(Expectation Maximization, EM)算法估計參數,為每類心音信號建立GMM。識別時,提取待識別信號特征參數與訓練模型匹配,計算其與各模型間的似然函數值,當該值達到最大時對應的模型即為待測心音信號分類識別結果。由于EM算法對初始值要求較高,本文對傳統的GMM進行改進,利用加權可選擇模糊C均值算法(Weighted Optional Fuzzy C-Means,WOFCM)代替K-means算法對參數初始化,所得數據較接近實際模型均值,從而提高了GMM算法性能與識別率。
特征參數提取旨在獲得含較少維數且能描述心音信號特征的參數,并用于GMM訓練過程中以提高識別率。在提取特征參數之前,需對心音信號預處理,確保提取的特征參數更準確。
本文所用97例心音數據由重慶博精醫學信息研究所的運動心力監測儀(ECCM,專利號01256971.2,第一代產品注冊證號:渝藥管械(試)字99第220007)在重慶醫科大學附屬第一醫院采集。包括18例二尖瓣狹窄、15例主動脈瓣狹窄、14例室間隔缺損及50例正常心音。采樣頻率11.025 kHz,量化值8 bit,采集信號最終以wav格式保存。全部病理數據為經臨床醫生確診的單一病例,健康人群均無心血管及家族病史。
預處理包括去噪、預加重、分幀加窗及端點檢測四個步驟:
(1)去噪。心音信號在采集過程中會引入人為及環境干擾噪聲,而噪聲會影響特征參數提取的準確性,故在充分考慮心音信號頻率分布特點及小波變換原理基礎上,本文選sqtwolog-coif3小波函數對心音信號進行消噪預處理。正常心音信號去噪結果見圖1。由圖1可知,該去噪方法基本去除了噪聲分量,保留了有用信號成分,減少毛刺等對高頻信號波形干擾,去噪效果較好。

圖1 正常心音信號去噪及預加重效果

圖2 正常心音信號端點檢測結果
(2)預加重。本文采用預加重濾波器H(z)=1-0.95z-1對心音信號預加重,突出信號高頻部分,結果見圖1。
(3)分幀加窗。本文采用Hamming窗對心音信號進行分幀及加窗處理,提高特征參數提取精度。常用Hamming窗為:w(n)=0.54-0.46cos[2πn/(N-1)],其中0≤n≤N-1,N為每幀取樣點數。
(4)端點檢測。為減少計算量,提取有用幀,本文分別為短時能量與過零率設置兩門限值,通過雙門限檢測算法,對心音信號主要成分第一心音(S1)與第二心音(S2)進行定位,獲得較好結果,見圖2。
1.3.1 MFCC特征
Mel頻率倒譜系數(Mel Frequency Cepstrum Coefficients, MFCC)為廣泛應用于語音相關識別中的特征參數,其為在Mel標度頻率域提取的倒譜系數[8],提取流程見圖3。其中Mel頻率濾波器作用為利用三角形濾波器組對語音信號幅度平方譜進行平滑;對數操作作用有兩點:①壓縮心音頻譜動態范圍;②將頻域中乘性成分變成對數譜域中加性成分,以便濾除乘性噪聲。離散余弦變換主要用于對不同頻段頻譜成分進行相關處理,使各向量間相互獨立。

圖3 MFCC提取過程
提取MFCC后,將提取其一階差分系數記為ΔMFCC,提取表達式為:
(1)
式中:c,d為一幀心音信號序列;k為常數,通常取2。由式(2)看出ΔMFCC為信號幀前后四幀參數的線性組合。
1.3.2 Delta特征
對心音特征向量序列在時序上作一次傅里葉變換,即得對應于該特征的Delta特征。具體實現時可簡化為:
(2)
其中:dt為第t幀特征的Delta特征;Θ為考慮第t幀時序變換信號幀數量。
1.3.3 DWPTMFCC提取
由濾波器角度分析,圖3中所用為一組Mel尺度三角形濾波器,而小波包變換實質相當于信號通過一系列不同頻帶范圍的帶通濾波器,進而獲取信號在每個頻帶內的信息。因此可用小波包變換代替MFCC提取過程中FFT與Mel濾波器組兩處理部分,此處理后提取的參數記為DWPTMFCC。由于心音信號為非線性信號,臨界頻帶劃分類似Mel濾波器組在頻帶的分布及帶寬。因此心音信號通過小波包分析后,選出與Mel濾波器組頻帶一致范圍內的小波包變換系數。
本文所用心音信號采集頻率11.025 kHz,即最高頻率約5500 Hz,據小波包系數選取原理,利用db6小波包函數進行6層小波包分解,選出24個分解節點頻帶,所用節點為第6層:(6,0)、(6,1)、(6,2)、(6,3)、(6,4)、(6,5)、(6,6)、(6,7);第5層:(5,4)、(5,5)、(5,6)、(5,7)、(5,8)、(5,9)、(5,10)、(5,11);第4層:(4,6)、(4,7)、(4,8)、(4,9)、(4,10)、(4,11);第3層:(3,6)、(3,7)。對心音信號預處理后,DWPTMFCC參數提取過程為:
(1)對各幀心音信號進行小波包分解,計算所選24個節點頻帶內信號的對數能量,計算式為:
Sk=ln∑[x(n)]2,(k=1,2,…,K)
其中:K=24為所選頻帶數目;x為心音信號。
(2)將Sk經DCT處理后可得DWPTMFCC,用C(i)表示為:
(0≤k≤K,i=1,2,…,M)
其中:M為常數,是取定DWPTMFCC的維數。該參數一階差分系數提取亦由式(1)獲得,記為ΔDWPTMFCC。
高斯混合模型概率密度函數定義為:
(3)

(4)

由式(3)知,高斯概率密度函數為M個加權密度之和。其中M為高斯混合分量個數,即GMM階數。一個完整的高斯混合模型為由混合權重、均值向量與協方差矩陣三參數共同描述,即一個模型λ可表示成三元組:
λ={ωi,μi,Σi|i=1,2,…,M}
(5)
對各類心音信號建立GMM前,先通過模型訓練估計GMM參數。常用方法為最大似然函數估計[9]。設心音信號特征矢量序列為X={x1,x2,…,xT},GMM的似然函數可表示為:
(6)

由于EM算法對初始值要求較高,初值不正確可能導致算法收斂到局部最大值或鞍點上獲得錯解。因此EM迭代算法初始化極其重要。而傳統初始化采用的K-means算法實質為只用均值作為類代表,即僅當每個類中各分量協方差近似相等時,才會有較好識別結果。但對心音信號而言,各分量協方差不等,故其初始化效果不很理想。
本文所用加權可選擇模糊C均值聚類算法為綜合近似模糊C均值聚類算法(Approximate Fuzzy C-Means, AFCM)與加權模糊C均值聚類算法(Weighted Fuzzy C-Means, WFCM)優點。即AFCM通過改變一般距離定義方式的聚類算法,旨在改變樣本的不均衡問題[11]。WFCM考慮樣本各特征對分類結果影響程度不同,在目標函數中增加權值,使各類中樣本到聚類中心的加權距離平方和達最小,從而解決含噪聲或不均衡樣本識別率低的問題[12-13]。WOFCM算法實現過程為:設心音信號特征矢量集合為Xt={x1,x2,…,xT},模糊集為C={y1,y2,…,yN},其中y1,y2,…,yN為N個聚類中心,故C又稱類中心矩陣。該算法目標函數為:




權值可通過迭代方法計算,用于改變隸屬函數值。隸屬函數中各值代表樣本對分類影響程度大小。迭代式為:
(8)
pt=U(i,t)/U(i+1,t+1)
(9)
利用式(8)、(9),可得新模糊隸屬度矩陣U,各樣本代表的權值P即為新矩陣變換發生的概率轉換,即將權值與隸屬度函數值緊密聯系在一起,從而改善樣本含噪聲問題。
在以上約束條件下,WOFCM算法迭代過程為:
(1)設定聚類數目N=4與模糊參數m值,其最佳選擇區間[14]為[1.5,2.5],本文取m=2;
(2)計算各樣本點對樣本分類影響程度權值P;
(3)初始化聚類中心矩陣C;
(4)利用當前聚類中心,計算模糊隸屬度矩陣U;
(5)使用當前模糊隸屬度矩陣U,計算新的各類聚類中心,迭代函數見式(8)、(9);
(5)重復迭代,直至各樣本隸屬度μit穩定。
WOFCM收斂時,即可獲得各類的聚類中心及各樣本隸屬度值,完成參數初始化。進而即可獲取所需GMM參數。獲取公式為:
對本文采集的97例心音數據按訓練樣本與測試樣本約1∶2比例進行實驗,即32例心音信號用于訓練,65例(異常心音21例,其中二尖瓣狹窄7例,主動脈瓣狹窄7例,室間隔缺損7例,正常心音44例)信號用于測試。訓練與識別的流程見圖4。按此識別過程,識別模型選擇為改進后的GMM模型,其識別結果見表1。實驗平臺為Microsoft Windows XP下的matlab7.1版本,算法運行時間由Matlab中的‘tic、toc’獲得。

表1 不同特征參數下系統識別性能對比

圖4 心音分類識別流程圖
對表1橫向分析發現,隨高斯混合模型階數的增加,系統識別率隨之提高,模型訓練時間相應延長。當階數增加到32階以上時,識別率增加較小,而訓練時間大大延長。且當階數過大時,識別模型的魯棒性受到影響,過高階數不但不能提高系統識別率,甚至會因模型訓練不充分導致識別率下降。因此,不可盲目通過加大GMM階數提高識別性能。在綜合考慮系統總體識別性能基礎上選擇模型階數,本文選階數M= 32。對表1進行縱向分析可知,對識別率,利用小波包變換對MFCC進行改進所得新特征參數DWPTMFCC結合其一階差分系數效果最佳。MFCC只反映心音信號的靜態特性,忽略信號動態特性,而ΔMFCC可較好反映心音信號動態變化。將兩者結合可獲得較MFCC更好的識別性能。同理,DWPTMFCC+ΔDWPTMFCC的識別性能較 DWPTMFCC更好;對識別時間,由于DWPTMFCC所得參數維數較MFCC增多,故使識別時間稍有延長,但差異不大。上述4個特征參數均只考慮信號幀內關系,而未考慮信號幀間關系。心音信號為連續性信號,獲取信號幀特征之間的時變特性Delta特征用于心音信號識別,可提高識別率,但會使識別時間明顯延長。故本文選取DWPTMFCC+ΔDWPTMFCC為識別特征參數。

表2 不同小波包函數對應識別性能比較
由表2看出,不同小波包函數獲得識別率不同,db6效果最優,bior2.4效果最差。說明不同小波包函數所提心音信號特征信息不同。因此本文選db6函數進行小波包處理。選取階數與識別特征參數后,比較改進的GMM與傳統的GMM識別效果,結果見表3。

表3 不同分類器識別結果對比
由表3可知,無論對正常心音信號或異常心音信號,利用改進GMM的識別率明顯高于傳統的GMM,尤其對異常心音信號,改善更明顯;由于本文所提改進GMM中所用改進EM算法在實現參數初始化過程中用WOFCM算法存在多次迭代,故使識別時間有一定程度延長,但相差不大。因此本文的改進GMM較傳統的GMM識別性能更優越。
本文提出的將小波包變換Mel頻率倒譜系數與基于WOFCM初始化改進高斯混合模型相結合的心音分類識別方法,通過對臨床采集97例心音信號試驗分析,結論如下:
(1)用小波包變換對MFCC改進所得DWPT MFCC參數較普通倒譜系數識別性能高。
(2)通過在傳統GMM基礎上利用WOFCM算法對EM算法進行改進,使心音信號分類識別率極大提高,識別時間雖稍有延長,但識別性能較傳統GMM高,尤其對異常心音信號,提高程度更顯著。
(3)本文所提心音分類識別方法能有效提高心音分類識別準確率,對進一步實現心臟疾病診斷具有重要參考價值。
參 考 文 獻
[1]黃林洲,郭興明,丁曉蓉.EMD近似熵結合支持向量機的心音信號識別研究[J].振動與沖擊,2012,31(19):21-25.
HUANG Lin-zhou,GUO Xing-ming,DING Xiao-rong. Heart sound recognition based on EMD approximate entropy and SVM[J]. Journal of Vibration and Shock, 2012,31(19):21-25.
[2]李戰明,韓 陽,韋 哲,等.基于S變換的心音信號特征提取[J].振動與沖擊,2012,31(21):179-183.
LI Zhan-ming,HAN Yang,WEI Zhe,et al. Heart sound feature extraction based on S transformation[J].Journal of Vibration and Shock,2012,31(21):179-183.
[3]Olmez T,Dokur Z. Classification of heart sounds using an artificial neural network[J]. Elsevier, Pattern Recognition Letters, 2003,24(1):617-629.
[4]Choi S. Detection of valvular heart disorders using wavelet packet decomposition and support vector machine[J]. Expert Systems with Applications,2008,35(4):1679-1687.
[5]Saracoglu R. Hidden markov model-based classification of heart valve disease with PCA for dimension reduction[J]. Engineering Applications of Artificial Intelligence, 2012, 25(7): 1523-1528.
[6]Rios-Gutiérrez F, Alba-Flores R, Ejaz K, et al. Classification of four types of common murmurs using wavelets and a learning vector quantization network[C]//IEEE International Joint Conference on Neural Networks, 2006: 2206-2213.
[7]LIU Ming-hui, XIE Yan-lu, YAO Zhi-qiang, et al. A new hybrid GMM/SVM for speaker verification[C]//18th International Conference on Pattern Recognition, 2006 : 314-317.
[8]趙 力.語音信號處理[M].北京:機械工業出版社,2003:45-56.
[9]Charalambous C D, Logothetis A. Maximum likelihood parameter estimation from incomplete data via the sensitivity equations: the continuous-time case[J]. IEEE Transactions on Automatic Control, 2000, 45(5): 928-934.
[10]Reynolds D A, Rose R C. Robust text-independent speaker identification using gaussian mixture speaker models[J].IEEE Transactions on Speech and Audio Processing,1995,3(1):72-83.
[11]Provost F. Machine learning from imbalanced data set[C]//Proc of the 17th National Conference on Artificial Intelligence, Workshop on Imbalanced Data Sets,2000:71-73.
[12]付 輝.模糊C均值FCM聚類算法的改進[J].科學技術與工程,2007,7(13):3121-3123.
FU Hui. Improvement of fuzzy C-means clustering algorithm [J].Science Technology and Engineering, 2007,7(13):3121-3123.
[13]LI Yan, LI Lei. A novel split and merge EM algorithm for gaussian mixture model[C]//2009 Fifth International Conference on Natural Computation, 2009 : 479-483.
[14]Pal Nikhil R, Bezdek James C. On cluster validity for the fuzzy C-means model [J].IEEE Transactions on Fuzzy Systems, 1995, 3(3):370-379.