基本概念

频繁模式挖掘搜索给定数据及中国反复出现的联系。

购物篮分析:一个例子

频繁项集、闭项集和关联规则

规则的支持度置信度是规则兴趣度的两种度量。
一个例子:

  • 支持度:支持度为2%,意味着分析的所有事务的2%显示计算机和杀毒软件被同时购买
  • 置信度:置信度60%,意味着购买计算机的顾客60%也购买了杀毒软件。

    在典型情况下,如果满足最小支持度阈值最小置信度阈值,关联规则被认为是有趣的。

设$\mathcal{I} = {I_1, I_2,...,I_m}$是项的集合,设任务相关的数据$D$是数据库事务的集合,其中每个事务$T$是一个非空相机,使得$T \subseteq \mathcal{I}$。每个事务都有一个标识符,称为$TID$。假设$A、B$分别表示一个项集,则:

同时满足最小支持度阈值(min_sup)最小置信度阈值(min_conf)的规则称为强规则,为方便计算,用0% - 100%之间的值,而不是0.0-1.0之间的值表示支持度和置信度。

置信度的另外的计算方法就是用项集的频度支持度计数

一般而言,关联规则的挖掘是一个两步的过程:

  1. 找出所有的频繁项集: 这些项集的每一个频繁出现的次数至少与预定义的最小支持计数min_sup一样。
  2. 由频繁项集产生强关联规则:这些规则必须满足最小支持度和最小置信度。

频繁项集挖掘方法

Apriori算法是一种发现频繁项集的基本算法。

Apriori算法:通过限制候选产生发现频繁项集



先验性质: 频繁项集的所有非空子集也一定是频繁的。

如何在算法中使用先验性质?

  • 连接步
  • 剪枝步

下面通过一个例子说明:



由频繁项集产生关联规则

由上面计算置信度的公式:

下来是一个例子:

如果最小置信度的阈值为70%,则只有第2、第3和最后一个规则可以输出,因为只有这些是强规则。

提高Apriori算法的效率

  • 基于散列的计数: 一种基于散列的计数可以用于研所候选k项集的集合。

以考察k=2项集为例,对应得桶计数低于支持度阈值的2项集不可能是频繁的,因此直接从候选集中删除:

其中$h(x,y) = ((x的序) * 10 + (y的序)) mod 7$中的$x,y$的序表示的是项集的下标。

  • 事务压缩
  • 划分(为找候选项集划分数据)

挖掘频繁项集的模式增长方法

Apriori算法的候选产生-检查方法显著压缩了候选项集的规模,并产生了很好的性能,但是它可能受两种非平凡开销的影响。

  • 它可能仍然需要产生大量候选项集。例如,如果有$10^4$个频繁1项集,则Apriori算法需要产生多达$10^7$个候选2项集
  • 它可能休要重复扫描整个数据库,通过模式匹配来检查一个很大的候选集合,检查数据库中每个事务来确定候选项集支持度的开销很大。

一种不产生候选项集的方法叫做频繁模式增长(FP-growth),算法思想如下:

例子如下:


FP树的挖掘过程如下:

使用垂直数据格式挖掘频繁项集

Apriori算法和FP-growth算法都从TID项集格式的事务集中挖掘频繁模式(即${TID: itemset}$),这种数据格式称为水平数据格式

其中TID是事务表示符,而itemset是事务TID中购买的商品

也可以反过来使用${item :TID_set}$格式表示,这种数据格式称为垂直数据格式



这种方法的优点:

  1. 项集的支持度计算简单地等于项集的TID集的长度
  2. 不需要扫描数据库来确定(k+1)项集的支持度,因为每个k项集的TID集携带了计算支持度的完整信息。

转载于:https://www.cnblogs.com/htfeng/p/9935704.html

挖掘频繁模式、关联和相关性:基本概念和方法相关推荐

  1. 【数据挖掘笔记六】挖掘频繁模式、关联和相关性:基本概念和方法

    6.挖掘频繁模式.关联和相关性:基本概念和方法 频繁模式(frequent pattern)是频繁地出现在数据集中的模式. 6.1 基本概念 频繁模式挖掘搜索给定数据集中反复出现的联系,旨在发现大型事 ...

  2. 挖掘频繁模式、关联和Apriori算法

    挖掘频繁模式.关联和Apriori算法 1. 引入 1.1 基本概念 频繁模式:频繁出现在数据集中的模式 频繁模式挖掘:获取到给定数据集中反复出现的联系 注:模式其实可以理解为,你在淘宝购物,你的购物 ...

  3. apriori算法_挖掘频繁模式、关联和Apriori算法

    挖掘频繁模式.关联和Apriori算法 1. 引入 1.1 基本概念 频繁模式:频繁出现在数据集中的模式 频繁模式挖掘:获取到给定数据集中反复出现的联系 注:模式其实可以理解为,你在淘宝购物,你的购物 ...

  4. 挖掘频繁模式、关联和相关

    前言 如何从大量的事务的或关系的数据中发现关联规则? 如何挖掘多层和多维空间中的关联规则? 什么样的关联规则是最有趣的? 如何帮助或指导挖掘过程发现有趣的关联或相关? 如何利用用户选择的参数或约束加快 ...

  5. 十七、频繁模式、关联和相关性的基本概念和方法

    1.挖掘频繁模式.关联和相关性 动机:寻找数据的内在规律 什么样的产品会经常在一起购买? 当购买一台电脑后,后续会有哪些购买行为? 数据离散化是一种数据变换形式. 数据变换策略概述 通过规范化变换数据 ...

  6. 频繁模式挖掘——概述

    频繁模式挖掘(Frequent Pattern Mining) 基本概念 a. 频繁模式(frequent pattern)是频繁地出现在数据集中的模式(如项集.子序列或子结构). 例如: i. 频繁 ...

  7. 数据挖掘(一)频繁模式挖掘算法的实现和对比

    注:参考多篇CSDN文章所得 一.实验内容 巩固频繁模式挖掘的基本算法原理及特点,设计程序,基于不同特征的数据集比较不同方法的优缺点,并基于算法原理和特点分析造成这种现象的原因. 二.算法原理 1 A ...

  8. 关联规则(挖掘),数据关联(融合)

    3月9日07:49|  新浪博客|  来源:时空交互|  查看原文> 关联式规则 关联式规则(Association Rules, AR),又称关联规则,是数据挖掘的一个重要课题,用于从大量数据 ...

  9. FP-Tree频繁模式树算法

    参考资料:http://blog.csdn.net/sealyao/article/details/6460578 更多数据挖掘算法:https://github.com/linyiqun/DataM ...

最新文章

  1. 【Python】Python 过滤列表
  2. numpy(7)-广播
  3. 斐波那契数列与阶乘---递归实现
  4. 十面阿里,菜鸟,天猫,蚂蚁金服题目总汇
  5. 对 飞秋 程序设计的一些新想法
  6. 极光推送---安卓Demo
  7. mvc3入门 第一个程序Helllo World
  8. python自定义排序规则_python自定义排序
  9. c语言 选择结构,C语言学习:选择结构
  10. web前端移动开发必须知道那些基础
  11. jQuery判断checked的三种方法
  12. jquery实现HTML复选框变单选框
  13. Air202入坑指南4---UART2(简单使用)
  14. MSSQL数据库快捷键大全
  15. 【C语言】自定义函数例题解析
  16. 深圳大学计算机考研资料汇总
  17. 计算机相关书单汇总:基础、理论、网络、编码、C/C++、其他编程语言
  18. Java 应用 编译成 Mac 应用
  19. 计算机视觉岗秋招面经
  20. 微信小程序(看文档写实例九)微信小程序课堂宝APP实现练习模块逻辑代码

热门文章

  1. bzoj 4278 Tasowanie 后缀数组+贪心
  2. 设计模式之单例模式——Singleton
  3. Android Get方式发送信息
  4. JS控制CSS样式语法对照
  5. 在国美购置iPad者可获差价1100元
  6. nginx 如何解析php文件php-fpm的解释
  7. CompletableFuture java 8新增加异步处理
  8. 让IE6-IE8 支持HTML5
  9. iOS开发中对NSArray或者NSMutableArray中的内容排序
  10. iOS 9之Safari广告拦截器(Content Blocker)