1、关联规则算法介绍,信息技术局数据分析团队 2012-3-28,关联规则算法介绍及实现,关联规则算法总体介绍,该算法的R语言实现,1.1什么关联规则算法? 1.2三个关键概念 1.3用途范围,1.1什么是关联规则挖掘,定义:关联规则反映一个事物与其他事物之间的相互依存性和关联性。如果两个或者多个事物之间存在一定的关联关系,那么,其中一个事物就能够通过其他事物预测到。 典型的关联规则发现问题是对超市中的货篮数据(Market Basket)进行分析。通过发现顾客放入货篮中的不同商品之间的关系来分析顾客的购买习惯。,1.1什么是关联规则挖掘,背景: 首先被Agrawal在1993年的SIGMOD会议
2、上提出 在事务、关系数据库中的项集和对象中发现频繁模式、关联规则、相关性或者因果结构 目的: 发现数据中的规律 超市数据中的什么产品会一起购买? 啤酒和尿布 在买了一台PC之后下一步会购买?,1.2 三个关键概念,支持度 如果项集X是事务T的一个子集,则称T包含X。对于一个规则XY的支持度是指“T中包含XY的事务的百分比”。设n是T中的事务的数目。对于规则XY的支持度计算如下:支持度= 置信度 对于一个规则XY的置信度是指“T中既包含X也包含Y的事务占所有包含X的事务的百分比”。置信度=,1.2频繁项目集,最小支持度minsup。即用户规定的关联规则必须满足的最小支持度,它表示了一组物品集在统
3、计意义上的需满足的最低程度。 最小置信度minconf。即用户规定的关联规则必须满足的最小置信度,它反应了关联规则的最低可靠度。 数据集中的任意一项集Ix,如果 Support(Ix)min-sup,则称项集Ix为非频繁项目集。 数据集中的任意一项集Ix,如果 Support(Ix)min-sup,则称项集Ix为频繁项目集。,1.3应用范围,例如:啤酒和尿布的关联关系 推断客户的潜在消费需求 制定产品组合销售策略,关联规则算法总体介绍,R语言实现,2.1生成标准数据集 2.2计算过程 2.3选择规则集,关联规则算法介绍及实现,2.1生成标准数据集,购物篮格式数据集 A m、n、l、p B m、
4、n C n、l 单一格式数据集A m A nB m ,2.2计算过程,library(arules) #加载arules程序包 data(Groceries) #调用数据文件 frequentsets=eclat(Groceries,parameter=list(support=0.05,maxlen=10) #求频繁项集 inspect(frequentsets1:10) #察看求得的频繁项集 inspect(sort(frequentsets,by=“support“)1:10) #根据支持度对求得的频繁项集排序并察看,2.2计算过程,rules=apriori(Groceries,par
5、ameter=list(support=0.01,confidence=0.01) #求关联规则 summary(rules) #察看求得的关联规则之摘要 x=subset(rules,subset=rhs%in%“whole milk“&lift=1.2) #求所需要的关联规则子集 inspect(sort(x,by=“support“)1:5) #根据支持度对求得的关联规则子集排序并察看,2.3选择有效结果集,以置信度为核心 兼顾支持度 结果集示例:lhs rhs support onfidence lift 1 36-817aa = 36-818aa 0.11283015 0.74416910 4.344507 2 36-818aa = 36-817aa 0.11283015 0.65870968 4.344507 3 36-628aa = 36-62aa 0.10343684 0.98113208 6.131398,数据字段清洗规则,该分析方法的总结,1、针对多指标综合分类 2、后续需要进一步采用决策树算法进行规则提炼 和验证。 3、该类分析方法的不足有那些?如何尽量避免?,关联规则挖掘在商品组合的选择以及客户行为的分析中发挥着非常重要的作用,是一种非常简单而实用算法!谢谢大家!,