基于深度森林的高校贫困生认定模型研究
2022-08-25滕玲施三支张梦菲刘先俊
滕玲,施三支,张梦菲,刘先俊
(1.长春理工大学 数学与统计学院,长春 130022;2.长春理工大学 学生工作部,长春 130022)
家庭经济困难学生的认定是高校学生资助工作的首要步骤,只有准确分类和精准认定,才能为学生提供针对性较强的经济方面的资助。高校贫困生认定工作每学年进行一次,每学期调整一次,相对于老生而言,新生辅导员对学生的家庭经济情况了解时间较短,如何进行精准认定,成为高校资助工作的一大难题。其次,我国高校在开展认定工作时普遍存在受主观影响较大、测评标准不明确、判定方法合理性不足等问题。因此,高校贫困生认定模型在理论研究和实际工作两个层面上都具有十分重要的现实意义。
贫困生认定可视作一个分类问题。为了科学准确地对高校贫困生进行等级认定,许多资助工作者和相关研究人员基于不同的指标进行贫困生认定研究。在认定方法上从传统的分类方法逐渐向机器学习方法转变。传统的方法包括层次分析、决策树、聚类、Logistic、SVM等,早在2010年刘善槐[1]就利用教育支出、健康状况、平均收入和生源类别四个因素建立了Logistic回归模型,实现了贫困生的二分类,即是否为贫困;2018年刘嘉庆[2]利用一卡通消费数据来预测学生的困难等级;2019年陈瑞虹[3]建立基于SVM算法的高校贫困生等级识别模型。近年来,机器学习在分类问题上得到了广泛应用,具有代表性的是神经网络和集成学习算法。程茜宇[4]以某高校资助工作为例,利用深度神经网络方法构建了学生资助评定模型,认定准确率与传统算法相比得到一定提升。
深度神经网络的发展在机器学习领域取得了显著进展,往往在训练过程中存在调参困难、训练时间长和样本需求量大等缺点,于是越来越多的学者将目光投向集成学习算法,如随机森 林(Random Forest,RF)[5]、XGboost(eXtreme Gradient Boosting)[6]以 及 梯 度 提 升 树(Gradient Boosting Decision Tree,GBDT)[7]等。2017 年,唐燕[8]提出将随机森林算法应用于高校贫困生认定中,并验证了其准确率高于决策树算法。杨胜志[9]利用反映学生在校行为数据,包括消费情况、表现情况和学习情况,通过改进后的GBDT模型实现贫困生的四分类,得到的准确率并不理想。2019年陆桂明[10]应用XGBoost模型对贫困生进行分类预测,得到的准确率为53.68%,相比Logistic和SVM两种方法取得更好的分类效果。
深度森林(DeepForest,DF)[11]是基于决策树构建的深度集成模型,在高光谱图像分类[12]、信用评估[13]、交通风险等级[14]等问题上取得了显著的效果。本文以我校贫困生数据为例,从生源类别、固定资产、经济状况、特殊群体、人力资源和突发状况六个方面,提出了ADA-MDF贫困生认定模型。该模型引入ADASYN算法有效改善了数据的不平衡性,并改进了深度森林的级联结构,实验结果与我校目前使用的“本科生困难程度测评模型”相比,准确率提高了8.81%,能够对贫困生认定起到积极的指导作用。
1 相关理论
1.1 深度森林算法
2017年,周志华提出了多粒度级联森林方法,构建了深度森林模型。这是一种非神经网络类型的深度模型,这一模型表现出较强的表征能力,与深度神经网络模型相比,超参数更少、分类效率更高,具有更优异的分类性能。
如图1所示,深度森林主要由两个部分构成:多粒度扫描(Multi-grained Scanning)和级联森林结构(Cascade Forest Structure)。在多粒度扫描中,滑动窗口用于扫描原始特征,假设原始输入特征为p,滑动窗口大小为wi,则每个窗口都会产生p-wi+1个特征向量。当分类个数为n时,每个森林产生n(p-wi+1)个类向量,记为m。从而计算出每个样本对应类别的概率,将这些森林生成的概率向量拼接成新的特征向量,用作级联森林结构的输入。
图1 深度森林框架
级联森林结构的每层都是由两个RF和两个完全随机森林(Completely Random Forest,CRF)组成。每个CRF包含m棵完全随机树[15],通过在每个节点上随机分配一个用于分裂的特征,并生长一棵树直到纯叶,即每个叶节点仅包含同一类样本;每个RF包含m棵树,每个节点随机选择个候选特征(d是输入特征的数量),然后选择Gini值最佳的特征进行分割。每个森林通过计算相应叶节点上不同类别的训练样本的百分比来估计类的分布,并对同一森林中的所有树求平均值,得到每个森林的一个类向量,共得到4n维的特征向量(n分类,4个森林),与原始特征向量连接,即4n+m维的特征向量,共同输入到下一级。在最后一级,取所有向量的平均值作为最终的类向量,概率最高的类为该样本的最终预测类别。每个森林产生的类向量可以通过k倍交叉验证来生成,以降低过度拟合的风险。如果验证集没有显著的性能提升,则训练过程自动终止。
1.2 ADASYN算法
自适应综合过采样(Adaptive Synthetic Sampling,ADASYN)[16]最大的特点是考虑了数据的分布密度,使合成的新样本更加地贴近原始数据,不会破坏原有数据集的分布空间。具体流程如下:
设训练数据集S={xi,yi},i=1,...,m。其中,xi是p维特征空间中一个样本,yi∈Y ={1,-1},ms和ml分别为少数类和多数类样本,有ms≤ml且ms+ml=m。
(1)计算不平衡度:
(2)计算需要合成样本数量:
(3)利用欧式距离计算xi的k个最邻近样本,统计k个邻近中属于多数类的样本个数Δi,计算:
(4)正则化ri,得到密度分布:
(5)对每个少数类样本计算合成样本的数目:
(6)利用k邻近算法随机选择xi附近的一个样本xj,生成新样本:
重复合成,直到满足步骤(5)需要合成的数目为止。
1.3 ADA-MDF贫困生认定模型
原始深度森林的级联结构由RF和CRF组成,这两种分类器都是集成学习中Bagging思想的典型代表。误差-分歧分解(Error-ambiguity decomposition)理论[17]指出“各学习器的准确性越高,多样性越大,集成的效果就越好”。针对贫困生数据特征复杂多样问题,本文对其级联结构的多样性进行优化,引入Boosting算法和机器学习中的线性分类器,增强学习器的多样性。最终选取 RF、CRF、XGboost、Logistic和随机梯度下降法(Stochastic Gradient Descent,SGD)五种分类器构建全新的级联结构,如图2所示,其中Logistic、SGD为线性模型,有学习能力强、收敛速度快等特点;RF、CRF和XGBoost属于非线性模型,具有很好的拟合效果。训练时,各分类器在特征空间上可以发挥各自优势以充分学习多特征的信息,对多粒度扫描阶段生成的特征向量进行深度迭代,从而更加精准地预测每条训练集数据所属的类别,进一步增强了模型的集成能力和泛化能力。本文是针对贫困生等级的三分类研究,每个弱学习器都会生成一个长度为3的概率向量,每一级共产生15个增强特征向量,再与多粒度扫描阶段生成的特征向量拼接,输入到下一级,优化后的深度森林模型称为MDF模型。
图2 改进的级联森林结构
深度森林算法中缺少对类别不平衡数据均衡化的设计,训练样本过少,会导致学习不充分,难以保证模型的精度,因此把ADASYN算法融入到MDF模型中,构建ADA-MDF贫困生认定模型,通过过采样增加少数类样本量,有效解决不平衡数据下贫困生的认定问题。模型的具体框架如图3所示,首先对原始数据进行预处理后,按照8∶2的比例划分训练集和测试集,实验针对训练集进行ADASYN过采样,将过采样后的数据输入改进后的MDF模型,取5倍交叉验证后的平均值,如果近两层内性能没有增长,训练过程停止,保存模型;最后输入测试集,预测贫困生等级,输出实验结果并计算准确率。
图3 ADA-MDF贫困生认定模型
2 实证分析
2.1 数据采集和处理
本文获取到我校2017-2020年申请贫困认定的学生数据,进行汇总清洗后得到3 700条数据。其中,1 196人为特别困难,1 943人为一般困难,561人为不困难,三个等级分别用“2”“1”“0”表示。这里可以看出原始数据存在一定不平衡性,不困难类别的样本量非常小,会对准确率造成影响。
在对已有研究进行总结的基础上,结合教育部最新政策要求,本文将建档立卡等特殊困难群体因素考虑在内,从6个评价因素共25个具体属性提出高校贫困生评价指标体系,如表1所示。
表1 贫困生评价指标体系
根据评价指标的定义,对“生源类别”“是否贷款”“拥有住房”“住房类型”“低保”“建档立卡 ”“ 残 疾 ”“ 单 亲 ”“ 孤 儿 ”“ 外 债 金 额 ”“ 家 庭 年 总纯收入”“家庭月生活费”“自己月均生活费”“父亲状况”“母亲状况”“家庭自然灾害”“家中有大病患者”“家用电器”“交通工具”“收入来源”共20个指标,按照困难程度逐渐加深的顺序一一对应转化为数值数据0~7;剩余“就读幼儿园人数”“初中小学人数”“高中及中专人数”“就读大学人数”“赡养老人人数”5个指标为计量数据,故没有进行转化。
完成数值转化后,在ADA-MDF模型分析贫困生数据的过程中,对25个指标进行归一化处理,把特征数据映射到[0,1]之间。这里采用最小-最大归一化方法,公式如下:[18]
其中,xi代表第i个指标;minxi、maxxi分别代表xi的最小值与最大值;Xi表示转化后的数值。对各个指标贫困数据进行归一化处理后,每个学生简化成一个贫困向量,25个元素分别代表相关指标的值,定义如下:
2.2 模型评价指标
本文研究的贫困生等级认定是一个三分类的问题,给出三分类的混淆矩阵,如表2所示。通过计算精准率(P)、准确率(ACC)、召回率(R)、F1值和macro-F1值来评估模型的性能,定义1给出了以上指标的计算公式。
表2 贫困生等级混淆矩阵
定义1:根据二分类中模型评价指标的含义,给出本文中三分类模型使用的评价指标如下:
2.3 实验结果及对比分析
实验以8∶2的比例将数据集划分为训练集和测试集,在训练集上进行ADASYN过采样后得到各类别的样本量,如表3所示。
表3 训练集中各类别的样本量(单位/个)
对采样后的训练集运用5倍交叉验证,将训练集划分成五个不相交的子集,其中四个子集用来训练,另一个子集用作验证,这个过程重复五次,则每个子集都被精确地用作验证集,对每个验证集的准确率计算平均值。实验得到ADA-MDF模型最好的层索引为第2层,此时得到的实验结果如表4所示。
表4 ADA-MDF模型的实验结果(单位/%)
ADA-MDF模型预测的特别困难、一般困难和不困难的精准率分别为94%、94%和89%。其中,不困难类别的精准率最低,由于该类别样本数量特别少,造成严重的数据不平衡,即使通过ADASYN采样方法进行补救,但是依然无法达到与其他两类相同的效果。此外,召回率和F1值也有同样的表现。相比较之下,特别困难和一般困难的精准率、召回率及F1值均能达到90%以上,特别困难的召回率最高,故该模型在贫困生分类方面具有一定的有效性,预测结果可以为贫困生认定工作提供可信的依据。
图4为ADA-MDF模型三分类的ROC曲线图,其中横轴为“假正率”(False Positive Rate,简称 FPR),纵轴表示“真正率”(True Positive Rate,简称TPR),见定义2。当i=1时,TPR1表示实际等级为“一般困难”的样本中被预测为“一般困难”的占比,TPR越大越好;FPR1表示实际等级为“特别困难”和“不困难”的样本中被预测成“一般困难”的占比,FPR越小越好。由图可以看出特别困难的曲线面积最大,为98%,一般困难、不困难的曲线面积分别为96%、97%,说明模型的准确度较高,达到较好的分类效果。
图4 ADA-MDF模型的ROC曲线图
定义2:根据二分类中ROC曲线图的TPR和FPR值,给出本文三分类的TPR和FPR值如下:
为了进一步研究ADA-MDF模型的性能,分别与图5中显示的其他基于树的模型进行对比,包括 DF、RF、LGB、XGBoost、GBDT 五种分类方法,由于每次实验都是对原始数据随机划分训练集和测试集,一次实验并不具备说服力,为了产生公平的比较,每种方法均采用默认的参数,分别进行了10次实验,图5(a)记录了十次实验的准确率,可以看出,ADA-MDF基本保持在中上游,且准确率最高达到93.38%,其中ADA-MDF、LGB和GBDT三种模型的极差最小为0.54%,说明这三个模型的稳定性较好。
图5 不同分类方法的实验结果
图5(b)为10次实验的平均准确率,本文提出的ADA-MDF模型平均准确率最高,达到了93.11%,优于其他模型,与平均准确率第二高的DF相比,准确率增长了0.11%,说明改进级联结构的深度森林有助于提高分类准确率且稳定性更强。从误差棒的长短可见,ADA-MDF的误差略大于GBDT模型,但是比其余4个模型小的多,虽然GBDT模型在稳定性和误差方面具有一定优势,但是其准确率远远没有达到预期效果,综上,ADA-MDF模型的综合性能更为优越。
3 结论
根据贫困生认定工作流程,我校目前使用“本科生困难程度测评模型”的测评结果作为最终认定结果的参考依据,而实际认定过程中会存在等级调整的情况,经计算,测评结果的准确率为84.30%。本文将ADASYN自适应过采样方法引入到深度森林算法,提高了模型在不平衡数据中的分类效果;创建了一个新的级联结构,由 RF、CRF、XGboost、SGD、Logistic五种基分类器组成,对特征进行深度学习,实现贫困生的三分类,平均准确率达到93.11%。故本文提出的ADA-MDF模型有助于贫困生等级精准分类,下一步可研究如何进行特征选择,构建更适用于我校学生的评价指标体系,不断提高贫困生认定模型的准确率及普适性,贯彻落实精准资助。