楊鳳霞
摘 要:利用HK-2000C集成化數(shù)字脈搏傳感器提取人體左關(guān)處橈動(dòng)脈脈搏信號(hào),然后計(jì)算脈搏功率譜,并在此基礎(chǔ)上提取功率譜峰值、功率譜重心及其對(duì)應(yīng)頻率的特征量,最后利用支持向量機(jī)(SVM)對(duì)所提特征進(jìn)行分類。通過(guò)與線性判別式分析(LDA)法分類結(jié)果對(duì)比可以看出,SVM算法有著理論上的突出優(yōu)勢(shì),但在實(shí)際應(yīng)用中,由于樣本數(shù)目有限,而且在其核函數(shù)選擇和參數(shù)調(diào)整方面,均需要視經(jīng)驗(yàn)值而定,因此推廣性較差,還需要進(jìn)一步的研究和改進(jìn)。
關(guān)鍵詞:亞健康;脈象;功率譜;支持向量機(jī)
中圖分類號(hào):TP274+.3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1004-373X(2009)20-167-04
Recognition of Sub-health Based on Support Vector Machine
YANG Fengxia
(Xi′an Aeronautical Polytechnic Institute,Xi′an,710089,China)
Abstract:Pulse signal of radial artery are picked up by using HK-2000C digital integrated pulse transducer.And power spectrum is calculated.Then peak value,peak frequency,center of gravity (cg) and gravity frequency of power spectrum are extracted.And Support Vector Machine (SVM) is applied to pattern recognition of sub-health.Finally,the results of Linear Discriminant Analysis (LDA) and SVMare compared.Though there are advantages in theory using SVM.Some problems in selection of kernel parameter which usually selected by experience.There still has more works should be done.
Keywords:sub-health;pulse condition;power spectrum;support vector machine
0 引 言
亞健康狀態(tài)在世界很多國(guó)家和地區(qū)都廣泛存在,它是指人的機(jī)體雖然沒(méi)有明確的疾病,但呈現(xiàn)出活力下降,適應(yīng)力呈不同程度減退的一種生理狀態(tài),是介于健康與疾病之間的一種生理功能降低的狀態(tài),它既可以向健康狀態(tài)轉(zhuǎn)化,又可以向壞的方向轉(zhuǎn)化,而進(jìn)一步發(fā)展為各種疾病。由于社會(huì)科學(xué)技術(shù)的發(fā)展,生活節(jié)奏的加快,飲食結(jié)構(gòu)的改變,環(huán)境的惡化,工作壓力的加大以及社會(huì)矛盾加重等因素,使處于這種亞健康狀態(tài)的人越來(lái)越多,根據(jù)全球范圍內(nèi)的一項(xiàng)調(diào)查表明,人群中有75%以上的人群處在健康和患病之間的亞健康狀態(tài),亞健康已經(jīng)成為當(dāng)今危害人類健康的頭號(hào)隱形殺手,也是現(xiàn)代醫(yī)學(xué)面臨的難題之一。但是,由于亞健康狀態(tài)沒(méi)有器質(zhì)性病變,通常不伴有明顯的病理表現(xiàn),現(xiàn)有的傳統(tǒng)醫(yī)療檢測(cè)設(shè)備,根本無(wú)法對(duì)機(jī)體的狀態(tài)和導(dǎo)致功能低下的原因做出描述和判斷。目前亞健康的診斷和評(píng)價(jià)主要是靠問(wèn)卷調(diào)查進(jìn)行的,它缺乏客觀、定量的測(cè)量指標(biāo)[1,2]。
中醫(yī)脈診是我國(guó)傳統(tǒng)醫(yī)學(xué)中最具特色的一項(xiàng)診斷方法,通過(guò)檢查與分析脈象的變化,了解人體氣血的運(yùn)行狀態(tài)以及臟腑生理與病理的改變,以此達(dá)到臨床診斷和治療的目的。脈搏信號(hào)中蘊(yùn)涵著豐富的人體生理病理信息,是傳遞和窺視體內(nèi)功能變化的窗口,某些異常信息在疾病的早期就已經(jīng)反映在脈象信號(hào)中了,因此通過(guò)分析脈象信號(hào)進(jìn)行亞健康狀態(tài)的診斷不失為一條有效的手段。但由于“脈理精微,其體難辨”,雖經(jīng)歷代醫(yī)家發(fā)微解難,仍然是“在心易了,指下難明”[3]。在此,將數(shù)字信號(hào)處理技術(shù)運(yùn)用于脈象信號(hào)的分析,對(duì)亞健康人群的脈象進(jìn)行分析研究,希望能為亞健康診斷的研究提供一條有效的途徑。
1 材料與方法
圖1為脈搏信號(hào)分類識(shí)別的過(guò)程框圖。
圖1 脈象信號(hào)識(shí)別過(guò)程框圖
“預(yù)處理”是對(duì)脈搏信號(hào)低通濾波,去除高頻噪聲。“特征提取”是為了有效地實(shí)現(xiàn)分類,而對(duì)經(jīng)過(guò)預(yù)處理后的原始數(shù)據(jù)進(jìn)行變換,得到反映分類本質(zhì)特征。“特征分類”是在特征空間中利用某種分類準(zhǔn)則把待分類的對(duì)象進(jìn)行歸類。
1.1 研究對(duì)象
在此的研究處于健康和亞健康狀態(tài)脈象的識(shí)別問(wèn)題,選用健康人和處于中度以上亞健康狀態(tài)的人作為研究對(duì)象,所選受試者均為無(wú)軀體疾病、無(wú)精神障礙的蘭州理工大學(xué)在校大學(xué)生志愿者(年齡在21~30歲之間)。使用合肥華科電子技術(shù)研究所的HK-2000C集成化數(shù)字脈搏傳感器檢測(cè)被試者脈搏信號(hào),同時(shí)由亞健康自測(cè)表測(cè)得脈象樣本的原始分類。其中,自測(cè)表是從亞健康研究網(wǎng)上獲取的,該表從軀體、心理和社會(huì)功能三個(gè)方面對(duì)人體的健康狀態(tài)進(jìn)行了綜合測(cè)試,具有很好的可靠性。文中對(duì)兩種狀態(tài)的30個(gè)樣本(健康組13例,亞健康組17例)進(jìn)行了分類實(shí)驗(yàn)驗(yàn)證。
1.2 脈象信號(hào)特征提取
在計(jì)算機(jī)控制下,用脈搏傳感器在左關(guān)部位對(duì)受試者的脈象信號(hào)進(jìn)行采集,對(duì)每一例采得的脈象數(shù)字信號(hào)通過(guò)數(shù)字低通濾波器(采樣頻率為128 Hz,截止頻率40 Hz)濾除高頻干擾后,選取一個(gè)完整的具有代表性的脈搏波進(jìn)行分析。
采用Welch法進(jìn)行功率譜估計(jì),對(duì)于濾波處理后的數(shù)字信號(hào)xN(n)(0≤n≤N-1),分為L(zhǎng)段,每一段數(shù)據(jù)長(zhǎng)為M,并允許每段數(shù)據(jù)重合一半,這時(shí)有:
L=N-M/2M/2(1)
其中第i段數(shù)據(jù)記為:
xiN(n)=xN[n+(i-1)M]
0≤n≤M-1,1≤i≤L(2)
計(jì)算每一段數(shù)據(jù)的功率譜:
iPER(k)=1MU∑M-1n=0xiN(n)W(n)e-j2πkn/M2,
0≤k≤M-1(3)
式(3)中:
U=1M∑M-1n=0W2(n)(4)
W(n)=12{1-cos[2πn/(N-1)]}(5)
把PER(k)對(duì)應(yīng)相加,再取平均值得到平均功率譜:
PER(k)=1L∑Li=1iPER(k)=
1MUL∑Li=1∑M-1n=0XiN(n)e-j2πkn/N,0≤k≤M-1(6)
畫(huà)出脈搏功率譜圖(Pulse Power Spectral Graghs,PSG)。計(jì)算方法采用快速傅里葉變換(FFT)[4]。
在分析過(guò)程中,對(duì)脈象功率譜求取功率譜峰值和重心頻率。其中,重心頻率用來(lái)評(píng)價(jià)功率譜曲線重心的遷移情況。某頻譜段功率譜密度曲線的重心頻率(Gravity Frequency)(Wolfgang Klimesh)有時(shí)也稱為平均頻率(Mean Frequency),它可以較好地反映頻譜中占分量較大的信號(hào)成分的頻率,也可以反映整個(gè)脈搏功率譜的遷移情況,其計(jì)算公式為:
fg=∑f2f=f1[p(f)f]/∑f2f=f1p(f)(7)
式中:fg為重心頻率;頻率范圍為f1~f2;p(f)為信號(hào)的功率譜;f為頻率值。
1.3 SVM分類方法
支持向量機(jī)(Support Vector Machines,SVM)是在統(tǒng)計(jì)學(xué)習(xí)理論(Statistical Learning Theory,SLT)基礎(chǔ)上發(fā)展而來(lái)的一種新的機(jī)器學(xué)習(xí)方法,是由模式類線性可分情況下的最優(yōu)分類面(Optimal Hyperplane)提出的。它的基本思想是:若在原始特征空間中實(shí)現(xiàn)的分類器結(jié)構(gòu)十分復(fù)雜,則通過(guò)定義適當(dāng)?shù)暮撕瘮?shù)誘導(dǎo)出某個(gè)非線性變換,用此變換將原始特征空間映射到一個(gè)高維空間,然后在這個(gè)新的特征空間中求得最優(yōu)線性分類面,以降低分類器的復(fù)雜度[5,6]。由RKHS(Reproducing Kernel Hilbert Spaces)理論可知,當(dāng)選定的核函數(shù)滿足一定條件時(shí),該核函數(shù)導(dǎo)出的高維特征空間中兩特征向量間的點(diǎn)積可由核函數(shù)在低維特征空間中對(duì)應(yīng)兩特征向量上的定義計(jì)算得到。這樣,便可在低維特征空間中處理對(duì)應(yīng)高維特征空間中的數(shù)據(jù)。
由于求解SVM只涉及到向量間的點(diǎn)積運(yùn)算,故不必?fù)?dān)心由于引入核函數(shù)而引起計(jì)算上的維數(shù)災(zāi)難,可將注意力集中到如何選取恰當(dāng)?shù)暮撕瘮?shù)上,以改善特征向量在高維特征空間中的分類,從而使分類器結(jié)構(gòu)更簡(jiǎn)單。這樣,求解SVM的過(guò)程即為高維特征空間中求解模式類樣本數(shù)據(jù)之間最優(yōu)分類面的過(guò)程,此處的最優(yōu)分類面是在控制樣本錯(cuò)分率的前提下使兩類樣本數(shù)據(jù)間的分類間隔(高維特征空間中)最大的分類面。統(tǒng)計(jì)學(xué)習(xí)理論指出,Δ為間隔分類超平面集合的VC維上界h:
h≤min([R2/Δ2],n)+1(8)
式中:R為包含訓(xùn)練數(shù)據(jù)的球體的半徑;Δ=1‖w*‖,w*=∑li=1yiαi,xi,αi≥0,i=1,2…,l;n為特征空間的維數(shù)。
考慮兩類分類問(wèn)題:{xi,yi}為給定訓(xùn)練樣本。其中xi為第i個(gè)樣本向量;yi代表xi的類別,yi∈{1,-1}。對(duì)于圖2的兩類問(wèn)題,中間的實(shí)線為分類線,兩邊的虛線為過(guò)各類中離分類線最近的樣本,且平行于分類線的直線,它們之間的距離叫作分類間隔(Margin),其值對(duì)應(yīng)于兩倍Δ-間隔,即2/‖w‖。圖2中與虛線相切的點(diǎn)即為支持向量(Support Vectors)。所謂最優(yōu)分類線就是要求分類線不但能將兩類正確分開(kāi)(訓(xùn)練錯(cuò)誤率為0),而且分類間隔最大,等價(jià)于‖w‖2最小。廣義最優(yōu)分類面可通過(guò)解決下列條件的約束優(yōu)化問(wèn)題得到:
φ(w,ξ)=12(w,w)+C(∑ni=1ξδi)
s.t.yi[(wx)+b]-1+ξ≥0(9)
圖2 二維空間中 SVMs原理示意圖
在上面的問(wèn)題中,如利用Lagrange優(yōu)化方法將上述最優(yōu)分類面問(wèn)題轉(zhuǎn)化為其對(duì)偶問(wèn)題,這樣計(jì)算的復(fù)雜度不再取決于空間維數(shù),而是取決于樣本數(shù),尤其是樣本中的支持向量數(shù)。不論是尋優(yōu)函數(shù),還是分類函數(shù)都只用到訓(xùn)練樣本中間的內(nèi)積運(yùn)算,若再選定某一種核函數(shù)進(jìn)行變換,則等價(jià)于解決下面的QP (Quadratic Programming ) 優(yōu)化問(wèn)題:
minα12∑li=1∑lj=1yiyjαiαjK(xi,xj)-∑lj=1αj,
s.t. ∑li=1yiαi=0,0≤αi≤C,i=1,…,l(10)
式中:K(xi,xj)為選定的核函數(shù);xi為樣本向量;yi為樣本類別,yi∈{+1,-1};C為控制錯(cuò)分樣本與模型復(fù)雜度之間折衷度的常量。
稱式(10)為L(zhǎng)1-SVM QP問(wèn)題,解L1-SVM QP問(wèn)題后得到SVM的決策函數(shù):
f(x)=sgn[∑mi=1α*iyiK(xi,x)+b*](11)
式中:
b*=yi-∑li=1yiα*iK(xi,xj)(12)
式中:α*i為式(10)優(yōu)化問(wèn)題的最優(yōu)解,如果訓(xùn)練樣本xi對(duì)應(yīng)αi>0,那么是支持向量α0,可由任意支持向量(xs,ys)確定:
α0=ys-∑li=1αiyiK(xi,xs)(13)
可以證明,式(10)優(yōu)化問(wèn)題的最優(yōu)解對(duì)應(yīng)于一個(gè)Δ-間隔分類超平面集合中處于幾何中心位置的元素(在高維空間中,從幾何上來(lái)講,該優(yōu)化問(wèn)題的最優(yōu)解所對(duì)應(yīng)的學(xué)習(xí)機(jī)即為某一個(gè)超球的中心位置所對(duì)應(yīng)的向量)。由式(8)可知,在選定核函數(shù),訓(xùn)練集確定的情況下,只需最小化‖w*‖便可控制h,從而獲得控制分類器所在分類超平面集合的VC信任;然后再在該集合中尋找使經(jīng)驗(yàn)風(fēng)險(xiǎn)最小的分類器(該分類器即對(duì)應(yīng)于分類器集合的幾何中心),繼而實(shí)現(xiàn)了SRM原則。
SVM可看成具有單隱層的前饋神經(jīng)網(wǎng)絡(luò)。隱層的神經(jīng)元即為支持向量,神經(jīng)元的權(quán)值即為式(10)最優(yōu)解中具有非零值的α。SVM較神經(jīng)網(wǎng)絡(luò)的優(yōu)點(diǎn)是:神經(jīng)元及神經(jīng)元的數(shù)目以及對(duì)應(yīng)權(quán)值都可通過(guò)優(yōu)化式(10)而自動(dòng)確定;由于式(10)是一個(gè)凸優(yōu)化問(wèn)題,故優(yōu)化過(guò)程收斂,且不存在局部極小問(wèn)題;式(10)具有快速算法,收斂過(guò)程較快;更重要的是,SVM推廣性能比普通前饋神經(jīng)網(wǎng)絡(luò)要好。
綜上所述,與其他學(xué)習(xí)算法相比,SVM有三個(gè)主要特點(diǎn):二次對(duì)偶目標(biāo)函數(shù),使得SVM可以通過(guò)求解一個(gè)二次函數(shù)來(lái)訓(xùn)練,這是一個(gè)全局最優(yōu)問(wèn)題,克服了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的局部最優(yōu)問(wèn)題;平滑化的原則,‖w‖2的范數(shù)最小,可以得到很好的推廣能力;核函數(shù)的應(yīng)用,使其可以處理非線性問(wèn)題。
1.4 核函數(shù)參數(shù)的自動(dòng)調(diào)整
核參數(shù)決定了輸入空間與高維空間的非線性映射本質(zhì),控制了映射過(guò)程的復(fù)雜度,選取合適的核參數(shù)是取得滿意分類效果的關(guān)鍵。這里采用性能較好的高斯徑向基函數(shù)(Radial Basis Function,RBF)作為核函數(shù)[7]:
K(x,z)=exp{-‖x-z‖22σ2}(14)
式中:σ為RBF函數(shù)的寬度參數(shù),控制了核函數(shù)的徑向作用范圍。
在支持向量機(jī)的性能估計(jì)中,根據(jù)最小誤差上界思想,利用訓(xùn)練數(shù)據(jù),尋找最優(yōu)的核參數(shù)。根據(jù)統(tǒng)計(jì)學(xué)習(xí)理論,Vapnik給出了支持向量機(jī)分類器的錯(cuò)誤上界:
ε=1l?R2γ2(15)
式中:R為在特征空間中包含所有訓(xùn)練樣本的最小球半徑;γ為超平面的間隔。
γ=1‖w‖,且12‖w‖2=Q(α0)
R2=maxβ∑li=1βiK(xi,xNj)-∑li,j=1βiβjK(xi,xj)(16)
約束條件:
∑li=1βi=1,βi≥0,i=1,2,…,l
在求解式(16)所示的最優(yōu)分類面過(guò)程中即可得到γ2,求解由式(16)的優(yōu)化問(wèn)題可得R2。因此,分類器的誤差上界ε=1l?R2γ2=1lR2‖w‖2。
在核函數(shù)參數(shù)空間內(nèi),尋找使ε最小的σ,即為最優(yōu)的核參數(shù)σ2。
根據(jù)上面的討論,給出尋找最優(yōu)和參數(shù)的步驟:
(1)選取較小的核參數(shù)σ、核參數(shù)增量Δσ以及核參數(shù)的搜索范圍;
(2)求解式(10)優(yōu)化方程,獲得支持向量、相應(yīng)的算子α0及‖w‖2;
(3)求解優(yōu)化方程式(16),并計(jì)算R2與誤差上界ε;
(4)將σ+Δσ賦予σ,回到步驟(2),繼續(xù)搜索,如果完成整個(gè)范圍的搜索,去步驟(5);
(5)最小誤差上界εmin對(duì)應(yīng)的σ即為最優(yōu)參數(shù)σ0,該參數(shù)將用于分類。
2 結(jié)果與討論
根據(jù)上述方法,將采集到的脈搏信號(hào)用上述Welch法進(jìn)行功率譜估計(jì),得到PSG,由于40 Hz以上的PSG能量非常小[8],故可忽略。在此,提取0~30 Hz頻段的PSG進(jìn)行分析,表1為30組樣本對(duì)應(yīng)的功率譜重心、重心頻率功率、譜峰值和峰值頻率。
表1 脈象信號(hào)的功率譜重心值,重心頻率,功率譜峰值和峰值頻率
類型功率譜重心值重心頻率功率譜峰值峰值頻率
Y011.277 2e+005 1.128 352.7250.750
Y029.572 6e+004 1.198 152.0450.875
Y031.172 1e+0051.160 452.4890.750
Y042.740 8e+0041.568 649.0110.875
Y056.004 4e+0041.474 550.4471.000
Y067.966 8e+0041.224 352.1780.750
Y072.058 5e+0041.155 545.5610.750
Y085.225 3e+0041.369 350.8220.875
Y096.113 5e+0041.204 853.4810.750
Y101.542 7e+005 1.156 853.4810.750
Y112.931 6e+004 1.801 849.4191.000
Y121.582 9e+003 1.585 244.0211.000
Y138.143 3e+004 1.331 052.3200.875
Y145.806 3e+004 1.885 049.5081.125
Y151.286 6e+005 1.224 553.6260.875
Y161.216 6e+005 1.071 353.3860.750
Y171.377 2e+005 1.145 453.0790.750
J012.842 4e+004 1.377 048.4240.875
J021.071 9e+005 1.136 352.5950.625
J033.035 8e+004 1.308947.5050.875
J042.290 3e+004 1.460 347.4060.875
J058.209 9e+003 1.340 242.7080.750
J066.050 9e+004 1.210 650.4820.750
J071.717 0e+004 1.198 245.43 80.750
J082.635 8e+004 1.170 246.4610.750
J097.243 9e+004 1.209 251.5830.750
J104.685 5e+004 1.490 851.3420.750
J118.912 4e+004 1.099 851.7010.750
J122.290 4e+004 1.460 447.4080.875
J136.050 7e+004 1.210 750.4800.750
注:表中Y代表亞健康人;J代表健康人。
對(duì)上述的30個(gè)樣本進(jìn)行分類,采用與LDA相同的迭代方法進(jìn)行訓(xùn)練,每次從中選擇2個(gè)樣本作為測(cè)試樣本,28個(gè)作為樣本訓(xùn)練。為了比較各特征量的分類效果,在進(jìn)行對(duì)比試驗(yàn)時(shí),選用高斯徑向基核函數(shù),各參數(shù)以及采用SVM對(duì)各脈搏特征的分類結(jié)果如表2所示。
表2 支持向量機(jī)對(duì)各特征量的分類結(jié)果
特征量
SVM參數(shù)設(shè)置分類正確率 /%
σ懲罰因子C訓(xùn)練樣本測(cè)試樣本
功率譜峰值、峰值頻率 0.75259080
功率譜重心、重心頻率1.225 82.1576.67
3 結(jié) 語(yǔ)
這里就線性判別式分析(LDA)和支持向量機(jī)(SVM)對(duì)所提的特征進(jìn)行了分類。對(duì)比實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),LDA算法在對(duì)亞健康狀態(tài)識(shí)別應(yīng)用中取得了較好的效果。SVM算法有著理論上的突出優(yōu)勢(shì),但在實(shí)際應(yīng)用中,由于樣本數(shù)目有限, 并且選擇的核函數(shù)及其參數(shù)都有一定的不確定性,需要根據(jù)經(jīng)驗(yàn)進(jìn)行選擇和判斷,在這一方面還需要進(jìn)一步的研究和改進(jìn)。
參考文獻(xiàn)
[1]陳復(fù)平,李強(qiáng).亞健康概論[M].北京:中國(guó)輕工業(yè)出版社,2004.
[2]徐寶,何映.亞健康狀態(tài)及其研究現(xiàn)狀[J].中國(guó)性科學(xué),2007,16(2):16-18.
[3]費(fèi)兆馥.現(xiàn)代中醫(yī)脈診學(xué)[M].北京:人民衛(wèi)生出版社,2003.
[4]王柄和,羅建,相敬林,等.人體脈搏功率譜分析與中醫(yī)脈診機(jī)理研究[J].西北大學(xué)學(xué)報(bào):自然科學(xué)版,2001,31(1):21-25.
[5]鄧乃揚(yáng),田英杰.數(shù)據(jù)挖掘中的新方法支持向量機(jī)[M].北京:科學(xué)出版社,2004.
[6]Evgeniou T,Pontil M,Poggio T.Regularization Networks and Support Vector Machines[J].Advances in Computational Mathematics,2000,13(1):1-50.
[7]Amari S,Wu S.Improving Support Vector Machine Classi-fiers by Modifying Kernel Functions[J].Neural Networks,1999,12:783-789.
[8]元慧.脈搏波的特征信息分析和動(dòng)脈硬化診斷研究[D].濟(jì)南:山東大學(xué),2005.
[9]梁宏斌,嚴(yán)正俊.基于支持向量機(jī)的模式識(shí)別方法[J].現(xiàn)代電子技術(shù),2007,30(16):193-194.
[10] 鄭曉星,吳今培.基于支持向量數(shù)據(jù)描述的數(shù)據(jù)約簡(jiǎn)[J].現(xiàn)代電子技術(shù),2007,30(2):74-76.