树形模型在青少年体质测试数据分析中的应用研究
2022-08-15秦国阳李生启
秦国阳 李生启 秦 勇
(1 山东师范大学体育学院,山东济南 250358;2 南开大学计算机学院,天津 300071;3 济南市历下区教育局,山东济南 250013)
青少年体质健康问题一直是我国教育、体育和卫生机构长期工作的重点。近几年,由于学习压力的增加和高脂高热量食品的摄入,青少年肥胖比例飙升。以往的研究大多采用传统的均值比较[1-2]、线性模型[3-4]等统计方法,研究思路和立意缺乏新的视角。近两年,决策树、随机森林等树形模型逐渐应用于体质健康的研究中,相较于均值比较、线性模型等研究思路,树形模型不仅可以有效甄别体质健康的影响因素,还可以根据变量的类型对文本进行最优分割[5],并通过树形图可视化分析多个变量间的交互关系[6-7]。但对于决策树、随机森林和优化的分布式梯度增强库(XGBoost)三种树形模型在体质健康数据中的预测效果以及青少年体质健康影响因素缺乏相关研究。本文通过检验决策树、随机森林和XGBoost 三种树形模型在青少年体质数据中的准确度、F1 值等指标,判断三种树形模型在体质健康数据中的预测效果。并选取预测效果最好的算法对13~18岁青少年体质健康影响因素进行分析,为相关研究提供参考。
1 研究对象与方法
1.1 研究对象
本文以树形模型在青少年体质测试数据分析中的应用为研究对象。从2021 年济南市参加学生体质健康状况监测的13~18 岁青少年中,采用分层整群随机抽样的方法选取到数据样本:初中学生19 803名,高中学生20 003名,共计39 806名学生。数据样本基本信息如表1所示。
表1 数据样本基本信息
1.2 树形模型算法相关概念及生成
1.2.1 决策树
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。决策树的构造一般较为简单,且便于理解,通过特征选择、构造决策树以及决策树裁剪来防止决策树出现过分拟合的现象[8]。
(1)特征选择:是指决策树的每一次分支都需要选择一个较好的特征进行分支,不同类型的决策树其选择特征也不同[9],如选择特征的方式有信息增益(ID3)、信息增益比(C4.5)、Gini 指数(CART)等,其中CART最为常用。
(2)决策树的生成:决策树的生成过程是从上至下生成子节点,每次按照ID3或者CART等加分准则进行划分,决策树不断生长直到数据集不可分。
(3)决策树的裁剪:裁剪是指决策树的前、后剪枝,其主要目的是防止出现过度拟合的出现,通过剪枝来减少决策树结构的规模,以避免过分拟合[10]。
1.2.2 随机森林
随机集成森林(Random Forest,RF)是通过使用结合了套袋(Bagging)并行式随机集成的计算方法而用来将决策树节点进行随机集成,并且可以在一次训练的集成过程中对决策树节点进行基本特征随机选取的一种算法[11]。RF 模型具有简单、易于虚拟实现并且同时可以直接计算时间费用和实际操作性强的优点,不仅可以广泛应用于分类问题,也可以广泛应用于多个回归任务[12-13]。
1.2.3 优化的分布式梯度增强库(XGBoost)
XGBoost 是Boost(提升)算法家族中的一员,Boost根本思路在于采用多个简单的弱分类器,组建更高准确率的强分类器[14]。简而言之,Boost(提升)就是指每一步都产生一个弱预测模型,然后加权累加到总模型中,可以用于回归和分类问题[15]。如果每一步的弱预测模型生成都是依据损失函数的梯度方向,则称之为梯度提升(Gradient boosting),这样若干步以后就可以达到逼近损失函数局部最小值的目标[16-17]。
1.3 数据处理分析过程
顺序编码(Ordinal Encoder):Ordinal Encoder是一个类(class),功能是将分类特征编码为整数数组。它的输入应该是整数或字符串的类数组,也可以理解为矩阵,每一列表示一个特征,每一个特征中的数字或者是字符串表示一类特征,也就是分类(离散)特征所接受的值。特征按顺序转换为有序整数。结果就是每个特征对应一个整数列,取值范围0到n_categories–1。
1.3.1 数据归一化
数据的归一化是将数据按比例缩放,也就是统一量纲,在保存数据信息特点的前提下,将不同量纲的数据映射到统一量纲下[18]。在某些比较和评价的指标处理中经常会用到,其中最典型的就是Max 归一化,指将数据统一映射到[0,1]区间上,一般情况下有的分类算法不需要数据归一化,如决策树等,而有的必须归一化,如支持向量机(Support Vector Machine,SVM)和逻辑回归等。数据归一化方法是聚类前对数据常做的一种处理方法[19]。归一化研究包括Min-Max 归一化,0 均值归一化,概率分布函数归一化,log 函数转化归一化等多种归一化方法,其中最常用的归一化方法为Min-Max归一化和0均值归一化。本研究采用0 均值归一化对原始数据进行数据归一化。归一化公式为:
1.3.2 数据预处理
体质测试数据分为男生和女生,由于原始数据存在缺失值、数据格式、离散型数据等问题,因此无法直接进入模型,需要针对各个问题进行处理得到最终的数据才可以进入模型分类对比研究,对数据处理进行的操作如下:
(1)首先对数据进行缺失值处理,将缺失值超过30%的列进行删除;其次对于其他的缺失值,本研究采用中位数填充。
(2)对不符合规范和要求的数据格式问题进行处理。
(3)对离散型数据进行编码处理,由于模型只接受数字型数据,所以对数据进行Ordinal Encod⁃er 编码处理,将离散型数据保存规律映射到数字数据。
通过数据预处理,数据已经成为可以进入模型的数据,方便进行后续的模型对比研究和体质影响因素研究。
2 研究结果
2.1 树形模型预测效果的评估指标
对分类实验模型数据进行实验评估,根据实验分类和深度学习所进行预测的结果分类,把每个实验数据中的每个数据集按照分类组合后的顺序进行划分,并形成四个主要的部分:真阳性(True Positive)、假阳性(False Positive)、真阴性(True Negative)、假阴性(False Negative)。
(1)分类评判标准:因为分类背景需要用准确率(accuracy)作为标准,而F1 值是综合了准确率和召回率的综合指标,所以本文主要用accuracy和F1值作为分类评价标准[20-21]。
(2)准确率:计算预测出来的某类样本中,有多少是被正确预测的(针对预测样本而言),公式如下:
(3)召回率:针对原先实际的召回样本而言,有多少个召回样本被正确地通过预测并分析(针对实际的召回样本而言),公式如下:
F1 值:分类问题由于需要综合考虑准确率、召回率等因素,因为准确率对于样本有偏时,并不能很好地反应模型的效果,并且准确率和召回率这两个指标在很多时候还是矛盾的,所以需要一个综合的指标来整体衡量模型的效果,因此选用了综合准确率和召回率这两个综合比的指标F1,公式如下:
P(Precision)为准确率;R(Recall)为召回率。
2.2 基于树形模型的13~18 岁男、女生体质数据预测效果对比
2.2.1 基于树形模型的13~18 岁男生体质预测效果对比研究
首先对13~18 岁男生的体质数据进行决策树、随机森林以及XGBoost的分类对比研究,通过上述三种选取的分类算法,通过accuracy、preci⁃sion、recall、f1 等分类评价指标进行分类评价,选取分类表现效果最好的分类算法。根据上述的各分类算法对本文对应的数据集进行分类对比,即通过分类指标对比模型的预测效果,模型对应的分类指标如表2所示。
表2 13~18岁男生体质预测效果指标对比
从表2的决策树、随机森林以及XGBoost三种树形模型的各分类评价指标对比,可以得到各个指标的分类效果排序(从好到差)为XGBoost>随机森林>决策树。其中随机森林比决策树的accu⁃racy高2.02%,F1高1.41%;而XGBoost比决策树的accuracy 高5.75%,F1 高5.45%。说明随机森林比决策树的分类效果略高,但是XGBoost 的分类效果优于随机森林,因此,效果最好的分类算法是XGBoost,其各分类指标为accuracy:0.924 8、preci⁃sion:0.687 4、recall:0.729 2、F1:0.706 6。所以后续对于男生的体质测试成绩相关因素重要度研究选用XGBoost模型。
2.2.2 基于树形模型的13-18 岁女生体质预测效果对比研究
对13~18 岁女生体质测试数据进行决策树、随机森林以及XGBoost 的分类对比研究,通过上述三种选取的分类算法,通过accuracy、precision、recall、f1等分类评价指标进行分类评价,从而确定分类表现效果最好的分类算法。对上述的各分类算法对本文对应的数据集进行分类对比,模型对应的分类指标对比如表3所示。
表3 13~18岁女生体质预测效果指标对比
从表3的决策树、随机森林以及XGBoost的各分类评价指标对比分析,得到整体指标的分类效果(以综合评价指标F1 为准)排序(从好到差)为XGBoost>决策树>随机森林。其中随机森林比决策树的accuracy高2.25%,F1低5.47%;而XGBoost比决策树的accuracy 高6.41%,F1 高16.84%。说明在女生体质数据的预测效果对比中,决策树比随机森林的分类效果略好,而XGBoost 的分类效果要远高于决策树。因此,在13~18 岁女生体质测试数据预测中,效果最好的分类算法是XG⁃Boost,各分类指标分别为accuracy:0.928 3、preci⁃sion:0.838 9、recall:0.945 6、F1:0.882 0。因此,后续对于女生的体质测试数据的分析也都选用XG⁃Boost模型。
2.3 基于XGBoost 模型的13~18 岁男、女生体质影响因素分析
2.3.1 基于XGBoost模型的13~18岁男生体质影响因素分析
因为模型的效果越好,得到的特征重要度越准也越可靠。通过上述得到的效果最好的XG⁃Boost模型进行体质影响因素的分析研究,并通过XGBoost模型自带特征重要度的特点,得到特征重要度如图1所示。
图1 基于XGBoost模型的13~18岁男生体质影响因素重要度
因此,在日常训练和教学中,应重视男生的有氧能力以及上下肢力量的训练。
2.3.2 13~18 岁男生体质数据单棵决策树拟合可视化分析
对13~18岁男生体质数据进行单棵决策树拟合可视化分析,单棵决策树拟合的可视化如图2所示。
图2 基于13~18岁男生体质数据的决策树拟合可视化
从图2 通过单棵决策树拟合可视化可以发现,决策树深度没有过大,说明模型没有出现过度拟合的问题。男生决策树的根节点是1 000 m跑,说明该项目对男生体测成绩影响效果最为显著。当男生1 000 m 跑成绩保持在4.5 min 内时,体质测试的达标率会得到显著提升。男生决策树的第2 层节点包括引体向上和50 m 跑,这表明当男生引体向上次数大于4.5 次且1 000 m 跑成绩在3.5 min内时,男生的良好率就会得到明显提升。与此相反的是,如果男生的50 m 跑大于8.5 s,并且1 000 m跑成绩也高于5.5min时,其不及格率就会快速飙升。这也反映出男生上、下肢爆发力对体测成绩的影响仅次于有氧能力。以体质测试数据为基础,进行决策树的可视化分析,不仅可以分析体质健康的影响因素,还可以帮助青少年根据自己的体质测试成绩进行精准反馈,指导学生根据自己的各项成绩发现并弥补短板。
2.3.3 基于XGBoost模型的13-18岁女生体质影响因素分析
用上述预测效果最好的XGBoost模型,对13~18 岁女生体质影响因素进行分析研究,通过XG⁃Boost 模型自带特征重要度的特点,得到如图3 所示的特征重要度。
图3 基于XGBoost模型的13-18岁女生体质影响因素重要度
这些体质检测影响因素可以帮助指导青少年进行针对性的体质改善,如在日常体育教学中增加耐久跑和下肢爆发力的训练安排。
2.3.4 13~18 岁女生体质数据单棵决策树拟合可视化分析
对13~18岁女生体质数据进行决策树模型的可视化,如图4所示。
图4 基于13~18岁女生体质数据的单棵决策树拟合可视化
3 讨论
本研究以13~18岁青少年体质测试数据为基础,采用决策树、随机森林和XGBoost三种树形模型对数据进行分析。首先,通过对比accuracy、precision、recall、F1 等分类评价指标进行分类评价,在13~18岁男生体质健康数据中,表现效果由好到差依次为:XGBoost>随机森林>决策树,而在女生体质健康数据中,效果排序为XGBoost>决策树>随机森林。通过对比发现,XGBoost是经过优化的分布式梯度提升库,运算效率和灵活性都有较大的提升。因此,XGBoost在三种树形模型中分类表现效果最好,准确率和F1值均优于其他预测模型,展示了较高的优越性和科学性。其次,目前XGBoost算法在体育领域的数据处理中,基本没有相关的研究或探索,XGBoost 得益于高效率、高精度和高灵活性等优点,可以准确、科学地得出青少年体质的影响因素,在今后研究中可以结合XG⁃Boost 对青少年体育教学和体质健康等领域热点问题进行深入分析。在体育产业、体育管理等领域的数据处理中,XGBoost也具有较高的应用潜力和研究价值。再次,通过决策树对青少年体质健康状况进行可视化输出,通过结构简洁的图表反馈,分析青少年各项指标的关系,为体育教学设计和质量提高提供实证依据,为相关教育、卫生以及体育管理部门科学决策提供参考。
通过XGBoost和决策树可视化分析的结果表明:第一,1000m 跑和800 m 跑对于13~18 岁青少年的体质测试成绩影响作用最大,说明提升有氧素质对于青少年的体质健康水平的改善至关重要。13~18 岁年龄段青少年面临的学习压力随着年级的增长而不断增大,久坐行为和高热量食物的摄入导致青少年肥胖率的飙升[22-23]。但是较好的有氧能力不仅可以帮助13~18岁青少年保持良好的身体形态,而且根据XGBoost分析结果,有氧能力好的学生在体质测试中往往能取得更高的成绩,说明有氧能力的提升为其他身体素质的改善奠定了基础[24]。第二,除了有氧能力外,上下肢力量和爆发力素质对于青少年的体质健康也十分重要,男生和女生的体质影响因素各有其特点。13~18岁男生的引体向上、50 m跑以及立定跳远指标影响作用仅次于1 000 m跑,说明13~18岁男生除有氧能力外,也需要提升上下肢力量和爆发力素质。而女生影响因素则为50 m 跑和立定跳远指标,更侧重于下肢的力量和爆发力素质。第三,在今后体育教学中,应加强13~18 岁青少年有氧能力的训练,通过耐久跑、循环训练等途径提升青少年的有氧能力,为提升身体素质和改善身体形态打下良好的基础。在力量训练方面,应结合男、女生的体质特点,加强男生上下肢爆发力素质的训练,而女生则侧重于下肢力量和爆发力素质。通过结合13~18 岁青少年体质特点,在日常教学中有所侧重地进行练习,促进青少年健康全面发展。