数据挖掘close算法C语言编程,数据挖掘算法——Close算法

说明奥:菜鸟的自我学习,可能有错。

Close算法原理:

一个频繁闭合项目集的所有闭合子集一定是频繁的,一个非频繁闭合项目集的所有闭合超集一定是非频繁的。

close算法是对Apriori算法的改进

具体步骤为:

1.先找到候选1项目集FCC1   并得到其支持度和闭合

2.之后对每个候选闭合进行修剪 如果其支持度不小于最小支持度则加入到FC1

3.自身不断循环下去  直到某个r-项目集FCCi为空 则算法结束。

栗子:

9e37e96252bf3f9ba660ae8e66aacfc8.png

(1)计算FCC各个产生式的闭合和支持度

首先得到FCG的产生式: FCC的产生式为(A)、(B)、(C)、(D).(E)

然后计算闭合集。\例如,计算{A}的闭合。数据库中第项(ABE)包含{A},这时(A)的闭合首先得到{ABE};

第四项(ABD}包含{A},所以取{ABD)和{ABE)的交集{AB)作为(A)的闭合:

第五项{AC}包含{A},则取{AB}和{AC)的交集得到{A},作为{A)的团合;

第七项是{AC},交集为{A};第八项{ABCE)与{A}的交集是{A};

第九项{ABC}与{A)的交集是{A)。这时到了最后一项,计算完成, 得到{A}的闭合是(A)。并同时计算出{A)的支持度为6(可通过对出现的A的超集进行计数得到)。同样可以得到FCO所有的闭合与支持度

4a0312e9a2c9f7c898c187671ad1ba47.png

(2)进行修剪

将支持度小于最小支持度的候选闭合项删除,得到FC1  这个例子FC1和FCC1是相同的为(A)(B)(C)(D)(E)

(3)利用FC1的generator生成FCC2

就是FC1的自连接。。。得到FCC2一AB,AC,AD,AE,BC.BD.BE,CD.CE.DE

修剪(AE)是(E)的闭合(ABE)的子集,(BE)是子集(E)的闭合(ABE)的子集,所以将这网在FCC的元素中我们简单地用AB来代替上面的(AB),这边

AE BE,ABE就是!!频繁项目集合 修剪过去了 我是这么理解的

闭合的闭合是本身的话而且支持度不小于最小支持度也就是?表示是频繁项目集了得此刻FCC2为AB,AC,AD,BC.BD.CD.CE.DE  这边为何AB不  我的看法是AB的闭合不是他自己。。。不一定对自己理解的

(4)计算各产生式的闭合和支持度

74183fc66075cbcf188cb3fe6694cfa7.png

没表现出来的为空集

(5)进行修剪

将支持度小于最小支持度的候选闭合项删除.得到FC2,这时(AD)和(CE)的支持度为1,被删除。FC2 = (AB,AC. BC, BD)。

(6)利用FC2的generator生成FCC3并进行裁剪

FC2连接后得到: {ABC,BCD).其中的(BCD)有非频繁子集CD).所以将这项删除。剩下为{ABC),得到的候选项FCC3 ={ABC)。

嗯???这边有问题  这边没有ABD   据涛哥说。。。要第一个相同才能连接。。。。所以ABAC相同连接成ABC       BC和BD相连接成BCD

(7) FCC3;不为空,计算各产生式的闭合和支持度ABC的闭合为{ABC),支持度为2。

(8)进行修剪

将支持度小于最小支持度的候选闭合项删除,得到FC3.对于本例.FCC3 只有一项支持度为2,保留。

(9)利用FC3生成FCC4为空,算法结束。 将所有不重复的

闭合加入到FC中得到FC={A,B,ABE,BD,C,AB,AC,BC,ABC}

(10)统计项目集元素数

L3= {ABE,ABC} L2={AB,AC,BC,BD} L1={A,B,C}最大个数为3

(11)将L3的频繁项分解

先分解(ABE)的所产集为AB,AE和BE后两项不存在,将它们加人到L中,ABC有2-项于集为(AB)、(AC)和(BC),这三项均在L中  得到L2 = {AB AC BC AE BE BD}

(12)将L2的频繁项分解

方法同上,得L1为(A.B.C,D.E)

使用频繁闭团合项目集,发现可以提高关联规则的效率。

不理解的地方有3   待更新 等上课问老师

相连的规则必须要头相同才可以也就是说 两个相连成3个 必须要AB  AC   A是相同的    ABC ABD相连成四个 必须要AB是相同的才可以~~~~~ 涛哥如是说

原文出处:https://www.cnblogs.com/Galesaur-wcy/p/10559932.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值