尹 靜
(上海建橋?qū)W院信息技術(shù)學(xué)院,上海 201319)
基于帕金森的步態(tài)研究是當(dāng)前的熱點(diǎn)之一,但是很少有人從足底壓力入手來研究帕金森患者行走中的步態(tài)特點(diǎn),更別說通過足底壓力信號(hào)的特征值來對(duì)健康人和帕金森患者進(jìn)行分類。實(shí)質(zhì)上足底壓力信號(hào)包含的內(nèi)容非常豐富,且在某些參數(shù)上帕金森患者和健康人有著明顯的差異,將其用在帕金森病的診斷中將是未來醫(yī)學(xué)發(fā)展的趨勢(shì)之一。
如何尋找一個(gè)好的模式分類器是關(guān)鍵,它對(duì)模式識(shí)別的準(zhǔn)確率有著重要的影響。傳統(tǒng)的一些分類算法雖然簡(jiǎn)單,且易于實(shí)現(xiàn),但識(shí)別的準(zhǔn)確率太低。支持向量機(jī)(SVM)是近年來在統(tǒng)計(jì)學(xué)理論基礎(chǔ)上發(fā)展起來的一種新的機(jī)器學(xué)習(xí)方法[1],具有理論相對(duì)完備、適應(yīng)性強(qiáng)、全局優(yōu)化、訓(xùn)練時(shí)間短、泛化性能好等優(yōu)點(diǎn),已經(jīng)成為目前國(guó)內(nèi)外研究的熱點(diǎn),在解決小樣本、非線性及高維模式識(shí)別問題中表現(xiàn)出許多特有的優(yōu)勢(shì)。
本文重點(diǎn)研究基于支持向量機(jī)的帕金森患者足底壓力信號(hào)時(shí)空特征的分類器設(shè)計(jì),以用來對(duì)帕金森患者和健康人進(jìn)行分類。
通過健康人和帕金森患者的足底壓力信號(hào)的對(duì)比,可以發(fā)現(xiàn)壓力信號(hào)波形均呈明顯的雙峰一谷特點(diǎn),但健康人的峰谷差要比帕金森患者的大;帕金森患者的谷底值對(duì)應(yīng)的時(shí)間更偏近于左峰值。以上特點(diǎn)將作為數(shù)據(jù)篩選的重要依據(jù)[2]。
本文采用的原始數(shù)據(jù)來源于現(xiàn)有的公共步態(tài)壓力信號(hào)數(shù)據(jù),即physiobank中的Gait in Parkinson’s Disease數(shù)據(jù)庫,選擇Ga組的原始數(shù)據(jù)作為研究數(shù)據(jù)。
原始數(shù)據(jù)篩選算法的具體過程如下:
a.搜尋波形的第一零點(diǎn)位置。鑒于原始數(shù)據(jù)的波形起始點(diǎn)未必就是步態(tài)周期的起始點(diǎn),首先檢測(cè)第一個(gè)零點(diǎn)出現(xiàn)位置,記為zero1(i);此處的零點(diǎn)是指壓力值小于設(shè)定的less值,在一定程度上濾除因測(cè)量引起的誤差。
b.搜尋步態(tài)周期的起始位置。從第一零點(diǎn)位置開始,往后搜索第一個(gè)非零點(diǎn)位置,此點(diǎn)即為步態(tài)周期的起始位置,記為start(i)。
c.搜尋步態(tài)周期的結(jié)束位置。從start(i)開始,往后搜索第一個(gè)零點(diǎn)位置,此點(diǎn)即為步態(tài)周期的結(jié)束位置,記為over(i)。
d.令zero1(i+1)=over(i),重復(fù) a和 b兩步,直到原始數(shù)據(jù)末端。
e.檢測(cè)波形的最高峰值及其位置。利用max函數(shù)找到每個(gè)步態(tài)周期的最高點(diǎn)位置及其幅值。
f.搜索所有的非最高峰值的極大值點(diǎn)及其位置。利用極大值點(diǎn)大于相鄰點(diǎn)的特點(diǎn),進(jìn)行遍歷查找。
g.在f步所得幾個(gè)極大值中找最大的極值峰值及其位置。
h.確定左峰值和右峰值。比較最大值位置和g步所得的極值峰值的位置,位置小的為左峰值,位置大的為右峰值。
i.求谷底值及其位置。在兩峰值間,用min函數(shù)尋找最小值點(diǎn)及其幅值。
j.抽取噪聲小的有效數(shù)據(jù)。根據(jù)谷峰差及左峰值位置到谷底值位置的時(shí)間差篩選有效數(shù)據(jù)。
經(jīng)以上幾步,若f步搜索的極大值個(gè)數(shù)為零或j步的有效數(shù)據(jù)不存在,則本組數(shù)據(jù)不可用。
分別對(duì)帕金森患者和健康人的步態(tài)數(shù)據(jù)進(jìn)行篩選,可得如圖1波形。
典型的壓力波形中包含了4個(gè)特征點(diǎn),如圖2中已用平行于縱坐標(biāo)軸的豎實(shí)線引出。
圖1 初步篩選后的壓力波形
圖2 一個(gè)步態(tài)周期的典型的壓力信號(hào)波形
利用得到的特征點(diǎn)序列計(jì)算每個(gè)人每個(gè)步態(tài)周期的如下特征參數(shù):起始點(diǎn)距左峰值點(diǎn)間的時(shí)間長(zhǎng)度t1,起始點(diǎn)距左峰值點(diǎn)的壓力變化率tp1;左峰值點(diǎn)距谷底點(diǎn)間的時(shí)間長(zhǎng)度t2,左峰值點(diǎn)距谷底點(diǎn)的壓力變化率tp2;谷底點(diǎn)距右峰值點(diǎn)間的時(shí)間長(zhǎng)度t3,谷底點(diǎn)距右峰值點(diǎn)的壓力變化率tp3;右峰值點(diǎn)距結(jié)束點(diǎn)間的時(shí)間長(zhǎng)度t4,右峰值點(diǎn)距結(jié)束點(diǎn)的壓力變化率tp4;t1,t2,t3,t4分別占總著地時(shí)間 tz=(t1+t2+t3+t4)的比例:p1,p2,p3,p4。
以上步驟計(jì)算出的是某一人的多個(gè)步態(tài)周期的特征值,為降低誤差,在使用時(shí),取其均值作為一組最終特征值。
在算出一個(gè)步態(tài)周期的長(zhǎng)度之后,再乘以步行速度就可以得到一個(gè)完整周期的步長(zhǎng)。由于每個(gè)實(shí)驗(yàn)對(duì)象的個(gè)體特征都不同,身高也存在差異,所以步長(zhǎng)也會(huì)有所不同。為了有統(tǒng)一的比較標(biāo)準(zhǔn),對(duì)步長(zhǎng)進(jìn)行歸一化處理,即用得到的一個(gè)周期的步長(zhǎng)去除以身高。
因?yàn)橐玫讲叫兴俣群蜕砀撸栽谠紨?shù)據(jù)篩選時(shí),若這兩個(gè)值有缺省,則這組數(shù)據(jù)不可用,經(jīng)過篩選,選擇數(shù)據(jù)庫中Ga組的17組健康人有效步態(tài)數(shù)據(jù)和13組帕金森患者數(shù)據(jù)。
本文的目的是設(shè)計(jì)一個(gè)有效的分類器,從而能夠正確地區(qū)分健康人和帕金森患者。而分類的前提是能夠找出最具有分類信息的特征。通過上面的特征參數(shù)提取再進(jìn)行T檢驗(yàn),可以選出步長(zhǎng)L,t1,t4以及t1段的壓力變化率tp1共4個(gè)具有顯著差異的特征參量作為分類器的輸入。
支持向量機(jī)(SVM)是近年來在模式識(shí)別與機(jī)器學(xué)習(xí)領(lǐng)域中出現(xiàn)的新工具,它以統(tǒng)計(jì)學(xué)習(xí)理論為基礎(chǔ),建立了一套完整的、規(guī)范的、基于統(tǒng)計(jì)的機(jī)器學(xué)習(xí)理論和方法,具有完美的數(shù)學(xué)形式、直觀的幾何解釋和良好的泛化能力;人為設(shè)定的參數(shù)少,便于使用;大大減少了算法設(shè)計(jì)的隨意性,在小樣本條件下存在其獨(dú)特的優(yōu)勢(shì)[3]。因此成為繼神經(jīng)網(wǎng)絡(luò)以來機(jī)器學(xué)習(xí)領(lǐng)域中研究的熱點(diǎn)[4]。
支持向量機(jī)的基本思想可以概括為:首先通過非線性變換將輸入空間變換到一個(gè)高空間,然后在這個(gè)新空間中求取最優(yōu)線性分類面,而這種非線性變換是通過定義適當(dāng)?shù)膬?nèi)積函數(shù)實(shí)現(xiàn)的[5]。
概括地說,支持向量機(jī)主要優(yōu)點(diǎn)的體現(xiàn)在以下幾個(gè)方面:
a.它是專門針對(duì)有限樣本情況的,其目標(biāo)是得到現(xiàn)有信息下的最優(yōu)解,而不僅僅是樣本數(shù)趨于無窮大時(shí)的最優(yōu)值,能有效地避免過學(xué)習(xí)現(xiàn)象的產(chǎn)生。
b.算法最終轉(zhuǎn)化成為一個(gè)二次型尋優(yōu)問題,從理論上說,得到的將是全局最優(yōu)點(diǎn),從而有效地解決了在神經(jīng)網(wǎng)絡(luò)方法中無法避免的局部極值問題。
c.通過引入核技術(shù),將實(shí)際問題通過非線性變換轉(zhuǎn)換到高維的特征空間(featuresPace),在高維特征空間中構(gòu)造線性判別函數(shù)來實(shí)現(xiàn)輸入空間中的非線性判別函數(shù),同時(shí)也巧妙地解決了維數(shù)問題,其算法復(fù)雜度與樣本維數(shù)無關(guān)[6]。
本文使用林智仁教授開發(fā)的libsvm-3.1工具包,在MATLAB中調(diào)用時(shí),需設(shè)置參數(shù)。
構(gòu)造訓(xùn)練樣本屬性時(shí),設(shè)定的樣本屬性:對(duì)于健康人,設(shè)置為-1;對(duì)于帕金森病患者,設(shè)置為1。
關(guān)于SVM參數(shù)的優(yōu)化選取,國(guó)際上并沒有公認(rèn)統(tǒng)一的最好方法,目前常用的方法就是讓c和g在一定的范圍內(nèi)取值,再把訓(xùn)練集作為原始數(shù)據(jù)集,利用K-CV方法得到在此組c和g下訓(xùn)練集驗(yàn)證分類的準(zhǔn)確率,最終取得訓(xùn)練集驗(yàn)證分類準(zhǔn)確率最高的那組c和g作為最佳的參數(shù)[7]。
建立向量機(jī)模型:
s取1,即選擇V-SVC;g取1.2058,c取0.5,是通過尋優(yōu)函數(shù)找到的較好的值;t取2,即選擇徑向基核函數(shù)。
統(tǒng)計(jì)識(shí)別率:
結(jié)果輸出:
識(shí)別率的大小用來評(píng)估最終訓(xùn)練得到的分類器的分類效果,由輸出結(jié)果可知,識(shí)別率可達(dá)到92.8571%,在一定誤差下,可以準(zhǔn)確識(shí)別健康人和帕金森患者。
本文選取60%的有效數(shù)據(jù)作為訓(xùn)練樣本,40%的有效數(shù)據(jù)作為測(cè)試樣本,并用徑向基核函數(shù)的向量機(jī)模型進(jìn)行訓(xùn)練和測(cè)試。測(cè)試結(jié)果表明:識(shí)別率較高,分類效果比較明顯。
從受試者行走時(shí)產(chǎn)生的足底壓力信號(hào)中提取出多個(gè)時(shí)空特征參數(shù),構(gòu)成一個(gè)特征空間,并利用SVM不斷進(jìn)行訓(xùn)練,直至設(shè)計(jì)出一個(gè)穩(wěn)定、準(zhǔn)確的分類器,可以自動(dòng)區(qū)分出正常人和帕金森患者的步態(tài)信號(hào),對(duì)于拓寬帕金森疾病的早期診斷手段具有應(yīng)用價(jià)值。
[1] 吳劍,李建設(shè).人體行走時(shí)步態(tài)的生物力學(xué)研究進(jìn)展[J].中國(guó)運(yùn)動(dòng)醫(yī)學(xué),2002,21(3):305-307.
[2] 袁立偉,王健.帕金森患者的步態(tài)特征[J].中國(guó)康復(fù)醫(yī)學(xué),2010,25(6):586-588.
[3] 豐明聰,葛洪偉.基于SVM的步態(tài)識(shí)別研究[J].計(jì)算機(jī)應(yīng)用,2008(8):26-30.
[4] 孫嘉利,土桂清.步態(tài)分析[J].中國(guó)療養(yǎng)醫(yī)學(xué),2010(5):427-430.
[5] 王平平,王俊.基于DCCA和MF_DCCA的步態(tài)信號(hào)的分析與研究[D].南京:南京郵電大學(xué),2012.
[6] 史峰,王小川,郁磊,等.MATLAB神經(jīng)網(wǎng)絡(luò)30個(gè)案例分析[M].北京:北京航空航天大學(xué)出版社,2010.
[7] 陳達(dá),曹先彬.基于進(jìn)化SVM的行人檢測(cè)分類技術(shù)研究[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2007.