一、背景介绍

关联规则( Association rule)概念最初由Agrawal提出,是数据挖掘的一个重要研究领域, 其目的是发现数据集中有用的频繁模式。

静态关联规则挖掘,是在固定数据集和支持度下,发现数据集中的频繁项集,如 Apriori、FP-Growth、Ecalt等。现实问题中,多数时候,支持度和数据集是会发生变化的,Cheung提出了FUP (Fast UPdate)算法,主要针对数据集增大的情况,FUP算法是第一个增量关联规则挖掘算法。

二、相关定义

数据集DB = {T1,T2,T3,…,Tn},数据集的大小N = |DB|,Ti是其中一条事务,I = {I1,I2,…,Im}是事务的项集,Ti是I的子集。项集 X,Y( X,Y是I的子集) 且 X∩Y = Φ, X=〉Y 为关联规则. X在数据集中出现的次数为 count( X) ,其支持度为: support( X)= count( X) /D ,对于最小支持度 minsup, 若support ( X) ≥minsup,称为频繁项.

增量关联规则挖掘是指数据集变化或者支持度变化时的关联规则挖掘。数据集增加时新增数据集为db,增量数据集的大小d = |db|

频繁项集挖掘的重要性质:频繁项集的非空子集也是频繁项集,非频繁项集的超集也是非频繁项集。

三、算法描述

(1)输入

  DB 原数据集;

  L k 为 DB 上的 k 项集;

  db 新增数据集;

  s支持度阈值

(2)输出

  DB + db 上的频繁项集 L' k

(3)算法

  a)频繁1项集挖掘

    扫描 db,获得 db 上的候选集 C; 对原 1 项集在 DB + db的频繁项加到 L'1 中; 扫描 DB,统计 C 在 DB 上的支持度, 频繁项加入到 L'1 中,C中的非频繁项加入到P中,扫描事务数据库时,从所有事物数据中将在P中的项移  除(减少扫描数据的大小),返回频繁1项集L'1。

  b)频繁2项集挖掘(同理:频繁多项集挖掘)

    对原频繁2项集中的频繁项,若其子集属于L1 – L’1,则直接淘汰,扫描db,统计将L2中剩余的项集在DB+db中任是频繁项集的部分加入到L’2。C2由L’1规约得到,去掉和L2中重复的项,剩下的项集统计在db中支持度,过  滤掉不可能成为频繁项集的部分,扫描DB,将新增的频繁项集加入到L’2中,非频繁项集加入到p中,过滤事务数据中属于p的项。依次挖掘,直到找到所有频繁项集即可。

四、例子

D = 1000  d = 100  s = 3%。I1,12,I3, I4 是事务的项.

I1,12是频繁1项集

I1.supportD = 32   I2.supportD = 31

I3.supporitD= 28

扫描db

I1.supportd = 4    I2.supportd = 1

I3.supportd = 6    I4.supportd = 2

I1.supportUD = 36 >1100*3%   I2.supportUD = 32 < 1100 * 3 %

I1加入到L’1中

I3、I4不在L1中,I3.supportd = 6>100*3%  I4.supportd = 2<100*3%

I3加入到C1中,I4加入到P中

扫描DB(过滤掉P中的非频繁项集)

I3.supportUD = 34 >1100*3%  I3加入到L’1中

输出L’1 ={ I1 ,I3}

增量关联规则挖掘—FUP算法的更多相关文章

  1. 数据挖掘进阶之关联规则挖掘FP-Growth算法

    数据挖掘进阶之关联规则挖掘FP-Growth算法 绪 近期在写论文方面涉及到了数据挖掘,需要通过数据挖掘方法实现软件与用户间交互模式的获取.分析与分类研究.主要涉及到关联规则与序列模式挖掘两块.关联规 ...

  2. 推荐系统第4周--- 基于频繁模式的推荐系统和关联规则挖掘Apriori算法

    数据挖掘:关联规则挖掘

  3. [数据挖掘课程笔记]关联规则挖掘 - Apriori算法

    两种度量: 支持度(support)  support(A→B) = count(AUB)/N (N是数据库中记录的条数) 自信度(confidence)confidence(A→B) = count ...

  4. 关联规则挖掘--Eclat算法

  5. 关联规则挖掘--Apriori算法

  6. 数据挖掘系列(1)关联规则挖掘基本概念与Aprior算法

    整理数据挖掘的基本概念和算法,包括关联规则挖掘.分类.聚类的常用算法,敬请期待.今天讲的是关联规则挖掘的最基本的知识. 关联规则挖掘在电商.零售.大气物理.生物医学已经有了广泛的应用,本篇文章将介绍一 ...

  7. 关联规则挖掘之apriori算法

    前言: 众所周知,关联规则挖掘是数据挖掘中重要的一部分,如著名的啤酒和尿布的问题.今天要学习的是经典的关联规则挖掘算法--Apriori算法 一.算法的基本原理 由k项频繁集去导出k+1项频繁集. 二 ...

  8. 关联规则挖掘算法之Apriori算法

    Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集. 关于这个算法有一个非常有名的故事:"尿布和啤酒".故事是 ...

  9. 数据挖掘算法之-关联规则挖掘(Association Rule)

    在数据挖掘的知识模式中,关联规则模式是比较重要的一种.关联规则的概念由Agrawal.Imielinski.Swami 提出,是数据中一种简单但很实用的规则.关联规则模式属于描述型模式,发现关联规则的 ...

随机推荐

  1. Linux查看设置系统时区

    关于时区的概念,其实初中地理课已经涉及,很多人都多少了解一些,可能只是细节搞不太清楚.为什么会将地球分为不同时区呢?因为地球总是自西向东自转,东边总比西边先看到太阳,东边的时间也总比西边的早.东边时刻 ...

  2. T-SQL 将存储过程结果插入到表中

    解决方案1: CREATE TABLE #tmpBus (    COL1 INT,    COL2 INT )   INSERT INTO #tmpBus Exec SpGetRecords 'Pa ...

  3. Java 堆

    特性: 虚拟机启动时创建的线程共享的内存区域,所有实例对象和数组对象分配内存的区域 GC垃圾手机管理器管理的主要区域,GC堆 容量可以固定,也可以动态扩展,自动收缩 -Xmx最大堆大小 -Xms最小. ...

  4. java实现支付宝接口--文档..转载

    //实现java支付宝很简单,只要从支付宝官方下载   http://help.alipay.com/support/index_sh.htm下载程序,配置一下参数就OK了:   1.先到http:/ ...

  5. jQuery validator自定义

    项目中接触到validator,记录下 jQuery.validator.addMethod("isStrongPwd", function(value, element){ va ...

  6. 如何正确的使用json?如何在.Net中使用json?

    什么是json json是一种轻量级的数据交换格式,由N组键值对组成的字符串,完全独立于语言的文本格式. 为什么要使用json 在很久很久以前,调用第三方API时,我们通常是采用xml进行数据交互,但 ...

  7. js/jquery/html前端开发常用到代码片段

    1.IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条件注释只能用于IE5以上,IE ...

  8. python3使用pyqt5制作一个超简单浏览器

    我们使用的是QWebview模块,这里也主要是展示下QWebview的用法. 之前在网上找了半天的解析网页的内容,都不是很清楚. 这是核心代码: webview = Qwebview() webvie ...

  9. 骨骼蒙皮动画算法(Linear Blending Skinning)

    交互式变形是编辑几何模型的重要手段,目前出现了许多实时.直观的交互式变形方法.本文介绍一种利用线性混合蒙皮(Linear Blending Skinning,LBS)技术来实现网格变形的方法,线性混合 ...

  10. 第3章 Linux常用命令(2)_权限管理命令

    2. 权限管理命令 2.1 改变文件或目录权限:chmod (1)chmod命令 命令名称 chmod(change the permission mode of a file) 命令所在路径 /bi ...