一、论文整体思路:

作者提出了一种基于前缀树的数据结构,NegNodeset,其实是对之前前缀树的一种改进,主要区别在于采用了位图编码,通过这种数据结构产生的算法称为negFIN。

negFIN算法高效有三个原因

二、问题定义

I= {i1,i2,…, init} 表示事务数据库所有项的集合,T表示每个事务,T⊆I ,DB = {T1,T2,…, Tnt} 是所有事务的集合

P称为k-项集,如果P⊆T ,那么事务T包含了项集P,support(P)是DB中包含P的百分比,如果support(P)大于min-support

我们就称P为频繁项集,频繁项集是2的nit 次方,nit = |I| 。

三、之前贡献

主要对前缀树的研究,结构1)Node-list,2)N-list,3)Nodeset,4)DisffNodeset (***先理解下前缀树和哈希树)

1) Node-list和N-list是通过对节点进行先序和后序排列,这两种数据结构产生的算法分别是PPV和PrePost频繁项集挖掘算法,

这两个算法的缺点消耗了大量内存;

2)对于这种情况,数据结构Nodeset将其进行改进,k-项集的获得通过取k-1项集的交集,算法为FIN,确定是对于一些数据集Nodeset基数太大;

3)为了将其进行改进,DiffNodest数据结构提出,k-项集的获得两个不同的k-1项集获得,算法为dFIN,算法的更快了。

4)文中提出了NegNodeset为了实现计算两个不同的DiffNodesets花费时间较长,主要利用的是位图,提出的算法negFIN;

四、相关工作

频繁项集挖掘算法

1)通过产生候选项集

比如Apriori算法,以及一些其他的算法,这种方法的主要缺点是需要多次扫描数据库。

2)模式增长方法

这种方式不会产生候选项集,也避免了多次扫描数据库,包括FP-tree和FP-growth算法,缺点:对于稀疏的数据集效率低,数据结构复杂。

3)前缀树方法

五、基本术语

F1频繁项集的集合,例如F1 = {e, b, a, c, d} ,
L1是根据支持度进行非降序排列的频繁项集L1 = [e, d, c, b, a] ,L1 = [i0,i1,…, inf - 1] ,nf=|F1|
k-项集P,Pk = ik…i2i1 ,ik>...>i2>i1

例如P = {e, b, d} ,P3 = bde ,对Pk进行位图编码BMC(Pk) = bnf - 1…b1b0 ,这里需要注意的是

BMC(node-path)分为两部分,主要部分和无关部分

论文总结(negFIN: An efficient algorithm for fast mining frequent itemsets)的更多相关文章

  1. 【HEVC帧间预测论文】P1.7 Content Based Hierarchical Fast Coding Unit Decision Algorithm

    Content Based Hierarchical Fast Coding Unit Decision Algorithm For HEVC <HEVC标准介绍.HEVC帧间预测论文笔记> ...

  2. 论文阅读笔记二十六:Fast R-CNN (ICCV2015)

    论文源址:https://arxiv.org/abs/1504.08083 参考博客:https://blog.csdn.net/shenxiaolu1984/article/details/5103 ...

  3. 【论文翻译】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

    MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications 论文链接:https://arxi ...

  4. 论文翻译:2020_TinyLSTMs: Efficient Neural Speech Enhancement for Hearing Aids

    论文地址:TinyLSTMs:助听器的高效神经语音增强 音频地址:https://github.com/Bose/efficient-neural-speech-enhancement 引用格式:Fe ...

  5. algorithm@ Matrix fast power

    一. 什么是快速幂: 快速幂顾名思义,就是快速算某个数的多少次幂.其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高.一般一个矩阵的n次方,我们会通过连乘n-1次来得到它的n次 ...

  6. 【论文阅读】A practical algorithm for distributed clustering and outlier detection

    文章提出了一种分布式聚类的算法,这是第一个有理论保障的考虑离群点的分布式聚类算法(文章里自己说的).与之前的算法对比有以下四个优点: 1.耗时短O(max{k,logn}*n), 2.传递信息规模小: ...

  7. 第八周论文学习03 An Efficient Tree-based Power Saving Scheme for Wireless Sensor Networks with Mobile Sink

    来源:IEEE Sensors Journal Year: 2016, Volume: 16, Issue: 20 Pages: 7545 - 7557, DOI: 10.1109/JSEN.2016 ...

  8. 论文总结(Frequent Itemsets Mining With Differential Privacy Over Large-Scale Data)

    一.论文目标:将差分隐私和频繁项集挖掘结合,主要针对大规模数据. 二.论文的整体思路: 1)预处理阶段: 对于大的数据集,进行采样得到采样数据集并计算频繁项集,估计样本数据集最大长度限制,然后再缩小源 ...

  9. Apriori algorithm

    本文是个人对spmf中example1. mining frequent itemsets by  using the apriori algorithm的学习. What is Apriori? A ...

随机推荐

  1. QTP 自动化测试--点滴 获取datatable数值/dafault文件位置

    0 设置default.xls文件位置 右键项目-settings-resources-datatable-选择 数据表的位置如图 心得:同一个项目-分成多个测试项目-这些测试项目可以共用同一张数据表 ...

  2. 七、.net core下配置、数据库访问等操作实现

    配置读取 .net core下读取配置还是有点麻烦的,本身没有System.Configuration.dll,所以在进行配置前需要自行引用Microsoft.Extensions.Configura ...

  3. tensorflow点滴笔记

    1.模型保存 模型保存需要使用函数 tf.train.Saver(), a)创建saver时,可以指定需要存储的tensor,如果没有指定,则全部保存. b) 创建saver时,可以指定保存的模型个数 ...

  4. LODOP设置打印机不存在不打印

    LODOP中打印机的选择有优先级的存在,如果程序中指定的是错误的打印机,那么会走下一个优先级,这样,就可能存在选择了打印机无效,从默认打印机打印出来了,可以在代码里加判断避免这一点. 打印机优先级简介 ...

  5. 【python练习题】程序4

    # 题目:输入某年某月某日,判断这一天是这一年的第几天? import time year = input('输入年份: \n') month = input('输入月份: \n') day = in ...

  6. draknet网络配置参数

    https://blog.csdn.net/hrsstudy/article/details/65447947?utm_source=itdadao&utm_medium=referral [ ...

  7. faster rcnn训练详解

    http://blog.csdn.net/zy1034092330/article/details/62044941 py-faster-rcnn训练自己的数据:流程很详细并附代码 https://h ...

  8. c++ 实现拓扑排序

    要简洁大方地实现拓扑排序,首先要了解两个标准模板 std::queue 和 std::vector 1 queue 添加头文件 #include<queue> 定义一个int类型的队列 q ...

  9. git在Linux下的安装

    参考:https://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git Git 的工作需要调用 curl,zlib,op ...

  10. JMeter——JMeter如何进行汉化

    1.找到bin目录下的jmeter.properties文件 2.打开找到第37行,打开注释并将language=en改为language=zh_CN 3.重启