基于餐厅消费数据的隐形资助研究-XGBoost 模型
摘要
隐形资助是通过大数据挖掘的形式,找准家庭经济困难学生的行为或经济状况特
征,隐形认定(识别)经济相对困难学生群体,并通过隐形实施的方式给予适度的资助
补偿,助力教育公平的实现。随着大数据技术的发展,我们可以通过学生在餐厅的海量
消费数据来对学生的贫困程度进行预测,进而确定对贫困群体的资助方案。
针对问题 1,我们采用 k-means 聚类算法,将学生群体划分为 k 类,通过比较不同
k 值下误差平方和以及轮廓系数的取值,最终确定 k 取 3,其中类别 1 是消费水平低但
消费最稳定的群体,类别 3 是消费水平高但消费最不稳定的群体,类别 2 的消费水平和
消费稳定度都居中。为了反映三个群体的消费行为特征变化规律和饮食种类变化规律,
我们从附件中提取出单次消费均价,早、中、晚消费均价,全年消费次数等十余种特征
量,我们分别计算了三个群体三年统计周期内其消费特征的均值,导入 matlab 中绘制了
变化图表体现其变化。总体而言,三个群体三年的消费水平和消费稳定性都有所提高,
消费食品种类变多,饮食结构变的更加合理。
针对问题二,我们构建 XGBoost 模型并使用启发式优化算法来确定模型最佳参数,
以此来预测附件 9 中学生的贫困度。首先将附件 1-3 提取到的特征量合并到附件 8 和 9
中,再通过启发式优化算法确定参数绘制网格参数,然后以附件 8 的数据为训练集来训
练 XGBoost 模型,最后对附件 9 中的预测集进行预测。最终可以确定附件 9 中学生在
三学年内的贫困度。
针对问题三:我们以具有多个预测特征量的嵌套 XGBoost 模型为基础,首先将附
件 4-7 中提取到的特征量结合 vlookup 函数与附件 8 和 9 合并,以附件 8 内 250 个学生
为训练集,使 train_test_split 函数划分数据为训练集和测试集,比例为 8:2,随机种子
为 42, 再训练 XGboost 模型并且使用 5 折交叉验证和 r2 分数作为评估指标,返回训练
分数,确定最佳参数后预测并补全附件 8 本身,将误差控制在合理范围内并且增加特征
量,然后同理以附件 8 为训练集训练 XGboost 模型并预测附件 9 中三学年内学生的贫
困度。
针对问题 4,我们采用熵权法计算第三学年附件 4-7 中学生各项指标所占的权重,
并计算附件 4-7 中每个同学的综合评价分数,综合评价分数越高,其贫困度越大,对 301
名学生进行排序,取前 80 名即为最终的资助对象。为了确定资金分配方案,我们假设
所获资助金与贫困度之间存在线性关系,基于此假设,我们将资助金额进行线性插值,
得到资助金额与我们综合评价分数之间的函数关系,由此可确定最终的资助金额分配方
案。
关键字: 隐形资助 k-means 聚类 XGBoost 交叉验证 综合评价 线性插值
1