数据挖掘在课程成绩分析中的应用_数据挖掘前景

来源:初中教育 发布时间:2019-04-25 05:41:31 点击:

  摘要: 数据挖掘是数据仓库技术中的重要技术之一。为了充分发挥考试的效能,综合评价命题质量,及时反馈教学效果,将数据挖掘技术与课程成绩分析相结合,从海量的数据中发现隐藏的有用信息,并将这些信息资源进行统计分析和总结是非常必要的。
  关键词:数据挖掘;成绩分析;决策树算法
  
  一、引言
  成绩作为考试的结果,不仅是对学生学业和教师教学效果的检查和评定,进而激励学生学习及教师工作;更是一种信息,具有反馈于教学活动、服务于教学决策、为教育科研提供资料等作用。为充分发挥考试的效能,综合评价命题质量,及时反馈教学效果,沟通教学信息,教学部门对考试成绩进行统计分析和总结是非常必要的。
  二、问题提出
  我们以软件技术系软件开发专业为例进行分析。在众多专业课程中,很多科目之间是相互联系相互影响的,例如《Java初级程序设计》是《Java高级程序设计》的前置课程,《J2EE企业级应用开发》则是《Java高级程序设计》的后续课程,《网页制作―HTML、CSS》的学习效果将会影响《网页制作―JavaScript》,而这些课程之间又是相互渗透相互联系的。有时候有的教师在上一门课时会抱怨这个班的基础不好,后续课程很难上,那么究竟是什么哪些前置课程对后续课程造成了影响呢?这里我们以软件开发专业核心课程《J2EE企业级应用开发》为例,分析研究影响这门课成绩的前置课程对其的影响。
  三、数据预处理
  07级软件开发专业一共9个班,前4个学期一共开设23门课程,在教学管理的数据库中保存着大量属性繁多,定义复杂,冗余多,不完整的数据。我们首先要从大量的数据中筛选出适合分析的数据。
  在课程的选择中,我们选取《计算机基础》、《计算机网络基础》、《计算机数学基础》、《Java程序设计基础》、《数据结构》、《数据库原理与SQL Server》、《Java高级程序设计》、《网页制作技术》以及《J2EE企业级应用开发》这几门有关联的课程进行分析。并且在分析之前把《计算机基础》、《计算机网络基础》、《计算机数学基础》这3门基础课取平均值合并成一个《计算机基础》。
  这是在软件技术专业9个班400多人中随机抽样选取91个学生的记录作为样本集。
  表1 采样成绩表
  经统计,91个学生记录中,各门课程及格和不及格人数如表5.2所示。
  表2 样本集中各门课及格不及格人数统计
  四、建立模型
  1. 决策树方法介绍
  决策树是一个类似流程图的树型结构,其中树的每个内部结点代表对一个属性(取值)的测试,其分支就代表了测试的每个结果;而树的每个叶结点就代表一个类别,可以根据决策树的结构对数据集中的属性值进行测试,从决策树的根结点到叶结点的一条路径就形成了对相应对象的类别预测。
  2. ID3算法的基本思想及原理
  ID3算法是R.Quinlan于1986年提出的,其前身是CLS。CLS的工作过程为:首先找出最有判别力的因素,把数据分成多个子集,每个子集又选择最有判别力的因素进行划分,一直进行到所有子集仅包含同一类型的数据为止,最后得到一棵决策树,可以用它来对新的样例进行分类。
  3. 构建决策树
  成绩结果分为正例和反例两类:及格(P)和不及格(N)。
  下面用ID3算法,建立决策树,对课程成绩分类。
  具体计算过程如下:
  首先计算J2EE课程所含有的信息量。J2EE及格人数P=81,不及格人数N=10,则可得到:
  0.4493
  
  然后计算当J2EE及格和不及格时,其他课程所包含的总信息量。经统计,其他6门课程和J2EE有如表3所示的统计数据:
  计算机基础:
  0.4421
  
  从而得到计算机基础的信息增益度为:
  Gain(计算机基础)=0.4493-0.4421=0.0072
  同样的方式,得到其他课程的信息增益度,结果如表4所示:
  表4 各门课程的信息增益度
  
  可以看出所有课程当中JAVA高级程序设计是最能区别训练集中决定J2EE成绩与否的课程。根据各个课程的信息增益度,应该选择JAVA高级程序设计作为所建决策树的根结点。由于JAVA高级的属性值只有两个:1(及格)和0(不及格),所以在JAVA高级下可以建立两个分支。此时,将训练实例集分为二个子集,生成包含二个叶结点的决策树。如图1所示。
  图1 根节点分类决策树
  
  经统计,JAVA高级程序设计及格且J2EE也及格的人数为73,其准确率为73/79=92.4%。因此对JAVA高级程序设计及格这个分支(结点一)停止分割。经统计,JAVA高级程序设计不及格的12人中有5人J2EE及格,7人J2EE不及格,所以对高级程序设计不及格这个分支(结点二)进行再次分割。
  对图1中的叶结点二进行分类。经过计算,此刻正例为4,反例为8,所以此时的熵值为:
  0.9799
  采用上面同样的方法计算各门课程的信息熵,得到
  计算机基础:
  0.9799
  得到Gain(计算机基础)= 0.9799-0.9799=0.0000
  同理,得到:
  Gain(JAVA基础)= 0.9799-0.9371=0.0482
  Gain(数据结构)= 0.9799-0.8669=0.1130
  Gain(数据库)= 0.9799-0.9799=0.0000
  Gain(网页设计)= 0.9799-0.9371=0.0482
  选择数据结构为分裂点,将结点二分为两个子集。JAVA高级不及格且数据结构及格的人数为1人,该结点停止分割,JAVA高级不及格且数据结构不及格的11人中有4人J2EE及格,7人不及格,因此对该节点需要再次分割。
  采用上述同样的方式划分,最后得到如图2所示的最终决策树。
  
  图2最终决策树
  五、结果分析
  分析图2所示的决策树,我们可以得到:对于软件专业后期的核心课程《J2EE企业级应用开发》来说,《Java高级程序设计》的学习程度直接影响其学习效果,《数据结构》和《JAVA初级程序设计》也会对《J2EE企业级应用开发》的成绩带来影响,如果学生《JAVA高级程序设计》学习一般但是《数据结构》和《JAVA初级程序设计》基础较好的话,依然能够在学习《J2EE企业级应用开发》时取得好的成绩。这比较符合专业课程学习过程的实际情况。决策树得出的结果反映了实际情况,这也充分说明了数据挖掘是一个强有力的辅助决策工具。
  六、结束语
  回顾一下这个案例,验证数据挖掘技术解决这个问题的效果。在分析过程中,我们利用相关的数据,通过横向比较《计算机基础》、《Java程序设计基础》、《数据结构》、《数据库原理与SQL Server》、《Java高级程序设计》、《网页制作技术》以及《J2EE企业级应用开发》等课程成绩,经过数据收集、数据选择、数据清理、数据归纳、数据转换等过程,运用决策树中的ID3算法课程之间知识结构相互支撑的模型,发现专业核心课程之间的内在联系。辅助教学管理人员根据该模型对现有教学计划做出调整,对师资资源合理利用,将优质师资用在主干课程上。
  
  参考文献:
  1.李小映,数据挖掘在高职院校学校综合信息中的应用,计算技术与自动化,2006.12
  2.陈松、卢继萍,教学管理系统中的数据挖掘技术的应用研究,中国教育技术装备,2007.12
  3.李雪真、陈燕国 ,基于数据挖掘的高校课程设置评价方法,科技资讯,2008.8
  作者简介:
  汪晓青,助教,武汉软件工程职业学院软件技术系

推荐访问:数据挖掘 成绩 课程 分析
上一篇:[职业病危害评价中气体扩散模型研究及应用] 气体扩散模型
下一篇:最后一页

Copyright @ 2013 - 2018 四八文档网-文档下载,办公室文档软件 All Rights Reserved

四八文档网-文档下载,办公室文档软件 版权所有 沪ICP备09019570号-4