如何计算数据立方体中聚合单元的个数?

课件例题

这个题如此抽象,先看一下基本概念:

有两种情况:count>=1,count>=2

理解一下,这里count>=1时,相当于把每个基础单元格看作集合,然后求出这个集合的所有真子集,然后取并集

发现

数据立方体count>=k(k>=2,k=1的时候还是用容斥原理吧)时聚合单元的个数,等于挖掘频繁项集支持度>=k的个数+1(ALL的情况)

可以这样理解,如果是(a1,b1,*,*)这种情况,就是不考虑后面的项目,相当于只有(a1,b1)

对于课件中count>=2的这一问,1-频繁项集a1,a2,2-频繁项集a1a2,再加上ALL,共4个

一个练习题

按照挖掘频繁项集的思路:1-频繁项集:a1,b1,c1,共3个

2-频繁项集a1b1,a1c1,共2个

3-频繁项集,没有

再加上(*,*,*,*,*,*),一共6个

如果是count>=1呢?

T1T2T3都有2^6 ,3*2^6

T1T2共有(a1,b1),2^2;T2T3共有(a1),2;T1T2共有(a1,c1),2^2

T1T2T3共有a1,2

根据课件中讲的,还要减去basecell,也就是184-3 = 181

闭立方体

冰山立方体与闭立方体常常比较

还是这个例题:

计算冰山立方体的数目与闭立方体的数目

冰山立方体的结果是

闭立方体的计算结果是

(a1)(a1,b1)(a1,c1)

在冰山立方体的基础上,找到最长的项集(a1,b1),(a1,c1),如果它分别的子集(a1),(b1)和(a1),(c1)的count值跟它一样,就把子集去掉

另外,all相当于空集的情况

因为(a1)的子集有空集,且all的count也是3,于是all也被剔除掉了

闭立方体同样可以用闭频繁项集理解:

刚刚的闭立方体是无损压缩,还有个概念是最大立方体,是有损压缩

最大立方体

用之前的例子:

也是先算冰山立方体

最大立方体只有两个记录:(a1,b1),(a1,c1)

同样用频繁项集的概念来理解,最大立方体对应最大频繁项集,也就是要去掉频繁项集的子集(a1,b1)包含子集(a1)(b1)空集,(a1,c1)包含子集(a1)(c1)空集都去掉

闭立方体与最大立方体的区别

闭立方体在剔除的时候,只剔除子集中与这个项集count数目一致的,而最大立方体,不管子集的大小,都剔除

这里立方体定义的时候与项集不同

立方体定义的,父集是(a1,*,*,*),它的子集是(a1,b1,*,*)等

而我刚刚说的子集是项集这个集合的概念,(a1,b1)的子集是(a1)(b1)

对于(*,*,*,*)这种all的情况,相当于空集

(个人认为用项集的概念转化一下就更好理解,希望能有原始的更好的理解方法)

相关推荐
databook28 分钟前
时间序列数据,先拆规律还是先查异常
python·数据挖掘·数据分析
wangxiaoxuan2172 天前
从深度图到点云:投影、滤波、降采样与聚类
机器学习·数据挖掘·机器人·聚类·科沃斯八界
Aloudata4 天前
Claude 做数据分析的这两年:一份复盘与发展线索
大数据·数据库·人工智能·数据挖掘·数据分析·dataagent
GrowingIO技术社区6 天前
用户行为分析怎么做?从业务目标到改进验证的完整流程
大数据·数据挖掘·数据分析
GrowingIO技术社区9 天前
CDP、行为分析、归因与营销自动化有什么区别?
数据结构·数据挖掘·数据分析
GrowingIO技术社区9 天前
实时标签怎样验收?从数据更新到分群可用
数据结构·数据挖掘·数据分析
GrowingIO技术社区10 天前
SaaS与私有化部署怎么比较?责任、集成与成本
大数据·数据挖掘·产品
GrowingIO技术社区10 天前
多端用户身份怎么统一?OneID规则与验收清单
大数据·数据挖掘·数据分析
奥惟斯11 天前
GEO 上线前,先把这 3 类实体信号地基补上
人工智能·深度学习·机器学习·自然语言处理·数据挖掘·数据分析·知识图谱
ManageEngineITSM11 天前
工单分类怎么设计?类别、子类别与自动分派的实用方法
大数据·服务器·数据库·人工智能·分类·数据挖掘