丁亞芝,鄭志高,馬 嶸
體質(zhì)數(shù)據(jù)分析的一個(gè)重要方面就是為發(fā)展國民體育運(yùn)動、改善體育教學(xué)提供依據(jù)。近年來,國內(nèi)、外在人體體質(zhì)數(shù)據(jù)分析方面,主要是對體質(zhì)數(shù)據(jù)獲取的測試方法以及測試儀器等方面的研究,很少使用數(shù)學(xué)的分析方法對數(shù)據(jù)處理方法、數(shù)據(jù)所代表的結(jié)果進(jìn)行分析和比較。體育科學(xué)積累了大量的測試結(jié)果,傳統(tǒng)的研究方法缺乏對數(shù)據(jù)的深層次分析,隱藏在數(shù)據(jù)背后的知識和相關(guān)的有用信息都沒有得到充分挖掘。當(dāng)前,統(tǒng)計(jì)學(xué)已經(jīng)在體育科學(xué)研究中顯示出前所未有的成果,但是也暴露出自身的一些局限性,使得相關(guān)數(shù)據(jù)分析工作不盡如人意。數(shù)據(jù)挖掘技術(shù)是一門以數(shù)據(jù)為基礎(chǔ)的科學(xué),是一種能夠幫助決策者抽取隱藏在數(shù)據(jù)背后的有用信息和科學(xué)的方法[1]。由于目前一些直觀判斷人體體質(zhì)狀況的指標(biāo)的測試都相對復(fù)雜,并且對測試方法有著較高的要求,但是在實(shí)際常規(guī)體質(zhì)判斷中我們往往希望根據(jù)一些簡單測試的數(shù)據(jù)即可判斷受試者的體質(zhì)質(zhì)量。因此,如何根據(jù)簡單測量指標(biāo)判斷體質(zhì)狀況是目前體育數(shù)據(jù)分析中的一個(gè)重要課題。決策分析技術(shù)的出現(xiàn)使得這一課題有著重大突破,基于決策分析的方法,可以根據(jù)身高、體重等一些簡單的體質(zhì)指標(biāo)結(jié)合一些能夠直接確定人體體質(zhì)狀況的指標(biāo)建立決策分析樹,并利用部分測試數(shù)據(jù)對決策樹的準(zhǔn)確性進(jìn)行校驗(yàn)。確定一棵準(zhǔn)確的決策樹之后即可根據(jù)一些簡單的測量指標(biāo)快速判斷人體體質(zhì)狀況。
于岱峰等[12]以人體握力肌肉力量測試數(shù)據(jù)研究為例將ID3算法應(yīng)用于人體肌肉力量數(shù)據(jù)分析中,該項(xiàng)實(shí)驗(yàn)在單機(jī)環(huán)境下取得了良好的效果。但是,ID3算法存在以下一些缺點(diǎn),導(dǎo)致該方法在大量數(shù)據(jù)分析和連續(xù)數(shù)據(jù)分析中的效果還有待提高[17]:1)算法注重特征的選擇,并且在特征選擇時(shí)注重特征值數(shù)目較多的特征,但是數(shù)目多的特征并不一定是最優(yōu)特征,因此,該方案還有待進(jìn)一步優(yōu)化;2)對噪聲較為敏感,訓(xùn)練集中正例與反例的比例很難控制(圖1);3)學(xué)習(xí)邏輯表達(dá)的能力較差,并且決策樹隨著訓(xùn)練集的變化而變化。
圖1 噪音數(shù)據(jù)對決策分析的影響示意圖Figure 1.Influence of Noise Data for Decision Analysis
由于體質(zhì)監(jiān)測數(shù)據(jù),如握力、血壓、三圍等都是連續(xù)數(shù)據(jù),并且在進(jìn)行全國聯(lián)網(wǎng)數(shù)據(jù)分析時(shí)涉及的都是海量數(shù)據(jù)分析?;贗D3算法的這樣一些缺陷以及SPRINT算法在處理海量數(shù)據(jù)方面的一些優(yōu)勢,本文采用趨勢選擇的方法對連續(xù)屬性分割的情況進(jìn)行剪枝提出基于趨勢選擇的SPRINT算法(Trend Selection Based Scalable Parallelizable Induction of Decision Trees,簡稱TESTSPRINT算法),用以解決ID3算法和SPRINT算法在處理連續(xù)數(shù)據(jù)方面的一些缺陷。理論分析和實(shí)驗(yàn)證明,本文提出的TESTSPRINT算法具有以下一些優(yōu)點(diǎn):1)保留了SPRINT算法支持多CUP的特性,處理海量數(shù)據(jù)時(shí)的時(shí)間和空間復(fù)雜度較低;2)引入了趨勢選擇的概念,對于連續(xù)區(qū)間屬性的處理可以通過趨勢選擇進(jìn)行預(yù)處理剪枝,極大減小了計(jì)算復(fù)雜度,減小了在線計(jì)算開銷;3)算法具有較低的時(shí)間和空間開銷,對體育數(shù)據(jù)分析具有較高的準(zhǔn)確性。
隨著數(shù)據(jù)的積累,采用數(shù)據(jù)挖掘的方法進(jìn)行數(shù)據(jù)分析工作已經(jīng)成為科學(xué)研究的基本的方法,不同的學(xué)者采用了不同的數(shù)據(jù)挖掘方法處理體質(zhì)等相關(guān)數(shù)據(jù)。李慧玲等[3]從數(shù)據(jù)倉庫決策支持的角度對數(shù)據(jù)挖掘和數(shù)據(jù)倉庫在高校體育數(shù)據(jù)分析中的可行性進(jìn)行了論證。桑國強(qiáng)等[8]應(yīng)用數(shù)據(jù)挖掘及邏輯推理法對體育院校輔導(dǎo)員不同的管理行為及與學(xué)生管理效益之間的關(guān)系進(jìn)行了研究,得出了動態(tài)平衡型管理行為可提高管理工作的效益的結(jié)論。茅潔等[5]將神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)挖掘理論與生化指標(biāo)相結(jié)合,利用神經(jīng)網(wǎng)絡(luò)自學(xué)習(xí)的特性分析預(yù)測運(yùn)動成績。茅潔等[6]將灰色ART聚類分析方法的理論與生化指標(biāo)數(shù)據(jù)相結(jié)合,對運(yùn)動成績進(jìn)行了分析預(yù)測,研究了灰色ART聚類分析方法在運(yùn)動生化指標(biāo)的應(yīng)用及意義,為運(yùn)動員競技體能的分析、解釋、預(yù)測提供了量化依據(jù),提高了教練員培養(yǎng)后備運(yùn)動員的科學(xué)性、智能性,同時(shí),也為正確跟蹤每個(gè)運(yùn)動員的不同競技狀況,采用不同的科學(xué)訓(xùn)練指導(dǎo)方案、訓(xùn)練手段提供了科學(xué)依據(jù)。趙會群等[13]將馬爾科夫過程模型應(yīng)用于體育比賽戰(zhàn)術(shù)分析評價(jià),成功預(yù)測了比賽制勝的關(guān)鍵。鄭丹青等[14]提出了一個(gè)基于決策樹的胃癌臨床醫(yī)療信息分析應(yīng)用研究模型,運(yùn)用SPRINT算法,構(gòu)建胃癌術(shù)后復(fù)發(fā)的危險(xiǎn)因素分析模型。通過對模型分析,尋找疾病的臨床診斷、治療和預(yù)后的關(guān)系,證實(shí)了胃癌術(shù)后復(fù)發(fā)首要危險(xiǎn)因素。
為了克服原有SPRINT算法[19]的不足,不同的學(xué)者從不同的角度提出了一系列SPRINT算法的變體并取得了較好的效果。劉友軍等[4]對SPRINT算法進(jìn)行了改進(jìn),采用純區(qū)間的方法對數(shù)值型屬性進(jìn)行規(guī)約,用等寬直方圖的方式對屬性值域進(jìn)行了劃分,按照純區(qū)間和非純區(qū)間分別進(jìn)行規(guī)約和精確計(jì)算的方式對屬性進(jìn)行處理,減小了計(jì)算量的同時(shí)保證了分裂的精度。WU等[21]采用了與文獻(xiàn)[4]類似的方法,將改進(jìn)的算法應(yīng)用于畢業(yè)設(shè)計(jì)過程管理系統(tǒng)(Graduation Design Process Management System)取得了良好的效果。許向陽等[10]提出一種快速尋找最佳分割點(diǎn)的方法克服SPRINT算法計(jì)算量大的缺點(diǎn),該方法采用區(qū)間評估、篩選和局部逐一搜索等策略,大幅度地縮小了SPRINT算法的搜索空間。彭程等[7]針對SPRINT算法中的尋找連續(xù)屬性最佳分割點(diǎn)計(jì)算量大的問題,改進(jìn)了尋找連續(xù)屬性最佳分割點(diǎn)的方法。改進(jìn)后的方法可減少候選分割點(diǎn)的數(shù)目,從而減少計(jì)算量和計(jì)算時(shí)間。于蕾等[11]還引入了一種動態(tài)的數(shù)據(jù)結(jié)構(gòu),將改進(jìn)的SPRINT算法應(yīng)用于分布式環(huán)境下,減少了屬性列表占用的存儲空間以及分割節(jié)點(diǎn)操作所需的時(shí)間。
SPRINT算法中首先采用遞歸的方法構(gòu)造決策樹,與其他決策算法類似,都是采用自頂向下的方式進(jìn)行的,在決策樹的生成過程中包含生成樹的創(chuàng)建和剪枝兩個(gè)階段。生成樹的創(chuàng)建算法如下:
SPRINT算法中的剪枝策略采用了最小描述長度(Minimum Description Length,簡稱 MDL)原則[15]。在生成決策樹的過程中,樣本集T以及分割樣本集T1、T2分別代表樹中的結(jié)點(diǎn),其中,T1、T2是T的兩個(gè)分枝結(jié)點(diǎn)。因此,這種方法形成的決策樹是一棵二叉樹。
為了生成決策結(jié)果,在算法中必須對節(jié)點(diǎn)進(jìn)行分裂,分裂的優(yōu)良程度是采用分裂指數(shù)來度量的,常用的分裂指數(shù)主要有Gini指數(shù)(Gini index)、信息增益比例等。在SPRINT算法中采用了Gini指數(shù)作為度量指標(biāo)。一個(gè)具有n條記錄的數(shù)據(jù)集S可歸納到c個(gè)互不相關(guān)的類中,在對集合S進(jìn)行決策分類的過程中,集合S的Gini值是:
如果用m表示S中屬于類j的記錄數(shù),那么pj=m/n。
將集合S按照規(guī)則cond劃分成S1和S2兩個(gè)子集,那么規(guī)則cond的度量值可記為GiniD(S,cond),定義如式(2):
其中,n1、n2分別為 S1、S2的記錄數(shù)。GiniD(S,cond)越小,表明分裂規(guī)則越好。
由于分裂只會發(fā)生在兩個(gè)節(jié)點(diǎn)之間,并且數(shù)值型屬性A的分裂形式為A≤v,因此,可以先對數(shù)值型屬性進(jìn)行排序得到v1,v2,…,vn,共有n-1種分裂的可能性。為了取得最佳分裂點(diǎn),傳統(tǒng)的做法是取中點(diǎn)(vi+vi+1)/2作為分裂點(diǎn),最后在不同的分裂點(diǎn)中取Gini值最小的點(diǎn)作為最佳分裂點(diǎn)。
傳統(tǒng)方法雖然能夠找到最佳分裂點(diǎn),但是在算法實(shí)現(xiàn)過程中使用的是遍歷所有結(jié)點(diǎn)的方法,是一種蠻力算法,分裂過程中占用的臨時(shí)空間達(dá)數(shù)據(jù)規(guī)模的3倍以上,并且時(shí)間復(fù)雜度相對較高,對于指數(shù)型尤其是超大規(guī)模的數(shù)值屬性效率很低。
為了克服SPRINT算法進(jìn)行精確查找過程中占用空間過大、時(shí)間復(fù)雜度過高的缺點(diǎn),本文不加證明地引用文獻(xiàn)[4]中提出的純區(qū)間概念,采用等深度直方圖[18,20]的方法對訓(xùn)練集連續(xù)的值域進(jìn)行等值分割成q個(gè)區(qū)間,進(jìn)行分段處理,在計(jì)算方法上各個(gè)區(qū)間可以進(jìn)行并行計(jì)算,在一定程度上可降低計(jì)算的工作量。在對區(qū)間分割處理時(shí),對純區(qū)間進(jìn)行規(guī)約,對非純區(qū)間則用估計(jì)最佳分割點(diǎn)的方法進(jìn)行,在可能出現(xiàn)最佳分割點(diǎn)的區(qū)間進(jìn)行查找。
定義1:對于某個(gè)數(shù)值型屬性,區(qū)間Ci為純區(qū)間當(dāng)且僅當(dāng)區(qū)間[vb,vt]中的所有記錄屬于同一個(gè)類Ci。
定理1:設(shè)[a,b]上的連續(xù)函數(shù)f(x)在(a,b)內(nèi)具有一階和二階導(dǎo)數(shù),那么:1)若在(a,b)內(nèi)f″(x)>0,則f(x)在[a,b]上是凹的;2)若在(a,b)內(nèi)f″(x)<0,則f(x)在[a,b]上是凸的。
定理2:f(x)在純區(qū)間上是凸函數(shù)。
證明:設(shè)S為待劃分的數(shù)據(jù)集,[vl,vu]為一個(gè)區(qū)間,數(shù)據(jù)集S的大小、S中類的個(gè)數(shù)分別表示為n、c,根據(jù)式(2)可得GiniD在點(diǎn)vl的值可表示為式(3)。
其中,xi,yi分別表示類i中小于或等于vl、vu的記錄數(shù);nl==,分別表示小于等于vl、vu的記錄數(shù);ci表示類i中所有記錄數(shù)。也就是有式(4)成立。
對于Ck的一個(gè)純區(qū)間[vb,vt],在式(3)中,xi(i=1,2,…,c)中表示該純區(qū)間第k個(gè)類的記錄數(shù)為xk,只有xk變化,令xk=x,ck=C,則式(3)可以轉(zhuǎn)化為一個(gè)關(guān)于x的函數(shù)。
對于式(3),令:若[vb,vt]是對于Ck的純區(qū)間,在式(3)中該純區(qū)間的第k個(gè)類的記錄數(shù)為xk,令xk=x,ck=C,則式(3)為一個(gè)關(guān)于x的函數(shù)。令:nl==A+x=B+x2,(ci-cxi)2=D+(C-x)2。其中,A、B、C、D 均為≥0的常數(shù),則式(3)關(guān)于x的函數(shù)可表示為式(5)。
式(5)的二階導(dǎo)數(shù)為:
因?yàn)锳、B、C、D 均為大于等于0的常數(shù),x>0,n>nl=A+x,(A+x)3和(n-A-x)3是大于0的數(shù),所以有f″(x)<0。根據(jù)定理1可知,f(x)在純區(qū)間[vb,vt]上是凸函數(shù)。
定理3:如果在連續(xù)屬性的屬性表中確定分割點(diǎn)v的兩個(gè)元組的類別相同,那么至少存在另一個(gè)分割點(diǎn)v′使得v′的Gini參數(shù)值小于分割點(diǎn)v的Gini參數(shù)值[7]。
根據(jù)定理2知式(3)在Ck的一個(gè)純區(qū)間[vb,vt]內(nèi)的極小值只可能出現(xiàn)在區(qū)間的邊界點(diǎn)處。數(shù)值型屬性一般都服從高斯分布[16],在等寬劃分的區(qū)間中存在大量的純區(qū)間。因此,可以直接將純區(qū)間進(jìn)行剪枝,只要計(jì)算各個(gè)純區(qū)間的邊界點(diǎn)處的Gini值;對于非純區(qū)間首先判斷分割點(diǎn)v的兩個(gè)元組的類別是否相同,只有當(dāng)兩個(gè)元組類別不同時(shí)才計(jì)算其Gini值。
由于連續(xù)屬性的GiniD是連續(xù)的,對于非純區(qū)間首先采用趨勢選擇法(Trend Selection Method)估計(jì)GiniD的下限值,假設(shè)j在v1取得最小斜率,用yj代替xj,使用公式(3)來計(jì)算新的GiniD,如果GiniD(S,a≤vl)>GiniD(S,a≤vu),那么 GiniD在區(qū)間[vl,vu]上是凸的,區(qū)間[vl,vu]被剪枝。候選分割點(diǎn)的 GiniD值為 min{GiniD(S,a≤vl),GiniD(S,a≤vu)}。基于趨勢選擇的候選分割算法(Trend Selection Based Candidate Segmentation Algorithm,簡稱TESTCASE算法)如下:
最后在候選區(qū)間中搜索最佳分割點(diǎn),圖2給出了一個(gè)示例區(qū)域中區(qū)間分布及Ginilow>Ginican_low的情況,其中,陰影覆蓋的柱狀區(qū)間就是候選區(qū)間。
圖2 候選區(qū)間及Gini下限估計(jì)值示意圖Figure 2.Candidate Interval and Estimate Gini Lower
在基于趨勢選擇方法的基礎(chǔ)上,本文提出一種基于趨勢選擇的SPRINT算法。本文提出的算法采用了純區(qū)間歸約的方法和基于趨勢選擇的方法來處理數(shù)值型屬性,首先采用寬度優(yōu)先的方法構(gòu)建生成樹,針對連續(xù)屬性的區(qū)間進(jìn)行了剪枝,從而減少計(jì)算量,快速確定最佳分割點(diǎn),還使用Gini指標(biāo)對數(shù)值型屬性進(jìn)行評估,保證了算法的精確性。TESTSPRINT算法的詳細(xì)描述:
算法中,集合T、T1、T2分別代表樹中的結(jié)點(diǎn)。由于每個(gè)屬性對應(yīng)的最佳分割點(diǎn)只有一個(gè),因此,最后生成的決策樹是一棵二叉樹。
由于TESTSPRINT算法中進(jìn)行了大量的區(qū)間剪枝和候選分割點(diǎn)的剪枝,即TESTSPRINT算法的主要優(yōu)點(diǎn)在于屬性分割和決策樹的構(gòu)建可以并行進(jìn)行,下面從時(shí)間復(fù)雜度和空間復(fù)雜度兩個(gè)方面進(jìn)行分析。
設(shè)數(shù)據(jù)集S中共有n條記錄包括c個(gè)互不相關(guān)的類,在生成決策樹的過程中共劃分為q個(gè)區(qū)間,每個(gè)區(qū)間的記錄數(shù)為ni;在改進(jìn)的算法中非純區(qū)間數(shù)為b。在相同條件下對SPRINT算法和本文提出的TESTSPRINT算法在時(shí)間復(fù)雜度和空間復(fù)雜度兩方面進(jìn)行對比。
首先,在預(yù)處理階段中,SPRINT算法構(gòu)建屬性表的時(shí)間復(fù)雜度為O(n),對屬性預(yù)排序的時(shí)間復(fù)雜度為O(nlogn),因此,SPRINT 算法的時(shí)間復(fù)雜度為 O(n)+O(nlogn)=O(nlogn)。而在本文提出的TESTSPRINT算法中,估算每一個(gè)區(qū)間邊界的Gini值的時(shí)間代價(jià)為O(qc),構(gòu)建屬性表和建立分區(qū)直方圖列表的時(shí)間復(fù)雜度均為O(n),對每個(gè)非純區(qū)間中的精確Gini值的時(shí)間代價(jià)最壞情況為O),因此,TESTSPRINT算法的時(shí)間復(fù)雜度為O(qc)+2 O(n)+O()=O(n)。
TESTSPRINT算法只對非純區(qū)間進(jìn)行局部排序,有效提高了排序的效率,同時(shí),純區(qū)間規(guī)約、非純區(qū)間和候選結(jié)點(diǎn)的剪枝都減空間少了Gini值的計(jì)算量。無論從時(shí)間復(fù)雜度的角度,還是空間復(fù)雜度的角度看,本文提出的TESTSPRINT算法在性能上都有一定的提升。
通過實(shí)驗(yàn)比較來研究本文提出的基于趨勢選擇的SPRINT算法的性能和有效性。實(shí)驗(yàn)中所采用的數(shù)據(jù)包括新疆師范大學(xué)225名受試者的體質(zhì)測量數(shù)據(jù)和決策分析常用的STATLOG數(shù)據(jù)集。對新疆師范大學(xué)受試者進(jìn)行體質(zhì)測量項(xiàng)目主要包括身高、體重、握力、臺階指數(shù)和BMR值,其中,訓(xùn)練集包含150組數(shù)據(jù),測試集包含75組數(shù)據(jù)。STATLOG中Segement數(shù)據(jù)集包含2310條記錄;Shuttle包含58000條記錄;Satimage數(shù)據(jù)集包含6435條記錄。
本文所有實(shí)驗(yàn)均在相同的軟、硬件條件下完成,實(shí)驗(yàn)的硬件環(huán)境為Intel(R)Core(TM)i5-25200四核64位2.5GHz的CPU和4GB的內(nèi)存,軟件環(huán)境為Windows 7-64 bit(professional)操作系統(tǒng),所有代碼均用Java(64bit JDK)和Matlab 2012實(shí)現(xiàn)。
為了驗(yàn)證算法的準(zhǔn)確性和穩(wěn)定性,本文首先使用數(shù)據(jù)挖掘中常用的STATLOG數(shù)據(jù)集對算法的準(zhǔn)確性進(jìn)行了驗(yàn)證,STATLOG 數(shù)據(jù)集包含Segement、Shuttle和Satimage-Sanger數(shù)據(jù)包,其中,Segement共包含2310條記錄,Shuttle中包含58000條記錄,訓(xùn)練集43500條記錄、測試集14500條記錄;Satimage Sanger共包含6435條記錄,訓(xùn)練集和測試集分別包含4435條記錄和2000條記錄。計(jì)算結(jié)果如表1所示。
由表1可知,TESTSPRINT算法分割結(jié)果與原SPRINT算法基本相同,TESTSPRINT算法的精確度已經(jīng)能夠達(dá)到99%以上,其精確度是可接受的。
表1 本研究精確Gini值和不同區(qū)間數(shù)下TESTSPRINT算法得到的Gini值一覽表Table 1 Exact Gini Value and Compute Value under Different Intervals of TESTSPRINT
測試中采用HHTC/WL-100型握力測試儀測量受試者握力,測力范圍:5~99.9kgf,測量分辨率0.1kgf,測量誤差:±0.3kgf。受試者兩腳自然分開,成直立姿勢,兩臂自然下垂,掌心向內(nèi),手臂不得左右擺動,握力計(jì)與身體的任何部位都不得有接觸,快速全力發(fā)力。對每位受試者進(jìn)行2次測試,取2次測試結(jié)果的最大值作為記錄值。
采集臺階指數(shù)使用HHTC/TJ-100型臺階試驗(yàn)儀,測量范圍:0~300次/min,測量分辨率:1次,測量誤差:±1次。受試者在測試之前可做輕微的準(zhǔn)備活動,主要是活動下肢。受試者按照2s上下一次臺階的音樂節(jié)奏上下踏臺,音樂節(jié)奏為120次/min,每次4拍,上下踏臺的持續(xù)時(shí)間為3min。臺階高度女生為35cm,男生為40cm。上下臺階的運(yùn)動停止后,受試者在30s內(nèi)在相應(yīng)位置靜坐,將手指平放在桌子上,手指盡可能與心臟同高。測試者用指脈測試夾測試受試者脈搏,測試時(shí)間為3.5min,記錄測試結(jié)果。
對于BMR值的測試是在基礎(chǔ)狀態(tài)下使用InBody 3.0人體成分分析儀進(jìn)行的。InBody 3.0每次測試時(shí)間不超過2min,測試體重范圍:10~250kg,測試年齡范圍:6~99歲。Inbody 3.0人體成分分析儀檢測項(xiàng)目主要包括:基礎(chǔ)代謝率(BMR);身體質(zhì)量參數(shù)(BMI)、體重(kg)等。綜合幾項(xiàng)測試結(jié)果可以得出受試者的體質(zhì)質(zhì)量(表2)。
表2 本研究數(shù)據(jù)格式示例一覽表Table 2 Example Data Format
在常規(guī)體質(zhì)判斷中我們希望根據(jù)一些簡單測試的數(shù)據(jù)即可判斷受試者的體質(zhì)質(zhì)量,由于BMR在臨床上可以快速確定人體體質(zhì)狀況,但是其測試方法復(fù)雜,測試成本相對較高,不便于快速測試。因此,本實(shí)驗(yàn)根據(jù)本文提出的TESTSPRINT算法對身高、體重、握力和臺階指數(shù)等基本數(shù)據(jù)快速進(jìn)行決策分析,即可得出體質(zhì)質(zhì)量標(biāo)準(zhǔn)。在此基礎(chǔ)上利用測試集中BMR值,即可判斷決策分析的準(zhǔn)確度。
由于體質(zhì)質(zhì)量有優(yōu)秀、良好、健康、亞健康、不健康5種描述方法,分別用數(shù)字0、1、2、3、4代表體質(zhì)質(zhì)量的5種等級,因此,在實(shí)驗(yàn)中將數(shù)據(jù)集劃分成5個(gè)區(qū)間來進(jìn)行計(jì)算。通過示例數(shù)據(jù)根據(jù)原始SPRINT構(gòu)建的決策樹如圖3所示。
圖3 本研究原始SPRINT構(gòu)建的示例數(shù)據(jù)決策樹示意圖Figure 3.Decision Tree Build by the Original SPRINT Algorithm
首先分別對訓(xùn)練集和測試集的數(shù)據(jù)進(jìn)行模擬分析(圖4、圖5)。
圖4 本研究訓(xùn)練集數(shù)據(jù)示意圖Figure 4.Training Set Data Diagram
然后使用訓(xùn)練集數(shù)據(jù)對決策樹進(jìn)行建模,在此基礎(chǔ)上對測試集數(shù)據(jù)進(jìn)行評估,發(fā)現(xiàn)共有3組類別,出現(xiàn)異常數(shù)據(jù)1個(gè),算法準(zhǔn)確率為99.56%,原始SPRINT算法準(zhǔn)確率為98.2%。其中,原始SPRINT算法與本文提出的TESTSPRINT算法殘差與殘差區(qū)間杠桿圖分別如圖6、圖7所示。
對比圖6與圖7可知,原始SPRINT算法得出的結(jié)論中存在部分噪音數(shù)據(jù),影響了決策分析結(jié)果的準(zhǔn)確性,而本文提出的TESTSPRINT算法決策分析的結(jié)果較原始SPRINT算法在一定程度上有所提高。本文提出的TESTSPRINT算法在人體體質(zhì)數(shù)據(jù)分析中具有較高的準(zhǔn)確率,預(yù)測能力在可接受的范圍內(nèi)。
圖5 本研究測試集數(shù)據(jù)示意圖Figure 5.Test Set Data Diagram
圖6 本研究原始SPRINT算法殘差與殘差區(qū)間圖Figure 6.Residuals and Residual Interval Graph of Original SPRINT Algorithm
圖7 本研究TESTSPRINT算法殘差與殘差區(qū)間圖Figure 7.Residuals and Residual Interval Graph of TESTSPRINT Algorithm
本文引用了純區(qū)間的概念,提出了趨勢選擇方法,在此基礎(chǔ)上提出TESTSPRINT算法。利用Gini指數(shù)函數(shù)在純區(qū)間上是凸函數(shù)并且數(shù)值型屬性一般服從高斯分布的特點(diǎn)以及Gini指數(shù)函數(shù)一階偏導(dǎo)預(yù)測函數(shù)走向的特性,對SPRINT算法在處理數(shù)值型屬性部分進(jìn)行了優(yōu)化。理論分析和實(shí)驗(yàn)結(jié)果表明,TESTSPRINT算法在一定程度上可以提高算法的效率。在體質(zhì)分析中可以應(yīng)用該算法進(jìn)行快速決策,判斷人體體質(zhì)狀況。例如,可以根據(jù)身高、體重、握力等簡單測試數(shù)據(jù)快速建立人體體質(zhì)狀況決策樹,為有效快速的確定人體體質(zhì)健康狀況提供決策依據(jù),具有較高的準(zhǔn)確性,并且時(shí)間和空間開銷較原SPRINT算法小。當(dāng)然,劃分的區(qū)間數(shù)對改進(jìn)的算法的計(jì)算時(shí)間代價(jià)有一定的影響,如何有效的選取區(qū)間數(shù),以便更好地減少非純區(qū)間的數(shù)量、降低對非純區(qū)間的排序代價(jià)及如何在更大程度上對非純區(qū)間候選分割點(diǎn)進(jìn)行剪枝,有待進(jìn)一步的優(yōu)化。
我國體質(zhì)監(jiān)測工作進(jìn)行多年來,建立了大量體質(zhì)信息數(shù)據(jù)庫。一方面,長期積累的大量數(shù)據(jù)的分析工作一直都是對體育工作研究者的重大考驗(yàn),一種簡便有效的分析方法無疑可以減輕體質(zhì)數(shù)據(jù)分析的負(fù)擔(dān),并且,TESTSPRINT算法可以實(shí)現(xiàn)對體質(zhì)健康狀況快速的給出反饋結(jié)論,便于受試者大致了解自身健康狀況,以及體育相關(guān)工作者及時(shí)給出專業(yè)的指導(dǎo)建議。另一方面,現(xiàn)行體質(zhì)測試采集指標(biāo)繁多,測試和統(tǒng)計(jì)工作都要耗費(fèi)大量人力、財(cái)力來支撐,本文提出的TESTSPRINT算法可以運(yùn)用簡單的體質(zhì)數(shù)據(jù)來評價(jià)體質(zhì)健康狀況,在未來的體質(zhì)監(jiān)測程序中也許可以嘗試簡化體質(zhì)測試指標(biāo),提高精確性,結(jié)合先進(jìn)的計(jì)算機(jī)技術(shù)來達(dá)到監(jiān)測國民體質(zhì)的目的。
隨著國民體質(zhì)素質(zhì)越來越受到政府和公民的重視,體育監(jiān)測數(shù)據(jù)系統(tǒng)已經(jīng)趨向于不同地區(qū)實(shí)現(xiàn)數(shù)據(jù)共享,我國已經(jīng)開始構(gòu)建國家體育地理信息系統(tǒng)[9]和羽毛球運(yùn)動員戰(zhàn)術(shù)意識測評及其多媒體訓(xùn)練系統(tǒng)[2]等單項(xiàng)測評系統(tǒng)。展望未來,我國國民體質(zhì)監(jiān)測數(shù)據(jù)呈現(xiàn)出不同地理位置上的數(shù)據(jù)共享,數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)量的增加將導(dǎo)致未來國民體質(zhì)數(shù)據(jù)分析必須采用分布式海量數(shù)據(jù)計(jì)算方法。因此,在對國民體質(zhì)數(shù)據(jù)分析時(shí),不僅要著眼于本地?cái)?shù)據(jù)處理方法的優(yōu)化,更要注重分布式海量數(shù)據(jù)處理方法的研究。另一方面,當(dāng)前體育數(shù)據(jù)分析主要還是使用簡單的統(tǒng)計(jì)分析的方法,需要深層次挖掘體育數(shù)據(jù)的內(nèi)涵,得出更多更精確的結(jié)論還需要更多地致力于數(shù)據(jù)挖掘算法及其在體育數(shù)據(jù)分析中的應(yīng)用場景研究。
[1]陳小平.力量訓(xùn)練的發(fā)展動向與趨勢[J].體育科學(xué),2004,24(9):36-40.
[2]程勇民,金花,周衛(wèi)星,等.羽毛球運(yùn)動員戰(zhàn)術(shù)意識測評及其多媒體訓(xùn)練系統(tǒng)的研制[J].廣州體育學(xué)院學(xué)報(bào),2009,29(2):57-61.
[3]李慧玲,林子.數(shù)據(jù)倉庫和數(shù)據(jù)挖掘在高校體育數(shù)據(jù)分析中的應(yīng)用[J].廣州體育學(xué)院學(xué)報(bào),2005,25(5):126-128.
[4]劉友軍,汪林林.SPRINT 算法的改進(jìn)[J].計(jì)算機(jī)工程,2006,32(16):55-57.
[5]茅潔,蔣雄文,梅焰.神經(jīng)網(wǎng)絡(luò)在運(yùn)動生化指標(biāo)中的應(yīng)用[J].武漢體育學(xué)院學(xué)報(bào),2004,38(4):53-55.
[6]茅潔,梅焰.灰色ART聚類分析法在競技體育生化指標(biāo)監(jiān)控中的應(yīng)用[J].武漢體育學(xué)院學(xué)報(bào),2005,39(10):50-52.
[7]彭程,羅可.SPRINT算法中尋找連續(xù)屬性分割點(diǎn)方法的改進(jìn)[J].計(jì)算機(jī)工程與應(yīng)用,2006,42(27):159-161.
[8]桑國強(qiáng).體育院校輔導(dǎo)員管理行為效益模糊分析[J].武漢體育學(xué)院學(xué)報(bào),2013,47(2):81-86.
[9]史兵,王宇紅.關(guān)于構(gòu)建國家體育地理信息系統(tǒng)的初步研究[J].西安體育學(xué)院學(xué)報(bào),2007,24(2):1-8.
[10]許向陽,龔永華.SPRINT算法的改進(jìn)[J].計(jì)算機(jī)工程與應(yīng)用,2003,39(33):187-189.
[11]于蕾,劉大有,高瀅,等.改進(jìn)SPRINT算法及其在分布式環(huán)境下的研究[J].吉林大學(xué)學(xué)報(bào)(理學(xué)版),2008,46(6):1119-1124.
[12]于岱峰,鐘亞平,于亞光.基于數(shù)據(jù)挖掘技術(shù)在人體肌肉力量數(shù)據(jù)分析中的應(yīng)用——以人體握力肌肉力量測試數(shù)據(jù)研究為例[J].體育科學(xué),2010,30(2):70-74.
[13]趙會群,孫晶,花勇民,等.數(shù)據(jù)挖掘技術(shù)在體育比賽技戰(zhàn)術(shù)分析中的應(yīng)用研究[J].北京體育大學(xué)學(xué)報(bào),2008,31(5):712-715.
[14]鄭丹青.基于SPRINT算法的胃癌臨床醫(yī)療數(shù)據(jù)挖掘研究[J].吉林師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,33(2):121-124.
[15]GERARDO RICHARTE.Four different tricks to bypass Stack Shield and Stack Guard protection[EB/OL].http://www2.corest.com/files/files/11/StackguardPaper.pdf,April-June 2002.
[16]HAN J,KAMBER M.Data Mining:Concepts and Techniques[M].Beijing:High Edu Press,2001:279-301.
[17]J R QUINLAN.C4.5:Programs for Machine Leaning[M].Los Altos:Morgan Kaufmann Publishers,Inc 1993.
[18]MEHTA M,AGRAWAL R,RISSANEN J.SLIQ:A fast scalable classifier for data mining[A].In:Proceedings of 1996International Conference on Extending Databases Technology[C].Avignon:1996:18-32.
[19]SHAFER J,AGRAWAL R,MEHTA M.SPRINT:A scalable parallel classifier for data mining[A].In:Proceedings of the 1996Int Conference Very Large Data Bases[C].Bombay,1996:544-555.
[20]U FAYYAD,K IRANI.Multi-interval discretization of continuous-values attributes for classification learning[A].In:Proc 13th Intl Joint Conf Artificial Intelligence[C].Chambery:1993.
[21]YAN-WEN WU,LI LI,SHENG-YI ZHAO,et al.Application of improved SPRINT algorithm in the graduation design process management system[A].Zhang Jiajie,Workshop on Intelligent Information Technology Application[M].China,IEEE Computer Soc,2007:252-255.