胡世平,李博,賈年
(西華大學(xué)計(jì)算機(jī)與軟件工程學(xué)院,成都610039)
當(dāng)今,健康問(wèn)題越來(lái)越受人們的關(guān)注。在2017年,習(xí)近平主席在十九大報(bào)告中提出了健康中國(guó)的發(fā)展戰(zhàn)略,這同時(shí)也表明國(guó)家對(duì)全民健康的重視。21 世紀(jì),社會(huì)的競(jìng)爭(zhēng)壓力也越來(lái)越激烈,它不僅包括表面的智力競(jìng)爭(zhēng),同時(shí)也是對(duì)身體、心理等方面的考驗(yàn),這些非智力因素同時(shí)決定著競(jìng)爭(zhēng)的成敗,而決定這方面的重要因素就是身體健康狀況,但是目前大學(xué)生中一些群體缺乏鍛煉意識(shí),對(duì)科學(xué)鍛煉身體的意識(shí)薄弱[1]。因此有效科學(xué)的提高大學(xué)生身體健康素質(zhì)才是關(guān)鍵,而運(yùn)動(dòng)處方則是有效和科學(xué)提高身體健康的最佳方法[2]。關(guān)于運(yùn)動(dòng)處方的研究在國(guó)內(nèi)越來(lái)越多,部分領(lǐng)域也愈加成熟,例如健身運(yùn)動(dòng)處方,可以針對(duì)不同年齡段,采取合適的運(yùn)動(dòng)處方來(lái)提高身體素質(zhì)和預(yù)防疾病。醫(yī)生往往也會(huì)根據(jù)經(jīng)驗(yàn)給一些病人開(kāi)出適合的運(yùn)動(dòng)處方。但是目前高校的學(xué)生數(shù)量越來(lái)越多,面對(duì)大量的學(xué)生數(shù)據(jù),老師很難為每個(gè)學(xué)生設(shè)計(jì)個(gè)性化運(yùn)動(dòng)處方、從而高效科學(xué)地提高學(xué)生的身體素質(zhì)。
因此采用合理的方法去分析評(píng)價(jià)體測(cè)數(shù)據(jù)和對(duì)學(xué)生進(jìn)行合理的分類,并且如何合理地推薦處方是目前研究的重點(diǎn)。只有科學(xué)和有效的運(yùn)動(dòng)處方方案,才能夠更好地讓學(xué)生進(jìn)行自我健康的體質(zhì)管理[3-4]。為此,本文提出了一種基于無(wú)監(jiān)督學(xué)習(xí)的大學(xué)生健康數(shù)據(jù)分類方法。該方法使用大學(xué)生的測(cè)試數(shù)據(jù)的BMI、肺活量、體前屈、立定跳遠(yuǎn)、50 米跑、1000 米跑(男)或800米(女)、引體向上(男)或仰臥起坐(女)作為輸入數(shù)據(jù),通過(guò)K-medoids 聚類算法,將體質(zhì)類似的學(xué)生分在一起,老師可以根據(jù)不同的體質(zhì)的學(xué)生,制定更針對(duì)性的個(gè)性化運(yùn)動(dòng)處方,科學(xué)高效地提高大學(xué)生身體素質(zhì)。
K-medoids 算法被稱為K 中心點(diǎn)算法,也是一種常用的聚類算法,與K-means 聚類算法相似,也具有能夠處理大型數(shù)據(jù)集,且最后聚類結(jié)果中簇與簇之間分離明顯的優(yōu)點(diǎn)。與K-means 相比,K-medoids 算法對(duì)噪聲的魯棒性更好,對(duì)于簇中那些脫離中心點(diǎn)很遠(yuǎn)的點(diǎn)不是很敏感,這樣噪點(diǎn)對(duì)于簇的劃分的影響就會(huì)大大減少。就因如此K-medoids 也被認(rèn)為是對(duì)K-means的改進(jìn),但由于對(duì)于中心點(diǎn)更新時(shí)的計(jì)算量要更大,所以時(shí)間復(fù)雜度比k-means 要高[5]。
為對(duì)比聚類效果,本文采用不同數(shù)量集下K-me?doids 算法與K-means 算的戴維森堡丁指數(shù)(DBI),如表1 所示,用DBI 去進(jìn)行聚類優(yōu)劣比較發(fā)現(xiàn),當(dāng)學(xué)生體測(cè)數(shù)據(jù)變多時(shí),K-medoids 算法的DBI 是小于Kmeans 算法的DBI,DBI 值小意味著類內(nèi)距離越小,同時(shí)類間距離越大,聚類效果越好??梢钥闯鯧-medoids算法在多數(shù)據(jù)的情況下的聚類效果要好于K-means 算法,證明其在做大量學(xué)生體測(cè)數(shù)據(jù)進(jìn)行聚類分類時(shí)的效果更好,且其魯棒性也比K-means 算法好。
表1 戴維森堡丁指數(shù)(DBI)值比較
本文采用的是某高校的體質(zhì)健康數(shù)據(jù)進(jìn)行分析,該數(shù)據(jù)包括學(xué)生的個(gè)人信息以及體測(cè)數(shù)據(jù),其中BMI、肺活量、體前屈、立定跳遠(yuǎn)、50 米跑、1000 米跑(男)或800 米(女)、引體向上(男)或仰臥起坐(女)等數(shù)據(jù)作為此次試驗(yàn)的輸入數(shù)據(jù),對(duì)應(yīng)的也是《國(guó)家學(xué)生體質(zhì)健康標(biāo)準(zhǔn)》中的8 項(xiàng)。
由于大學(xué)生體測(cè)數(shù)據(jù)量比較大,有可能含有許多噪聲數(shù)據(jù),我們先將數(shù)據(jù)進(jìn)行整理,去除某些測(cè)試屬性缺失的學(xué)生,如短跑,肺活量為0 的學(xué)生,部分體測(cè)數(shù)據(jù)如表2 所示。然后為了縮小不同的成績(jī)和不同的評(píng)價(jià)指標(biāo)帶來(lái)的影響,我們將體測(cè)數(shù)據(jù)歸一化,數(shù)據(jù)被限定到[-1,1],這樣也有益于使用PCA 進(jìn)行降維的時(shí)候表現(xiàn)的更好。歸一化的部分?jǐn)?shù)據(jù)如表3 所示。
表2 部分體測(cè)數(shù)據(jù)數(shù)據(jù)
表3 歸一化后部分?jǐn)?shù)據(jù)
本方法對(duì)學(xué)生體測(cè)數(shù)據(jù)進(jìn)行聚類分析,具體執(zhí)行過(guò)程如下:
(1)首先,我們將采集到的6000 個(gè)學(xué)生體測(cè)數(shù)據(jù)放入矩陣,然后對(duì)數(shù)據(jù)進(jìn)行預(yù)處理
(2)根據(jù)預(yù)處理過(guò)的學(xué)生數(shù)據(jù)矩陣來(lái)計(jì)算各個(gè)樣本點(diǎn)之間的歐式距離,放到矩陣D 中,并且確定聚類個(gè)數(shù)k(表示有k 種體質(zhì)分類)
(3)隨機(jī)選取k 個(gè)中心點(diǎn)(每個(gè)中心點(diǎn)代表一個(gè)簇)
(4)根據(jù)距離矩陣D,將樣本點(diǎn)分到距離它最近的中心點(diǎn)的簇中
(5)計(jì)算各個(gè)簇中的樣本點(diǎn)到簇中其他樣本點(diǎn)的距離,求出距離最小樣本點(diǎn)作為新的中心點(diǎn)
(6)如果新的中心點(diǎn)集合與之前的中心點(diǎn)集合一樣或者迭代次數(shù)達(dá)到最高次數(shù),算法終止,輸出最后一次各個(gè)簇中的樣本點(diǎn),如果不一樣則返回(4)。
數(shù)據(jù)處理流程圖如圖1 所示。
圖1 基于K-medoids方法的學(xué)生體質(zhì)健康分類算法流程圖
隨機(jī)從數(shù)據(jù)庫(kù)抽取6000 條男生測(cè)試數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)。使用K-medoids 算法進(jìn)行分析,將BMI、肺活量、體前屈、立定跳遠(yuǎn)、50 米跑、1000 米跑(男)、引體向上(男)數(shù)據(jù)傳入,將分類的個(gè)數(shù)k 定為10,表示將分為十類。迭代次數(shù)選取100 次,如果中心點(diǎn)集合沒(méi)有變化或者達(dá)到最高次數(shù)還沒(méi)有收斂則選取最后一次的中心點(diǎn)集合作為中心點(diǎn),每個(gè)簇的最后的中心點(diǎn)向量和每個(gè)簇的數(shù)量如表4 和表5 所示。
表4 中心點(diǎn)向量
表5 每個(gè)集合中簇類的個(gè)數(shù)
將聚類結(jié)果用PCA(Principal Component Analysis,主成分分析)降維顯示如圖3 所示,PCA 能夠使新的低維數(shù)據(jù)集會(huì)盡可能地保留原始數(shù)據(jù)的變量結(jié)果,但是需要注意,通過(guò)PCA 降維實(shí)際上也損失了一些信息,通過(guò)查看pca.explained_variance_ratio_值得出[0.99781126,0.00157304],可以看到保留的兩個(gè)主成分,第一個(gè)主成分可以解釋原始變異的99.78%,第二個(gè)主成分可以解釋原始變異的0.15%。也就是說(shuō)降成兩維后仍保留了原始信息的99.93%左右。通過(guò)K-medoids 聚類算法,觀察每個(gè)聚類特征,可以發(fā)現(xiàn)集合id5 中學(xué)生數(shù)據(jù)大部分為優(yōu)秀且多個(gè)測(cè)試數(shù)據(jù)接近,集合id9 中,體測(cè)數(shù)據(jù)及格的居多且多個(gè)測(cè)試數(shù)據(jù)接近。這也表明該算法可以很好地讓體質(zhì)相似的學(xué)生分在一起,方便老師對(duì)學(xué)生制定個(gè)性化的運(yùn)動(dòng)處方。
圖2 各個(gè)簇的分布情況
由于大學(xué)生數(shù)量較大且體質(zhì)測(cè)試數(shù)據(jù)沒(méi)有任何規(guī)律性,導(dǎo)致了很難從中找出規(guī)律,老師也很難為每個(gè)學(xué)生設(shè)計(jì)個(gè)性化運(yùn)動(dòng)處方,從而高效科學(xué)地提高學(xué)生的身體素質(zhì)。通過(guò)本文的聚類分析,我們可以輕松地找出相似體質(zhì)的學(xué)生,通過(guò)分類出的學(xué)生體質(zhì)特點(diǎn),采取針對(duì)性強(qiáng)、個(gè)性化的運(yùn)動(dòng)處方來(lái)鍛煉學(xué)生,可以更加有效科學(xué)地提高大學(xué)生的身體素質(zhì)。