关联规则在学生成绩分析中的应用
- 格式:pdf
- 大小:174.52 KB
- 文档页数:4
关联规则挖掘在学生成绩分析中的应用研究翁锦琳【摘要】研究数据挖掘领域中的关联规则及其在学生成绩分析中的应用.设计并实现学生成绩关联规则分析系统,利用该系统对学生成绩进行分析,得出学生不同课程之间的联系及不同课程对总成绩的影响,从而为教学工作提供指导作用.%The topic of this paper is about the research in association rules in data mining and its application in the analysis of students' marks.In this paper we design and realize a students' score association rules analysis system,with which we analyze the students' marks and obtain the link between different courses and the effects of different courses on total score so as to provide guidance to the teaching.【期刊名称】《宁德师范学院学报(自然科学版)》【年(卷),期】2012(024)002【总页数】5页(P201-205)【关键词】数据挖掘;关联规则;支持度;置信度;Apriori算法【作者】翁锦琳【作者单位】福州大学数学与计算机学院,福建福州350108 古田县第一中学,福建古田355200【正文语种】中文【中图分类】TP311.13目前,数据挖掘已经广泛地应用于商业、金融业、电信业等各个行业,但在教育上的应用还不是特别广泛.本文将数据挖掘中的关联规则应用到学生成绩分析中,从而对教学及管理工作起到指导作用.学生成绩,作为评价学生学习成果的一项重要指标,能够客观、真实地反映学生的学习效果和教师的教学质量.但是目前对学生成绩的分析,主要还停留在基本统计分析上,比如平均分、标准差、名次、分段人数统计等,而且主要还停留在某一门课程成绩以及总分的评估上,而对各个学科成绩之间的关联、各个学科成绩与总分名次的关联以及同一门课程各模块内容之间的得分关联等却没有做详细的分析.而分析这些关联有助于发现许多隐藏在其中的规律,对学生以后的学习方法、教师的教学手段和学校的教学计划起到良好的指导作用.数据挖掘方法主要包括关联规则发现、分类、聚类分析、泛化和预测、决策树、神经网络、粗糙集等.关联规则挖掘是数据挖掘中的一种重要方法,它主要用于发现存在于大量数据之间的关联性,从而描述一个事物某些属性同时出现的规律和模式[1].在1993年,Agrawal等人[2]首次提出了关联规则的概念.其一般定义如下:J={I1,I2,…,Im}是一项目集,D是一事务数据库,其中每个事务T哿J.每个事务都有一个标识符,称之为TID.若A是项目集,当且仅当A哿T时,就说事务T 包含A.一条关联规则就是形如A=>B的蕴涵式,其中AJ,BJ且A∩B=.如果D中包含A∪B的比例是s,就称关联规则A=>B在D中的支持度为s,也可以表示为概率P(A∪B);如果D中包含A的情况下同时包含B的比例是c,则说关联规则A=>B的置信度为c,表示为条件概率P(B|A).即Support(A=>B)=P (A∪B),Confidence(A=>B)=P(B|A).支持度(support)和置信度(confidence)两个阈值是描述关联规则的两个重要概念.关联规则的支持度反映了该规则在数据库中的重要性和代表性,而它的置信度则表明了整个规则的正确度,即可信程度.在挖掘关联规则时,必须要指定一个最小支持度(min-support)和最小置信度(min-confidence),如果某条规则同时满足最小支持度和最小置信度,则称它为强关联规则.一般来说,只有强关联规则才可能是有意义的关联规则,也就是笔者要挖掘的规则.关联规则挖掘主要分为两步[1]:(1)找出所有的频繁项集;(2)产生强关联规则.1.2.1 找出所有的频繁项集求出数据库中所有的频繁项集及相应的支持度计数.项的集合称为项集,满足最小支持度的项集为频繁项集,支持度计数是指项集出现的频率,而支持度是指项集出现的概率,即支持度=支持度计数/总的事务数.关联规则挖掘最有名的算法是Agrawal和Strikant提出的经典的Apriori算法[3].另一个重要的算法是Han提出的FP-growth算法[4].后面还有许多学者提出了不同的改进算法.Apriori算法的基本思想是通过多次扫描数据库来产生频繁项集.FP-growth算法通过扫描两次数据库建立一棵称为FP-tree的频繁模式树,通过对FP-tree的挖掘来获得频繁项集.Apriori算法需多次扫描数据库并产生大量的候选项集,而FP-growth算法只需扫描两次数据库,但是当事务数据库较大时,将整棵FP-tree放入内存比较困难.下面简要介绍一下Apriori算法的基本思想:(1)先寻找所有的频繁1-项集的集合L1(2)由频繁(k-1)-项集的集合L(k-1)生成候选k-项集的集合C(k).它包括连接步和剪枝步.① 连接步:对于任意两个 L(k-1)的不同项集l1和l2,若满足条件(l1[1]=l2[1])∩(l1[2]=l2[2])∩…∩(l1[k-2]=l2[k-2])∩(l1[k-1]<2[k-1]),则进行连接操作,c=l1[1]l1[2]…l1[k-2]l1[k-1]l2[k-1].(假定l1、l2中的项已按字典序排好,条件l1[k-1]<2[k-1]仅仅是为了保证不产生重复)② 剪枝步:随着k的增大由连接步产生的C(k)可能会越来越大,为了提高算法的效率,可以压缩C(k),即剪枝.具体来说,可以对连接步产生的c作一个判断:如果c的某一(k-1)-子项集不在L(k-1)中,则它不可能是频繁项,不必加入C(k)中,否则才将c加入C(k)中.这里的依据是Apriori性质:“频繁项集的所有非空子集必定是频繁的”.(3)扫描事务数据库,计算出C(k)中的每个候选项集c的支持度计数c.count. (4)频繁k-项集的集合L(k)={c|c.count/事务数≥minsupport,c∈C (k)}.//C(k)中支持度大于等于最小支持度minisupport的项集加入L(k)中. (5)返回第(2)步,直到L(k-1)为空.(6)L(K)(K=1,2,3,…)即为所求的频繁项集的集合.Apriori有许多改进算法,如使用散列技术压缩要考察的候选k-项集Ck(k>1)、事务压缩(压缩未来迭代扫描的事务数)、抽样(对给定数据的子集挖掘)、动态项集计数(在扫描的不同点添加候选项集).1.2.2 产生强关联规则由频繁项集产生关联规则,这些关联规则必满足最小支持度,如果同时满足最小置信度,则为强关联规则,也就是所要挖掘的关联规则.该步骤比较简单,将一个频繁项集A划分成两个非空的子集B和A-B,所有满足最小置信度的B=>(A-B))即是所要生成的规则.算法如下:利用VisualC++开发工具编写一个简单的学生成绩关联规则分析系统,数据库采用ACESS.图1为该系统的数据流图,反映了该系统的功能及数据流向.以笔者所在中学高三理科学生今年省质检考试数据为样本作实验分析.该原始成绩见表1(共502条数据,这里只列出部分,为了保护隐私,将学号、姓名、班级等内容清除).在做成绩关联规则分析前,要先进行一些必要的参数设置.本例中,设置参数如图2所示.1999年Pyle提出在数据挖掘过程中增加数据预处理过程,同时强调了数据预处理重要性:数据预处理占数据挖掘时间的60%.数据预处理包含了数据清理、数据集成、数据选择、数据变换等过程.(1)数据清理.主要是清除一些不用的信息,比如缺考的学生数据将影响数据挖掘结果的准确性,要将这些记录清理掉.(2)数据集成.主要是将不同的数据源组合在一起(本例较简单,只有一个数据源).另外为了研究学生单科成绩对总分的贡献,必须加一列“总分”,并计算这一列的值.(3)数据选择.从数据库中提取与分析任务相关的数据.本例中与分析任务相关的数据为所有考生的所有课程成绩及总分成绩数据,而姓名、班级、学号、性别等字段信息与本次分析任务无关,无需选择.当然,如果你只想分析部分课程,就只要选择相应的课程就行了.(4)数据变换.数据变换的主要任务,是将数据规格化,转换为特定的格式,以便于算法的实现.本例中笔者将总分编号为0,语、数、英、理、化、生课程编号分别为1、2、3、4、5、6.还要将成绩离散化,按名次分为A、B、C三等(即好,中,差,因为每次考试难度不一样,各科的难度也不一样,各科的满分也不一样,如果用分数线划分等级则不太准确,所以可以按名次来划分等级),如1A表示语文成绩为A,1B表示数学成绩为B,0C表示总分为C.这样分析的项目将会有21个,即0A、0B、0C、1A、1B、1C、……、6A、6B、6C.预处理后的布尔型事务表如图3(只列出部分):例如图中编号为2的学生总分成绩为A,语文成绩为A,数学成绩为A,英语成绩为B,物理成绩为A,化学成绩为A,生物成绩为A.对于本例而言,由于是按名次来划分等级,则任一个科目A、B、C各约1/3,所以本例中最大的支持度也不会超过33%,在设置最小支持度时不宜设置过大.关联规则挖掘包含找出频繁项集、产生关联规则两步,前面已简要介绍了关联规则挖掘相关算法与步骤,这里不再累述.在产生频繁项集时,本系统使用Apriori的一种改进算法,使用了散列技术来压缩要考察的候选项目集,从而提高了算法效率.本次试验最小支持度设为20%,最小置信度设为60%.程序运行结果如图4.最终产生了39条强关联规则.对产生的关联规则作分析,从而得出其中的一些规律.(1)5A=>0A,2A=>0A,4A=>0A,3A=>0A、6A=>0A这几条规则的置信度分别为 0.760、0.758、0.725、0.696、0.633,可见数、理、化三科成绩为 A的同学总分也为A的概率在70%以上,英语也在70%左右,生物63%,在60%最小置信度下语文没有形成强关联规则.可见数、理、化、英这四科对总分的贡献最大,其实从教学实践中也看到了,因为这几个科目拉分相对都比较大,特别是数、理、化三科,因而造成了它们对总分排名的影响很大.(2)0A=>5A、0A=>2A、0A=>4A、0A=>3A、0A=>6A 这几条规则的置信度分别为 0.778、0.731、0.725、0.701、0.659,可见总分成绩好的学生大部分是各科都非常好.(3)而2C=>0C、3C=>0C、4C=>0C、5C=>0C、6C=>0C这几条规则的置信度也都很高.这说明如果有某科目考得特别低(等级为C),则整体成绩为低(等级为C)的概率很高,所以教学中要特别注意学生的弱势科目,一旦学生有弱势科目,则在平常的学习过程中就必须多花时间弥补.另外(2C,4C)=>0C,(0C,2C)=>4C,(0C,4C)=>2C 的置信度分别为 0.910、0.828、0.783,可见数学、物理成绩低与总分低的关系是特别大的.这点与实际也是相符的,因为数学与物理相对较难,而且每道题的分值也比较大,如果学不好,就容易造成较低的分数,从而影响总分名次.所以如果数学、物理成绩较低的同学一定要特别注意弥补这两科的不足.(4)前面三点所列的规则中,语文科目(编号为1)并没有形成强关联规则,可见语文科目在本次考试中对总分的影响稍弱一些,这个也是与语文科目本身的特点有关.(5)2A=>5A、2A=>4A这两条规则的置信度也都在0.65左右,可见学好数学对物理、化学是很有帮助的.所以学校要特别重视数学课程的教学.(6)另外,在学生成绩关联规则分析系统中,置信度稍低的规则不一定完全没有用.在本例中,如果将置信度适当降低(比如降低到0.4),如果有发现类似(2A,4A)=>3C的情况,就能够说明偏科现象较严重,教学上在这方面就要引起注重. 另外,在实际应用中,可以将学生平时的表现行为等特征与成绩作关联分析,或者分析同一个科目各个模块的关联,从而产生更多有用的规则.当然,本例只是笔者所在学校其中一次考试的分析结果,也许某些规则不具有普遍意义,因此可以通过对多个学校的多次考试的分析来验证某些规则的正确性.本例是关联规则挖掘在基础教育中的应用.而关联规则在高校学生成绩分析中的应用价值也是非常大的,比如高校中同专业的不同课程往往有很大的相关性,那么通过分析关联规则,可以合理地安排这些课程的顺序,对学校制定教学计划提供依据.又如可以分析基础课与专业课之间的相关性,这样就能知道哪些基础课起的作用较大,因而在教学安排上应该对这些基础课程多安排学时.另外在分析时,要特别注意最小支持度与最小置信度的选择,以免产生无用的信息或错失有用的信息.【相关文献】[1](加)韩家炜,堪博.数据挖掘:概念与技术 [M].范明,孟小峰,译.北京:机械工业出版社,2007.[2]R.Agrawal,T.Imielinski,A.N.Swami.Mining Association Rules between Sets of Items in Large Databases [J].In Proc.Of the ACM SIGMOD Intl.Conf.on Management of Data (SIGMOD'93),1993:207-216[3]R.Agrawal,R.Strikant.Fast Algorithms for Mining Association Rules[J].In Proc.Of the20th Intl.Conf.on Very Large Data Bases(VLDB'94),1994:487-499[4]J.Han,J.Pei,Y.Yin.Mining Frequent Patterns without Candidate Generation[J].InProc.of the ACM SIGMOD Int.Conf.on Management of Data(SIGMOD'00),2000:1-12. [5]文拯.关联规则算法的研究 [D].武汉:中南大学,2009.[6]Pyle D.Data Preparation for Data Mining[M].San Francisco,CA:Morgan Kaufmann Publishers Inc,1999:540.。
关联规则算法思政案例关联规则算法是一种常用的数据挖掘方法,它用于发现数据集中项与项之间的相关关系。
在思政教育案例中,我们可以利用关联规则算法来分析学生的学习行为、思想倾向等方面的关系,从而提供科学的教育指导和决策支持。
下面是一些关联规则算法在思政案例中的应用示例:1. 学习成绩与课外活动参与度的关系:通过分析学生的学习成绩与其参与课外活动的关系,可以发现是否存在学生在参与课外活动过多或过少时学习成绩下降的趋势,进而为学校和家长提供指导。
2. 思想倾向与社交媒体使用的关系:通过分析学生的思想倾向与其在社交媒体上的言论和行为的关系,可以发现是否存在思想倾向与社交媒体使用之间的相关性,进而为学校和教师提供针对性的思想教育和引导。
3. 思政教育课程内容与学生兴趣的关系:通过分析学生对思政教育课程内容的兴趣与其学习成绩的关系,可以发现是否存在学生对某些思政教育课程内容的偏好,进而为学校和教师提供优化课程设置的建议。
4. 思政教育活动参与度与团队合作能力的关系:通过分析学生在思政教育活动中的参与度与其在团队合作中的表现的关系,可以发现是否存在活动参与度与团队合作能力之间的关联,进而为学校和教师提供加强团队合作培养的方法和策略。
5. 思政教育培训与学生综合素质的关系:通过分析学生参加思政教育培训的情况与其综合素质的提升情况的关系,可以发现是否存在参加思政教育培训对学生综合素质提升的影响,进而为学校和教师提供培训内容和方式的优化建议。
6. 思政教育资源利用与学生学习动力的关系:通过分析学生对思政教育资源的利用程度与其学习动力的关系,可以发现是否存在资源利用与学习动力之间的相关性,进而为学校和教师提供合理配置资源的建议。
7. 思政教育中的道德修养与学生品德形成的关系:通过分析学生在思政教育中的道德修养与其品德形成的关系,可以发现是否存在道德修养与品德形成之间的关联,进而为学校和教师提供更好的思政教育方法和策略。
8. 思政教育对学生创新能力的影响:通过分析学生接受思政教育后的创新能力的提升情况,可以发现是否存在思政教育对学生创新能力的积极影响,进而为学校和教师提供创新教育的指导和支持。