賈楠 霍曉燕 江朝力 齊忠 董志良
摘? 要:獲取人體運動過程中的能耗級別對于了解人體運動負荷、及時補充身體能量有著重要作用。由于人體運動過程中的能耗級別難以直接獲取,因此,提出了一種通過分析人體運動生理體征(如心率、呼吸率等)預測運動能耗級別的方法。首先,通過電子設備收集人體運動過程中表現(xiàn)出的生理體征及運動能耗,建立人體運動生理體征與運動能耗數(shù)據(jù)集;其次,根據(jù)人體運動能耗級別,使用機器學習的方法,訓練一個可以預測人體運動能耗級別的多標簽判別模型;最后,通過人體運動能耗級別判別模型,判定人體運動過程中的能耗級別。實驗結果表明,提出的模型可以有效地判定人體運動過程的能耗級別。
關鍵詞:運動能耗? 能耗級別預測? 預測模型? 機器學習
中圖分類號:G80? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A? ? ? ? ? ? ? ? ?文章編號:2095-2813(2020)07(c)-0238-06
Abstract: Obtaining the energy consumption level in the exercise process plays an important role in understanding human body sport load and timely replenishing body energy. Because the energy expenditure level in the exercise process is difficult to be measured directly, a method was proposed to predict the energy consumption level through analyzing the physiological signs of human movement (such as heart rate, respiration rate, etc). Firstly, the physiological signs and energy consumption during human exercise were collected by electronic devices, then the data set of physiological signs and energy consumption was established. Secondly, according to the energy consumption level of human motion, a multi-label discriminant model that can predict the energy consumption level is trained by using machine learning method. At last, the energy consumption level in the process of human movement is determined by the discriminant model. The experimental results show that the proposed model can effectively predict the energy consumption level in exercise process.
Key Words: Energy consumption; Energy consumption level prediction; Prediction model; Machine learning
當今時代,人們健康意識的提高極大地促進了人們運動的熱情。而如何科學、安全、有效地進行運動已成為全民健身中關注的核心問題,同時也是當前研究人員關注的重點和熱點[1-3]。眾所周知,運動過度不僅不能起到健身鍛煉的效果,反而增加了人體的負荷,對人體安全造成嚴重傷害[4]。例如,運動過度可能造成人體脫水、昏厥甚至是猝死等嚴重的運動風險。
人體運動過程中伴隨著能量的消耗。一般情況下,運動強度越大,人體消耗越多的能量。由于能耗級別能夠直接反映人體的運動強度,因此,及時獲取運動過程中的人體運動能耗級別,對于了解人體運動負荷、規(guī)避運動風險有著重要的作用。
由于人體運動機理較為復雜性,運動能耗與肌肉抖動、心臟收縮、呼吸頻率等多種生理因素相關[2]。因此,在日常運動鍛煉中,很難直接度量人體運動過程中的運動能耗級別。在實驗環(huán)境下,可以通過佩戴多種傳感器監(jiān)測人體運動能耗水平[5-10]。例如,在研究[10]中,Gjoreski等人在實驗環(huán)境下通過使用高精度的測量儀器,獲取人體運動過程中的呼吸率、心率、皮膚電反應等人體生理體征,從而計算獲得人體運動過程中的能量消耗數(shù)據(jù)。
顯然,這種的運動能耗獲取方式并不適用于人們日常運動鍛煉中。首先,某些特定的人體生理體征需要專門的儀器獲取。由于專業(yè)儀器價格昂貴,一般用戶難以承受。例如,測量人體皮膚電反應所需的BodyMedia傳感器。其次,即使人們在日常鍛煉中能夠佩戴專業(yè)傳感器,傳感器本身對人體運動過程中造成的不適感也讓人難以接受。
針對當前人體運動能耗獲取過程中存在的難點,本文提出一種基于機器學習的人體運動能耗級別預測方法。首先,使用人體在實驗環(huán)境下獲取的生理體征及運動能耗作為數(shù)據(jù)集,并對人體運動能耗進行級別劃分。其次,從獲取的數(shù)據(jù)集中使用機器學習的方式建立從人體運動生理體征到運動能耗級別的映射關系。最后,通過訓練好的機器學習模型,預測人體運動過程中的能耗水平。在運動能耗級別判別模型的建立過程中,只把容易獲取的人體運動體征(即易測生理體征)納入考慮,如心率、呼吸率等,摒棄需要使用專業(yè)傳感器才能獲取的人體運動生理體征,如皮膚電反應等。因此,我們的方法能夠應用于真實場景下人體運動能耗級別預測,從而提升模型的適用性。
實驗結果表明,在僅考慮有限種易測生理體征的情況下,模型預測人體運動能耗級別時可獲得85%以上的準確率。
1? 人體運動能耗數(shù)據(jù)集及能耗級別分類
本文使用的人體運動生理體征與運動能耗數(shù)據(jù)集由Gjoreski等人通過實驗獲得。通過讓參與者佩戴傳感器的方式,他們從10位參與者身上獲取了10種類型的人體運動生理體征及人體運動能耗數(shù)據(jù)。10種運動類型包括躺、走、坐、站、跪、趴、站立學習、騎自行車、跑步以及過渡階段。其中,過渡階段是指從一種運動類型轉化為另一種運動類型的過程。如由站立變?yōu)樽?/p>
表格1統(tǒng)計了10位參與者的基本生理屬性??梢杂^察到,這10位參與者的以年輕人為主,他們的平均年齡為27.2歲;平均生理質量指數(shù)(即BMI)為24.1kg/m2;參與者的平均體重為78.2kg。
實驗過程在,Gjoreski等人使用傳感器監(jiān)測10位參與者在2個星期內的運動生理體征和運動能耗數(shù)據(jù)。參與者每天大約佩戴8h的傳感器。在參與者佩戴傳感器期間,其所有的生理體征和能耗數(shù)據(jù)將會被傳感器記錄下來。被記錄的人體生理體征包括加速度、呼吸率、心率、胸部皮膚溫度、皮膚電反應、身體溫度、手臂溫度。
參與者佩戴了4種類型的傳感器,其中,步行傳感器用于監(jiān)測人體運動加速度[11];Zephyr傳感器用于檢測人體心率、呼吸率以及胸部皮膚溫度[12];BodyMedia傳感器用于檢測人體皮膚電反應、手臂溫度、環(huán)境溫度[13];最后,通過分析人體運動過程中的生理體征數(shù)據(jù),并通過使用間接量熱計裝置Cosmed獲得人體運動能耗[14]。表格2為人體生理體征和能耗數(shù)據(jù)的示例。
根據(jù)Gjoreski等人檢測到的人體能耗數(shù)據(jù),人體能耗水平大致位于0~11這個區(qū)間內。即人體運動強度越大,能耗水平越高。因此,本文中將人體能耗分為3個級別。即低級(能耗水平≤3)、中級(能耗水平位于4~7之間)、高級(能耗水平位于≥8)。
2? 人體運動能耗判別模型
為實現(xiàn)人體運動能耗判別模型,本文采用有監(jiān)督機器學習分類算法[15]。常見的分類算法有邏輯斯諦回歸(LR, Logistic Regression)、支持向量機(SVM,Support Vector Machines)、隨機森林(RF,Random Forest)及XGBoost(Extreme Gradient Booting)。
2.1 LR模型
LR(邏輯斯諦回歸)是根據(jù)現(xiàn)有數(shù)據(jù)對分類邊界線建立回歸公式,以此進行分類的方法。
設X是連續(xù)隨機變量,X服從邏輯斯諦分布是指X具有下列的分布函數(shù)和密度:
邏輯斯諦回歸由條件分布P(Y|X)表示,形式就是參數(shù)化的邏輯斯諦分布,其中自變量X取值為實數(shù),因變量Y為0或1,二項邏輯斯諦回回歸的條件表達式表示為:
即為要求解的模型參數(shù),通常采用最大似然估計。即找到一組參數(shù),使得在這組參數(shù)達到最大。
2.2 SVM 模型
SVM(支持向量機)的基本思想是求解能夠正確劃分訓練數(shù)據(jù)集并且?guī)缀伍g隔最大的分離超平面。
2.3 RF模型
RF(隨機森林)算法是通過集成多棵決策樹來形成整個森林從而得出算法結果的一種機器學習方法。隨機森林生成描述過程如下。
(1)在整個樣本集中使用Bootstrap方法,從中重抽樣出k個子訓練樣本集{D1,D2,...,Dk},并構建出k棵決策樹;
(2)在分類樹的任何一個節(jié)點上,從所有指標中隨機選取幾個指標,選擇最優(yōu)分割指標進行分割;
(3)重復以上步驟;
(4)將所有的樹聚集在一起,構建整個隨機森林。
其中,最為核心的幾個概念如下。
(1)信息。對于決策樹而言,若待分類事物集合可劃分為多個類別,某個類信息定義如下:
(2)信息增益。反映了每個特征對分類的重要程度,信息增益越大,則該特征的分類效果越好,在各類別間的區(qū)分度也就越高。具體定義如下:
在公式(7)中,D為所有的樣本預測數(shù)據(jù),某個特征將D劃分為v個子集{D1,D2,...,DV},,為樣本集D的信息熵,且,n為存在的類別數(shù)目,為第i類在樣本集D中的比例。
2.4 XGBoost模型
XGBoost是梯度提升樹模型(Gradient Boosting Trees)的一種高效實現(xiàn)方式。XGBoost集成了K顆CART樹(Classification and Regression Trees){Tr1(x1,y1)},Tr2(x2,y2)},…, Trk(xk,yk)}。其中,表示第i樣本的特征,表示該樣本對應的標簽。CART樹將分配給每個葉子節(jié)點一個分數(shù)。而最終的預測結果將由所有CART樹上對應葉子節(jié)點的分數(shù)通過加法模型得到,如公式所示(9)所示:
在上述公式中,fk(xi)為第k棵樹的預測分數(shù),F(xiàn)則代表函數(shù)空間中所包含的所有樹模型。相比于傳統(tǒng)的梯度提升樹模型,XGBoost 一個重要的改進是在目標函數(shù)中加入了正則項。公式(10)為XGBoost的目標函數(shù):
其中,為損失函數(shù),描述了預測標簽與之間的誤差。用于描述模型的復雜度。
3? 實驗設置與結果分析
3.1 實驗設置
為了驗證本文提出的人體運動能耗級別判別模型,在Gjoreski等人提出的數(shù)據(jù)集上做了相應的驗證實驗。
由于在人們日常運動中某些生理體征很難直接獲取,如皮膚電反應和胸部皮膚溫度。因此,在使用機器學習進行人體運動能耗級別判別時,只將容易獲取的人體運動生理體征納入考慮,包括加速度、呼吸率、心率、環(huán)境溫度、手臂溫度5個特征。在人們日常運動過程中,運動加速度、呼吸率、心率和手臂溫度可以通過佩戴智能運動手環(huán)進行監(jiān)測;而環(huán)境溫度可以從任意一款天氣預報APP上獲得。目標是通過人體運動過程中表現(xiàn)出的這5個生理體征,預測人體運動能耗級別。
由于Gjoreski等人提出的數(shù)據(jù)集中既包含人體運動時的生理數(shù)據(jù),如散步、騎車、跑步等;又包含人體靜止時的生理數(shù)據(jù),如躺、坐、跪、站立等。因為本文主要關注人體運動過程中的能耗級別預測,因此,從Gjoreski等人提出的數(shù)據(jù)集中分離出關于人體運動時的生理數(shù)據(jù)和能耗數(shù)據(jù),然后在這樣的數(shù)據(jù)上訓練相應的判定模型。
Gjoreski等人提出的數(shù)據(jù)集一共包含5972條數(shù)據(jù)記錄。每條數(shù)據(jù)記錄包含如表2所示的內容。通過過濾掉關于人體靜止的數(shù)據(jù)記錄,一共收集到2256條人體運動的數(shù)據(jù)集。將在這些數(shù)據(jù)集上進行模型訓練和驗證。
為了驗證文中提出的判別模型的效果,引入了2個度量指標[15],即精確度(PRE)和召回率(REC)。精確度用來衡量結果集的精確性;而召回率用來度量結果集的安全性。同時,為了考察模型的綜合效果,還給出了F-measure值(F1)的定義。這3個度量指標定義如下:
TP和TN分別表示正確預測的正樣本數(shù)量和負樣本數(shù)量;FP和FN分別表示錯誤預測的正樣本數(shù)量和負樣本數(shù)量。由于目前面臨的是多分類問題(即有3個能耗級別),所以可以將問題視為多個二分類問題。
3.2 實驗結果分析
首先,使用提出的模型分別預測了人體不同運動能耗級別下的準確率。在整個實驗中,使用10折驗證法。即,將數(shù)據(jù)集劃分為10份,其中9份用來訓練機器學習模型,剩下1份用作測試集。
表3展示了模型的效果。可以觀察到,模型在預測低級和高級運動能耗級別時能取得差不多的效果,因為它們的F1值為0.87和0.86;同時,模型在預測中級能耗級別時能取得最好的效果,其精確度為0.94,召回率為0.92,F(xiàn)1值達到了0.93。
總體來說,模型在預測人體運動能耗級別方面取得了較好的效果??紤]到模型只使用了部分人們日常運動過程中容易獲得的生理體征作為特征,因此,模型具有更好的實用性和推廣性。
與此同時,還比較了不同機器學習算法在人體運動能耗級別預測中的效果[16]。如表4所示,加入了另外3個機器學習算法預測運動能耗級別,包括邏輯斯諦回歸(LR)、支持向量機(SVM)、隨機森林(RF)。
從表4中可以看出,在預測低級別的人體運動能耗時,邏輯回歸取得較差的效果,其F1值為0.76;支持向量機和隨機森林分別能取得0.82和0.85的F1值。XGBoost表現(xiàn)較好,其F1值為0.87。
在預測中級別的人體運動能耗時,邏輯回歸和支撐向量機取得較差的效果,其F1值分別為0.84和0.85;隨機森林和XGBoost表現(xiàn)較好,可以獲得0.9和0.93的F1值。在預測高級別的人體運動能耗時,依舊是隨機森林和XGBoost表現(xiàn)較好,其F1值分別為0.83和0.86。
從表4中的結果可以觀察到,XGBoost判定人體運動能耗級別的效果優(yōu)于隨機森林;而隨機森林的效果又優(yōu)于邏輯回歸和支撐向量機。因此,本文選擇XGBoost作為分類器。
4? 結語
由于人體運動過程中的能耗級別難以直接獲取,為此,我們提出了一種通過分析人體運動生理體征(如心率、呼吸率、皮膚溫度等)預測運動能耗級別的方法。首先,分析了Gjoreski等人關于人體運動時的生理體征數(shù)據(jù)和能耗數(shù)據(jù)集,并將人體運動時的能耗水平分成3個級別。其次,將人們運動過程中的容易獲取的生理體征數(shù)據(jù)作為特征,建立了人體運動能耗級別預測模型。最后,實驗中使用XGBoost模型預測人體運動能耗級別。同時,還對比了不同機器學習模型在預測人體運動能耗級別的準確性。結果表明,XGBoost模型可以取得最好的效果。
參考文獻
[1] 周小丹.全民健身中的安全性思考[J].體育文化導刊,2017(1):61-64.
[2] Chodzko-Zajko WJ, Proctor DN, Fiatarone Singh MA, et al.Exercise and Physical Activity for Older Adults[J].Medicine & Science in Sports & Exercise, 2009,41(7):1510-1530.
[3] 王瑞元,蘇全生.運動生理學[M].北京:人民體育出版社,2012.
[4] 汪芳.過量運動當心運動性猝死[J].保健醫(yī)苑,2017(1):36-37.
[5] 郭曉光.可穿戴式運動負荷監(jiān)測技術的研究[D].中北大學,2016.
[6] 吳廉卿,劉丹松,屈萍.基于三軸加速度傳感器的大學生體力活動能量消耗模型研究[J].武漢體育學院學報,2018,52(4):87-91.
[7] 劉鵬.基于加速度傳感器的人體能耗檢測系統(tǒng)的設計研究[J].電子設計工程,2018,6(19):26-30.
[8] 王道,劉欣,江崇民,等.ActiGraph加速度計測量走、跑運動時基本參數(shù)特征及與能耗的相關性研究[J].體育科學,2014(12):30-36.
[9] 沈程,譚海波,許金林.基于Android和GPS軌跡記錄和能耗測算研究[J].計算機技術與發(fā)展,2013(11):173-176.
[10]Gjoreski H.Context-based ensemble method for human energy expenditure estimation[J].Applied Soft Computing,2015,37(C):960-970.
[11]陳慶果,袁川,范江江,等.智能手機內置加速度傳感器監(jiān)測走跑運動能量消耗的研究[J].首都體育學院學報,2018(5):473-480.
[12]Nazari G, Macdermid J C, Sinden R K K E, et al. Reliability of Zephyr Bioharness and Fitbit Charge Measures of Heart Rate and Activity at Rest, During the Modified Canadian Aerobic Fitness Test and Recovery[J].Journal of Strength and Conditioning Research,2017,33(2):559-571.
[13]Joschtel B, Neil M, Fragala-Pinkham M, et al. Predictive validity of the BodyMedia SenseWear Armband in children with cerebral palsy[J]. Journal of Science and Medicine in Sport, 2014,18(supplement 1):e37.
[14]Tanner E A, Montes J, Manning J W, et al.Validation of Hexoskin biometric shirt to COSMED K4 b2 metabolic unit in adults during trail running[J].Sports Technology,2015,8(3-4):118-123.
[15]姚舜才.機器學習基礎教程[M].西安:西安電子科技大學出版社,2020.
[16]李寧寧,梁天一,盧朝霞.基于機器學習的個性化運動處方推薦系統(tǒng)的設計[J].數(shù)字通信世界,2019(3):250-251.