深圳大学研究生课程论文题目对关联分析方法的学习报告成绩专业软件工程(春)课程名称、代码数据库与数据挖掘142201013021年级2013姓名刘璐学号20134313008时间2014年11月任课教师傅向华1关联分析方法及其应用综述1.1关联分析概念关联分析是一种简单、实用的分析技术,就是发现存在于大量数据集中的关联性或相关性,从而描述了一个事物中某些属性同时出现的规律和模式。关联分析是从大量数据中发现项集之间有趣的关联和相关联系。关联分析的一个典型例子是购物篮分析。该过程通过发现顾客放人其购物篮中的不同商品之间的联系,分析顾客的购买习惯。通过了解哪些商品频繁地被顾客同时购买,这种关联的发现可以帮助零售商制定营销策略。其他的应用还包括价目表设计、商品促销、商品的排放和基于购买模式的顾客划分。可从数据库中关联分析出形如“由于某些事件的发生而引起另外一些事件的发生”之类的规则。如“67%的顾客在购买啤酒的同时也会购买尿布”,因此通过合理的啤酒和尿布的货架摆放或捆绑销售可提高超市的服务质量和效益。又如“‘C语言’课程优秀的同学,在学习‘数据结构’时为优秀的可能性达88%”,那么就可以通过强化“C语言”的学习来提高教学效果。世间万物的事情发生多多少少会有一些关联。一件事情的发生,很可能是也会引起另外一件事情的发生。或者说,这两件事情很多时候很大程度上会一起发生的。那么人们通过发现这个关联的规则,可以由一件事情的发生来,来推测另外一件事情的发生,从而更好地了解和掌握事物的发展,动向等等。这就是数据挖掘中,寻找关联规则的基本意义。数据挖掘技术中的关联规则挖掘是通过计算机自动从一大对真实数据中发现这样的关联规则出来。对于计算机而言,它需要知道所有的事情发生情况,并且把相应的事情合并成一个事务,通过对各个事务的扫描,来确定事情的关联规则。1.2关联分析算法简介Apriori算法[1]是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。该算法的基本思想是:首先找出所有的频集,这些项集出现的频繁性至少和预定义的最小支持度一样。然后由频集产生强关联规则,这些规则必须满足最小支持度和最小可信度。然后使用第1步找到的频集产生期望的规则,产生只包含集合的项的所有规则,其中每一条规则的右部只有一项,这里采用的是中规则的定义。一旦这些规则被生成,那么只有那些大于用户给定的最小可信度的规则才被留下来。为了生成所有频集,使用了递归的方法。(1)L1=find_frequent_1-itemsets(D);(2)for(k=2;Lk-1≠Φ;k++){(3)Ck=apriori_gen(Lk-1,min_sup);(4)foreachtransactiont∈D{//scanDforcounts(5)Ct=subset(Ck,t);//getthesubsetsoftthatarecandidates(6)foreachcandidatec∈Ct(7)c.count++;(8)}(9)Lk={c∈Ck|c.count≥min_sup}(10)}(11)returnL=∪kLk;可能产生大量的候选集,以及可能需要重复扫描数据库,是Apriori算法的两大缺点。由于Apriori方法的固有缺陷.即使进行了优化,其效率也仍然不能令人满意。2000年,HanJiawei等人提出了基于频繁模式树(FrequentPatternTree,简称为FP-tree)的发现频繁模式的算法FP-growth。在FP-growth算法中,通过两次扫描事务数据库,把每个事务所包含的频繁项目按其支持度降序压缩存储到FP—tree中。在以后发现频繁模式的过程中,不需要再扫描事务数据库,而仅在FP-Tree中进行查找即可,并通过递归调用FP-growth的方法来直接产生频繁模式,因此在整个发现过程中也不需产生候选模式。该算法克服了Apriori算法中存在的问颢.在执行效率上也明显好于Apriori算法。GRI算法是关联规则的算法之一,侧重于关联规则的分析及应用,包括如何处理数值型变量、如何将单一概念层次的关联推广到多概念层次的关联等,进而描述事物的内在结构。它采用深度优先搜索策略实现算法,主要用于简单关联分析,一般表示形式是“XY(规则支持度S规则置信度C)”,X称为规则的前项(Antecedent)Y称为规则的后项(Consequent)[14]。C5.0是决策树的经典算法之一,可以根据PRISM算法自动生成推理规则集总是以期望类别的最大正确覆盖率为标准,用以实现数据集内在的规律探究和数据对象的分类与预测,一般表示形式为“如果条件则结论……”。1.3关联分析算法应用经典的关联规则数据挖掘算法Apriori算法广泛应用于各种领域,通过对数据的关联性进行了分析和挖掘,挖掘出的这些信息在决策制定过程中具有重要的参考价值。Apriori算法广泛应用于商业中,应用于消费市场价格分析中,它能够很快的求出各种产品之间的价格关系和它们之间的影响。通过数据挖掘,市场商人可以瞄准目标客户,采用个人股票行市、最新信息、特殊的市场推广活动或其他一些特殊的信息手段,从而极大地减少广告预算和增加收入。百货商场、超市和一些老字型大小的零售店也在进行数据挖掘,以便猜测这些年来顾客的消费习惯。Apriori算法应用于网络安全领域,比如时候入侵检测技术中。早期中大型的电脑系统中都收集审计信息来建立跟踪档,这些审计跟踪的目的多是为了性能测试或计费,因此对攻击检测提供的有用信息比较少。它通过模式的学习和训练可以发现网络用户的异常行为模式。采用作用度的Apriori算法削弱了Apriori算法的挖掘结果规则,是网络入侵检测系统可以快速的发现用户的行为模式,能够快速的锁定攻击者,提高了基于关联规则的入侵检测系统的检测性。Apriori算法应用于高校管理中。随着高校贫困生人数的不断增加,学校管理部门资助工作难度也越加增大。针对这一现象,提出一种基于数据挖掘算法的解决方法。将关联规则的Apriori算法应用到贫困助学体系中,并且针对经典Apriori挖掘算法存在的不足进行改进,先将事务数据库映射为一个布尔矩阵,用一种逐层递增的思想来动态的分配内存进行存储,再利用向量求与运算,寻找频繁项集。实验结果表明,改进后的Apriori算法在运行效率上有了很大的提升,挖掘出的规则也可以有效地辅助学校管理部门有针对性的开展贫困助学工作。Apriori算法被广泛应用于移动通信领域。移动增值业务逐渐成为移动通信市场上最有活力、最具潜力、最受瞩目的业务。随着产业的复苏,越来越多的增值业务表现出强劲的发展势头,呈现出应用多元化、营销品牌化、管理集中化、合作纵深化的特点。针对这种趋势,在关联规则数据挖掘中广泛应用的Apriori算法被很多公司应用。依托某电信运营商正在建设的增值业务Web数据仓库平台,对来自移动增值业务方面的调查数据进行了相关的挖掘处理,从而获得了关于用户行为特征和需求的间接反映市场动态的有用信息,这些信息在指导运营商的业务运营和辅助业务提供商的决策制定等方面具有十分重要的参考价值。基于Apriori算法的数据挖掘应用举例当前是列出我们实验中用到的一个候选项集:{145},{124},{457},{125},{458},{159},{136},{234},{567},{345},{356},{357},{689},{367},{368}。首先设置散列函数,和叶子大小限制。根据以上限制,先根据首项形成初步的散列树,见下图:图:生成候选的散列树(原始版本)接着根据第二项形成优化后的散列树,结果见下图:图:生成候选的散列树(中间过程)按照以上过程,按照项的顺序,我们可以将树的分裂做到最后一项,最终结果见下图:图:生成候选的散列树(最终版本)2关联分析在clementine中的具体案例实现2.1基础数据准备:在clementine中,进行关联分析,为了能够尝试各种算法,这里我采用第一种模型输入数据,建模前需先将数据整理成如下格式2个字段:客户编号和产品编号(一个客户编号可能有多条产品记录)步骤如下:1、原始数据格式2、然后将产品字段转换成名义字段即集字段,clementine里面一个字段选项按钮,导出按钮,其作用是基于现有字段生成新字段3、根据集字段生成新的产品字段,作用就是生成将数据转换成关联分析要求的数据格式生成的格式:每一行数据表示没一个用户购买了哪些产品,1表示购买,0表示没有4、字段输入方向选择为both:2.2关联分析建模整个建模过程如下:这里我选择的是GRI算法2.3算法设置和分析结果3数据挖掘课程学习体会大量数据的产生和收集导致了信息的爆炸,但信息仅仅停留在这个阶段,未对这些信息进行适时和深层次的分析,大致使企业对客户知识的缺乏。数据挖掘可以从繁杂的数据中找出真正有价值的信息知识,提高企业对客户了解程度,时时快捷的发现并满足客户的需求,从而提高企业的竞争力。1.数据挖掘使市场信息触手可及数据库及数据挖掘技术(DataMining,DM)可以扩展企业核心业务过程的信息后勤基础,通过数据挖掘来保证对数据的访问及分析,从而提高业务过程的有效性。当企业通过数据仓库直接向其顾客索取某些信息密集型顾客支持过程的资源时,支持成本会不断地下降,企业的管理成本也就随之降低。利用信息技术和数据资源不断地增强对客户的了解程度,使客户感觉好像与企业有一种独一无二的个人关系,具有有效的信息文换和访问能力,与客户打交道变得更容易一些。数据挖掘技术基于事实,利用数据仓库中产品、价格、投资、分配等方面,从浩瀚的信息海洋中提炼出有价值的信息,发现隐含在这些信息中的对等的、不明显的、不可预知的模式、趋势和关系,为企业提供决策的依据。2.数据挖掘将数据加工成信息和知识在CRM中,数据仓库将海量复杂的客户行为数据集中起来,建立一个整合的、结构化的数据模型,在此基础上对数据进行标准化、抽象化、规范化分类、分析,为企业管理层提供及时的决策信息,为企业业务部门提供有效的反馈数据。数据挖掘对客户资料进行分析,是挖掘客户潜力的基石。数据挖掘技术的作用在企业管理客户生命周期的各个阶段都会有所体现。数据挖掘帮助企业发现客户的特点,从而可为客户提供有针对性的服务。通过数据挖掘,可以发现购买某一商品的客户的特征,从而可以向那些也同样具有这些特征却没有购买的客户推销这个商品;若找到流失的客户的特征就可以在那些具有相似特征的客户还未流失之前,采取相应的措施。4其他数据挖掘相关主题1、分类分类是找出数据库中一组数据对象的共同特点并按照分类模式将其划分为不同的类,其目的是通过分类模型,将数据库中的数据项映射到某个给定的类别。它可以应用到客户的分类、客户的属性和特征分析、客户满意度分析、客户的购买趋势预测等,如一个汽车零售商将客户按照对汽车的喜好划分成不同的类,这样营销人员就可以将新型汽车的广告手册直接邮寄到有这种喜好的客户手中,从而大大增加了商业机会。2、回归分析回归分析方法反映的是事务数据库中属性值在时间上的特征,产生一个将数据项映射到一个实值预测变量的函数,发现变量或属性间的依赖关系,其主要研究问题包括数据序列的趋势特征、数据序列的预测以及数据间的相关关系等。它可以应用到市场营销的各个方面,如客户寻求、保持和预防客户流失活动、产品生命周期分析、销售趋势预测及有针对性的促销活动等。3、聚类聚类分析是把一组数据按照相似性和差异性分为几个类别,其目的是使得属于同一类别的数据间的相似性尽可能大,不同类别中的数据间的相似性尽可能小。它可以应用到客户群体的分类、客户背景分析、客户购买趋势预测、市场的细分等。4、关联规则关联规则是描述数据库中数据项之间所存在的关系的规则,即根据一个事务中某些项的出现可导出另一些项在同一事务中也出现,即隐藏在数据间的关联或相互关系。在客户关系管理中,通过对企业的客户数据库里的大量数据进行挖掘,可以从大量的记录中发现有