数据挖掘导论学习笔记 第六章 关联分析:基本概念和算法

6.1问题定义

关联分析(association analysis) 用于发现隐藏在大型数据集中有意义的联系,所发现的联系可以用关联规则或者频繁项集的形式表示

项集和支持度计数

以购物篮数据集为例

TID 面包 牛奶 尿布
1 1 1 0
2 1 0 1
5 1 1 1

I = { i 1 , i 2 , … , i d } I=\{i_1,i_2,\ldots,i_d\} I={ i1,i2,,id}表示所有项的集合, T = { t 1 , … , t N } T=\{t_1,\ldots,t_N\} T={ t1,,tN}表示所有事务的集合。在关联分析中包含0个或多个项的集合被称为项集(itemset).如果一个项集包含k个项,则称他为k-项集。事物的宽度定义为事务中出现的项的个数。项集的另一个重要性质是支持度系数,即包含特定项集的事务数,可以表示为: σ ( X ) = ∣ { t i ∣ X ⊆ t i , t i ∈ T } ∣ \sigma(X)=|\{t_i|X \subseteq t_i,t_i\in T\}| σ(X)={ tiXti,tiT}其中|·|表示为集合中元素的个数。

关联规则(association rule)

关联规则是形如 X → Y X\to Y XY的蕴含表达式,其中X和Y是不相交的项集。关联规则的强度可以用支持度(support)和置信度(confince)度量.支持度可以用于给定数据集的频繁程度,而置信度确定Y在包含X的事务中出现的频繁程度。 s ( X → Y ) = σ ( X ∪ Y ) N c ( X → Y ) = σ ( X ∪ Y ) σ ( X ) s(X\to Y)=\frac{\sigma(X\cup Y)}{N}\\ c(X\to Y)=\frac{\sigma(X\cup Y)}{\sigma(X)} s(XY)=Nσ(XY)c(XY)=σ(X)σ(XY)支持度低的规则可能是偶然出现的,置信度低的规则Y,在出现X的事务中出现的可能性较低。

关联规则挖掘任务分解为两个子任务

  • 频繁项集产生:发现满足最小支持度阈值的所有项集。
  • 规则的产生:从上一步发现的频繁项集中提取所有的高置信度的规则,这些规则称为强规则。也就是说这些规则XY同时出现的概率很高

6.2频繁项集的产生

通过格结构(lattice structure)来枚举可能的项集,经过每个候补项集与事务进行比较筛选出频繁项集。
为了减少频繁项集的计算复杂度:

  • 减少候选项集的数目。运用先验原理
  • 减少比较次数。可以使用更高级的数据结构或者存储候选项集或者压缩数据集
    这些方法在后面的章节会有讨论

6.2.1先验原理

如果一个项集是频繁的,那么他的所有子集一定也是频繁的。相反如果一个项集是非频繁的,那么他的超集一定也是非频繁的。
一旦发现一个项集是非频繁的,整个包含它的超集的子图可以被立刻剪枝。这种基于支持度度量剪枝的策略称为基于支持度的剪枝。这种策略依赖于一个关键性质,即一个项集的支持度绝不会超过它的子集的支持度

6.2.2Apriori算法的频繁项集产生


| k = 1 k=1 k=1
| F k = { i ∣ i ∈ I ∧ σ { i } ≥ N × m i n s u p } F_k=\{i|i\in I\land\sigma\{i\}\ge N\times minsup\} Fk={ iiIσ{ i}N×minsup} ( 发 现 所 有 的 频 繁 1 − ∣ 项 集 ) (发现所有的频繁1-|项集) (1)
| r e p e a t repeat repeat
| k = k + 1 \quad k=k+1 k=k+1
| C k = a p r i o r i − g e n ( F k − 1 ) \quad C_k=apriori-gen(F_{k-1}) Ck=apriorigen(Fk1) ( 产 生 候 选 项 集 ) (产生候选项集) ()
| f o r 每 个 事 务 t ∈ T d o \quad for 每个事务t∈T do fortTdo
| C i = s u b j e c t ( C k , t ) \qquad C_i=subject(C_k,t) Ci=subject(Ck,t) ( 识 别 属 于 t 值 的 所 有 候 选 ) (识别属于t值的所有候选) (t)
| f o r 每 个 候 选 项 集 c ∈ C t \qquad for 每个候选项集c \in C_t forcCt do
| σ ( c ) = σ ( c ) + 1 \qquad \sigma(c)=\sigma(c)+1 σ(c)=σ(c)+1 ( 支 持 度 计 数 增 值 ) (支持度计数增值) ()
| e n d   f o r \qquad end\ for end for
| e n d   f o r \quad end\ for end for
| F k = { c ∣ c ∈ C k ∧ σ ( c ) ≥ N × m i n s u p } ( 提 取 频 繁 k − 项 集 ) \quad F_k=\{c|c\in C_k \land \sigma(c)\ge N \times minsup\}(提取频繁k-项集) Fk={ ccCkσ(c)N×minsup}(k

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
数据挖掘导论》是由段磊编写的一本关于数据挖掘的入门教材。本书系统地介绍了数据挖掘基本概念、方法和应用领域。在300字中,我们可以简要回答以下几个问题: 该书的内容主要包括哪些方面? 《数据挖掘导论》主要内容包括数据挖掘基本概念、数据预处理、数据挖掘分类与预测、关联分析、聚类分析、异常检测等几个方面。它从理论和实践相结合的角度,系统地介绍了数据挖掘的核心内容。 该书适合哪些读者阅读? 本书适合对数据挖掘感兴趣的各类读者,尤其是新手。无论是学生、研究者还是从业者,都可以通过阅读本书掌握数据挖掘的基本理论和方法。 该书的特点有哪些? 《数据挖掘导论》具有以下几个特点:首先,该书详细地介绍了数据挖掘的基本理论和常用的方法,通过实例和案例分析,将理论与实践相结合,有助于读者更好地理解数据挖掘的核心概念和技术。其次,该书以通俗易懂的语言编写,注重启发读者的思维,通过问题引导和讨论,激活读者的学习兴趣。再次,该书还提供了丰富的学习资源,包括习题、编程实践和相关参考文献,方便读者巩固所学知识。 总结: 《数据挖掘导论》是一本介绍数据挖掘基本理论和方法的教材,适合数据挖掘领域的初学者阅读。它通过通俗易懂的语言、实例和案例分析,帮助读者掌握数据挖掘的核心概念和技术。该书还提供了丰富的学习资源,方便读者巩固所学知识。无论是学生、研究者还是从业者都可以通过阅读本书系统地学习数据挖掘的基础知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李烟云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值