i.否则,新添一个节点标志Generate-tree。
②决策树剪枝过程
当决策树建立时,不可避免地会遇到数据的噪声和数据中的异常值,这些数据属于异常数据。这些异常数据会妨碍决策分析结果。因此,决策树创建好以后要对决策树进行优化,优化就是通过决策树剪枝来完成,优化的目的在于使生成的规则更加准确,同时还可以提高分类和建树的速度和效率。
通常剪枝有两种方法:
事前剪枝:在生成决策树过程中根据给定某种判断标准看是否要生成分枝,若不满足给定的判断标准,则不生成分枝而生成叶节点。
事后剪枝:是在构建好一棵完整的决策树后,剪去多余的分枝。
第二章 决策树模型的构建过程
2.1 挖掘目标的确定
在具体的应用中,以本人2019-2020年度第一学期所讲授的“计算机原理”课程为例,
目标是2015级的23名学生。依据学生的具体情况分析影响学生考试成绩的因子。希望利用分析结果为未来的教育工作作指导,以此提升学校的教育质量。
2.2 数据采集
依据判断出来的数据分析目标分离出所需的特征数据,接着选取最恰当的数据采集方式,最后把采集到的数据信息存储至数据库里面。
数据采集阶段需要花费较多精力、时间在这上面,假使要分析总结影响学生考试成绩的因子,则需要在教师教学过程中收集一些必要的数据。有些数据能够直接获得,而另一些则需要调查学生才可以获取。
(1)学生的基本信息收集
数据包括学生的学生ID,姓名,性别,专业和班级,可以通过学校的教育管理系统获得以上信息。把这些数据信息保存至学生成绩信息里面,属性有:学生学号、姓名等。具体信息如下所示:
表1 学生成绩信息表
学生编号 姓名 性别 专业 班级
001 谢伟 女 计算机科学与技术 1班
002 李伟 男 计算机科学与技术 1班
003 徐小兮 女 计算机科学与技术 1班
004 张明月 女 计算机科学与技术 1班
005 谢米成 男 计算机科学与技术 1班
005 米启刚 男 计算机科学与技术 1班
006 席妮天 女 计算机科学与技术 1班
… … … … …
(2)向学生调查的数据信息
在实行数据挖掘的时候,除去一些学生的基本信息之外,还需要一些特殊的数据,这些数据体现了每个学生个体学习这门课程的兴趣、计算机的基础程度以及上课出勤率和上机情况。通过创建信息调查表并对在课堂上的学生进行调查,以此来获取信息。需要进行调查信息包含是不是对程序设计有兴趣,班级出勤,计算机课程出勤率以及对计算机的基本掌握程度。
在上课的时候向学生分发并填写调查表,下课后再回收表。由于是在上课的时候填写的调查表,因此不会存在一个人填写很多份的情况。总共有23名学生,除去那些缺勤没有参加调查的学生,一共回收了22份调查问卷。将收集的问卷信息保存在“调查信息统计表”里面。“调查信息统计表”包括了学生ID,对程序设计兴趣程度,出勤率,上机状况以及对计算机的掌握程度。“对程序设计的兴趣程度”属性包含三个属性值,分别是感兴趣、一般以及没有任何兴趣。“出勤”有三个属性值:不缺席,偶尔缺席和从不上课。“上机状况”属性包含三个属性值:常常上机、偶尔上机以及从不上机。“计算机掌握程度”属性包含三个属性值:掌握较好、掌握好以及一般水平。
(3)学生考试成绩信息
学生最终的考试成绩保存在教务系统中,学生分数表的属性包含了学生编号、姓名以及成绩等等。成绩的区间是0至100,区间较大,不适合数据挖掘执行,故将成绩转换成成绩等级,0至59分为“差”;“中”为60至79分;“优秀”为80至100分。下表为学生成绩表。
表2 学生成绩信息表
学号 姓名 成绩
001 谢伟 75
002 李伟 85
003 徐小兮 81
004 张明月 79
005 谢米成 71
005 米启刚 76
006 席妮天 70
… … …
2.3 数据预处理
(1)数据的预处理。
数据预处理在数据挖掘中起着重要的作用。课题中研究的目标模型是针对学生及学习课程的“计算机原理”分数,这些分数以Excel文件的形式存储。
(2)数据的归约。
数据采集结束后需对数据进行集成,将连续数据转换为离散数据,以便于C4.5算法对该类数据进行分析处理。在课题对学生数据进行处理过程中,需要学生成绩集成到数据文件中去,该文件包含诸如生ID、姓名、期中成绩、期末成绩、平均成绩、总成绩之类的属性。首先,我们研究的重点是使用决策树期中及期末成绩中及格率的影响因素。所以,排除了《计算机原理》的测试结果以及课程教师的专业和属性。另外,由于姓名和学生编号这两个属性是相关属性,因此姓名和学生编号之间的关系是对应的并且可以互换,但是姓名可以重复,而学生编号是唯一的,因此只需要保留学生编号,而不包含学生姓名。
在决策树的构造中使用离散值,可简化计算量并保持其结果的简洁性,所以,对成绩库中的数据需要离散化处理。期末考试的总分为100分,而学生通过考试的及格线为60分。 因此,总成绩离散化处理后包含“yes”部分和“no”部分。换句话说,将超过60分的学生分数离散化为“yes”,小于60的分数的学生将离散化为“no”。
平时成绩在总成绩中的占比是60%,总分是60分,依据平时成绩54分以上,60及60分以下;47分以上,53及53分以下;41分以上,47分以下;35分以上,41分以下;35及35分以下这五个等级。把平时成绩分成“Super”“High”,“Mid”,“Low”以及“No”这五个等级。此外,平时成绩由Word,Excel,PowerPoint和学生平时表现情况组成。这四个部分的总分分别是20、20、10和10。把这些分数以及满分的90%,80%,70%以及60%分成“Super”“High”,“Mid”,“Low”以及“No”五个级别。
同时,期末成绩在学生总成绩中的占比是40%,总分是40分,根据期末成绩分数在35分以上,40分以下;31分以上,35分以下;27分以上,31分以下;31分以上,27分及27分以下;23分及23分以下,从高至低依次分成“Super”“High”,“Mid”,“Low”以及“No”这五个级别。
2.4 分类数据挖掘
(1)算法的选择
ID3算法可通过信息增益获取最优属性,该选择标准倾向于选择高价值的属性,高价值的属性并不全是重要的属性。ID3算法对离散属性的处理效果较好,但如果数据库中存在缺值的情况,将不具备很好的处理效果。C4.5算法的分类评价函数采用增益率完成评价过程,并能在样本数量大的情况下筛选处最优的属性,能有效地解决了数值离散问题,对于数据库中存在的缺值可通过该算法进行处理,所以系统在设计过程中使用C4.5算法构建决策树模型
(1)对学生课程表现情况进行调查统计,并将获取的数据导入决策树分析模型中去,最后使用C4.5构建决策树模型。
(2)由测试属性计算信息增益率;
(3)以增益率为根节点选取的判定依据,增益率大的被筛选出来,并由该值对数据集划分,最终留下一个值时,划分中断,否则进行下一步过程。
(4)对已划分好的的子数据集重复执行(1)(2)步骤;
下图显示了构建决策树模型的过程。
图1 生成决策树模型的流程
第三章 决策树模型评估
决策树算法在学生成绩分析中的应用研究(二)由免费论文网(www.jaoyuw.com)会员上传。