Professional Documents
Culture Documents
L4-Phat Hien Luat Ket Hop
L4-Phat Hien Luat Ket Hop
⇒ Phương pháp vét cạn này có chi phí tính toán quá
lớn, không áp dụng được trong thực tế!
Tất cả các luật trên đều là sự phân tách (thành 2 tập con) của
cùng tập mục : {Milk, Diaper, Beer}
Các luật sinh ra từ cùng một tập múc sẽ có cùng độ hỗ trợ,
nhưng có thể khác về độ tin cậy
Do đó, trong quá trình phát hiện luật kết hợp, chúng ta có thể
tách riêng 2 yêu cầu về độ hỗ trợ và độ tin cậy
Với d
A B C D E
mục, thì
phải xét
AB AC AD AE BC BD BE CD CE DE
đến 2d
các tập
mục có
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE
thể!
ABCDE
Tính độ hỗ trợ của mỗi tập mục, bằng cách duyệt qua tất cả các
giao
i dịdịch
h
Với mỗi giao dịch, so sánh nó với mỗi tập mục được xét
ợ g các giao
Giảm bớt số lượng g ị cần xét ((N))
dịch
Giảm giá trị N, khi kích thước (số lượng các mục) của
tập mục tăng lên
Giảm bớt sốố lượng các so sánh
(matchings/comparisons) giữa các tập mục và các
giao dịch (N.M)
g ( )
Sử dụng các cấu trúc dữ liệu phù hợp (hiệu quả) để
lưu các tập mục cần xét hoặc các giao dịch
Không cần phải so sánh mỗi tập mục với mỗi giao dịch
Nguyên tắc của giải thuật Apriori dựa trên đặc tính
không đơn điệu (anti-monotone) của độ hỗ trợ
∀X , Y : ( X ⊆ Y ) ⇒ s( X ) ≥ s(Y )
Độ hỗ trợ của một tập mục nhỏ hơn độ hỗ trợ của các tập con
của nó
Khai Phá Dữ Liệu
12
Apriori: Loại bỏ dựa trên độ hỗ trợ
Tập mục
không
thường
xuyên
TID Items
1 Bread,, Milk
2 Bread, Diaper, Beer, Eggs
3 Milk, Diaper, Beer, Coke
4 Bread, Milk, Diaper, Beer
5 Bread, Milk, Diaper, Coke
1,4,7 3,6,9
258
2,5,8
234
567
145 136
Băm
345 356 367
(hash)
đối với 357 368
1, 4, 124 159 689
125
hoặc 7
457 458
1,4,7 3,6,9
258
2,5,8
234
567
145 136
345 356 367
Băm
357 368
(h h)
(hash)
đối với 124 159 689
125
2, 5, 457 458
hoặc 8
1,4,7 3,6,9
258
2,5,8
234
567
145 136
Băm 345 356 367
(hash) 357 368
đối với 689
124 125 159
3, 6,
ặ 9
hoặc 457 458
1+ 2356
2+ 356 1,4,7 3,6,9
2,5,8
3+ 56
234
567
145 136
345 356 367
357 368
124 159 689
125
457 458
145 136
345 356 367
357 368
124 159 689
125
457 458 Chỉ cần so sánh ggiao dịch t với 11
(trong tổng số 15) tập mục cần xét!
Khai Phá Dữ Liệu
23
Apriori: Các yếu tố ảnh hưởng độ phức tạp
Lựa chọn giá trị ngưỡng minsup
Giá trị minsup quá thấp sẽ sinh ra nhiều tập mục thường xuyên
Điều này có thểể làm tăng số lượng các tập mục phải xét và độ
dài (kích thước) tối đa của các tập mục thường xuyên
Số lượng các mục trong cơ sở dữ liệu (các giao dịch)
Cân thêm bộ nhớ để lưu giá trị độ hỗ trợ đối với mỗi mục
Nếu số lượng các mục (tập mục mức 1) thường xuyên tăng lên,
thì chi phí tính toán và chi phí I/O (duyệt các giao dịch) cũng tăng
Kích thước của cơ sở dữ liệu (các giao dịch)
Giải thuật Apriori duyệt cơ sở dữ liệu nhiều lần. Do đó, chi phí
tính toán của Apriori tăng lên khi số lượng các giao dịch tăng lên
Kích thước trung bình của các giao dịch
Khi kích thước (số lượng các mục) trung bình của các giao dịch
tăng lên, thì độ dài tối đa của các tập mục thường xuyên cũng
tăng và chi phí duyệt cây băm cũng tăng
tăng,
Itemset Support
{A} 4
TID Items Itemset Support
{B} 5
1 {A,B} {A,B,C} 2
{C} 3
2 {B,C,D} {A,B,D} 3
{{D}} 4
3 {A B C D}
{A,B,C,D} {A,C,D} 2
4 {A,B,D} {A,B} 4
{B,C,D} 3
5 {A,B,C,D} {A,C} 2
{A,B,C,D} 2
{A,D} 3
{B,C} 3
{B,D} 4
{C,D} 3
12 2 24 4 4 2 3 4
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE
2 4
ABCD ABCE ABDE ACDE BCDE
12 2 24 4 4 2 3 4
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE
2 4 # Đóng = 9
ABCD ABCE ABDE ACDE BCDE
# Lớn nhất = 4
ABCDE
FP-Growth biểu diễn dữ liệu của các giao dịch bằng một
cấu trúc dữ liệu gọi là FP-tree
FP tree
FP-Growth sử dụng cấu trúc FP-tree để xác định trực
tiếp các tập mục thường xuyên
(
(Các đườngg đi (
(Các đườngg đi (
(Các đườngg đi
kết thúc bởi c) kết thúc bởi b) kết thúc bởi a)
Khai Phá Dữ Liệu
37
Xác định các tập mục thường xuyên
FP-Growth tìm tất cả các tập mục thường xuyên kết thúc
bởi một mục – dựa theo chiến lược chia để trị (divide
(divide-
and-conquer)
Ví dụ, cần tìm tất cả các tập mục thường xuyên kết thúc bởi e
T ớ hết
Trước hết, kiểm
kiể tra
t tập
tậ mục mứcứ 1 ({
({e})
}) cóó phải
hải là tậ
tập mục
thường xuyên
Nếu nó là tập mục thường xuyên, xét các bài toán con: tìm tất cả
các
á tậ th ờ xuyên
tập mục thường ê kết thúc
thú bởi de…
d bởi ce…bởibởi be…và
b à
bởi ae
Mỗi bài toán con nêu trên lại được phân tách thành các bài toán
con nhỏ
hỏ hơn…
h
Kết hợp các lời giải của các bài toán con, chúng ta sẽ thu được
các tập mục thường xuyên kết thúc bởi e
Vd: Để tì
Vd tìm các
á tập th ờ xuyên
tậ mục thường ê kết
thúc bởi de, các đường đi tiền tố đối với d
được xây dựng từ biểu diễn FP-tree có điều
kiệ đối với
kiện ới e
Các đường đi
Bằng cách cộng với giá trị hỗ trợ gắn với nút tiền tố đối với de
d chúng ta xác định được độ hỗ trợ cho tập
d,
{d,e}
Độ hỗ trợ của {d,e}=2: nó là một tập mục
th ờ xuyên
thường ê
Khai Phá Dữ Liệu
42
Sinh ra các luật kết hợp (1)
Với mỗi tập mục thường xuyên L, cần tìm tất cả các tập
con khác rỗng f ⊂ L sao cho: f → L – f thỏa mãn điều
kiện về độ tin cậy tối thiểu
Vd: Với tập mục thường xuyên {A,B,C,D}, các luật
ầ xét gồm
cần ồ có:
ABC →D, ABD →C, ACD →B, BCD →A,
A →BCD,
→BCD B →ACD,
→ACD C →ABD,
→ABD D →ABC
AB →CD, AC → BD, AD → BC, BC →AD,
BD →AC, CD →AB,
Nếu |L| = k, thì sẽ phải xét (2k – 2) các luật kết hợp có
thể (bỏ qua 2 luật: L → ∅ và ∅ → L)
Các luật
bị loại bỏ
Khai Phá Dữ Liệu
45
Apriori: Sinh ra các luật (2)
Các luật cần xét được sinh ra bằng cách kết hợp 2 luật
có cùng tiền tố (phần bắt đầu) của phần kết luận
(rule consequent)
CD=>AB BD=>AC