.c
om
ng
co
ng
th
an
Chương 4
cu
u
du
o
KHAI PHÁ DỮ LIỆU
1
CuuDuongThanCong.com
/>
1
.c
om
Nội dung
Tiền xử lý dữ liệu.
2.
Phương pháp khai phá bằng luật kết hợp.
3.
Phương pháp cây quyết định.
4.
Các phương pháp phân cụm.
5.
Các phương pháp khai phá dữ liệu phức tạp.
cu
u
du
o
ng
th
an
co
ng
1.
CuuDuongThanCong.com
/>
2
Mục (item): i1, i2, …
Tập mục (item set): Tập X I
an
co
ng
ng
th
Cho tập D = {T1, T2, …, Tn},
Ti: Một giao dịch (transaction),
Ti: Các tập con của I,
D: Cơ sở dữ liệu giao dịch.
|D|: Số giao dịch trong D.
du
o
u
Cho tập I = {i1, i2, …, in},
cu
.c
om
Tập phổ biến và luật kết hợp
CuuDuongThanCong.com
/>
3
Ví dụ:
Cho tập I = {A, B, C, D, E},
Tập mục: X = {A, D, E},
Cơ sở dữ liệu giao dịch D:
u
du
o
ng
th
an
co
ng
cu
.c
om
Tập phổ biến và luật kết hợp
T1
{A, B, C, D}
T2
{A, C, E}
T3
{A, E}
T4
{A, B, E}
T5
{A, B, C, D, E}
D có 5 giao dịch.
CuuDuongThanCong.com
/>
4
Độ hỗ trợ (support) ứng với một tập mục:
Là xác suất xuất hiện của X trong cơ sở dữ liệu
ng
co
.c
om
Tập phổ biến và luật kết hợp
C( X )
sup( X )
|D|
Cơng thức:
C(X) là số giao dịch có chứa X.
du
o
ng
th
u
Ví dụ: X = {A, C},
C(X) = 3,
cu
an
giao dịch D.
Sup(X) = 3/5 (=60%)
T1
{A, B, C, D}
T2
{A, C, E}
T3
{A, E}
T4
{A, B, E}
T5
{A, B, C, D, E}
Các tập mục có độ hỗ trợ lớn hơn một giá trị ngưỡng
minsup nào đó cho trước gọi là tập phổ biến.
CuuDuongThanCong.com
/>
5
.c
om
Luật kết hợp (Association Rule)
Cho hai tập mục X, Y ⊆ I, X ∩ Y = ϕ.
Luật kết hợp ký hiệu X → Y, là mối ràng buộc của tập
an
X xuất hiện trong cơ sở dữ liệu giao dịch sẽ kéo theo
th
co
mục Y theo tập mục X,
ng
ng
sự xuất hiện của Y với một một tỷ lệ nào đấy.
Độ hỗ trợ của luật (xác suất cả X và Y cùng xuất
u
du
o
Luật kết hợp được đặc trưng bởi:
cu
hiện trong một giao dịch):
C( X Y )
sup( X Y ) sup( X Y )
| D|
CuuDuongThanCong.com
/>
6
.c
om
Luật kết hợp (Association Rule)
Độ tin cậy của luật (tỷ lệ các giao dịch chứa cả X và
co
ng
Y so với các giao dịch chứa X):
C(XY) là số giao dịch chứa cả X và Y,
u
Trong đó:
cu
du
o
ng
th
an
C ( X Y ) sup( X Y )
conf ( X Y )
C( X )
sup( X )
CuuDuongThanCong.com
C(X) là số giao dịch có chứa X
/>
7
Luật mạnh: Các luật có độ hỗ trợ lớn hơn một giá trị
co
ng
ngưỡng minsup và độ tin cậy lớn hơn một giá trị
an
ngưỡng minconf cho trước được gọi là luật mạnh, hay
th
luật có giá trị (strong association rules).
du
o
ng
Nếu đồng thời sup(XY) minsup thì X Y và
conf(XY) minconf được gọi là luật mạnh.
u
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
8
th
an
co
ng
Mơ hình khai phá dữ liệu bằng luật kết hợp.
du
o
ng
Tìm tập
phổ biến
Output
u
Input
Xác
định
luật kết
hợp
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
9
u
du
o
ng
th
an
co
ng
Mơ hình khai phá dữ liệu bằng luật kết hợp
Input: Cơ sở dữ liệu giao dịch, trị ngưỡng minsup,
minconf.
Tìm tập phổ biến: Sinh tất cả các luật kết hợp có
thể có bằng Apriori, FP-Growth, …
Xác định luật kết hợp: Tách tập phổ biến tìm được
thành 2 tập khơng giao nhau X và Y. Tính độ tin cậy
của X Y, nếu trên ngưỡng minconf thì đó là luật
mạnh.
Output: Tất cả các luật mạnh.
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
10
u
du
o
ng
th
an
co
ng
Mơ hình khai phá dữ liệu bằng luật kết hợp
Nếu tập M phổ biến có n phần tử thì số tập con
của M sẽ là 2n - 2. Vì vậy, với M ta sẽ có nhiều
nhất 2n – 2 luật.
Khi một giải thuật không dựa vào Độ hỗ trợ mà
dựa vào Số lần xuất hiện (support count) thì giá trị
ngưỡng mincount để một tập là phổ biến được xác
định:
mincount = minsup * |D|
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
11
ng
Nguyễn lý Apriori:
an
co
“Nếu một tập mục là phổ biến thì mọi tập con
th
khác rỗng bất kỳ của nó cũng là tập phổ biến”.
u
du
o
ng
Tìm ra tất cả các tập phổ biến có thể có.
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
12
Nguyễn lý Apriori:
co
ng
Chứng minh:
an
Xét X’ X. Gọi p là ngưỡng độ hỗ trợ minsup. Một tập mục
th
xuất hiện bao nhiêu lần thì các tập con chứa trong nó cũng
du
o
ng
xuất hiện ít nhất bấy nhiêu lần. Do đó:
u
C( X ' ) C( X )
(1)
X là tập phổ biến nên: sup( X ) C ( X ) p C ( X ) p | D | (2)
| D|
C( X ' )
Từ (1) và (2) ta có:
C ( X ' ) p | D | sup( X ' )
p
| D|
cu
.c
om
Luật kết hợp (Association Rule)
Vậy X’ cũng là tập phổ biến.
CuuDuongThanCong.com
/>
13
Giải thuật Apriori:
Dựa trên nguyên lý Apriori.
Dựa vào quy hoạch động:
Xét các tập Fi = {ci|ci là tập phổ biến, ci = i}, gồm
th
an
co
ng
Tìm tập Fk+1 gồm mọi tập mục phổ biến có độ
u
du
o
ng
mọi tập mục phổ biến có độ dài i, i[1;k].
dài k+1.
cu
.c
om
Luật kết hợp (Association Rule)
Các mục I1, I2, …, In trong tập I được sắp theo
một trật tự nhất định.
CuuDuongThanCong.com
/>
14
A, C, D
T2
B, C, E
T3
A, B, C, E
T4
B, E
C3
{B}
1st scan
sup
2
2
3
2
du
o
ng
C2
u
L2
Itemset
{A, C}
{B, C}
{B, E}
{C, E}
2
co
T1
{A}
3
{D}
1
{E}
3
Itemset
{B, C, E}
CuuDuongThanCong.com
Itemset
{A, B}
{A, C}
{A, E}
{B, C}
{B, E}
{C, E}
3rd scan
C1
3
{C}
an
Items
sup
th
Tid
Itemset
ng
Giải thuật Apriori:
cu
Supmin = 2
.c
om
Luật kết hợp (Association Rule)
sup
1
2
1
2
3
2
L3
Itemset
sup
{A}
2
{B}
3
{C}
3
{E}
3
2nd scan
Itemset
{B, C, E}
L1
Itemset
{A, B}
{A, C}
{A, E}
{B, C}
{B, E}
sup
2
/>
C2
{C, E}
15
Giải thuật Apriori:
ng
Các tập phổ biến:
co
th
an
F = {{A}, {B}, {C}, {E},
du
o
ng
{A, C}, {B, C}, {B, E}, {C, E},
u
{B, C, E}}
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
16
co
ng
Ck: Candidate itemset of size k
Lk: frequent itemset of size k
.c
om
Luật kết hợp (Association Rule)
cu
u
du
o
ng
th
an
L1 = {frequent items};
for (k = 1; Lk !=; k++) do begin
Ck+1 = candidates generated from Lk;
for each transaction t in database do
increment the count of all candidates in Ck+1 that are
contained in t
Lk+1 = candidates in Ck+1 with min_support
end
return k Lk;
CuuDuongThanCong.com
/>
17
.c
om
Luật kết hợp (Association Rule)
Sinh luật kết hợp:
Với mỗi tập phổ biến X F, ta xác định các tập mục
ng
th
Với mỗi tập mục con không rỗng của X ta sẽ thu
du
o
ng
được một luật kết hợp S (X\S). Nếu độ tin cậy
luật mạnh.
u
của luật thỏa mãn ngưỡng minconf thì luật đó là
cu
an
co
khác (rỗng) là con của X.
C( X )
conf (S ( X \ S ))
min conf
C (S )
CuuDuongThanCong.com
/>
18
.c
om
Luật kết hợp (Association Rule)
Sinh luật kết hợp:
co
ng
function Rules_Gen (F: Tập các tập phổ biến)
an
{
th
R = ⍉;
du
o
for each X ∈ F
ng
F = F\F1; //Các tập phổ biến độ dài 1 không sinh luật
cu
u
for each S ⊂ X
if conf(S→(X\S)) ≥ minconf then
R = R ∪ { S→(X\S)};
return R;
} // Output: Tập các luật kết hợp mạnh
CuuDuongThanCong.com
/>
19
Ví dụ:
ng
Cho I = {A, B, C, D, E, F} và cơ sở dữ liệu giao dịch D:
an
co
Chọn ngưỡng minsup = 25% và minconf = 75%. Hãy
ng
th
xác định các luật kết hợp mạnh.
T1
{A, B, C, F}
T2
{A, B, E, F}
T3
{A, C}
T4
{D, E}
T5
{B, F}
du
o
u
cu
.c
om
Luật kết hợp (Association Rule)
CuuDuongThanCong.com
/>
20
C1
Số lần
xuất hiện
{A}
3
{B}
3
{C}
2
{D}
1
Sinh các
tập phổ
biến có độ
dài bằng 1
{E}
2
{F}
3
{A, B}
Số lần
xuất hiện
th
an
F1
cu
du
o
ng
{A}
3
{B}
3
{C}
2
{E}
2
{F}
3
C2
Tập mục
co
Tập
mục
u
L1
ng
.c
om
Luật kết hợp (Association Rule)
{A, C}
Kết hợp
các tập
của L1
để có
C2
{A, E}
{A, F}
{B, C}
{B, E}
{B, F}
{C, E}
{C, F}
{E, F}
CuuDuongThanCong.com
/>
21
C2
{A, B}
2
{A, C}
{A, C}
2
{A, E}
{A, E}
{A, F}
{A, F}
{B, C}
{B, C}
1
{B, E}
{B, E}
1
{B, F}
{B, F}
3
{C, E}
{C, E}
0
{C, F}
{C, F}
1
{E, F}
{E, F}
1
ng
1
du
o
u
cu
co
{A, B}
th
Tập mục
ng
Số lần
xuất hiện
Tập mục
an
C2
.c
om
Luật kết hợp (Association Rule)
Tập mục
Số lần
xuất hiện
{A, B}
2
{A, C}
2
{A, F}
2
{B, F}
3
2
Kết hợp các
tập của L2 để
có C3
Tập mục
{A, B, C}
C3
{A, B, F}
{A, C, F}
CuuDuongThanCong.com
L2
/>
22
{A, B, F}
Số lần
xuất hiện
{A, B, C}
{A, B, F}
Tập mục
Số lần
xuất hiện
{A, B, F}
2
1
ng
{A, C, F}
co
{A, B, C}
Tập mục
th
Tập mục
L3
ng
C3
an
C3
.c
om
Luật kết hợp (Association Rule)
1
u
du
o
{A, C, F}
2
cu
L3 chỉ có một phần tử nên không thể tiếp tục kết nối để sinh L4.
Thuật tốn kết thúc.
Ta có tập các tập phổ biến là:
F ={{A}, {B}, {C}, {E}, {F}, {A, B}, {A, C}, {A, F}, {B, F}, {A, B, F}}
CuuDuongThanCong.com
/>
23
.c
om
Luật kết hợp (Association Rule)
th
an
co
ng
{A, B} có thể sinh các luật: {A} {B} và {B} {A}
C ({ A, B}) 2
conf ({ A} {B})
66.7%
C ({ A})
3
C ({ A, B}) 2
conf ({B} { A})
66.7%
C ({B})
3
{A, C} có thể sinh ra các luật: {A} {C} và {C} {A}
u
du
o
ng
C ({ A, C}) 2
conf ({ A} {C})
66.7%
C ({ A})
3
C ({ A, C}) 2
conf ({C} { A})
100%
C ({C})
2
cu
{A, F} có thể sinh ra các luật: {A} {F} và {F} {A}
C ({ A, F}) 2
66.7%
C ({ A})
3
C ({ A, C}) 2
conf ({F} { A})
66.7%
C ({F})
3
conf ({ A} {F})
CuuDuongThanCong.com
/>
24
.c
om
Luật kết hợp (Association Rule)
{A, F} có thể sinh ra các luật: {A} {F} và {F} {A}
an
co
ng
C ({B, F}) 3
conf ({B} {F})
66.7%
C ({B})
3
C ({B, C}) 3
conf ({F} {B})
66.7%
C ({F})
3
ng
th
{A, B, F} có thể sinh ra các luật: {A} {B, F}, {A, B} {F}, {B}
{A, F}, {B, F} {A}, {F} {A, B}, {A, F} {B}
cu
u
du
o
C ({ A, B, F}) 2
conf ({ A} {B, F})
66.7%
C ({ A})
3
C ({ A, B, F}) 2
conf ({ A, B} {F})
100%
C ({ A, B})
2
C ({ A, B, F}) 2
conf ({B} { A, F})
66.7%
C ({B})
3
C ({ A, B, F}) 2
conf ({B, F} { A})
66.7%
C ({B, F})
3
CuuDuongThanCong.com
/>
25