一、背景介绍

关联规则( 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. asp.net mvc 之旅—— 第四站 学会用Reflector调试我们的MVC框架代码

    我们知道,现在能调试.net程序通常有两个,第一个是ILSpy,还是一个是Reflector,这两个小反编译软件算是我们研究底层代码中所拥有的一把 锋利小尖刀~~~,比如你看到的ILSpy这样的界面图 ...

  2. 大数据系列(3)——Hadoop集群完全分布式坏境搭建

    前言 上一篇我们讲解了Hadoop单节点的安装,并且已经通过VMware安装了一台CentOS 6.8的Linux系统,咱们本篇的目标就是要配置一个真正的完全分布式的Hadoop集群,闲言少叙,进入本 ...

  3. Linux I/O多路复用

    Linux中一切皆文件,不论是我们存储在磁盘上的字符文件,可执行文件还是我们的接入电脑的I/O设备等都被VFS抽象成了文件,比如标准输入设备默认是键盘,我们在操作标准输入设备的时候,其实操作的是默认打 ...

  4. MySQL GROUP_CONCAT函数使用示例:如何用一个SQL查询出一个班级各个学科第N名是谁?

    如何用一个SQL查询出一个班级各个学科第N名是谁? 首先贴出建表语句,方便大家本地测试: -- 建表语句 CREATE TABLE score ( id INT NOT NULL auto_incre ...

  5. 在Cortex-M系列上如何准确地做us级延时?

    前几天刚好同事问起在Cortex-M上延时不准的问题,在网上也没找到比较满意的答案,干脆自己对这个问题做一个总结. 根据我们的经验,最容易想到的大概通过计算指令周期来解决.该思路在Cortex上并不是 ...

  6. Oracle数据库穿越防火墙访问

    原因 Oracle listener 只起一个中介作用,当客户连接它时,它根据配置寻找到相应的数据库实例进程,然后spawned一个新的数据库连接,这个连接端口由listener传递给客户机,此后客户 ...

  7. TFS修改项目名称

    引言 如何让TFS管理的项目更名后不丢失修改历史记录? 在工作中有时由于前期考虑不足,某个Project的名字在项目开发过程中需要修改以更准备表达它的功能.本文就对此进行抛砖引玉 操作 在Source ...

  8. FTP协议

    1. FTP协议 什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写. 该协议是Internet文件传送的基础,它由一系列规格说明文 ...

  9. [AR]高通Vuforia之Frame Markers

    软件环境 SDK:FrameMarkers-6-0-112.unitypackage(从官网 -> Download -> Samples -> Core Features 下载 ) ...

  10. bash 脚本编程 利用 “=” 赋值时,左右不能留空格

    对脚本变量用“=”赋值时, "=" 左右不能留有空格,否则会提示错误. 比如以下例子: #!/bin/bash BEGIN_TIME = `date +%H:%M:%S` ./a. ...