111年資訊技師高等網路原理與應用
五、假設某一家店中有以下的六次交易 (transactions):(每小題8分,共24分) A:{bread, milk, diapers, juice} B:{bread, milk, diapers, eggs} C:{milk, diapers, beer, eggs} D:{bread, beer} E:{milk, diapers, eggs, juice} F:{milk, diapers, beer} (一)請問產品 diapers 的 support 值為多少? (二)假設我們設定 support threshold 為0.6,請找出所有的 frequent itemsets。也就是說,U = {bread, milk, diapers, juice, eggs, beer} 這六樣產品的集合,有那些子集合在 A-F 的六個交易中,被採購的機率超過0.6。 (三)假設我們有一個關聯規則 (association rule):{beer}->{diapers},請求出 support 值和 confidence 值。 |
答:
(一)
交易資料庫:
編號 |
購買的產品 |
A |
{bread, milk, diapers, juice} |
B |
{bread, milk, diapers, eggs} |
C |
{milk, diapers, beer, eggs} |
D |
{bread, beer} |
E |
{milk, diapers, eggs, juice} |
F |
{milk, diapers, beer} |
為了計算方便,將 bread 設定為 A、milk 設定為 B、diapers 設定為 C、juice 設定為 D,eggs 設定為 E,beer 設定為 F,如下表所示。
編號 |
採購商品項目 |
A |
A、B、C、D |
B |
A、B、C、E |
C |
A、B、F、E |
D |
A、F |
E |
B、C、E、D |
F |
B、C、F |
Support(X) = number(X) / number(All Samples)
註:包含項目 X 的筆數 / 所有交易筆數
每個產品項目的出現次數:
項目集 |
次數 |
支持度 |
A |
4 |
67% |
B |
5 |
83% |
C |
4 |
67% |
D |
2 |
33% |
E |
3 |
50% |
F |
2 |
33% |
diapers 的 support 值為67%。
(二)
因為採購筆數有6筆,所以6×60% ≈ 3.6,4筆以上的項目就稱為高頻項目集 (Large itemset),應該予以保留。反之,表中的 D、E、F,支持度不到60%,未達最低支持度的要求,因此予以捨棄。接著,可以從採購資料集中整理出每個產品的出現次數與支持度,如下表所示。
每個產品項目的出現次數:
項目集 |
次數 |
支持度 |
A |
4 |
67% |
B |
5 |
83% |
C |
4 |
67% |
D |
2 |
33% |
E |
3 |
50% |
F |
2 |
33% |
根據最低支持度的要求,捨棄次數未達4次的兩兩出現的產品項目 AB、AC,如下表所示。
每兩個產品項目的出現次數:
項目集 |
次數 |
支持度 |
AB |
3 |
50% |
AC |
2 |
33% |
BC |
4 |
67% |
最後,再將以上兩個表作彙整,找出支持度超過60%的項目集。最終的高頻項目集如下表所示,此即為關聯分析的結果。
項目集 |
次數 |
支持度 |
B(milk)、C(diapers) |
4 |
67% |
(三)
Confidence(X→Y) = P(Y|X) = P(X∩Y) / P(X)
註:當事件 X 發生的情況下,同時會發生 Y 的可能性。
如果從項目集的機率值來看,{B, C} 的機率值如下表所示。
項目集 |
關聯 |
信賴度機率 |
支持度 |
信賴度 |
BC |
B→C |
P(C|B) = P(B∩C) / P(B) |
67% |
0.67/0.83 = 80% |