Apriori算法改进及其实现内容摘要信息技术的不断推广应用,将企业带入了一个信息爆炸的时代。如何充分利用这些数据信息为企业决策者提供决策支持成为一个十分迫切的又棘手的问题,人们除了利用现有的关系数据库标准查询语句得到一般的直观的信息以外,必须挖掘其内含的、未知的却又实际存在的数据关系。著名的Apriori算法是一种挖掘关联规则的算法。本文通过对参与候选集的元素计数的方法来减少产生候选集的组合和减少数据库的扫描次数来达到要求。这有利于提高挖掘的速度和减少数据库的I/O操作时间的开销。关键字:数据挖掘,关联规则,Apriori算法AprioriAlgorithmAndImprovedAprioriAlgorithmAbstract:AninformationburstageiscomingwiththevariousapplicationofInformationtechnology.Howtomaximizetheinformationisaveryimportantproblemforthedecision-makerofthecompanies.BesidesgettingtheregularinformationfromtheDatabasebySQL-query,peoplestillneedtominethedatarelationwhichisunclearbutreallyexists.Associationrulesisoneofthedataminingmethods,thefamousalgorithmAprioriisamethod,whichcanbeusedtosolutethoseproblems.ThisarticleanalyzesandstudiestheimprovedalgorithmAprioribasedonthealgorithmofminingassociationrulesApriori.ThemainideaistodecreasethenumberofcandidateitemsandtodecreasethetimesofDatabasescanning.Thesolutionisavailable.Itupgradesthespeedofdatamininganddecreasescomputer'sI/Ooperation.It'sprovedtobemoreefficientthanthetraditionalKeywords:Datamining,associationrules,Apriorialgorithm,目录1数据挖掘..................................................................................................................................-1-1.1技术上的定义及含义..................................................................................................-1-1.2商业角度的定义..........................................................................................................-2-1.3数据挖掘与传统分析方法的区别..............................................................................-2-1.4数据挖掘不能干什么...................................................................................................-3-2数据挖掘的几种主要形式:....................................................................................................-3-2.1:规则挖掘:..................................................................................................................-3-2.2聚类分析:...................................................................................................................-4-3关于关联规则的讨论..............................................................................................................-4-3.1购物篮分析...................................................................................................................-4-3.2关联规则基本问题描述..............................................................................................-4-3.3关联规则挖掘举例......................................................................................................-6-3.4关联规则问题的分解..................................................................................................-8-4Apriori算法的描述...............................................................................................................-8-4.1Apriori算法的说明...................................................................................................-8-4.2Apriori算法的描述...................................................................................................-9-4.3Apriori算法的举例.................................................................................................-11-5一种Apriori的改进算法....................................................................................................-14-5.1算法产生的思路.........................................................................................................-14-5.2算法的图例说明.........................................................................................................-15-5.3本算法的评价:...........................................................................................................-15-附录1程序运行图示...............................................................................................................-18-附录2程序代码.......................................................................................................................-20-陕西理工学院数学与计算机科学系开放性实验结题报告-1-1数据挖掘1.1技术上的定义及含义数据挖掘(DataMining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。与数据挖掘相近的同义词有数据融合、数据分析和决策支持等。这个定义包括好几层含义:数据源必须是真实的、大量的、含噪声的;发现的是用户感兴趣的知识;发现的知识要可接受、可理解、可运用;并不要求发现放之四海皆准的知识,仅支持特定的发现问题。----何为知识?从广义上理解,数据、信息也是知识的表现形式,但是人们更把概念、规则、模式、规律和约束等看作知识。人们把数据看作是形成知识的源泉,好像从矿石中采矿或淘金一样。原始数据可以是结构化的,如关系数据库中的数据;也可以是半结构化的,如文本、图形和图像数据;甚至是分布在网络上的异构型数据。发现知识的方法可以是数学的,也可以是非数学的;可以是演绎的,也可以是归纳的。发现的知识可以被用于信息管理,查询优化,决策支持和过程控制等,还可以用于数据自身的维护。因此,数据挖掘是一门交叉学科,它把人们对数据的应用从低层次的简单查询,提升到从数据中挖掘知识,提供决策支持。在这种需求牵引下,汇聚了不同领域的研究者,尤其是数据库技术、人工智能技术、数理统计、可视化技术、并行计算等方面的学者和工程技术人员,投身到数据挖掘这一新兴的研究领域,形成新的技术热点。这里所说的知识发现,不是要求发现放之四海而皆准的真理,也不是要去发现崭新的自然科学定理和纯数学公式,更不是什么机器定理证明。实际上,所有发现的知识都是相对的,是有特定前提和约束条件,面向特定领域的,同时还要陕西理工学院数学与计算机科学系开放性实验结题报告-2-能够易于被用户理解。最好能用自然语言表达所发现的结果。1.2商业角度的定义数据挖掘是一种新的商业信息处理技术,其主要特点是对商业数据库中的大量业务数据进行抽取、转换、分析和其他模型化处理,从中提取辅助商业决策的关键性数据。简而言之,数据挖掘其实是一类深层次的数据分析方法。数据分析本身已经有很多年的历史,只不过在过去数据收集和分析的目的是用于科学研究,另外,由于当时计算能力的限制,对大数据量进行分析的复杂数据分析方法受到很大限制。现在,由于各行业业务自动化的实现,商业领域产生了大量的业务数据,这些数据不再是为了分析的目的而收集的,而是由于纯机会的(Opportunistic)商业运作而产生。分析这些数据也不再是单纯为了研究的需要,更主要是为商业决策提供真正有价值的信息,进而获得利润。但所有企业面临的一个共同问题是:企业数据量非常大,而其中真正有价值的信息却很少,因此从大量的数据中