基礎知識:
| 用戶 | 薯片(A) | 可樂(B) | 鉛筆(C) | 羽毛球(D) | 洗衣液(E) |
| 1 | √ | √ | √ | ||
| 2 | √ | √ | √ | √ | |
| 3 | √ | √ | √ | ||
| 4 | √ | √ | √ | ||
| 5 | √ | √ |
支持度:單個項占總項集的百分比,比如薯片的支持度=4/5*100%=80%,可樂的支持度=3/5*100%=60%。
置信度:薯片=>羽毛球的置信度=3/4*100%=75%,可樂=>羽毛球的置信度=3/3*100%=100%。
一、Apriori算法
假設minsupport=0.2,得出頻繁項集:
1)1-項集C1={A,B,C,D,E},1-頻繁項集L1={A,B,C,D};
2)1-頻繁項集進行拼接得到2-項集C2={(A,B),(A,C),(A,D),(B,C),(B,D),(C,D)},2-頻繁項集L2={(A,B),(A,C),(A,D),(B,D),(C,D)}
3)2-頻繁項集拼接得到3-項集C3={(A,B,C),(A,B,D),(A,C,D),(B,C,D)},3-頻繁項集L3={(A,B,D)}
4)最后得到所有的頻繁項目集L={(A,B),(A,C),(A,D),(B,D),(C,D),(A,B,D)}
假設minconfidence=60%,得出關聯規則:
我們這里僅僅對最大的頻繁項集(B,C,D)進行計算,得出其中是否有強關聯規則:
B=>CD,confidence=33%,不是強關聯規則;BC=>D,confidence=100%,強關聯規則;
C=>BD,confidence=33%,不是強關聯規則;CD=>B,confidence=50%,不是強關聯規則;
D=>BC,confidence=25%,不是強關聯規則;BD=>C,confidence=33%,不是強關聯規則。
二、FP-Tree算法
1)我們仍然選用上面的例子,用戶1:ABD,用戶2:ACDE,用戶3:ABD,用戶4:BCD,用戶5:AC
第一次掃描數據對1-項集進行計數:


2)建立FP-Tree





至此,我們完成對FP-Tree的構建。
3)FP-Tree獲取頻繁項集
由節點從下到上依次獲取頻繁項:

其實上述中{(C,D)}的FP-Tree分別出現了2次,我們可得出其為頻繁2-項集,則有C的到的頻繁項2-項集:{(A,C),(C,D)};


節點D

綜上可知,所有的頻繁項為:{(A,B),(A,C),(A,D),(B,D),(C,D),(A,B,D)}。
