机器学习实战(十)Apriori详解

前言:

一、关联分析

大型超市有海量的交易数据,作为精明的商家肯定不会放弃对这些海量数据的应用,他们希望通过对这些交易数据的分析,了解顾客的购买行为。我们可以通过聚类算法寻找购买相似物品的人群,从而为特定人群提供更具个性化的服务。但是对于超市来讲,更有价值的是找出商品之间的隐藏关联,从而可以用于商品定价、市场促销、存货管理等-系列环节,来增加营业收入。那如何从这种海量而又繁杂的交易数据中找出商品之间的关联呢?当然,你可以使用穷举法,但是这是一种十分耗时且计算代价高的笨方法,所以需要用更智能的方法在合理的时间范围内找到答案。因此,关联分析就此诞生了~

1.简介

关联分析(association analysis)是一种在大规模数据集中寻找有趣关系的非监督学习算法。这种关系可以有两种形式:频繁项集或者关联规则。

频繁项集 (frequent item sets)是经常出现在一块的物品的集合,关联规则(association rules)暗示两种物品之间可能存在很强的关系。

关联分析的一一个典型例子是购物篮分析。下面我们一 起来看一个简单例子。
在这里插入图片描述
交易号码代表交易流水号,商品代表一个顾客一 次购买的全部商品。

2.在这里需要明确几个定义:

  • 事务:每一条交易称为-一个事务。例如,在这个例子中包含了5个事务。
  • 项:交易的每一个物品称为一个项,例如豆奶、尿布等。
  • 项集:包含零个或者多个项的集合叫做项集,例如{豆奶,莴苣。
  • k-项集:包含k个项的项集叫做k-项集。 例如{豆奶}叫做1-项集, {豆奶,尿布,啤酒}叫做3-项集。
  • 前件和后件:对于规则{尿布}→>{啤酒}, {尿布}叫做前件,{啤酒}叫做后件。

二、频繁项集的评估标准

频繁项集是经常出现在-块的物品的集合,那么问题就来了:第一,当数据量非常大的时候,我们无法凭肉眼找出经常出现在一起的物品,这就催生了关联规则挖掘算法,比如Apriori PrefixSpan、 CBA等。第二是我们缺乏一个频繁项集的标准。比如10条记录,里面A和B同时出现了三次,那么我们能不能说A和B-起构成频繁项集呢?因此我们需要一个评估频繁项集的标准。

常用的频繁项集的评估标准有支持度,置信度和提升度三个。

1.支持度

支持度就是几个关联的数据在数据集中出现的次数占总数据集的比重。或者说几个数据关联出现的概率。如果我们有两个想分析关联性的数据X和Y,则对应的支持度为:

比如上面例子中,在5条交易记录中{尿布,睥酒}总共出现了3次,所以

以此类推,如果我们有三个想分析关联性的数据X,Y和Z,则对应的支持度为:

一般来说,支持度高的数据不一定构成频繁项集,但是支持度太低的数据肯定不构成频繁项集。另外, 支持度是针对项集来说的,因此,可以定义一个最小支持度,而只保留满足最小支持度的项集,起到一个项集过滤的作用。

2.置信度

置信度体现了一个数据出现后,另一个数据出现的概率,或者说数据的条件概率。如果我们有两个想分析关联性的数据X和Y, X对Y的置信度为

比如上面例子中,豆奶对莴苣的置信度=豆奶和莴苣同时出现的概率/莴苣出现的概率,则有

也可以以此类推到多个数据的关联置信度,比如对于三个数据X,Y, Z,则X对于Y和Z的置信度为:

为什么使用支持度和置信度?支持度是一种重要度量,因为支持度很低的规则可能只是偶然出现。从商务角度来看,低支持度的规则多半也是无意义的,因为对顾客很少同时购买的商品进行促销可能并无益处。因此,支持度通常用来删去那些无意义的规则。此外,支持度还具有一-种期望的性质,可以用于关联规则的有效发现。

另一方面,置信度度量通过规则进行推理具有可靠性。对于给定的规则X-→Y,置信度越高,Y在包含x的事务中出现的可能性就越大。置信度也可以估计在给定X下的条件概率。
同时,应当小心解释关联分析的结果。由关联规则作出的推论并不必然蕴涵因果关系。它只表示规则前件和后件同时出现的一种概率。

3.提升度

提升度表示含有Y的条件下同时含有X的概率,与X总体发生的概率之比,也就是X对Y的提升度与X总体发生的概率之比,即:

提升度体先了X和Y之间的关联关系,提升度大于1则X←Y是有效的强关联规则,提升度小于等于1则X←Y是无效的强关联规则。一个特殊的情况,如果X和Y独立,则有 L i f t ( X ← Y ) = 1 Lift(X←Y)= 1 Lift(XY)=1,因为此时

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值