关联规则简介与Apriori算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
案例
70%购买了牛奶的顾客将倾向于同时购买面包。
某网上书店向用户推荐相关书籍。
案例
在买了一台PC之后下一步会购买?
案例
在保险业务方面,如果出现了不常见的索赔要求组 合,则可能为欺诈,需要作进一步的调查;
在医疗方面,可找出可能的治疗组合;
在银行方面,对顾客进行分析,可以推荐感兴趣的 服务等等。
Apriori算法弊端
需要多次扫描数据表
如果频繁集最多包含10个项,那么就需要扫描交易数据表10遍,这需要 很大的I/O负载
产生大量频繁集
若有100个项目,可能产生候选项数目
C
1 100
C100 ... C
2
100 100
1.27*10
30
The end
Thank you~
关联规则的相关概念
定义9 强关联规则 如 果 规 则 R:XY 满 足 support(XY)supmin 且 confidence(XY)confmin , 称 关 联 规 则 XY 为 强关联规则,否则称关联规则 XY 为弱关联规则。 在挖掘关联规则时,产生的关联规则要经过 supmin和confmin的衡量,筛选出来的强关联规则 才能用于指导商家的决策。
count(X Y) support(X Y) |D|
关联规则的相关概念
定义7 关联规则的置信度 对 于 关 联 规 则 R : XY , 其 中 XI,YI , 并 且 XY=。 规则R的置信度(Confidence)是指包含X和Y的交易 数与包含X的交易数之比
support(X Y) confidence (X Y) support(X)
交易号 T1 T2 T3 T4
商品代码 A、C、D B、C、E A、B、C、E B、E
Apriori算法举例_产生频繁项集
K=1
项集 支持度 { A} 50% { B} 75% C1 {C} 75% 支持度<50 25% { D} { E} 75%
L2
{ A,C} { B,C} { B,E} { C,E}
案例
“尿布与啤酒”的故事。
美国的沃尔玛超市对一年多的原始交易数据进行了详细的 分析,得到一个意外发现:与尿布一起被购买最多的商品 竟然是啤酒。借助于数据仓库和关联规则,商家发现了这 个隐藏在背后的事实:美国的妇女们经常会嘱咐她们的丈 夫下班以后要为孩子买尿布,而30%~40%的丈夫在买完 尿布之后又要顺便购买自己爱喝的啤酒。有了这个发现后 ,超市调整了货架的设置,把尿布和啤酒摆放在一起销售 ,从而大大增加了销售额。
置信度表示了这条规则有多大程度上值得可信。设条件 的项的集合为A,结果的集合为B。置信度计算在A中,同 时也含有B的概率(即:if A ,then B的概率)。即 Confidence(AB)=P(B|A)。例如计算“如果Orange则 Coke”的置信度。由于在含有“橙汁”的4条交易中,仅 有2条交易含有“可乐”。其置信度为0.5。
关联规则的相关概念
定义2 交易 每笔交易 T(Transaction) 是项集 I 上的一个子集, 即TI,但通常TI。 对应每一个交易有一个唯一的标识 —— 交易号, 记作TID 交易的全体构成了交易数据库 D ,或称交易记录 集D,简称交易集D。 交易集D中包含交易的个数记为|D|。
关联规则基本模型
什么是规则? 规则形如"如果…那么…(If…Then…)",前者为条件,后者 为结果。例如一个顾客,如果买了可乐,那么他也会购买 果汁。 如何来度量一个规则是否够好?有两个量,置信度 (Confidence)和支持度(Support)。假设有如下表的购买 记录。
关联规则基本模型_置信度
关联规则挖掘举例
交易ID 2000 1000 4000 5000
假设最小 值支持度 为 50% ,最小置信度为50%
频繁项集 {A} {B} {C} {A,C} 支持度 75% 50% 50% 50%
购买商品 A,B,C A,C A,D B,E,F
对于规则 AC: 支持度 = support({A,C }) = 50% 置信度 = support({A,C })/support({A}) = 66.6%
{ A,C} { B,C} { B,E} { C,E} 50% 50% 75% 50%
交易号 T1 T2 T3 T4
L3
L2
商品代码 A、C、D B、C、E A、B、C、E B、E
{B,C ,E} 50%
从 K2中求可用来计算的的三项集 { A,C} +{B,C} { A,C} +{B,E} { A,C} +{C,E} { B,C} +{B,E} { B,C} +{C,E} { B,E} +{C,E} {A,B,C} 超过三项 {A,C, E} {B,C, E} {B,C, E} {B,C, E}
关联规则的相关概念
定义3 项集的支持度 对于项集X, XI,设定 count(XT)为交易集 D中 包含X的交易的数量
count(X T ) support(X) |D|
项集X的支持度support(X)就是项集X出现的概率, 从而描述了X的重要性。
关联规则的相关概念
定义4 项集的最小支持度与频繁集 发现关联规则要求项集必须满足的最小支持阈值, 称为项集的最小支持度 (Minimum Support) ,记为 supmin。 支持度大于或等于supmin的项集称为频繁项集,简 称频繁集,反之则称为非频繁集。 通常k-项集如果满足supmin,称为k-频繁集,记作Lk。
关联规则的相关概念
定义5 关联规则 关联规则(Association Rule)可以表示为一个蕴含式: R:XY 其中:XI,YI,并且XY= 。 例如:R:牛奶→面包
关联规则的相关概念
定义6 关联规则的支持度 对 于 关 联 规 则 R : XY , 其 中 XI , YI , 并 且 XY=。 规则R的的支持度 (Support) 是交易集中同时包含 X 和Y的交易数与所有交易数之比。
性质1:频繁项集的子集必为频繁项集
性质2:非频繁项集的超集一定是非频繁的
假设项集 {D} 不是频繁项集,则 {A,D}和{C,D}也不是频繁项集
Apriori算法举例
现有 A 、 B 、 C 、 D 、 E 五种商品的交易记录表,找出所 有 频 繁 项 集 , 假 设 最 小 支 持 度 >=50%, 最 小 置 信 度 >=50%
Apriori算法将发现关联规则的过程分为两个步骤: 通过迭代,检索出事务数据库中的所有频繁项集, 即支持度不低于用户设定的阈值的项集; 利用频繁项集构造出满足用户最小置信度的规则。
挖掘或识别出所有频繁项集是该算法的核心,占整 个计算量的大部分。
Apriori算法的重要性质
假设项集 {A,C} 是频繁项集,则 {A}和{C}也为频繁项集
一般来说,只有支持度和置信度均较高的关联规则 才是用户感兴趣的、有用的关联规则。
关联规则的相关概念
定义8 关联规则的最小支持度和最小置信度 关联规则的最小支持度也就是衡量频繁集的最小支 持度(Minimum Support),记为supmin,它用于衡 量规则需要满足的最低重要性。 关联规则的最小置信度(Minimum Confidence)记为 confmin ,它表示关联规则需要满足的最低可靠性。
关联规则基本模型_支持度
支持度计算在所有的交易集中,既有A又有B的概率。例 如在5条记录中,既有橙汁又有可乐的记录有2条。则此 条规则的支持度为 2/5=0.4,即Support(AB)=P(AB)。 现在这条规则可表述为,如果一个顾客购买了橙汁,则有 50%(置信度)的可能购买可乐。而这样的情况(即买了橙 汁会再买可乐)会有40%(支持度)的可能发生。
50% 50% 75% 50%
L1
{A} {B} {C} {E}
50% 75% 75% 75%
K=2
C2
项集 支持度 支持度 { A,B } <50 25% { A,C} 50% 支持度<50 25% {A,E} { B,C} 50% { B,E} 75% { C,E} 50%
Apriori算法举例_产生频繁项集
规则AC满足最小支持度和最小置信 度,所以它是强关联规则
关联规则挖掘的步骤
关联规则挖掘是一个两步的过程:
找出所有频繁项集
大于或者等于最小支持度 的项集
由频繁项集产生强关联规则,这些规则必须大于 或者等于最小支持度和最小置信度
Apriori算法
Apriori算法是一种经典的生成布尔型关联规则的频 繁项集挖掘算法。
关联规则的相关概念
定义1 项目与项集 设I={i1,i2,…,im}是m个不同项目的集合,每个 ik(k=1,2,……,m)称为一个项目(Item)。 项目的集合 I 称为项目集合(Itemset),简称为项集 。其元素个数称为项集的长度,长度为k的项集称 为k-项集(k-Itemset)。
关联规则
Hale Waihona Puke Baidu
关联规则(Association Rules)反映一个事物与 其他事物之间的相互依存性和关联性。如果两个或 者多个事物之间存在一定的关联关系,那么,其中 一个事物就能够通过其他事物预测到。首先被 Agrawal, Imielinski and Swami在1993年的 SIGMOD会议上提出. 关联规则挖掘是数据挖掘中最活跃的研究方法之一 。典型的关联规则发现问题是对超市中的购物篮数 据(Market Basket)进行分析。通过发现顾客放 入购物篮中的不同商品之间的关系来分析顾客的购 买习惯。
支持度<50 25% {A,B,C}
C3
支持度 {A,C ,E} <50 25%
{B,C , E}
50%
Apriori算法举例_产生关联规则
对于频繁项集{B,C,E},它的非空子集有{B}、{C}、{E} 、{B,C}、{B,E}、{C,E}。以下就是据此获得的关联 规则及其置信度。
规则 BCE CBE EBC CEB BEC BCE 置信度Confidence 66.7% 66.7% 66.7% 1 66.7% 1 置信度≥50%(最小置信度), 都是强关联规则