数据挖掘在学生成绩分析中的应用.docx

上传人:b****8 文档编号:10096510 上传时间:2023-05-23 格式:DOCX 页数:24 大小:124.18KB
下载 相关 举报
数据挖掘在学生成绩分析中的应用.docx_第1页
第1页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第2页
第2页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第3页
第3页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第4页
第4页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第5页
第5页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第6页
第6页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第7页
第7页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第8页
第8页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第9页
第9页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第10页
第10页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第11页
第11页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第12页
第12页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第13页
第13页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第14页
第14页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第15页
第15页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第16页
第16页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第17页
第17页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第18页
第18页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第19页
第19页 / 共24页
数据挖掘在学生成绩分析中的应用.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据挖掘在学生成绩分析中的应用.docx

《数据挖掘在学生成绩分析中的应用.docx》由会员分享,可在线阅读,更多相关《数据挖掘在学生成绩分析中的应用.docx(24页珍藏版)》请在冰点文库上搜索。

数据挖掘在学生成绩分析中的应用.docx

数据挖掘在学生成绩分析中的应用

数据挖掘在学生成绩分析中的应用

摘要:

随着社会教育事业的发展,努力提高高校学生的教学质量是每所高校的目标,学生成绩是评估高校教学质量的重要依据。

当今高校规模不断扩大,学生数量不断增多,随着社会的发展,学生成绩受越来越多的因素影响,学生成绩分析更加重要。

从大量数据中发现其潜在规律来研究学生成绩,预测成绩的发展趋势,从而给教师的教学环节提出有针对性的建议,对学生的管理教学工作有的放矢,提高授课和学习效果显得非常重要。

因此,本文引进了近年来兴起的数据挖掘技术用于高校学生成绩中分析,找出影响学生成绩的根本原因及教学方面的相关问题,从而给学校提出宝贵的意见,提高教学质量。

本文所做的工作如下:

首先,介绍了数据挖掘基本理论和数据挖掘在高校教育领域的应用现状;其次,建立了本院校计算机系08级学生成绩数据库,并使用关联规则中的Apriori算法对学生成绩数据进行挖掘,得出学生各门学科成绩之间的关系;最后,对关联规则的出的结果进行分析,得到影响学生成绩的主要因素,并提出可行的方案等。

这些分析结果将对高校今后改进教学工作和对学生的教学管理有着重要的参考价值。

关键词:

学生成绩;数据挖掘;关联规则;Apriori算法

1绪论

1.1课题研究背景及选题意义

数据挖掘(DataMining),又称为数据库中的知识发现(众owledgeDiseove汀inDatabases,简称KDD),能够从数据库中抽取有效的、隐含的、潜在有用的知识。

数据挖掘是信息技术研究的热点问题之一。

由于在数据分析方面的优越性,数据挖掘技术已成功地应用到大型商业、金融业、保险业等许多领域,但在教育教学层面的应用还比较少,处于发展的初级阶段。

随着教育的发展,学生的学生成绩在高校学习生活中占据越来越重要的地位。

学习成绩不仅是学校评估教学质量的重要依据,也是学生在大学学习中对所学知识的掌握程度的一个重要标志。

由于影响学生成绩的因素很多,那么如何能从大量的学生成绩分数中得到该学生的学习成绩至关重要。

对学生成绩的分析,从大量数据中存在的关系,规则中对学生成绩进行研究,预测其发展趋势,从而对教师的教学提出宝贵的意见,对学生的教学是十分有利的。

传统的评价一个学生的学习成绩是根据该学生的平均值、方差、信度等数学方法来评价的,这些方法都行,但不够全面,有一定的局限性。

在如今信息时代,传统的方法对数据内在价值的分析要求已无法满足,所以本课题将采用数据挖掘技术分析学生成绩。

对学校现有的学生数据库进行有效的数据挖掘,利用其中的关系和规则做出相应的决策,给学校及教师一个满意的结果,从而对学校更好的教育管理学生提供了可高的支撑。

因此数据挖掘在学生成绩中的分析应用具有现实的意义

1.2数据挖掘的产生背景及研究现状

随着数据库技术和网络技术的快速发展,办公信息化逐步增强。

随之而来的信息量也呈爆炸式增长,人们生活与工作中生成的数据越来越多,这些海量的数据给人们带来了便利,同时也给人们对数据的利用带来了许多新问题。

主要有如下四点问题:

第一是信息爆炸式增长,难以消化;第二是信息真假难以辨识;第三是信息安全难以保证;第四是信息形式不一致难以统一处理。

数据库系统在数据存储和数据管理方面得到很大的改善,能够高效地实现数据的追加、查询以及统计等功能,但是难以发现海量的数据中隐藏的知识,更何况数据库系统本身也无法了解数据的背景知识,不能预测数据未来的发展趋势,造成了“数据爆炸、知识贫乏”的现象。

如何刁‘能获取海量数据背后隐藏的知识、提高数据的利用率呢?

面对这一挑战,数据挖掘技术运用而生,并迅速的在很多领域的到成功的应用。

数据库中的知识发现一词首次在1989年举行的第十一届国际联合人工智能学术会议上提出,并用KDD描述了整个数据挖掘的过程,包括制定业务目标、数据获取、数据预处理、数据挖掘和结果的分析与评价。

科研人员对数据挖掘技术的研究己经有很多年的历史,研究方向主要是数据挖掘算法的发现和改进、数据挖掘技术在相关领域的应用两个方面。

目前最有影响的算法有:

概念树提升算法,挖掘关联规则的Apriori算法,用于分类的决策树方法、贝叶斯方法、神经网络和遗传算法等,用于聚类的聚类分析方法。

数据挖掘技术己成功地应用到大型商业、金融业、保险业等许多领域,而且也开发了很多功能强大的数据挖掘系统。

目前世界上比较有影响的典型数据挖掘系统有:

EnterpriseMiner、hitelligentMiner、setMiner、Clementine、WarehouseStudio、Sees等。

1.3数据挖掘技术在国内教育领域的研究现状

近年来,随着我国高等教育的快速发展,高校办学规模不断扩大,教育管理信息化水平有了长足的进步,形成大量的电子数据。

众多高等学校面临一个共同的问题:

数据丰富,知识贫乏。

传统的教学管理手段无法处理海量的数据,已经逐渐不能适应高等教育的快速发展,这给高等学校教学管理工作带来了严峻的考验。

数据挖掘技术的应用领域不断扩展,已经成功地应用到大型商业、金融业、保险业等许多领域。

近几年,不少高等学校研究人员和教学管理人员已经开始将数据挖掘技术应用于高校的教学管理中。

当前,数据挖掘在教育领域中的应用主要体现以下几个方面:

(1)教学管理系统方面。

将数据挖掘技术应用到教学管理系统中,建立教学管理信息挖掘系统,可以对教学管理系统中的教学数据进行分析,得到传统分析方法无法得到的有价值的信息。

学校可以利用这些信息掌握教学动态,及时进行调整,有利于提高教学质量。

(2)高校教学质量评估方面。

通过对具体院校学生的评教数据和部分教师信息进行数据挖掘,采用决策树、关联规则、聚类分析等方法挖掘影响教学质量的关键因素,并对挖掘结果进行了分析,验证其有效性,及时反馈到教学中,为教学提供决策支持。

(3)网络教学方面。

采用数据挖掘技术对网络教学过程中积累的历史数据进行挖掘和分析,产生有利于提高网络教学质量和服务水平的知识,从而促进网络教学工作的顺利开展。

1.4论文研究的内容及结构安排

高等院校多年来的信息化教学管理工作积累了大量的教学数据,其中包括课程名、学生成绩、系别等,拥有庞大的“数据中心”,但都未对数据进很好的分析和利用。

以前都是利用一些求平均、最大、最小、方差等简单的数学方法进行处理,没能很好的发觉数据潜在的、有价值的规律。

鉴于社会对高等教育大众化的发展需求和目前高等院校对教学数据管理的现状,利用这些数据性的分析,获得影响高等教育发展的因素,为提高学校各方面的成效以及学生培养的质量显得十分重要。

本文从高效工作的实际出发,利用最经典且最具影响的Apriori算法进行挖掘,针对本院校08级计算机系学生成绩不及格科目的关联分析,找出该系学生对各门功课的学习热情,并给学校教学提供宝贵的建议。

2数据挖掘的基本知识

2.1数据挖掘的概念

数据挖掘是一个涉及多学科交叉的研究领域,综合了人工智能、机器学习、数理统计等学科,它把对数据的应用从较低层次的简单的查询提升到从数据中挖掘知识。

自从数据挖掘诞生以来,许多专家从不同的角度给出了有关数据挖掘的定义。

简单的说,数据挖掘就是从数据中获取知识。

(1)从技术角度定义

数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的数据中,抽取隐含在其中的、人们事先不知道的、但又潜在有用的知识的过程。

该定义包含了三个层次的含义:

数据必须是真实的、大量的、含噪声的;

发现的是用户感兴趣、可理解的知识;

发现的知识只面向特定的领域。

(2)从应用角度定义

数据挖掘是一种新的信息处理技术,主要是对商业等领域的数据库中的大量业务数据进行抽取、转换、分析和模型化的处理,从中抽取对决策有用的知识。

可以描述为:

按用户需求制定业务目标,对大量的数据进行探索和分析,揭示隐藏的、有用的知识,并将一步将其转化为模型化的、先进有效的方法。

2.2数据挖掘的过程

2.2.1数据预处理

数据预处理是可以用于提高数据挖掘的数据的质量,是数据挖掘过程中必做的重要坏节。

由于现实世界数据库中的数据面临工作人员采取和录入等人为操作,极易受噪声数据、属性值空缺和数据的不一致性的干扰。

所以只有做好数据预处理,刁‘能提高数据质量,从而提高挖掘结果的质量。

数据预处理又可以分为四个步骤:

数据清理(datacteaning)、数据集成(dataintegration)、数据变换(datatransformation)和数据归约(datareduetion)。

数据清理过程通常包括:

缺少属性值的处理、噪声数据的平滑、孤立点的识别和利用以及不一致数据的解决。

数据集成是解决数据取自多个数据源的问题,有效的将多个数据源的数据合并,存放到一个一致的数据存储中,避免代表同一概念的属性在不同数据库中可能具有不同名字而导致的不一致性和冗余,有助于提高挖掘的精度和效率。

例如,将多个数据表中的数据根据一定的关系合并到一张表上,便于对数据进行分析。

数据变换主要是对数据进行规格化操作,使之适合于挖掘的形式;数据归约是采用一定的方法,缩小数据的规模,但能够产生同样的(或几乎同样的)分析结果。

2.2.2数据挖掘

数据挖掘阶段是知识发现过程中的核心环节。

首先要明确数据挖掘的任务,确定是需要对数据进行分类还是聚类,是需要发现关联规则还是序列模式等等。

然后就要决定数据挖掘过程大概可以概括为三部分:

数据预处理(Datapreprocessing)、数据挖掘(dataMining)、结果的解释和评估(InterpretationandEvaluation)。

用什么样的挖掘算法来对数据进行挖掘。

挖掘算法的选择一般不能仅限于一种,即便是在同一研究领域,也可能有多种算法供选择。

那么,如何来选择算法?

什么样的算法适合该领域的数据挖掘?

有两个因素需要考虑:

一是根据数据的特点,选择与该数据领域相关的算法进行挖掘分析;二是要根据用户对挖掘结果形式的需求,有的用户可能希望获取表述清晰、容易理解的知识,而有的用户则偏向于获取准确度较高的预测结果。

选择挖掘算法后,要进行数据模型的建立和调整,然后对已处理好的数据进行分析,获取有用的模式。

2.2.3结果的解释和评估

对数据挖掘发现的模式或数据集进行解释和评价,过滤出有用的知识。

包括消除多余的模式,过滤后呈现给用户;利用可视化技术将有意义的模式以图形或逻辑可视化的形式表示,转化成用户可理解的语言,如把分类决策树转化为“IF一THEN”的规则。

如果数据挖掘过程中发现的知识不能满足用户需求,则需要重新对数据进行处理,选择其它算法来再次挖掘,并分析结果,直到满足用户需求。

2.3数据挖掘的功能

所谓数据挖掘的功能就是指定数据挖掘任务所要寻找的模式类型。

一般说来,按数据挖掘的任务来分,可以分为两类:

描述性挖掘和预测性挖掘。

描述性挖掘的任务是描述存储在数据库中数据的一般性质。

预测性挖掘的任务对当前数据进行挖掘,根据挖掘出的信息对未来发展作出预测。

数据挖掘的功能以及他们可以发现的模式类型介绍如下。

2.3.1概念/类描述:

特征化和区分

数据可以与类或概念相关联。

用精炼、简洁和精确方式描述各个类或概念可能是有用的,这种对类或概念的描述称为类/概念描述(class/concePtDescriPtion)。

这种描述可以通过以下方法得到:

(1)数据特征化,一般的汇总所研究类(通常称为目标类(targetClass)),是目标类数据信息的一般特性或特征的汇总,通常用户指定类的数据通过对数据库的查询收集。

(2)数据区分,将目标类与一个或多个可比较类(通常称为对比类(contrastingclass))进行比较对比,目标类和对比类由用户指定,而对应的数据

通过数据库查询检索。

(3)数据特征化和比较。

2.3.2挖掘频繁模式、关联和相关

频繁模式(FrequentPattem)是在数据项中频繁出现的模式。

存在多种类型的频繁模式,包括项集、子序列和子结构。

通常,频繁项集是指频繁的在事务数据集中在一起出现的项的集合,如啤酒和尿布。

频繁出现的子序列,如顾客倾向于先购买电脑再购买数码相机然后再购买存储卡,这样的模式是一个(频繁)的序列模式。

子结构可能涉及不同的结构形式,如图、树或格,可以与项集或子序列结合在一起。

如果一个子结构频繁的出现,则称它为(频繁)结构模式。

挖掘频繁模式导致发现数据中有趣的关联和相关。

关联分析(AssoeiationAnalysis)用于发现关联规则(AssoeiationRule),这些规则展示属性一值,频繁的在给定数据集中同时出现的条件。

更形式的,关联规则是形如x=>Y,即“Al^…^Am=>Bl^…^Bm”的规则,其中,Ai(i属于{1,…,m}),Bj(j属于{1,…,n})是属性一值对。

关联规则X=>Y解释为“满足x中条件的数据库元素多半也满足Y中的条件”。

关联规则根据规则中属性个数可分为单维关联规则(Single一dimensionalAssoeiationalRule)和多维关联规则(MultidimensionalAssoeiationRule)。

2.3.3分类和预测

分类(Classificatinn),它找出描述和区分数据类或概念的模型,以便能够使用模型预测类、标记未知的对象类。

导出模型是基于对训练数据集的分析。

导出模式可以用多种形式表示,如分类(if-then)规则、判定树、数学公式或神经网络。

判定树是一个类似于流程图的树结构,每个节点代表一个属性值上的测试,每个分支代表测试的一个输出,树叶代表类或类分布。

判定树容易转换成分类规则。

分类可以用来预测数据对象的类标记。

当被预测的值是数据数值时,通常称之为预测。

2.3.4聚类分析

聚类就是将物理或抽象对象的集合,分组成为由类似的对象组成的多个类的过程。

数据对象分组成为多个簇,处在同一个簇中的对象具有比较高的相似度,而处在不同簇中的对象则差别比较大。

在许多应用中,可以将处在同一个簇中的数据对象看做一个整体来对待。

聚类分析是一种重要的人类行为,人们通过聚类分析,识别出对象密集区域和稀疏区域,从而发现全局的分布模式,以及数据属性之间的相互关系。

作为一个数据挖掘的功能,聚类分析可以作为一个独立的工具来获得数据分布的情况,观察每个簇的特点,集中对特定的某些簇做进一步的分析。

此外,聚类分析也可以作为其他算法(如特征和分类等)的预处理步骤,这些算法再在生成的簇上进行处理。

2.3.5离群点分析

数据库中可能包含一些数据对象,它们与数据的一般行为或模型不一致。

这些数据对象就是离群点(Outlie:

)。

大部分数据挖掘方法将离群点视为噪声或异常而丢弃。

然而,在一些特殊应用中(如欺骗检测),罕见的事件可能比正常出现的那些更有意义。

离群点数据分析称作离群点挖掘(outlie:

Mining)。

2.3.6演变分析

数据演变分析描述行为随时间变化的对象规律或趋势,并对其建模。

尽管这可能包括时间相关数据的特征化、区分、关联、分类或聚类,这些分析的不同特点包括时间序列数据分析、序列或周期模式匹配和基于类似性的数据分析。

2.4数据挖掘的方法

数据挖掘的方法很多,每种方法都有其特定适用的领域。

一种挖掘方法不可能胜任所有的数据挖掘任务,一个复杂的数据挖掘系统往往需将多种数据挖掘方法相结合起来,通过整合多种数据挖掘方法,从各个角度分析数据,弥补单个数据挖掘方法所存在的不足。

数据挖掘的方法主要有以下几种。

2.4.1关联规则

关联规则挖掘是为了在数据库中发现两个或两个以上数据项之间的关联关系,是数据挖掘技术的主要研究方向和最成熟的技术之一。

它是一种简单、明确的分析规则,主要用于发现存在于大量数据之间的关联性相关性,从而描述一个事物中某些属性同时出现的规律和模式。

关联规则在数据挖掘领域应用很广泛,因为它没有变量的限制,可以进行多维数据之间的相关性分析,适合于在大型数据库中发现数据之间有意义的关系和规则。

数据挖掘领域中,关联规则应用的最典型的例子就是购物篮分析,通过从大量顾客得购买信息中发现,他们放入购物篮中不同的商品之间的联系,分析顾客的购物习惯,通过了解哪些商品频繁地被顾客同时购买,发现商品之间的关联,帮助销售商制定更好的营销策略。

关联规则的算法主要有两个步骤:

第一步是找出所有的频繁项集,频繁项集是指支持度不小于最小支持度的项目集。

第二步是由频繁项集产生强关联规则,即产生的这些规则必须满足最小支持度和最小置信度。

2.4.2决策树方法

决策树也称为判断树,是一种基于实际数据的归纳学习算法,是数据挖掘技术的一个活跃领域。

决策树是一个类似于流程图的树型结构,其中每个内部结点表示在一个属性上的测试,每个分支代表一个测试输出,每个树叶节点代表一个类或类的分布。

决策树算法主要是用来解决以离散型变量作为属性类型的学习方法。

连续型变量必须被离散化才能被使用。

有关决策树方法的算法很多,其中最具代表性的是D3和C4.5算法。

决策树方法的优点:

与其他挖掘模型相比,其处理速度相对较快;决策树模型简单且易于理解,容易转换成SQL语句;与其它算法相比,决策树模型可以获得相近或更好的分类准确率。

缺点:

对连续型变量比较难预测,需进行类型转换;对有时间顺序的数据,需要做很多数据预处理工作;当类别太多时,错误出现的可能就会增加得比较快;一般的算法分类时,只是根据一个字段来分类。

2.4.3神经网络方法

神经网络算法近年来越来越受到人们的关注,因为它为解决大型的复杂问题提供了一种相对有效、简单的方法。

神经网络方法是建立在自学的数学模型基础之上的。

它可以对大量的、复杂的数据进行分析,并可以完成对人脑或其他计算机来说极为复杂的模式抽取和趋势分析。

基于神经网络方法的数据挖掘工具对于非线性数据具有快速建模能力,其挖掘的基本过程是:

先将数据聚类,然后根据权值分类计算,神经网络的知识体现在网络连接的权值上。

神经网络方法在用于处理非线性数据和含噪声的数据时体现出更大的优越性,比较适合用于市场数据库的分析和建模,通过对市场数据库中大量行业数据的精密分析,为市场管理人员提供顾客、用户、市场状况和市场走势等方面的分析结果,以便管理者更好的决策。

2.4.4遗传算法

遗传算法是一种全局优化算法,具有隐含的并行性、非线性求解及易于和其他模型结合等特点。

模拟生物的自然选择和遗传机制,采用遗传结合、遗传变异以及自然选择等设计方法,将求解的问题通过一组遗传算子,在求解空间上按一定的随机规则进行迭代搜索,直到求得问题的最优解。

遗传算法在模式识别、神经网络、机器学习、工业优化控制、生物科学和社会科学方面都有广泛的应用。

目前遗传算法的研究主要侧重于算法的收敛性证明、遗传算法与局部优化算法的结合、遗传算子的设计以及遗传算法在各领域的应用研究。

2.4.5聚类分析

聚类分析是一种寻求数据的自然聚集结构的重要方法,是概念描述和偏差分析的先决条件。

聚类分析就是将一组数据按类型分组,使其具有最大的组内相似性和最小的组间相似性。

简单的说,就是达到使不同聚类中的数据尽可能不同,而同一聚类中的数据尽可能相似。

它与分类不同,分类时对于目标数据库中存在哪些类这一信息我们是知道的,我们所要做的就是将数据库每一条记录分别属于哪一个类标记出来;而聚类是在预先不知道目标数据库到底有多少类的情况下,将所有的记录按照属性不同组成不同的类或者说“聚类”,并且使得在这种分类情况下,以某种度量为标准的相似性,在同一聚类之间最小化,而在不同聚类之间最大化。

在很多应用中,由聚类分析方法得到的每一个聚类中的成员都可以被统一看待。

根据聚类的数据情况,可以把聚类分为两类:

一类是对象聚类(Q型聚类)。

对象聚类往往用距离或相似系数来度量相似性;另一类是属性聚类(R型聚类):

属性聚类常常根据相似系数来度量相似性。

聚类分析的算法主要有划分方法、层次方法、基于密度方法、基于网格方法和基于模型方法等。

2.4.6粗糙集

粗糙集理论是近年来才兴起的用于研究不精确、不确定性知识的学习、表达、归纳的方法。

它通过引入不可分辨关系、等价类、上近似、下近似等概念,考察知识表达中不同属性的重要性,来确定哪些属性是冗余的,哪些属性是必不可少的,删除冗余属性进而简化知识表达空间,最终能从数据中挖掘出有用的规则。

它的理论核心是:

知识源于对对象的分类,通过分类找出属性间的关联规则。

3关联规则算法

3.1关联规则概述

关联规则挖掘是数据挖掘领域中的一个非常重要的研究课题,有效地发现、理解、运用关联规则是完成数据挖掘任务的重要手段,因此对关联规则的研究具有重要的理论价值和现实意义。

所谓关联规则挖掘是从大量的、有噪声的、模糊的实际数据中,抽取隐含在其中的、人们事先不知道的、但又潜在有用的关联信息和知识的过程。

数据关联是某种事物发生时其它事物会发生的一种联系,是数据库中存在的一类重要的可被发现的知识。

关联分析的目的是为了挖掘隐藏在数据间的关系网。

关联规则挖掘的形式化描述如下:

设I={i,,12,…,in}是项的集合。

设任务相关的数据D是数据库事务的集合,其中每个事务T是项的集合,使得T包含于i。

每一个事务有一个标识符,称作TID。

设A是一个项集,事务T包含A当且仅当A包含于T。

关联规则是形如A=>B的蕴含式,其中A包含于I,B包含于I,并且A交于B为空。

规则A=>B在事务集D中成立,具有支持度s,其中s是D中事务包含

(即A和B二者)的百分比,可以用概率P(

)表示。

规则A=>B在事务集D中具有置信度c,c是如果D中包含A的事务同时也包含B的百分比,可以用条件概率P(B|A)表示。

即:

support(A=>B)=P(

confidenee(A=>B)=P(B|A)

同时满足最小支持度阐值(min_sup)和最小置信度阂值(min_conf)的规则称作强规则。

对于给定的一个事务数据库,关联规则挖掘就是通过用户指定最小支持度和最小置信度来寻找合适关联规则的过程。

项的集合称为项集(itemset),包含k个项的项集称为k一项集。

项集的出现频率是包含项集的事务数,简称为项集的频率、支持计数或计数。

如果项集的出现频率大于或等于min_suP与D中事务总数的乘积,则项集满足最小支持度min_S;如果项集满足最小支持度,则称它为频繁项集(frequentitemset);频繁k_项集的集合通常记作Lk。

一般地,关联规则挖掘问题可以划分成两个子问题:

(1)找出所有频繁项集

通过给定的min_SuP,寻找所有频繁项目集,即满足支持度suPport不小于min_sup的项目集。

事实上,这些频繁项目集可能具有包含关系。

一般地,我们只关心那些不被其它频繁项目集所包含的所谓频繁大项集(FrequentLargeItemset)的集合。

(2)由频繁项集产生强关联规则

通过用户给定的min_conf,在每个最大频繁项目集中,寻找置信度eonfidenCe不小于min_eonf的关联规则。

这两步中,第二步比较容易。

挖掘关联规则的总体性能由第一步决定。

3.2关联规则算法(Apriori算法)

关联规则挖掘主要是基于频繁项目集发现上的,而Agrawal和Srikant提出的APriori算法是最经典且最具影响的挖掘布尔关联规则频繁项集的算法。

3.2.1使用候选项集找频繁项集

APriori算法的名字基于这样的事实:

算法使用频繁项集性质的先验知识。

Apriori使用一种称作逐层搜索的迭代方法,k-项集用于探索(k+1)-项集。

首先,找出频繁1-项集的集合,该集合记作L1。

L1用于寻找频繁2-项集的集合L2,而L2用于寻找L3,如此下去,直到不能找到频繁k-项集。

找每个Lk时,需要进行一次数据库扫描。

APriori算法利用了两个基本性质:

(1)由频繁项集产生的所有非空子集均是频繁的。

(2)一个非频繁项集的任一超集必定是非频繁项集。

根据算法定义,如果项集I不满足最小支持度阂值min_sup,则I不是频繁的,即I出现的概率P(I)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2