转自:https://blog.csdn.net/u013007900/article/details/54743395
Frequent Itemset(频繁项集)
称I={i1,i2,...,im}为项(Item)的集合,D={T1,T2,...,Tn},i∈[1,n]为事务数据集(Transaction Data Itemsets),事务Ti由I中若干项组成。
设S为由项组成的一个集合,S={i|i∈I},简称项集(Itemset)。包含k个项的项集称为k-项集。
t为一条事务, 如果S⊆t, 则称事务t包含S。
S的支持度:sup(S)=(包含S的事务数量D中总的事务数量)×100%sup(S)
若S的支持度≥给定最小支持度,称S为频繁项集(Frequent Itemset)。
例如,有交易数据库
TID | item |
---|---|
1 | abc |
2 | abcd |
3 | bce |
4 | acde |
5 | de |
TID为事务编号,item为事务数据集的内容。
现在有项集S1={b,c},它出现在TID为1,2,3的事务中,也就是S1⊆{a,b,c,S1⊆{a,b,c,d},S1⊆{b,c,e}。
所以S1的支持度计数为3,支持度为3/5。
如果支持度阈值小于60%,那么S1就是一个频繁项集。
Superset(超集)
若一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S1就是S2的一个超集。S1是S2的超集,则S2是S1的真子集,反之亦然。
接着上面的例子,
TID | item |
---|---|
1 | abc |
2 | abcd |
3 | bce |
4 | acde |
5 | de |
现在有项集S1={b,c},那么它就是{b},{c}的超集。S1也是{a,b,c}$等的真子集。
Max Pattern/Maximal Frequent Itemset(最大频繁项集)
如果频繁项集L的所有超集都是非频繁项集,那么称L为最大频繁项集或称最大频繁模式,记为MFI (Maximal Frequent Itemset)。
频繁项集是最大频繁项集的子集。最大频繁项集中包含了频繁项集的频繁信息,且通常项集的规模要小几个数量级。所以在数据集中含有较长的频繁模式时挖掘最大频繁项集是非常有效的手段。
综上,最大频繁项集是各频繁k项集中符合无超集条件的频繁项集。
接着上面的例子,
TID | item |
---|---|
1 | abc |
2 | abcd |
3 | bce |
4 | acde |
5 | de |
现在有项集S1={b,c},且有支持度阈值=60%
那么S1就是一个频繁项集,那么我们来看看它的超集。
Superset | count |
---|---|
abc | 2 |
bcd | 1 |
bce | 1 |
abcd | 1 |
abce | 0 |
bcde | 0 |
abcde | 0 |
由此可见,它们的支持度都小于60%60%,所以它们都不是频繁项集。
所以S1的所有超集都不是频繁项集,则它是最大频繁项集。
close pattern(闭合频繁项集)
所谓闭项集,就是指一个项集X,它的直接超集的支持度计数都不等于它本身的支持度计数。如果闭项集同时是频繁的,也就是它的支持度大于等于最小支持度阈值,那它就称为闭频繁项集。
接着上面的例子,
TID | item |
---|---|
1 | abc |
2 | abcd |
3 | bce |
4 | acde |
5 | de |
因为项集{b,c}出现在TID为1,2,3的事务中,所以{b,c}的支持度计数为3。而{b,c}的直接超集:{a,b,c},{a,b,c,d}的支持度计数分别为2,1,都不等于{b,c}的支持度计数3,所以{b,c}为闭项集,如果支持度阈值为40%,则{b,c}也为闭频繁项集。
项集{a,b}出现在TID为1,2的事务中,其支持度计数为2。而它的直接超集{a,b,c}支持度计数也为2,所以{a,b}不是闭项集