欢迎来到天天文库
浏览记录
ID:21529211
大小:24.50 KB
页数:5页
时间:2018-10-22
《基于改进apriori算法的大学成绩关联规则》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于改进Apriori算法的大学成绩关联规则 摘要 大学教学信息系统数据中隐藏着大量有潜在价值的信息。利用数据挖掘技术对大学教务系统的海量数据进行分析,发掘出对教学有利的规律和因素,对大学的教学改革和教学研究有着重要的意义。本文提出一种改进的Apriori关联规则分析算法来提高大学成绩分析的效率和规则的可信性;并通过数据挖掘工具IBMSPSSModeler建立了大学成绩关联规则分析模型;最后,以某大学信管专业2008-2012级全部学生的课程成绩数据进行实证研究。 【关键词】数据挖掘大学成绩关联规则Apriori
2、算法 随着高校信息化建设的推进,高校的教学信息系统数据存储量日益增大。用户通常只是在信息系统上进行录入、汇总、查询等一些简单的业务处理,大多没有意识到海量数据背后的价值,也没有充分发掘海量教务数据中蕴含的大量潜在的有用规律为教学决策提供依据。本文运用数据挖掘技术,对大学成绩数据进行挖掘,分析大学成绩之间的关联规则,对教学决策和教学安排提供有效的理论支持。 1基于改进Apriori算法的大学成绩分析模型 1.1Apriori算法在大学成绩分析中的局限性 Apriori算法是一种经典的布尔型关联规则算法。该算法通过
3、多次逐层搜索数据库中数据集,利用频繁项集的先验知识对候选集进行剪枝,并对产生频繁项集进行多次迭代,直到数据集中没有频繁集的方法。Apriori算法比?^复杂且有一定局限性,主要体现在以下几个方面: (1)降低支持度阈值通常将会导致更多的项集是频繁的,这给算法的计算复杂度带来很不利影响。因为必须产生更多候选项集并对其计数,同时频繁项集最大长度增加,算法需要扫描次数也将增多。 (2)Apriori算法计算项集的支持度需要反复扫描数据集,所以随着事务数增加,它的运行时间增加。 (3)随着项数的增加,需要更多的空间来存储
4、项的支持度计数。如果频繁集的数目更多,产生候选集更多,增加计算量和I/O开销。 (4)候选剪枝方法增加计算量。 (5)在现实中数据挖掘中,置信度并不一定能体现规则的可信度,即置信度的高低不代表规则的可信赖的高低,因为它忽略了规则后件中项集的支持度。 1.2改进的Apriori算法 基于Apriori算法的局限性,结合大学成绩分析的要求本文做了两个改进: 1.2.1新的剪枝方法 采用一种新的方法改进候选产生与剪枝,减少计算量和重复扫描数据库的次数。在apriori_gen函数中候选项集的产生过程中合并一对频繁
5、(k-1)-项集(仅当它们的前k-2个项相同)。在候选项集的剪枝时运用频繁集的先验原理,确保它的子集都是频繁集,否则立即剪枝。 1.2.2以提升率代替置信度 基于上述置信度的局限性,本文中运用用提升率来代替置信度以确保规则的可信度。提升率是规则的置信度和规则后件中项集的支持度之间的比率,计算公式如下: 当Lift(X→Y)>1时,表示X对Y有诱导作用,即X与Y正相关,提升率越高正相关程度就越大; 当Lift(X→Y)=1时,表示X与Y相互独立,没有相关性; 当Lift(X→Y)<1时,表示X对Y有抑制作用,即
6、X与Y负相关,提升率越高负相关程度就越大。 1.3基于改进Apriori算法的大学成绩分析模型的构建 采用改进后的Apriori算法,在Modeler中建立大学成绩关联规则分析模型。模型的建立流程如图1所示。 “数据”节点:基于数据导出的格式,本文选用.xls。 “类型”节点:读取数据的类型,设置数据的输入和输出方向。 “填充”节点:对于数据的缺失值,根据数据的格式,进行数据填充,可以是0或NULL。 “过滤”节点:过滤与分析对象不一致的字段。 “Apriori”节点:是分析算法模型,可以直接设置最小支持
7、度和最小置信度。 2实证研究 2.1数据的来源 本文大学生成绩数据来源于某大学教务信息系统。通过SQL连接查询,得到“学期”、“班级名称”、“学号”、“课程名称”、“课程性质”、“课程平台名称”、“考试方式”、“总评成绩”10个字段的2008-2012级信管专业所有学生的15684条记录,导出到Excel。 2.2数据预处理 2.2.1数据清洗 首先,运用Excel自动筛选,将“课程性质”为“素质课”的记录全部删除;然后,对全部记录进行排序:主要关键字“学号”,第二关键字“课程名称”,第三关键字“总评成绩”
8、;再后,根据“学期”,“总评成绩”保留首考成绩。 2.2.2数据离散化 初步清洗过的数据是考试课100制数值型、CET考试710分制数值型、考查课{“优秀”,“良好”,“中等”,“及格”,“不及格”}离散型。运用下述规则将数据进行离散化: (1)课程性质:“必修课”→1、“选修课”→2; (2)考试方式:“考试”→1、“考
此文档下载收益归作者所有