存储系统的块关联挖掘C-Miner算法
块关联什么是块关联发掘块关联
获取块关联的性质
块关联的挖掘频繁序列的挖掘
假设在事件x和y之间存在着一个强关联,那么意味着如果事件x发生,则事件y也很有可能会发生。我们使用一个关联规则x->y来描述x,y之间的这种关联。 C –Miner建立在最近所提出的名为“CloSpan”(Closed Sequential Pattern mining)的频繁序列挖掘算法之上。
CloSpan只能生成闭合的而非所有的频繁子序列,原因在于任何非闭合序列都可以被具有相同支持度(support)的父序列来表示。 C-Miner:我们的挖掘算法基本的挖掘算法有一个限制,那就是没有考虑频繁子序列的间隙。如果频繁序列中包含两个彼此在访问时间上相距很远的访问事件,则这个频繁序列对我们的应用就没有意义。 预处理采用非重叠切割的方法。 核心算法C-Miner主要包括两个阶段:(1)生成一个频繁子序列的候选集,而这些频繁子序列包括了所有的闭合频繁子序列;(2)从候选集中对非闭合子序列进行剪枝操作。 第一个阶段,C-Miner使用深度优先程序来生成频繁序列的候选集。 基于此,通过将每一个频繁项目与前一次循环得到的较短频繁序列进行拼接,C-Miner可以不断迭代的生成更长的频繁序列。 为了更好的阐释这个思想,让我们考虑这样一个例子。为了得到长度为n的频繁子序列集Ln,我们可以将长度为n-1的频繁子序列集Ln-1与长度为1的频繁子序列集L1进行拼接。例如,假设我们已经计算出如下所示的L1和L2,为了计算L3,我们可以先将L2中的一个子序列与L1中一个项目连接从而计算出L3’: L1={a,b,c}; L2={ab,ac,bc}; L3’=L2*L1 ={abc,abb,abc,aca,acb,acc,bca,bcb,bcc} 为了获得更高的效率,C-Miner不会将L2中序列与L1中所有项目进行拼接,而是将L2中每个序列仅与其后缀数据库中的频繁序列进行连接。此例中,对于L2中的频繁序列ab,它的后缀数据库为Dab={ced,cef,ch,ijc},而只有c是频繁项目,所以只将ab与c连接,从而得到属于L3’的一个更长的序列abc。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |