C4.5算法在一个学生成绩管理系统中的应用

时间:2022-09-08 08:01:18

C4.5算法在一个学生成绩管理系统中的应用

摘 要: 随着“数字化校园”的发展,各种管理系统已经成为高校不可或缺的现代化管理手段。在学生成绩管理系统中引入数据挖掘技术,利用C4.5算法对学生已修专业课程成绩构建决策树建立规则,预测后续专业课程的成绩。

关键词: 学生成绩管理系统;数据挖掘;C4.5算法

中图分类号:TP301 文献标识码:A 文章编号:1671-7597(2012)1110131-02

0 引言

智能化管理手段在高校教学管理中应用越来越普及,但大多数系统功能单一技术陈旧,缺乏归纳推算及决策功能。高校管理者迫切希望能够从系统大量的数据中自动发现规律、研究数据间深层次的联系,制定规则,帮助管理者更有依据的制定教学决策,调整教学计划。

本文将讨论如何应用C4.5算法——数据挖掘技术ID3算法的改良算法,通过对学生已经修过的专业基础课构造决策树,创建规则,使学生成绩管理系统具有能够预测学生后续专业课程成绩的功能。

1 C4.5算法在ID3算法上的改进

ID3算法在实际应用时,一些问题出现了。学生成绩数据是连续的,而ID3算法要求数据必须是离散的某些课程的总体成绩偏高或者偏低,ID3算法无法计算信息增益时偏向选择取值较多的属性。因此在C4.5算法是在ID3算法上进行了优化的决策树生成算法。和ID3相比,它作了如下改进[1]:

1)用信息增益率取代信息增益,克服了以往偏向选择取值多的属性作为分裂属性的不足;

2)在数构造过程中或构造完成后进行剪枝;

3)能够实现连续的属性的离散化处理;

4)能够对例如未知的属性值进行不完整数据处理;

5)能够最终生成产生式规则。

2 用C4.5算法构建决策树

下面抽取本校软件开发专业的14名学生成绩作为样本集,其中高等数学、C语言程序设计、数据结构为先导课程,算法思想为学生还未修的后续课程,通过C4.5算法构建决策树,建立规则,找出这三门课程对“算法思想”的影响程度并对该门课程作出成绩预测。“高等数学”、“C语言程序设计”、“数据结构”为决策属性集,表1中“1”代表该门课程及格,“0”代表该门课程不及格。

选定数据模型Score(高等数学、C语言程序设计、数据结构、算法思想),选取训练样本集为:

Score(高等数学、C语言程序设计、数据结构、算法思想)=

{{1,0,1,1},{1,1,1,1},{0,1,0,0},{0,1,1,1},{0,0,0,0},{1,1,0,1},{1,0,1,1},{1,0,0,1},{1,1,0,0},{1,1,0,

0},{0,1,1,0},{0,1,1,1},{0,1,1,1},{1,1,1,1}}。

2.1 构造决策树[2]

1)信息熵的计算:算法思想及格9人,不及格5人。

2)条件熵的计算:高等数学的条件熵计算。

3)信息增益:高等数学的信息增益。

5)信息增益率:高等数学信息增益率。

同理计算出C语言程序设计的信息增益率是0.0174,数据结构的信息增益率是0.2396,因此选取信息增益率最大的“数据结构”作为决策树的根节点。

树的左分支表示数据结构不及格导致算法思想不及格,左分支的准确度达到了7/8=87.5%,因此对左分支停止分割。继续对右分支进行分割。

2.2 选取决策树的分支属性

右分支还有6个样本,因为数据结构已被选做根节点,所以在C语言程序设计和高等数学中选一个作为右分支的根节点。

1)信息熵的计算:右支中算法思想及格2人,不及格4人。

2)条件熵的计算:高等数学的条件熵计算。

4)属性V的信息属性:高等数学的信息增益属性。率已经达到2/2=100%,停止对右分支继续分割。对于左分支,三个属性:高等数学、C语言程序设计、数据结构现在只有C语言程序设计还未被用,因而用该属性继续对子树左分支进行分割,如图1。

2.3 对决策树的剪枝

分析以C语言程序设计为根节点的子树的右分支,准确率为0/1=0%,左分支准确率为1/3=33.3%,为此进一步对此树进行修剪[3]。对于决策树C语言程序设计属性节点右分支用叶节点代替此分支,如图2,此时其准确率为2/4=50%。

3 用决策树制定规则

规则1,如果“数据结构”及格,则算法思想也及格;准确度=7/8=87.5%;覆盖率=8/14=57.1%。

规则2,如果“数据结构”不及格,并且“高等数学”也不及格,则算法思想不及格;准确度=2/2=100%;覆盖率=8/14=57.1%。

规则3,如果“数据结构”不及格,但“高等数学”及格,则算法思想及格;准确度=2/4=50%;覆盖率=4/14=28.6%。

通过决策树规则就能通过“高等数学”、“C语言程序设计”、“数据结构”这三门课成绩预测学生的“算法思想”是否能够及格。帮助教师及时调整教学方法,同时也给学生以警示。

4 结束语

C4.5算法还可以实现学生成绩管理系统的其他智能化功能,如分析学生选择最适合的专业方向,系部开设课程的合理程度等。数据挖掘技术极大地提高了学生成绩管理系统在高校教学管理中发挥的作用,并应在其他行业得以广泛推广。

参考文献:

[1]牛慧卿,数据挖掘在高校管理信息系统中的应用研究,机械管理开发,2008,23(1):131-133.

[2]杨黎丽,学生成绩管理信息系统的设计与实现,山东大学,2009:6-9.

[3]包晓安等,基于ID3算法的快速分类方法研究,现代电子技术,2004,27(7):84-85.

上一篇:基于MSTP+VRRP的园区网负载均衡解决方案 下一篇:低温热水地板辐射采暖系统设计与施工中应注意...