摘要:简要介绍了数据挖掘技术,详细分析了关联规则挖掘算法以及在高校计算机类选修课信息分析中的具体应用及设计与实现过程,即包括数据的准备与选择、数据的预处理、挖掘算法的选择与实现、挖掘结果的描述四个步骤,获得了一些有用的规则信息,取得了良好的应用效果,这些“信息”可以辅助相关部门进行合理的教学资源分配并做出相应决策。 关键词:数据挖掘;关联规则;数据仓库;计算机选修课 一、引言 公共选修课是面向全校学生而开设的跨专业选修课程,目的在于满足学生兴趣爱好、拓宽学生知识面、提高综合素质、培养学生的创新能力。随着社会对计算机技术的重视,计算机类选修课作为一文理交叉的应用性极强的技术类课程,在培养学生信息处理方面具有重要作用,因此计算机类选修课开设的也比较多,由此而形成的有关计算机类选修课的信息也急剧增长,从众多的选修课信息中运用数据挖掘技术得出有益的信息,找出隐藏在数据背后的信息,挖掘学生对计算机类选修课的喜欢程度,提高计算机类选修课的教学质量,同时使选修课能真正发挥提高学生的实践能力的作用,增强学生就业机会发挥重要的意义。 二、数据挖掘技术 数据挖掘(DM:Data Mining,)也称为数据库中的知识发现KDD(Knowledge Discovery in Database),具体地说是在数据库中,对数据进行一定的处理,从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含的、事先未知的、但又是潜在有用的信息和知识的过程。其处理对象是大量的日常业务数据,目的是为了从这些数据中抽取一些有价值的知识或信息,提高信息利用率,原始数据是形成知识的源泉。 关联规则挖掘算法是一种重要的数据挖掘方法DM的数据分析过程可以分成数据的准备与选择、数据的预处理、挖掘算法的选择与实现、挖掘结果的描述四个步骤。数据挖掘主要是关联规则和聚类分析。关联规则的目的就是在数据仓库中查找存在于项目集合或对象集合之间的频繁模式、关联、相关性或因果结构。关联规则是发现一个事物与其他事物问的相互关联性或相互依赖性。它首先是Agrawal R等提出的。所谓关联规则,是指客体之间的相互关系。 三、数据挖掘在分析计算机类选修课信息中的应用 学生选课系统的大量数据是基本数据,要对其进行预处理,处理时考虑不同的粒度,以便能挖掘不同层次的信息,另外对元数据和存储方式进行深入分析,为挖掘做准备。 我们分析了原有数据库的结构,然后确定待建数据仓库的主题: (1)分析各门课的选课数目,确定课程的冷热程度。 (2)分析各门课的选课学分,确定学生选课时对学分多少的考虑。 (3)分析各门课选课率,了解学生对目前课程安排中的满意程度。 (4)分析选课学生的情况,了解选择当前课程的学生的情况。 1.数据预处理 学生选课系统的大量数据是基本数据,要对其进行预处理,数据预处理包括三个步骤:数据清理、数据集成和数据变换。 经过分析考虑实现的各种需求,从而建立相应的数据仓库。 (1)数据清理 对数据表中的原始数据进行数据清理,将学生选课信息中空缺的数据项进行关联查找对照,用最“近似”的数据予以填充。对于冗余重复数据和噪声数据进行删除。在系统中,所涉及的数据源有:学生的基本信息、教师的基本信息、学生的选课信息、课程信息、评教信息、学生成绩表。在这些信息表中,有很多字段是本次挖掘所不需要的,例如学生基本信息表中的籍贯信息和年龄信息,教师基本信息的工作单位信息等,所以应用删除冗余数据的方法把多余的字段删除。由于分析的是计算机类选修课信息,所以对其他类选修课信息也采用直接删除的方法清理。在选课系统的数据中,有的学生同时选择了两门一样的课程,这是不允许的,我们将它作为噪声数据进行处理。 数据消减:对于选课数据库中的编号、学年、学期、课序号、IP、操作时间、操作类型予以去除;将教师信息中年龄、性别除去;学生信息中保留学生学号、姓名、专业、年级、所属院系,年龄等其他信息去除;成绩信息中只保留课程号、学号、成绩即可。 只需要学生的学号、课程名称和考试成绩字段就可以挖掘出课程之间的相关性了。最后总共有11门专业课用于数据的挖掘。 (2)数据集成 设计一致的数据存储过程,考虑挖掘应用的需要,建立数据存储模型,将来自不同数据源(MS Excel 2003,MS Access2003,MS Sql sever 2000)的数据进行集成操作。经过以上一系列的数据清理和数据集成等处理过程可以从所选择的几个数据源表中抽取整理出如表l所示的数据表。 (3)数据的概化 按照数据挖掘需求,进行数据项的变换并进行数据的离散化操作。本次挖掘的目的以分析各门课的选课数目,确定计算机类选修课各类课程的冷热程度。选课数据中,对计算机类选修课进行分类:K1-计算机硬件;K2-计算机绘图和动画制作类(如PHOTOSHOP,FLASH);K3一程序设计类(如c#程序设计,c++程序设计);K4-网页及数据库设计类;K5-计算机网络技术类;同样,课程数据中成绩的百分制也通过Bin方法进行属性的离散化,得到1--(90-100);2--(80-89);3--(70-79);4--(60-69);5--(0-59)。 数据库中选取合适的字段,A表示课程;B表示年级;c表示院系;D表示性别;E表示教师职称(1-教授,O-副教授);F表示学分;G表示成绩。确定各个字段的取值范围如A:3一三年级,2一二年级,1--年级;C:01-地球科学,02-石油工程,03-石油化工,04-机械,05--电气自动化,06-土木,07-计算机,08-经管,09-电子科学,10-数学,11-人文,12-外语;D:O--男,1--女;E:同c;F:(O-1)、(1-2)、(2-3);G:K1-计算机硬件;K2-计算机绘图和动画制作类(如PHO—TOSHOP,FLASH);I(3-程序设计类(如c#程序设计,c++程序设计);K4-网页及数据库设计类;k5-计算机技术概论类;H:I-优秀、2-良好、3-中等、4-及格、5-不及格;离散化的部分数据如下表1。 2.使用Apriori算法进行关联规则分析挖掘 数据分析挖掘主要是从选取的的分析数据中提取相应的决策规则,供学校的管理层作出相应的决策。使用FP-tree算法进行相关的数据挖掘。具体步骤如下: (1)输入数据库,最小支持度minsup=10%,最小置信度mineonf=40%: (2)扫描数据库,求出1-候选集,即C1; (3)从候选集Ck中选择支持度大于最小支持度的项集,即Lk; (4)将Lk进行扩展成K+1维项集,即CK+1; (5)扫描数据库,提取出CK+1>中大于最小支持度的项集,即Lk+2; (6)Lk+i不为空时,将Lk+i;作为下一次关联的候选集,即ck+l,转步骤3; (7)计算最大强项集L中的各个关联关系的置信度,提取出置信度大于最小置信度,支持度大于最小支持度的规则,即有效关联规则。 关联挖掘过程和结果如表2所示。 本次挖掘的目的以分析各门课的选课数目,确定计算机类选修课各类课程的冷热程度。选课数据中,对计算机类选修课进行分类:K1-计算机硬件;K2-计算机绘图和动画制作类(如PHOTOSHOP,FLASH);k3-程序设计类(如c#程序设计,c++程序设计);K4-网页及数据库设计类;KS-计算机网络技术类;同样,课程数据中成绩的百分制也通过Bin方法进行属性的离散化,得到1--(90-100);2--(80-89);3--(70-79);4--(60-69);5--(0-59)。 数据库中选取合适的字段,A表示课程;B表示年级;c表示院系;D表示性别;E表示教师职称(1-教授,0-副教授);F表示学分;G表示成绩。确定各个字段的取值范围如A:3-三年级,2-二年级,1--年级;c:01-地球科学,02-石油工程,03-石油化工,04-机械,05--电气自动化,06-土木,07-计算机,08-经管,09-电子科学,10-数学,11-人文,12-外语;D:0--男,1--女;E:同c;F:(0-1)、(1-2)、(2-3);G:K1-计算机硬件;K2-计算机绘图和动画制作类(如PHO—TOSHOP,FLASH);K3-程序设计类(如c#程序设计,c++程序设计);K4-网页及数据库设计类;K5-计算机技术概论类;H:1-优秀、2-良好、3-中等、4-及格、5-不及格;离散化的部分数据如下表。 基于以上的结果可以得出: 规则Rl中,地球科学、石油工程、石油化工的学生喜欢选择计算机绘图和动画制作类计算机课程。 规则R2中,电子科学,计算机,电气,机械专业的男生喜欢选计算机硬件类课程 规则R3中,机械,石油工程,石油化工的学生喜欢选计算机计算机绘图和动画制作类 规则R4中,大三的学生喜欢网页及数据库设计类 规则R5中,数学专业的大三学生喜欢选程序设计类课程 规则R6中,大一的女生喜欢选计算机技术概论类的课程 四、结语 本文基于高校的计算机选课系统积累大量数据信息,从数据挖掘角度出发,对原始数据进行预处理,以数据仓库和数据挖掘技术相结合,应用关联规则的FP—tree算法对大量数据进行挖掘,得到了一些有用关联规则,这一研究也对实际的教学管理提出了很好的建议。 |
核心期刊网(www.hexinqk.com)秉承“诚以为基,信以为本”的宗旨,为广大学者老师提供投稿辅导、写作指导、核心期刊推荐等服务。 核心期刊网专业期刊发表机构,为学术研究工作者解决北大核心、CSSCI核心、统计源核心、EI核心等投稿辅导咨询与写作指导的问题。 投稿辅导咨询电话:18915033935 投稿辅导客服QQ: 投稿辅导投稿邮箱:1003158336@qq.com |