关联规则挖掘1
数据挖掘中关联规则挖掘算法的使用教程

数据挖掘中关联规则挖掘算法的使用教程随着信息技术的快速发展和数据量的不断增长,数据挖掘成为了一种重要的手段,用于从大量数据中发现隐藏的模式和信息。
关联规则挖掘算法是其中的一种常用算法,它可以分析出数据集中的项之间的关联关系。
本文将介绍关联规则挖掘算法的基本原理、实现步骤以及常见的应用场景。
一、关联规则挖掘算法的基本原理关联规则挖掘算法是通过分析数据集中的项集之间的关联关系,发现其中的频繁项集和关联规则。
其基本原理可以概括为以下几个步骤:1. 构建候选项集首先,从数据集中统计每个项的频数,然后根据用户指定的最小支持度阈值,筛选出频繁项集作为候选项集的初始集合。
2. 生成候选项集的子集接下来,通过合并频繁项集生成新的候选项集,并逐层生成其子集,直到无法继续生成新的候选项集为止。
这一步骤可以利用Apriori算法或FP-growth算法来实现。
3. 计算候选项集的支持度对于每个候选项集,统计其在数据集中出现的频数,然后与用户指定的最小支持度阈值进行比较,筛选出频繁项集。
4. 生成关联规则最后,在频繁项集的基础上,通过计算置信度和提升度等指标,生成关联规则。
二、关联规则挖掘算法的实现步骤下面以Apriori算法为例,介绍关联规则挖掘算法的实现步骤。
1. 数据预处理首先,对数据集进行预处理,包括数据清洗、去除噪声、去重等操作。
确保数据集的质量和准确性。
2. 构建候选项集根据用户指定的最小支持度阈值,筛选出频繁1项集。
然后,利用频繁1项集生成候选2项集,并通过剪枝操作去除其中不满足最小支持度的候选项集。
以此类推,逐层生成候选项集。
3. 计算候选项集的支持度统计每个候选项集在数据集中出现的频数,并与用户指定的最小支持度阈值进行比较,筛选出频繁项集。
4. 生成关联规则对于每个频繁项集,生成其所有的非空子集,并计算置信度和提升度等指标。
根据用户指定的最小置信度阈值,筛选出满足条件的关联规则。
三、关联规则挖掘算法的应用场景关联规则挖掘算法已经在多个领域得到了广泛应用,下面介绍其中几个常见的应用场景。
关联规则挖掘算法

关联规则挖掘算法关联规则挖掘算法的核心思想是寻找频繁项集和关联规则。
频繁项集是指经常同时出现的物品集合,而关联规则是指物品之间的关联关系。
关联规则通常以“如果...那么...”的形式呈现,表示不同物品之间的逻辑关系。
有多种关联规则挖掘算法可供选择,其中最常见的包括Apriori算法、FP-growth算法和Eclat算法。
Apriori算法是最早也是最著名的关联规则挖掘算法之一、它基于Apriori原理,即如果一个项集是频繁的,那么它的所有子集也一定是频繁的。
该算法首先通过扫描数据集来确定频繁项集,然后使用频繁项集生成关联规则。
FP-growth算法是一种基于分析树结构的快速关联规则挖掘算法。
它通过构建频繁模式树(FP-tree)来发现频繁项集和关联规则。
FP-growth算法相对于Apriori算法具有更高的效率,因为它不需要生成候选集,而是通过对数据集的多次扫描来构建FP-tree。
Eclat算法是一种基于垂直数据表示(vertical data representation)的关联规则挖掘算法。
它将项集表示为其在事务中的出现位置的集合,通过递归地挖掘次数递减的频繁项集来生成关联规则。
Eclat算法更适用于稠密数据集,因为它只需要对数据进行水平扫描。
关联规则挖掘算法的应用非常广泛。
在市场营销中,它可以帮助企业发现产品之间的关联关系,从而进行有针对性的推广和销售。
在电子商务中,它可以通过分析用户的购买记录来推荐相关产品。
在医疗领域中,它可以帮助发现潜在的疾病风险因素。
在社交网络分析中,它可以用于发现用户之间的关联关系和行为模式。
总结来说,关联规则挖掘算法是一种强大的数据分析工具,可以帮助分析人员发现数据中的隐藏模式和规律。
不同的算法有不同的优势和适用场景,选用合适的算法可以提高挖掘效率和准确性,从而为决策提供有价值的参考。
大数据分析中的关联规则挖掘技术详解

大数据分析中的关联规则挖掘技术详解在大数据时代,海量的数据对于企业和组织来说是一项无可估量的宝藏。
然而,这些数据本身并没有带来价值,而是需要通过分析和挖掘才能发现其中的潜在关联和规律。
关联规则挖掘技术正是为了解决这个问题而产生的。
关联规则挖掘技术是一种用于发现数据集中项集之间的相关性的数据科学技术。
它可以帮助我们识别出频繁出现在一起的事物,并根据这些关联规则提供决策支持和业务洞察。
其应用范围广泛,包括市场分析、推荐系统、医疗诊断等领域。
关联规则挖掘的基本概念是频繁项集和关联规则。
频繁项集是指在数据集中经常同时出现的项的集合。
例如,一个超市的购物数据中,经常一起出现的商品就可以构成一个频繁项集。
而关联规则则是频繁项集中项之间的关联关系。
例如,经常购买尿布的顾客也经常购买啤酒。
这条规则可以用“尿布->啤酒”的形式表示,其中箭头表示了两者之间的依赖关系。
实际上,关联规则并不仅仅局限于两个项之间的关系,而可以包含多个项。
例如,“尿布->啤酒->零食”就是一个包含三个项的关联规则。
关联规则一般有两个重要的度量指标,即支持度和置信度。
支持度用于衡量关联规则的频繁程度,而置信度用于衡量关联规则的可信程度。
常用的挖掘算法有Apriori和FP-growth。
关联规则挖掘技术在实际应用中有着广泛的价值。
首先,它可以帮助企业进行市场分析和销售策略制定。
通过分析顾客购买记录,可以发现潜在的关联规则,从而推测出顾客的需求和购买习惯。
根据这些规则,企业可以制定相应的促销活动和营销策略,提高销售额和客户满意度。
其次,关联规则挖掘技术在推荐系统中也有着重要的应用。
通过分析用户的历史行为和购买记录,可以挖掘出用户之间的潜在关联规则。
例如,在电商网站中,如果一个用户经常购买书籍和电子产品,那么可以向该用户推荐相关的产品。
这种个性化推荐不仅可以提高用户的购物体验,还可以增加网站的用户粘性和销售额。
此外,关联规则挖掘技术还可以应用于医疗诊断领域。
挖掘关联规则(算法)

What is the set of all patterns?
!!
7
关联规则基本模型
关联规则就是支持度和信任度分别满足用户 给定阈值的规则。
发现关联规则需要经历如下两个步骤: 找出所有频繁项集。 由频繁项集生成满足最小信任度阈值的规 则。
8
Apriori算法的步骤
第5章:挖掘关联规则
关联规则挖掘 事务数据库中(单维布尔)关联规则挖掘的可伸缩算法 挖掘各种关联/相关规则 基于限制的关联挖掘 顺序模式挖掘 小结
1
关联规则
关联规则反映一个事物与其他事物之间的相 互依存性和关联性。如果两个或者多个事物 之间存在一定的关联关系,那么,其中一个 事物就能够通过其他事物预测到。
3
30 A, B, C, E
{D} 1
40
B, E
{E} 3
L1
Itemset sup {A} 2 {B} 3 {C} 3 {E} 3
L2 Itemset sup {A, C} 2 {B, C} 2 {B, E} 3 {C, E} 2
C2 Itemset sup
C2
{A, B} 1 第2次扫描
{A, C} 2
频繁模式: 数据库中频繁出现的项集
目的: 发现数据中的规律
超市数据中的什么产品会一起购买?— 啤酒和尿布 在买了一台PC之后下一步会购买? 哪种DNA对这种药物敏感? 我们如何自动对Web文档进行分类?
3
频繁模式挖掘的重要性
许多重要数据挖掘任务的基础 关联、相关性、因果性 序列模式、空间模式、时间模式、多维 关联分类、聚类分析
20
提高Apriori算法的方法
Hash-based itemset counting(散列项集计数) Transaction reduction(事务压缩) Partitioning(划分) Sampling(采样)
数据挖掘中的关联规则挖掘算法

数据挖掘中的关联规则挖掘算法随着数据量的不断增大,如何从海量数据中发现有意义的关联规则成为数据挖掘的一项重要任务。
关联规则挖掘是指在大规模数据集中寻找项集之间的关系,其中一个项集称为前提集(antecedent),另一个项集称为结果集(consequent)。
关联规则挖掘算法可以帮助我们发现数据中隐藏的相关性,为企业做出决策提供支持。
数据挖掘中的关联规则挖掘算法主要包括Apriori算法、FP-Growth算法和ECLAT算法。
这些算法都能有效地从大规模数据集中挖掘关联规则,但其原理和运算方式略有不同。
首先是Apriori算法。
Apriori算法是关联规则挖掘中最早也是最经典的算法之一。
它基于频繁项集的理念进行工作,通过逐层搜索的方式,不断扩展候选项集,从而挖掘出频繁项集和关联规则。
Apriori算法的思想是利用频繁项集性质,从最小的频繁项集开始,逐步扩大项集的大小,直到不能再产生更多的频繁项集为止。
这样可以减少搜索空间,提高算法效率。
Apriori算法的时间复杂度较高,但其优点在于可以挖掘任意大小的频繁项集。
Apriori算法的应用广泛,常用于市场篮子分析、推荐系统等领域。
其次是FP-Growth算法。
FP-Growth算法是一种基于前缀树(FP树)的关联规则挖掘算法。
它通过构建FP树,将数据集压缩成频繁项的紧凑表示,并利用树结构实现高效的关联规则挖掘。
FP-Growth算法首先构建FP树,通过频繁项集的排序和条件模式树的生成,得到频繁项集和条件模式基。
然后,通过递归地挖掘条件模式基,生成关联规则。
FP-Growth算法相对于Apriori算法而言,无需生成候选项集,减少了搜索空间,大大提高了算法的效率。
FP-Growth算法的时间复杂度较低,尤其适用于大规模数据集的关联规则挖掘。
最后是ECLAT算法。
ECLAT算法(Equivalence Class Transformation)是一种基于垂直数据表示的关联规则挖掘算法。
关联规则挖掘算法

关联规则挖掘算法关联规则是形如x→y的蕴涵式,其中, x和y分别称为关联规则的先导(antecedent 或left-hand-side, lhs)和后继(consequent或right-hand-side, rhs) 。
其中,关联规则xy,存在支持度和信任度。
挖掘过程两个阶段关联规则挖掘过程主要包含两个阶段:第一阶段必须先从资料集合中找出所有的高频项目组(frequent itemsets),第二阶段再由这些高频项目组中产生关联规则(association rules)。
关联规则发掘的第一阶段必须从完整资料子集中,找到所有高频项目组(large itemsets)。
高频的意思就是所指某一项目组发生的频率相对于所有记录而言,必须达至某一水平。
一项目组发生的频率称作积极支持度(support),以一个涵盖a与b两个项目的2-itemset为基准,我们可以经由公式(1)求出涵盖{a,b}项目组的积极支持度,若积极支持度大于等同于所预设的最轻积极支持度(minimum support)门槛值时,则{a,b}称作高频项目组。
一个满足用户最轻积极支持度的k-itemset,则称作高频k-项目组(frequent k-itemset),通常则表示为large k或frequent k。
算法并从large k的项目组中再产生large k+1,直至无法再找出更长的高频项目组年才。
关联规则挖掘的第二阶段是要产生关联规则(association rules)。
从高频项目组产生关联规则,是利用前一步骤的高频k-项目组来产生规则,在最小信赖度(minimum confidence)的条件门槛下,若一规则所求得的信赖度满足最小信赖度,称此规则为关联规则。
例如:经由高频k-项目组{a,b}所产生的规则ab,其信赖度可经由公式(2)求得,若信赖度大于等于最小信赖度,则称ab为关联规则。
案例分析就沃尔马案例而言,使用关联规则挖掘技术,对交易资料库中的纪录进行资料挖掘,首先必须要设定最小支持度与最小信赖度两个门槛值,在此假设最小支持度min_support=5% 且最小信赖度min_confidence=70%。
数据挖掘中的关联规则挖掘

数据挖掘中的关联规则挖掘数据挖掘是一种从大量数据中自动发现有用信息的过程。
将数据挖掘应用于商业领域,可以帮助企业做出更明智的决策,发现潜在客户,提高销售业绩。
而关联规则挖掘则是数据挖掘中的一个重要方法,它可以帮助我们发现数据集中项集之间的关联关系。
什么是关联规则挖掘?在数据挖掘中,关联规则挖掘是指通过挖掘数据集中的关联规则,从而发现数据集中的频繁项集之间的关联关系。
举个例子,在超市购物场景中,如果我们发现顾客购买了尿布,并伴随着啤酒的购买,那么我们就可以发现尿布和啤酒之间存在关联规则。
这个规则的意义就在于,我们一旦发现顾客购买了尿布,就有可能会购买啤酒,因此我们可以在超市中增加这两种商品的陈列位置,以提高销量。
如何进行关联规则挖掘?关联规则挖掘的过程如下:1.确定数据集和支持度阈值关联规则挖掘需要一个数据集,并且需要指定一个最小支持度阈值。
支持度是指所有包含该项集的事务数除以总事务数,即$supp(X) = \frac{count(X)}{|D|}$其中,X指数据集中的一个项集,count(X)指包含该项集的事务数,D指整个数据集。
2.寻找频繁项集频繁项集是指在数据集中出现次数超过最小支持度阈值的项集,即$\{X | supp(X) \geq minsupp\}$3.生成关联规则根据频繁项集生成关联规则,关联规则的形式为$X \rightarrow Y$其中,X和Y是项集,表示在购买X的情况下,也会购买Y。
关联规则的质量可以通过支持度和置信度来衡量。
4.衡量关联规则的质量关联规则的置信度是指在购买X的情况下,也购买了Y的概率,即$conf(X \rightarrow Y) = \frac{supp(X \cup Y)}{supp(X)}$其中,conf代表置信度,X和Y是项集,supp(X∪Y)代表同时包含X和Y的事务数,supp(X)代表X的支持度。
同时,也可以通过提升度来衡量规则的质量。
提升度是指在购买X的情况下,购买Y的概率是在没有购买X的情况下购买Y的概率的多少倍,即$lift(X \rightarrow Y) = \frac{conf(X \rightarrow Y)}{supp(Y)}$关联规则挖掘的应用场景关联规则挖掘可以被广泛应用于各种业务场景中,例如:1.零售业在零售业场景中,关联规则挖掘可以帮助零售商发现顾客之间的购买模式和趋势,从而提高销售额和客户忠诚度。
数据挖掘中的关联规则挖掘方法原理解析

数据挖掘中的关联规则挖掘方法原理解析在当今信息爆炸的时代,数据已经成为了一种重要的资源。
然而,海量的数据中蕴藏着大量有价值的信息,如何从这些数据中提取出有用的知识成为了一个亟待解决的问题。
数据挖掘作为一种从大规模数据中自动发现隐藏模式、关系和规律的技术,逐渐成为了解决这个问题的有效手段之一。
其中,关联规则挖掘方法是数据挖掘中的一种重要技术,本文将对其原理进行解析。
关联规则挖掘方法是一种用于发现数据集中项之间的关联关系的技术。
它的核心思想是通过分析数据集中的频繁项集,来发现项之间的关联规则。
在关联规则中,一般由两个部分组成:前项和后项。
前项是关联规则中的条件,而后项是关联规则中的结论。
例如,在一个超市的购物记录中,{牛奶} -> {面包}就是一个关联规则,表示购买了牛奶的顾客也有很大可能购买面包。
关联规则挖掘方法的核心是发现频繁项集。
频繁项集指的是在数据集中经常同时出现的一组项的集合。
通过发现频繁项集,我们可以得到频繁项集的所有子集,从而构建关联规则。
关联规则挖掘方法一般包括两个步骤:生成候选项集和计算支持度。
在生成候选项集的过程中,我们需要遍历数据集中的所有项,找出所有可能的项集组合。
假设数据集中有n个项,那么在生成候选项集的过程中,我们需要遍历的项集数目将会是2的n次方减去1。
这个过程非常耗时,因此需要采用一些优化策略来减少计算量。
生成候选项集之后,我们需要计算每个候选项集的支持度。
支持度指的是一个项集在数据集中出现的频率。
通过计算支持度,我们可以筛选出频繁项集,即出现频率高于预设阈值的项集。
在计算支持度的过程中,我们可以利用一些数据结构和算法来加速计算,如哈希表和Apriori算法等。
通过上述步骤,我们可以得到频繁项集,从而构建关联规则。
在构建关联规则时,我们需要利用频繁项集的所有子集。
例如,对于频繁项集{牛奶, 面包},我们可以构建以下关联规则:{牛奶} -> {面包}和{面包} -> {牛奶}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Apriori算法描述
L1={Large 1-itemsets} //扫描所有事务,计算每项出现次数,产生频繁1-项集集合L1 for (k=2; Lk-1; k++) do //进行迭代循环,根据前一次的Lk-1得到频繁k-项集集合Lk begin Ck’=join(Lkm,Lkn) // join对每两个有k-1个共同项目的长度为k的模式Lkm和Lkn进行连接 Ck =prune(Ck’)// prune根据频繁项集的反单调性,对Ck’进行减枝,得到Ck Ck= apriori-gen(Lk-1) //产生k项候选项集Ck for all transactions tD do //扫描数据库一遍 begin Ct=subset(Ck,t) // 确定每个事务t所含k-候选项集的subset(Ck,t) for all candidates c Ct do c.count++ //对候选项集的计数存放在hash表中 end Lk={c Ct | c.count min_sup} //删除候选项集中小于最小支持度的,得到k-频繁项集Lk end for all subset sLk //对于每个频繁项集Lk,产生Lk的所有非空子集s If conf(s Lk -s )>=min_conf //可信度大于最小可信度的强项集为关联规则 Then Output ( s Lk -s) //由频繁项集产生关联规则 end end //得到所有的关联规则
{I2,I3,I5}
I2,I3→I5 I2,I5→I3
Apriori算法
Apriori性质
频繁项集的所有非空子集都必须也是频繁的。
方法
首先找出所有的频繁1-项集,记为L1;然后利用
L1来产生候选2-项集组成的集合C2,对C2中的2项集进行判定挖掘出频繁2-项集组成的集合L2; 不断如此循环下去直到无法发现更多的频繁k-项 集为止。每挖掘一层Lk就需要扫描整个数据库一 遍。 一个生成的规则是否最终被保留下来,要看它是 否满足评估准则 。
3
2 1 2 4 3 3 2 3 0
30
20 10 20 40 30 30 20 30 0
{I1,I2}
{I1,I3} {I1,I5} {I2,I3} {I2,I4} {I2,I5} {I3,I4} {I3,I5}
3
2 2 4 3 3 2 3
30
20 20 40 30 30 20 30
事务数据库 TID T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 项目列表 事务数据库 I1,I2,I5 I2,I4 I2,I3 I1,I2,I4 I3,I4 I1,I3 I1,I2,I3,I5 I2,I3,I4 I2,I3,I5 I3,I5
Apriori算法生成频繁项集的过程
Lk * Lk {X Y,X与Y Lk , | X Y | K 1}
第2次迭代,产生频繁2-项集
在Apriori算法中,使用L1*L1产生候选项集。“*”运算定
义为: 当k=1时,该运算为单连接。设C2为在第2次迭代中产生 的2-项集。|C2|=|L1|· (|L1|-1)/2。在此例中为: 5· 4/2=10。因此,产生10项候选2-项集C2(产生阶段) 。 然后,计算每一个候选集的出现次数并计算支持度(计 算阶段)。 最后,选择支持度s≥50%的大2-项集L2(选择阶段)。
第二步相对容易些,因为它只需要在已经
找出的频繁项目集的基础上列出所有可能 的关联规则,同时,满足支持度和可信度 阈值要求的规则被认为是有趣的关联规则。 第一个步骤是挖掘关联规则的关键步骤, 挖掘关联规则的总体性能由第一个步骤决 定,因此,所有挖掘关联规则的算法都是 着重于研究第一个步骤。
事务数据库 TID T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 项目列表 事务数据库 I1,I2,I5 I2,I4 I2,I3 I1,I2,I4 I3,I4 I1,I3 I1,I2,I3,I5 I2,I3,I4 I2,I3,I5 I3,I5
候选2项集C2
候选2-项 集
计数 S[%]
“Apriori”节点-------Model选项卡
“Apriori”节点-------Expert选项卡
浏览模型
Setting选项卡
网状图节点---------Web
频繁2-项集L2
计数 S[%]
{I1,I2}
{I1,I3} {I1,I4} {I1,I5} {I2,I3} {I2,I4} {I2,I5} {I3,I4} {I3,I5} {I4,I5}
{I1,I2}
{I1,I3} {I1,I4} {I1,I5} {I2,I3} {I2,I4} {I2,I5} {I3,I4} {I3,I5} {I4,I5}
频繁1-项集为
L1={{牛奶},{果冻},{啤酒},{面包},{花生酱}}
频繁2-项集为
L2={{牛奶,果冻},{牛奶,啤酒},{牛奶,花生酱},{果冻,
啤酒},{果冻, 面包},{果冻, 花生酱}}
频繁3-项集为
L3={{牛奶,果冻,啤酒},{牛奶,果冻,花生酱}}
关联规则挖掘过程主要包含两个阶段
confidence ( X Y ) P(Y | X )
频繁项集
用户预先定义最小支持度阈值(min_sup)
和最小置信度阈值(min_conf)。 如果某个项集的支持度大于等于设定的最小 支持度阈值min_sup,称这个项集为“频繁 项集”(也称为“大项集”, LargeItemsets),所有的“频繁k-项集”组 成的集合通常记作Lk。
X Y
s, c
X和Y是项集 X称为规则前项(或者前件,antecedent) Y称为规则后项(或者后件,consequent)
支持度s是数据库中包含 X Y 的事务占全部事务的百分比
support( X Y ) P( X Y )
置信度c是包含 X Y 的事务数与包含X的事务数的比值
例子:
Apriori算法生成频繁项集的过程
例:某数据库D中包含有项目{I1}、{I2}、{I3}
、{I4}和{I5},用户要求的最小支持度阀值 事务数据库 s=20%。
TID T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 项目列表 事务数据库 I1,I2,I5 I2,I4 I2,I3 I1,I2,I4 I3,I4 I1,I3 I1,I2,I3,I5 I2,I3,I4 I2,I3,I5 I3,I5
Apriori算法生成频繁项集的过程
第1次迭代,产生频繁1-项集
产生候选1-项集C1(生成阶段 然后,计算每一个候选集的出现次数并计算支
持度(计算阶段)。 最后,选择支持度s≥20%的项目,生成频繁1项集L1(选择阶段)。
事务数据库 TID T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 项目列表 事务数据库 I1,I2,I5 I2,I4 I2,I3 I1,I2,I4 I3,I4 I1,I3 I1,I2,I3,I5 I2,I3,I4 I2,I3,I5 I3,I5源自第3次迭代,产生大3-项集
候选3-项集C3 {I1,I2,I3} {I1,I2,I5} {I1,I3,I5}
候选3-项集 计数 S[%] {I1,I2,I3} {I1,I2,I5} {I1,I3,I5} 1 2 1 10 20 10
频繁3-项集L3 计数 S[%]
{I1,I2,I5}
2
20
{I2,I3,I4}
5.2.2 在Clementine中应用Apriori算法
利用超市顾客个人信息和他们的一次购买商
品数据为例,讲解Aprioir算法的具体操作。
数据源为 BASKETS.txt ,为文本格式文件。
数据包括两大部分的内容,第一部分是顾客的个
人信息,第二部分是顾客的一次购买商品的信息。
数据源
“Apriori”节点-------Field选项卡
频繁项集 {I1,I2} {I1,I3} {I1,I5} {I2,I3}
产生的规则 I1→I2 I2→I1 I1→I3
置信度 3/4 3/7 2/4
强关联规则 I1→I2
置信度 3/4
I3→I1
I1→I5 I5→I1 I2→I3 I3→I2 {I2,I4} {I2,I5} I2→I4 I4→I2 I2→I5 I5→I2
基本概念
一个样本称为一个“事务” 每个事务由多个属性来确定,这里的属性我们称为“项” 多个项组成的集合称为“项集”
k-项集
由k个项构成的集合
{牛奶}、{啤酒}都是1-项集; {牛奶,果冻}是2-项集; {啤酒,面包,牛奶}是3-项集。
每个事务其实就是一个项集
关联规则的表示
深度优先算法
FP-growth Eclat H-Mine
5.2 Apriori算法
R.Agrawal 等人在 1993 年设计了一个 Apriori 算法 是一种最有影响力的挖掘布尔关联规则频繁项集 的算法。其核心是基于两阶段的频集思想的递推 算法。该关联规则在分类上属于单维、单层、布 尔关联规则。 该算法将关联规则挖掘分解为两个子问题: (1)找出存在于事务数据库中所有的频繁项目集。 即那些支持度大于用户给定支持度阈值的项目集。 (2)在找出的频繁项目集的基础上产生强关联规 则。即产生那些支持度和可信度分别大于或等于 用户给定的支持度和可信度阈值的关联规则。
第5章
关联规则
主要内容
关联规则概述 Apriori算法
序列模式
5.1 关联规则概述
数据关联是数据库中存在的一类重要的可被发现的 知识。若两个或多个变量的取值之间存在某种规律 性,就称为关联。 关联规则挖掘的一个典型例子是购物篮分析。