APP下载

基于随机森林算法的学生成绩预测的实现

2024-07-01钱涛

科技资讯 2024年8期
关键词:R语言随机森林数据挖掘

钱涛

摘  要:教育数据挖掘是数据挖掘中的重要领域之一,其中成绩预测是研究的重点内容,

成绩数据是学生学习行为的重要反映。基于数据挖掘技术,通过采集学生的基本信息、图书借阅、消费行为、门禁数据等各类数据,挖掘行为特征与学习成绩之间的关联性,构建基于学生行为数据的成绩预测模型。以达到对学生异常情况的早期预警,优化教学实施过程,以促进学校对不同类群学生培养、引导和管理工作。

关键词:随机森林 成绩预测 R语言 数据挖掘

中图分类号:G434;TP18

Realization of Student Grade Prediction Based on the Random Forest Algorithm

QIAN Tao

(Zhejiang Agricultural Business College,Shaoxing,Zhejiang Province,312088 China)

Abstract: Educational data mining is one of the important fields in data mining, and grade prediction is its key research content. Grade data is an important reflection of students' learning behavior. Based on data mining technology, this paper explores the correlation between behavioral characteristics and academic performance by collecting various data such as students' basic information, book borrowing, consumption behavior and access control data, and builds a grade prediction model based on student behavior data, in order to achieve the early warning of the abnormal situation of students, optimize the teaching implementation process, and promote the training, guidance and management of different groups of students.

Key Words: Random forest; Grade prediction; R language; Data mining

数据挖掘在教育领域的应用已经成为一种趋势,取得了广泛的关注和应用。高校管理人员通过收集学生的学习数据和行为数据,结合大数据分析技术,能够对学生的学习情况进行深度分析和挖掘。

在教育大数据挖掘领域中成绩预测是研究的重点内容,成绩数据是学生学习行为的重要反映。罗杨洋等人[1]针对混合学习场景,基于学生认知水平、先前知识水平和在线行为等数据,建立多元回归预测模型,开展预测结果指导下的学习干预,以提升在云环境下的学习效果。张莉等人[2]构建模型应用到高考预测,支持向量机分类来预测高考的录取批次,以回归分析来预测高考特征分,并成功进行混合预测。沈江等人[3]提出了基于Adaboost方法的学生学习轨迹方法分析,引入了损益函数来表示预测误差率带来的影响,并根据预测的结果生成学生学习轨迹。王娜等人[4]、谢军飞等人[5]、张文奇等人[6]分别采用基于Lightgbm、XGBoost、向量机等机器学习算法实现成绩预测和学情预警功能。

1随机森林算法

在数据挖掘的预测模型中往往包括分类和回归任务,随机森林算法能有效地处理上述两类问题。本文将学生成绩预测问题划归为一种多分类问题,相较于单一的决策树,随机森林算法在一定程度上可以能够降低单一决策树的方差,提高模型的稳定性和泛化能力。随机森林算法步骤如下。

(1)自助采样:从原始训练数据集中进行有放回的随机抽样,生成多个自助样本集。 (2)构建决策树:对于每个自助样本集,使用决策树算法(如CART、ID3等)构建一棵决策树。

(3)特征值选择:在构建决策树的过程中,每个节点使用随机选择的特征子集进行分裂,而不是使用所有特征。通过这种筛选增加模型中可能存在的过拟合现象。

(4)集成预测:当所有决策树构建完成后,对于新的输入样本,将其输入到每棵决策树中进行预测。每棵树都会给出一个分类结果,随机森林算法将这些结果进行集成。

2基于随机森林算法构建成绩预测模型

本文的研究对象是来自某高职院校财经类专业的三个班2021级105名学生,通过随机森林算法将学生行为数据进行数据建模,预测学生学期末成绩的等级。研究数据包括一卡通数据(消费、门禁情况)、图书馆数据(借阅、到馆情况)、教务数据(生源、学业情况)。数据的收集时间从2022年2—6月(2021—2022学年第二学期)。

2.1 数据准备与预处理

所使用的学生数据都是来源于学校中相关业务系统的数据库,其中一卡通系统使用SQL Server,图书、门禁、教务数据采用Oracle。经过对业务系统数据进行预处理后,选定为10项特征数据分别为X1:性别(0男,1女),X2:生源(1普高生,2三校生,3中高职一体),X3:英语四级通过(0否,1是),X4:月均图书借阅量(数值),X5:月均入馆频次(数值),X6:晚归情况(数值型),X7:月均消费值(数值),X8:月均早餐数(数值),X9:月均请假次数(数值),X10:上学期加权平均分(数值),X11:专业课加权均分(数值),选定GRADE为预测数据即当前学期成绩专业均分等级:G(80-100),P(60-80),NP(60以下)。

2.2 预测的RF模型算法实现

2.2.1数据随机抽样

本实验的编程语言是 R 语言,在 RStudio 环境下运行。数据预处理后整个数据集包含105个样本和11个变量。将学生的考试等级(grade)视为响应变量,响应变量设置为因子变量,实验中选取65%的样本作为训练集,剩余作为预测集,代码如下所示。

2.2.2模型构建以及参数调整

通过R中randomForest包中randomForest函数从训练集中有放回地随机抽取76个样本,在每棵树的每个节点随机抽取4个变量,从而生成了200棵经典决策树,代码如下所示。

模型中mtry参数控制每个决策树在分裂节点时随机选择的特征数。一般推荐使用默认值模型中总特征值的平方根,故mtry参数设定为4。模型中ntree的设置会导致模型的稳定性和准确性变化,可以通过下图所示,ntree与error之间的关系,在ntree设置到200时,模型中error值趋向稳定。

2.2.3模型训练以及混淆矩阵

经过上述步骤已经实现成绩预测模型cjyc_rf构造,接下来将在预测集中通过predict函数将cjyc_rf模型和testdata作为参数,生成testpredprob预测值,将testdata$GRADE作为参数通过confusionMatrix函数构建混淆矩阵以及生成ROC图,ROC图用于表示分类模型对成绩预测的效果,代码如图4所示。

预测模型在训练集和预测级中的预测分类结果如图5和图6所示,73个训练样本中68个样本匹配,分别G(优秀):27,P(合格):32,NP(不合格):9,Accuracy为0.9315。在33个预测样本中24个样本匹配,分别G(优秀):9,P(合格):14,NP(不合格):1,Accuracy为0.7742,成绩预测模型cjyc_rf在预测集展现出较好的预测效果,但由于本次实验中样本总数偏少,随机森林本身就是容易过拟合的模型,存在一定的过拟合现象导致训练集和预测集预测效果有一定的差距。

3.2.4特征属性重要性排序

通过调用RondomForest包中 importances 函数,将cjyc_rf模型作为参数,输出后得到11个特征属性在此次预测模型中的预测的重要程度,MeanDecrease Accuracy和MeanDecrease Gini为随机森林模型中的两个重要指标,分别表示随机森林预测准确性的降低程度以及每个变量对分类树每个节点上观测值的异质性的影响,值越大代表对应的特征属性的重要性越大。在图7中,X5(月均图书借阅量),X6(晚归情况),X8(月均早餐数),X10(上学期加权平均分),X11(专业课加权均分)五项特征值对预测的结果影响比较大。通过研究特征属性对成绩预测重要性的排名,可以明确学习过程有一定延续性,前一学期的学习成绩对后一阶段的学习有很大程度的影响,早餐消费次数、晚归次数、月均入馆频次一定程度上反映学生的自律程度和学习自主性,但是像学生的生源、性别、图书借阅次数等数据相对于其他动态数据而言影响的比重较小。

3结语

本文学生在校的行为数据中筛选出特征数据,构建预测模型进行学生成绩预测,并对特征数据进行重要性排序。文中选取的随机森林方法是一种树型分类器的组合算法。它的优点在于能高效地处理大数据集,而且预测精度较高。数据在分析前不需要过多的预处理,不需要标准化或是归一化,但本次实验的样本基数偏小,存在一定的过拟合现象。

参考文献

[1] 罗杨洋,韩锡斌.基于增量学习算法的混合课程学生成绩预测模型研究[J].电化教育研究,2021,42(7):83-90.

[2]  张莉,卢星凝,陆从林,等.支持向量机在高考成绩预测分析中的应用[J].中国   科学技术大学学报,2017,47(1):1-9.

[3] 沈江,陈璐琳,潘婷,等.新工科背景下基于数据挖掘的学习轨迹分析[J].天津大学学报(社会科学版),2023,25(6):499-506.

[4] 王娜,李劲松,潘子尧,等.基于支持向量机的学位预警方法研究[J].吉林大学学报(信息科学版),2023,41(5):903-907.

[5] 谢军飞,张海清,李代伟,等.基于Lightgbm和XGBoost的优化深度森林算法[J].南京大学学报(自然科学),2023,59(5):833-840.

[6] 张文奇,王海瑞,朱贵富.基于因果推断和多头自注意力机制的学生成绩预测[J].现代电子技术,2023,46(17):111-116.

猜你喜欢

R语言随机森林数据挖掘
探讨人工智能与数据挖掘发展趋势
基于并行计算的大数据挖掘在电网中的应用
随机森林在棉蚜虫害等级预测中的应用
基于二次随机森林的不平衡数据分类算法
拱坝变形监测预报的随机森林模型及应用
基于GPS轨迹数据进行分析改善城市交通拥挤
基于R语言的Moodle平台数据挖掘技术的研究
基于随机森林算法的飞机发动机故障诊断方法的研究
基于R语言的湖南产业结构对其经济增长贡献分析
注重统计思维培养与应用为主导的生物统计学课程建设