近年来, 计算机技术在教育领域已经被广泛应用.学生学业成绩预测一直是教育和学习中的重要环节.例如, 当前挂科现象在学生中非常普遍, 然而挂科可能会造成学生无法按时毕业或者无法找到心仪工作的后果[1].如果能提前发现学生的学习异常, 通过引导和干预就有可能阻止这些事情的发生[1].再者教育机构也可以通过预测学生表现, 为学生定制合适的辅导手段, 以适应他们的需求.因此, 准确地预测学生的成绩在教育管理中就显得十分重要.
目前许多数据挖掘和机器学习的方法已经应用于教育领域.现有的成绩预测方法大致可以分为两类, 一是使用人工神经网络, 二是建立概率统计模型. Borkar等介绍了一种用神经网络做成绩预测并对学生进行分类的方法[2].一些概率模型, 例如多变量线性回归模型、稀疏因子分析模型[3]等都被用于预测学生成绩.张嘉等提出了基于规则的概率软逻辑模型, 通过半自动的构建规则辅以决策树算法进行建模[4].这些工作都大量使用了两种属性, 一是学生以前的课程成绩, 用历史成绩预测他们在后续课程中的表现.除历史成绩外, 第二种属性是学生的基础行为属性, 包括学生的年龄、性别、课堂出勤率、自习频率、图书馆门禁记录、座位选择情况和社会关系等等.但是过度使用不同类型的属性可能导致过于复杂的分数预测方法, 其结果往往会难以解释.
本文引入模糊逻辑来计算隶属度矩阵, 提出一种融合模糊聚类和支持向量回归的成绩预测方法.首先利用模糊C均值算法(Fuzzy C-means Clustering, FCM)对学生历史成绩属性做聚类, 接着对每个聚类簇单独进行支持向量回归(Support Vector Regression, SVR), 并根据学生行为对最终预测结果做出调整.本方法结合了学生历史成绩和行为习惯等属性进行综合预测, 在3个数据集上进行实验, 结果表明, 本方法在成绩预测精度方面有明显性能提升.
1 相关工作 1.1 成绩预测相关研究学生成绩预测是心理学、教育学和计算机科学的交叉领域.目前的成绩预测方法可分为基于神经网络训练和概率统计模型两类. Borkar等提出了一种用神经网络做成绩预测并对学生进行分类的方法[2].张嘉等提出了基于规则的概率软逻辑模型, 通过半自动的构建规则辅以决策树算法进行建模[4].张麒增等使用学生缺课次数、离讲台距离、上课迁移座位次数、历史成绩来对学生成绩进行预测, 采用过采样技术配合神经网络提升模型预测能力[8].孙毅等介绍了基于多元线性回归的预测模型[9].陈岷等提出了融合因子分析和神经网络的体育成绩预测模型[10]. Bunkar等使用学生的班级考试成绩、研讨班成绩、作业成绩、课堂出勤率和实验室工作情况等, 来预测学生学期结束时的分数[12].利用神经网络的黑箱来预测学生成绩, 模型会缺乏可解释性, 不够直观且不利于理解.利用回归模型直接进行预测往往需要人为地进行特征选择.通过构建规则进行成绩预测的方法也需要人工参与, 人为地给出常识知识作为规则确立的先决条件, 其中包含的不正确信息可能会影响预测结果.
1.2 模糊C均值聚类模糊C均值算法是模糊聚类算法中最重要的聚类算法, 在模式分类、机器学习和数据挖掘等领域中有着广泛应用[5].模糊C均值算法相对于其他聚类算法有着许多的优势, 如模型数学表达易于理解符合实际、优化求解方法多样、收敛理论严谨、算法易于借助计算机编程实现、模糊聚类效果表现优良等[6].
模糊C均值聚类采用模糊划分, 为每个样本确定其属于各个组的隶属度, 用0到1之间的数表示.该算法的优化准则为:
$ \begin{align} \left\{ {\begin{array}{l} JFCM(U, P)=\displaystyle\sum\limits_{i=1}^c {\sum\limits_{j=1}^n {u_{ij}^m \vert \vert x_j -\theta _i \vert \vert ^2} } , \\[4mm] \displaystyle\sum\limits_{i=1}^c {u_{ij} =1, \quad 0\le } \;u_{ij} \le 1, \quad j=1, 2, \cdots, n .\\ \end{array}} \right. \end{align} $ | (1) |
其中
考虑样本集
$ \begin{align} L\varepsilon (f(x_i)-y_i)=\left\{ {\begin{array}{l} \displaystyle 0, \quad \quad \quad \quad \quad \quad \vert f(x_i)-y_i\vert <\varepsilon \\[4mm] \displaystyle\vert f(x_i)-y_i\vert -\varepsilon , \; \;\vert f(x_i)-y_i\vert \ge \varepsilon \\ \end{array}} \right.\quad (\varepsilon \mbox{为正数}). \end{align} $ | (2) |
本文使用支持向量回归, 将其用于成绩预测中, 希望能找到参数使得函数
支持向量机应用于回归预测等问题则称为支持向量回归, 与传统机器学习方法相比有较好的学习性能, 克服了传统方法的大样本要求, 能很好地解决小样本、非线性、维数灾难及局部极小等实际问题[7].
2 基于模糊聚类和支持向量回归的成绩预测 2.1 FCSVR模型框架本文建立基于模糊聚类和支持向量回归的成绩预测模型(performance prediction based on fuzzy clustering and support vector regression, FCSVR), 主要分为3步, 首先对样本进行聚类、随后用回归算法拟合成绩、最后对成绩做出些许调整, 形成学生最终成绩预测机制.其实现流程如下(见图 1).
![]() |
图 1 FCSVR模型流程图 Fig.1 Flowchart of the FCSVR Model |
(1) 预处理原始数据并划分训练集和测试集;
(2) 对训练集和测试集的所有学生历史成绩(不包括其最终成绩)进行模糊聚类, 通过相似性将他们分为不同类别, 并计算每个样本关于不同类别的模糊隶属度值;
(3) 基于隶属度最大的原则进行聚类, 对每个聚类簇使用支持向量回归算法建模, 确定最终成绩与历史成绩记录之间的关系;
(4) 根据测试集学生自身的学习行为属性, 找到具有相同或者相似行为的学生, 对目标学生最终成绩做出调整;
(5) 通过在步骤(2)中获得的模糊隶属度矩阵, 在步骤(3)中确定的关系以及步骤(4)中对成绩的调整, 来获得目标学生的最终成绩.
本文提出的基于模糊聚类和支持向量回归的成绩预测模型, 首先对所有样本进行模糊聚类, 将样本空间划分为若干个簇(子空间), 使同一个簇中的对象有很大相似性, 不同簇间的对象有很大差异性.传统的聚类分析是一种硬划分, 将样本严格划分到某个类中, 类之间的界限是明确的.在成绩预测问题中, 样本没有严格的类属划分, 某些样本可能具有"亦此亦彼"的性质, 因此本文采用模糊C均值聚类, 使系统有更好的灵活性.然后, 针对每一个簇构造SVR模型来拟合学生成绩, 经过划分后的样本空间数据量减少, SVR能很好地适用于小样本问题.同时, 聚类之后使用SVR可以改善SVR训练时间过长的不足, 而且能提高模型预测精度.
2.2 模糊聚类对训练集和测试集的所有学生进行模糊聚类, 其中的每个记录包括学生的历史成绩和最终成绩.本文使用模糊C均值聚类算法, 根据学生的历史成绩, 将他们划分为不同的类别.具有相似历史成绩的学生将被划分到同一组.然而不同类别之间具有相关性, 某个实例难以被确切地分为某个类.因此模糊聚类对处理这种不确定性有天然的优势.得到的模糊隶属度矩阵将被用于最后的预测.该算法伪代码见算法1.
如果初始聚类中心随机选取, 容易选到噪声数据, 使算法性能变差.所以初始聚类中心通过以下步骤生成:首先计算每个学生历史成绩的算数平均值, 根据其算数平均值对记录排序, 使排序好的所有记录平均地分为
算法1 历史成绩模糊聚类 |
输入:所有样本记录 |
输出: |
1:计算初始模糊隶属度值 |
2: loop |
3:计算聚类中心 |
4:更新模糊隶属度矩阵 |
5:计算目标函数 |
6: until |
2.3 支持向量回归
回归分析是在预测问题中常用的一种统计方法, 用于估计变量之间的关系.支持向量回归的损失函数自带L2正则项, 对数据有普适性.给出数据集
$ \begin{align} & \displaystyle\min\limits_{ ({\mathit{\boldsymbol{w}}, }b, \xi_i ) } \frac{1}{2} \|{\mathit{\boldsymbol{w}}}\|^2 +C\sum\limits_{i=1}^l {\xi_i}\notag\\ & {\mbox {满足}}\quad \left\{ {\begin{array}{l} |{\mathit{\boldsymbol{w}}}^{\mathrm T}{\mathit{\boldsymbol{x}}}_i + b-y_i|-\varepsilon \leqslant \xi_i \\ \xi_i \geqslant 0 \\ \end{array}} \right. , \end{align} $ | (6) |
对于每一个聚类簇, 分别计算相应的回归系数, 记为
一方面, 学生历史成绩可以作为成绩预测的重要参考, 另一方面, 学生的行为等属性也会影响学生最终成绩.学生在前几个阶段有相同或相似的成绩, 但在最后阶段的成绩可能也有差异.如今人们普遍认为学习行为会对学生的学业成绩产生重要影响[11].因此, 本文除历史成绩外还考虑了学生的行为习惯, 用来进一步调整最终成绩, 以产生更好的预测结果.
算法2 最终成绩预测 |
输入:训练集 |
输出:最终成绩的预测值 |
1:根据2.2小节得到的模糊隶属度矩阵, 针对测试样本在每一聚类簇中计算SVR回归的结果, 表示为 |
2:计算测试样本与每个归属同一个类的训练样本之间的欧氏距离 |
3:将步骤2中计算的欧氏距离从小到大排序, 选择前 |
4:对于 |
5:引入超参数 |
6:得到最终成绩的预测值 |
2.5 时间复杂度分析
首先使用FCM进行聚类, 其时间复杂度为
本文使用3个成绩预测数据集来对模型进行评估.
(1) 葡萄牙中学生数据集, 包含葡萄牙两所中学的1 064条学生数据, 属性包括学生成绩、父母受教育程度、家庭情况以及学生行为习惯等相关特征.数据由UCI机器学习库提供(htp://archive.ics.uci.edu/ml/datasets/Student+Performance), 两个文件分别提供数学(UCI-Math)和葡萄牙语(UCI-Portuguese)成绩.
(2) 中国高校学生日常数据集(Stu-Common), 包含某高校学生的60多万条活动记录, 属性包括图书馆进出记录、消费记录、借阅书籍记录以及学生学期排名信息等.数据来自网站http://www.dcjingsai.com/common/cmpt提供的学生排名预测竞赛数据集.
实验采用评价回归中常用的均方差(mean squared error, MSE)平均绝对值误差(mean absolute error, MAE)、R2决定系数(R2 score, R2) 3个评价指标对本文提出的方法进行考察. MSE、MAE的值越小说明预测的精度越高, 模型被接受的可能性越大. R2决定系数越接近于1, 说明回归方程的拟合程度越好.
$ MSE=\sqrt {\frac{1}{n}\sum\limits_{i=1}^n {(y_i -\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over {y}} _i )^2} } , $ | (11) |
$ MAE=\frac{1}{n}\sum\limits_{i=1}^n {\vert y_i -\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over {y}} _i \vert } , $ | (12) |
$ R2=1-\displaystyle\frac{\sum\limits_{i=1}^n {(y_i -\mathord{\buildrel{\lower3pt\hbox{$\scriptscriptstyle\frown$}} \over {y}} _i )^2} }{\sum\limits_{i=1}^n {(y_i -\bar {y}_i )^2} }. $ | (13) |
本文提出的方法主要用于学生成绩预测, 该方法也可以应用为分类模型.将本文的方法用作对目标学生进行二分类, 分为合格和不合格两类.对于UCI-Math和UCI-Portuguese两个数据集, 将分数大于10分(总分20分)的学生记为合格.对于Stu-Common数据集, 将排名在前345名(共538人)的学生记为合格.对于此二分类问题, 可以用准确率(Precision)来度量.
$ \begin{align} Precision=\frac{TP}{TP+FP} . \end{align} $ | (14) |
在进行实验之前需要对数据进行预处理, 并设定超参数.例如学生的学习时间、缺席次数等等属性值都被归一化为0到1之间的范围.对于"YES"和"NO"的属性值分别被设置为1和0.
在实验中左右的结果都取10次实验结果的平均.由于学生最后阶段的成绩是一个0到20的整数, 但是预测的最终成绩是以浮点数的形式得出, 预测数据将以四舍五入的形式转换回整数, 从而计算预测结果的准确率, 也能更好地支持可解释性.
实验过程中将聚类个数
为了分析本文提出的方法, 在3个数据集上进行了实验.该工作还与其他3种方法进行了比较, 实验配置如下.
(1) FCSVR:本文提出的方法.
(2) MLR:标准的多变量线性回归方法.
(3) BR:贝叶斯岭回归方法.
(4) EN:弹性网络回归方法.
(5) SVR:支持向量回归方法.
表 1和表 2展示了5种方法的均方差MSE和平均绝对值误差MAE的实验对比结果.整体上看, 本文提出的方法(FCSVR)误差都要低于其他3种方法(MLR、BR、EN、SVR).这5种方法在UCI-Math、UCI-Portuguese两个数据集上效果比较好, 而Stu-Common数据集由于拥有更多的数据量以及较为复杂的属性关系, 总体效果稍差.其中, 多变量线性回归方法和贝叶斯岭回归方法效果相等, 弹性网络回归方法效果最差.
![]() |
表 1 5种方法的均方差对比 Tab. 1 Mean squared error comparison of the five methods studied |
![]() |
表 2 5种方法的平均绝对值误差对比 Tab. 2 Mean absolute error comparison of the five methods studied |
对比方法1和方法5这组消融实验, 只使用支持向量回归的效果远不及本文提出的FCSVR模型, 证明了本文方法的有效性.
图 2显示了FCSVR方法、MLR方法、BR方法、SVR方法和EN方法在UCI-Portuguese、UCI-Math、Stu-Common在这3个数据集上关于R2决定系数的对比实验结果.可以看到, FCSVR方法在3个数据集上的R2系数值均要高于其他4种算法. R2决定系数表示拟合优度, 越接近1越好, 这表明了本方法的有效性.
![]() |
图 2 5种方法的R2系数对比 Fig.2 R2 comparison of the five methods studied |
图 3显示了FCSVR方法、MLR方法、BR方法、SVR方法和EN方法在UCI-Portuguese、UCI-Math、Stu-Common在这3个数据集上关于分类准确率的对比实验结果.在5种方法里, SVR总体效果最差, 在Stu-Common数据集的准确率只有66.7%, 与其他方法差距明显.这说明仅仅使用SVR用于分类模型是不够的. FCSVR方法在3个数据集上的分类准确率均高于其他4种方法, 说明将成绩预测应用于分类问题, FCSVR方法也能取得很好的效果, 进一步表明了本文方法的优势与潜力.
![]() |
图 3 5种方法的分类准确率对比 Fig.3 Precision comparison of the five methods studied |
本文分析了当前研究的不足, 提出了一种基于模糊聚类和支持向量回归的成绩预测方法.该方法能有效利用学生历史成绩和行为习惯两种属性, 提高成绩预测的准确率.在3个标准数据集上的对比实验展现了本文提出方法的有效性.
[1] |
吕红胤, 连德富, 聂敏, 等. 大数据引领教育未来:从成绩预测谈起[J]. 大数据, 2015, 1(4): 118-121. |
[2] |
BORKAR S, RAJESWARI K. Attributes selection for predicting students' academic performance using education data mining and artificial neural network[J]. International Journal of Computer Applications, 2014, 86(10): 25-29. DOI:10.5120/15022-3310 |
[3] |
LAN A S, WATERS A E, STUDER C, et al. Sparse factor analysis for learning and content analytics[J]. Journal of Machine Learning Research, 2013, 15(1): 1959-2008. |
[4] |
张嘉, 张晖, 赵旭剑, 等. 规则半自动学习的概率软逻辑推理模型[J]. 计算机应用, 2018, 38(11): 98-103. |
[5] |
薛颖, 沙秀艳. 基于改进模糊聚类算法的灰色预测模型[J]. 统计与决策, 2017(9): 29-32. |
[6] |
文传军, 詹永照. 基于样本模糊隶属度归n化约束的松弛模糊C均值聚类算法[J]. 科学技术与工程, 2017, 17(36): 96-104. DOI:10.3969/j.issn.1671-1815.2017.36.015 |
[7] |
赵琦, 孙泽斌, 冯文全, 等. 一种基于支持向量回归的建模方法[J]. 北京航空航天大学学报, 2017, 43(2): 352-359. |
[8] |
张麒增, 戴翰波. 基于数据预处理技术的学生成绩预测模型研究[J]. 湖北大学学报(自然科学版), 2019, 41(1): 106-113. |
[9] |
孙毅, 刘仁云, 王松, 等. 基于多元线性回归模型的考试成绩评价与预测[J]. 吉林大学学报(信息科学版), 2013, 31(4): 404-408. DOI:10.3969/j.issn.1671-5896.2013.04.013 |
[10] |
陈岷. 因子分析和神经网络相融合的体育成绩预测模型[J]. 现代电子技术, 2017(5): 138-141. |
[11] |
NÚÑEZ J C, SUÁREZ N, ROSÁRIO P, et al. Relationships between perceived parental involvement in homework, student homework behaviors, and academic achievement:Differences among elementary, junior high, and high school students[J]. Metacognition and Learning, 2015, 10(3): 375-406. DOI:10.1007/s11409-015-9135-5 |
[12] |
BUNKAR K, SINGH U K, PANDYA B, et al. Data mining: Prediction for performance improvement of graduate students using classification[C]//IEEE 2012 Ninth International Conference on Wireless and Optical Communications Networks (WOCN). New York: IEEE, 2012: 1-5.
|