Apriori算法在三二分段成绩分析中的应用
2016-07-10苏伟斌
苏伟斌
本文介绍了Apriori算法的基本概念并以本人所在的中职学校计算机专业为例,介绍了使用Apriori算法来挖掘数据之间关联性的方法,找出规律,分析结果,为实际教学工作提供理论支持。
【关键词】Apriori算法 成绩分析 数据挖掘
随着校园信息化的发展,很多学校都已经建立了各种信息管理系统,在这些系统中往往存储着大量的数据。我们可以通过数据挖掘技术分析这些数据,找出规律为教学工作提供指导。常用的数据挖掘技术有关联规则Apriori算法。
1 Apriori算法概述
1.1 基本概念
Apriori算法是一种挖掘数据之间关联性和依赖性的算法。其基本概念有以下几个:
事务:一个事务包含一个唯一的事务标识符(trans_ID)以及一个组成事务的项的列表。由事务组成的集合称为事务数据库(D)。
项:组成事务的各项成员我们通常称为项或者项目,通常用I={i1,i2,i3,……in}来表示所有项的集合;由K个项目组成的集合又称为K-项集。
支持度:指事务A和事务B在D中同时出现的概率,记作,它的计算公式可以表达如下:sup(AB)=P(A∩B),通常只有支持度大于或等于一定的值才能使研究有意义,这个值称为最小支持度阈值min_sup。
置信度:指在D中,当出现事务X时,事务Y出现的概率,记作,表示如下:conf(AB)=P(A|B),通常只有置信度大于或等于一定的值才能使研究有意义,这个值称为最小置信度阈值min_conf。
关联规则:指的是形式如下的逻辑蕴涵式:AB 其中AI,BI,且A∩B≠ 。
频繁项集:指频繁地在数据集中出现的项的集合,如果K-项集的支持度大于等于min_sup,该集合称为频繁K项集,记作Lk。
1.2 频繁项集的生成
Apriori算法使用基于先验知识的逐层搜索的迭代方法来产生频项集。K-项集由(K-1)-项集产生,其过程如下:
定义min_sup的值,扫描数据库D,找出满足min_sup的项,产生频繁1项集L1,通过迭代,由L1产生L2直到不能产生更大的频繁项集。为了提高效率,当搜索Lk(K>1)时要进行连接和剪枝。
Apriori算法假设项集中的项是按字典排序的,所以要求LK-1中的每个子项有l[1] 根据频繁项集的所有子集都是频繁项集这一特性把非频繁的K项集删除,得到频繁集LK。 1.3 强关联规则的产生 找到最大频繁项集后就可以由它来产生关联规则,对于每个频繁集l的所有非空子集s,只要满足sup(l)/sup(s)>=min_conf,则输出规则,对于同时满足最小支持度和最小置信度的关联规则我们又称其为强关联规则,由于前述关联规则是由最大频繁项集推导出来的,所以它们自然满足最小支持度,是强关联规则。 2 Apriori算法在三二分段成绩分析中的应用 2.1 确定挖掘对象 本文通过研究挖掘本校11、12和13级计算机专业学生的《计算机基础》、《程序设计》、《网页制作》、《计算机英语》、《数据库技术》、《动画制作》、《图像处理》的学业成绩,找出影响学生三二分段考试成绩最重要的影响因素。本次研究所采用的成绩数据为751条,全部来源于本校教务系统。 2.2 数据处理 由于不是每个学生都参加了三二分段考试,所以在清理数据时首先要把没有参加的剔除,另外还有部分学生因各种原因导致某个科目缺考的也一并把他的记录删除。最后整理出来的数据表包含了学号、科目和“三二分段结果”9个字段,共705条记录。 2.3 数据转换 为了方便进行挖掘,要对学生的各科成绩进行规范化转换,把散落在一定范围的成绩转换为一个逻辑值。结合本次挖掘的目的,我们把《计算机基础》、《程序设计》、《网页制作》、《计算机英语》、《数据库技术》、《动画制作》和《图像处理》分别用A、B、C、D、E、F、和G来表示,对于单科成绩大于等于60分的,用数字1表示;否则用数字0表示。三二分段考试结果用isPasswed来表示,通过用1表示,否则用0表示。转换后的数据表样式如表1。 2.4 算法描述 2.5 结果分析 经过反复调整和测试,把最小支持度设定为25%,最小置信度设定为60%,产生强关联规则12条,排除与本实验目的相关性不大的规则,得出如表2的结果。 规则1说明,有60.1%的学生同时通过了《计算机基础》和三二分段考试,如果《计算机基础》通过了,则通过三二分段考试的机率是80.3%;规则2说明,有50.8%的学生同时通过了《网页制作》和三二分段考试,如果《网页制作》通过了,则通过三二分段考试的机率是75.1%;规则3说明,有40.2%的学生同时通过了《动画制作》和三二分段考试,如果《动画制作》通过了,则通过三二分段考试的机率是68.3%;规则4说明,有28.5%的学生同时通过了《程序设计》和三二分段考试,如果《程序设计》通过了,则通过三二分段考试的机率是62.8%; 通过以上分析可以看到,对三二分段考试成绩影响最大的科目是《计算机基础》、《网页制作》、《动画制作》和《程序设计》。因此,要提高三二分段考试的通过率我们可以加强这些科目的学习。 3 结束语 本文介绍了使用Apriori算法分析本人所在中职学校计算机专业学生的学业考试成绩数据,找到了影响三二分段考试成绩的最重要的科目,为提高三二分段考试成绩提供方向性的支持。 参考文献 [1]杨巍巍.Apriori算法在学生成绩分析中的应用[J].电脑知识与技术2013(13):59-61. [2]谭庆.关联规则Apriori算法在试卷成绩分析中的应用研究[J].信阳师范学院学报:自然科学版.2009(2):22. [3]赵辉.数据挖掘技术在学生成绩分析中的研究及应用[D].大连:大连海事大学,2007. 作者单位 东莞理工学校 广东省东莞市 523000