You are on page 1of 34

KHAI PHÁ DỮ LIỆU

(DATA MINING)

Đặng Xuân Thọ


Trường Đại học Sư phạm Hà Nội
Support
2

 Full name: Đặng Xuân Thọ


 Mobile: 091.2629.383
 Email: thodx@hnue.edu.vn
 Website: http://cs.fit.hnue.edu.vn/~tho/

Khai phá dữ liệu - ĐHSPHN


Nội dung
3

 Chương 1. Giới thiệu về khai phá dữ liệu


 Chương 2. Dữ liệu và tiền xử lý dữ liệu
 Chương 3. Phân lớp dữ liệu
 Chương 4. Khai phá luật kết hợp
 Chương 5. Phân cụm

Khai phá dữ liệu - ĐHSPHN


4 Khai phá luật kết hợp

Khai phá dữ liệu - ĐHSPHN


Tình huống – Market basket analysis
5

Khai phá dữ liệu - ĐHSPHN


Tình huống – Gợi ý bán hàng
6
7 Tổng quan về khai phá luật kết hợp

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
8

 Dữ liệu mẫu của AllElectronics

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
9
 Item (phần tử)
 Itemset (tập phần tử)
 Transaction (giao dịch)
 Association (sự kết hợp) và association rule (luật kết
hợp)
 Support (độ hỗ trợ)
 Confidence (độ tin cậy)
 Frequent itemset (tập phần tử phổ biến/thường
xuyên)
 Strong association rule (luật kết hợp mạnh)
Khai phá dữ liệu - ĐHSPHN
Các khái niệm cơ bản
10
 Dữ liệu mẫu của AllElectronics

Itemsets:
Item: I4
{I1, I2, I5},
{I2, I3}, …

Transaction: T800

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
11
 Item (phần tử)
 Các phần tử, mẫu, đối tượng đang được quan tâm.
 I = {I1, I2, …, Im}: tập tất cả m phần tử có thể có trong tập dữ liệu
 Itemset (tập phần tử)
 Tập hợp các items
 Một itemset có k items gọi là k-itemset.
 Transaction (giao dịch)
 Lần thực hiện tương tác với hệ thống (ví dụ: giao dịch “khách
hàng mua hàng”)
 Liên hệ với một tập T gồm các phần tử được giao dịch

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
12
 Association (kết hợp) và association rule (luật kết hợp)
 Sự kết hợp: các phần tử cùng xuất hiện với nhau trong một hay
nhiều giao dịch.
 Thể hiện mối liên hệ giữa các phần tử/các tập phần tử
 Luật kết hợp: qui tắc kết hợp có điều kiện giữa các tập phần tử.
 Thể hiện mối liên hệ (có điều kiện) giữa các tập phần tử
 Cho A và B là các tập phần tử, luật kết hợp là A  B
 B xuất hiện trong điều kiện A xuất hiện.

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
13
 Support (độ hỗ trợ)
 Độ đo đo tần số xuất hiện của các phần tử/tập phần tử.
 Minimum support threshold (ngưỡng hỗ trợ tối thiểu)
 Giá trị support nhỏ nhất được chỉ định bởi người dùng.

 Confidence (độ tin cậy)


 Độ đo đo tần số xuất hiện của một tập phần tử trong điều
kiện xuất hiện của một tập phần tử khác.
 Minimum confidence threshold (ngưỡng tin cậy tối thiểu)
 Giá trị confidence nhỏ nhất được chỉ định bởi người dùng.

Khai phá dữ liệu - ĐHSPHN


Các khái niệm cơ bản
14
 Frequent itemset (tập phần tử phổ biến)
 Tập phần tử có support thỏa minimum support threshold.
 Cho A là một itemset
 A là frequent itemset iff support(A) >= minimum support threshold.
 Strong association rule (luật kết hợp mạnh)
 Luật kết hợp có support và confidence thỏa minimum support
threshold và minimum confidence threshold.
 Cho luật kết hợp AB giữa A và B, A và B là itemsets
 AB là strong association rule iff support(AB) >= minimum support
threshold và confidence(AB) >= minimum confidence threshold.

Khai phá dữ liệu - ĐHSPHN


Quá trình khai phá luật kết hợp
15

Pre- Post-
processing
Relationships processing
Mining
among
Raw Data Items of Interest Items User
(Rules)

Khai phá dữ liệu - ĐHSPHN


Quá trình khai phá luật kết hợp
16

Pre- Relationships Post-


processing Mining processing
among
Raw Data Items of Interest Items User
(Rules)

Transactional/ Association
Items
Relational Data Rules

Transaction Items_bought A, B, C, D, F, … A  C (50%, 66.6%)


--------------------------------- …
T1012 A, B, C
T1044 A, C
T2030 A, D
T2045 B, E, F

Bài toán phân tích giỏ hàng


17 Khám phá các mẫu thường xuyên

Khai phá dữ liệu - ĐHSPHN


Giải thuật Apriori
18
 Thực hiện khai phá các mẫu thường xuyên từ dữ
liệu giao dịch.
 Một tập con của một tập mục thường xuyên thì
cũng là một tập mục thường xuyên
 Ví dụ, nếu {I1, I2} là tập mục thường xuyên, thì {I1} và
{I2} cũng phải là tập mục thường xuyên
 Là một cách tiếp cận đệ quy để tìm các tập mục
thường xuyên
 Sử dụng các tập mục thường xuyên để sinh các
luật kết hợp
Khai phá dữ liệu - ĐHSPHN
Giải thuật Apriori
19
 Thuật toán sử dụng chiến thuật lan rộng, trong đó k-
itemsets được dùng để khám phá (k+1)-itemsets
 Trong thuật toán, các tập mục thường xuyên được tăng
thêm một item (bước này gọi là quá trình sinh ra ứng cử
viên)
 Sau đó các nhóm ứng viên này được thử lại trên dữ liệu
 Quá trình nhận dạng từng item đơn trong dữ liệu, và mở
rộng ngày càng lớn hơn đến khi tập mục xuất hiện vẫn
thỏa mãn trong dữ liệu

Khai phá dữ liệu - ĐHSPHN


Giải thuật Apriori
20
 Thuật toán Apriori dựa vào tính chất rằng một tập con
bất kỳ của một tập mục thường xuyên thì cũng là một
tập mục thường xuyên
 Thuật toán khi đó có thể giảm số lượng các ứng viên
bằng việc xem xét các ứng viên có giá trị support cao
hơn min-support không?
 Tất cả các tập mục nếu có tập mục con không thường
xuyên thì cũng bị loại bỏ

Khai phá dữ liệu - ĐHSPHN


Giải thuật Apriori
21
 B1. Xây dựng danh sách các ứng viên k-itemsets và sau
đó trích chọn ra danh sách thường xuyên của k-itemsets
dùng min-sup
 B2. Sau đó sử dụng danh sách thường xuyên k-
itemsets để xác định danh sách ứng viên và thường
xuyên của (k+1)-itemsets
 B3. Loại bỏ các tập mục không thường xuyên
 B4. Lặp lại cho đến khi danh sách ứng viên và thường
xuyên của k-itemsets rỗng
 B5. Trả lại danh sách của (k-1)-itemsets

Khai phá dữ liệu - ĐHSPHN


Apriori … Step 1 Minimum suport count = 2

22
UV1 TX1
TID Items Itemset Support Itemset Support
100 134 {1} 3 {1} 3
200 235 {2} 3 {2} 3
300 1235 {3} 4 {3} 4
400 25 {4} 1 {5} 4
500 135 {5} 4

Khai phá dữ liệu - ĐHSPHN


Apriori … Step 2 Minimum suport count = 2

23
UV2 TX2
TID Items Itemset Support Itemset Support
100 134 {1, 2} 1 {1, 3} 3
200 235 {1, 3} 3 {1, 5} 2
300 1235 {1, 5} 2 {2, 3} 2
400 25 {2, 3} 2 {2, 5} 3
500 135 {2, 5} 3 {3, 5} 3
{3, 5} 3
TX1
Itemset Support
{1} 3
{2} 3
{3} 4
{5} 4 Khai phá dữ liệu - ĐHSPHN
Apriori … Step 3 Minimum suport count = 2

24
UV3 UV3
TID Items Itemset Support Itemset In TX2?
100 134 {1, 2, 3} {1, 2, 3}
No
200 235 {1, 2, 5} {1, 2}; {1, 3}; {2, 3}

300 1235 {1, 3, 5} {1, 2, 5}


No
{1, 2}; {1, 5}; {2, 5}
400 25 {2, 3, 5}
{1, 3, 5}
500 135 Yes
{1, 3}; {1, 5}; {3, 5}
Itemset Support
{2, 3, 5}
{1, 3} 3 Yes
{2, 3}; {2, 5}; {3, 5}
{1, 5} 2 TX3
TX2 {2, 3} 2 Itemset Support
{2, 5} 3 {1, 3, 5} 2
{3, 5} 3 {2, 3, 5} 2

Tập mục con của một tập mục thường xuyên thì cũng phải là tập mục thường xuyên!
Apriori … Step 4 Minimum suport count = 2

25
UV4 TX4
TID Items Itemset Support Itemset Support
100 134 {1, 2, 3, 5} 1 Empty
200 235
UV4
300 1235
Itemset In TX3?
400 25
{1, 2, 3, 5}
500 135 {1, 2, 3}; {1, 2, 5}; No
{1, 3, 5}; {2, 3, 5}
TX3
Itemset Support
{1, 3, 5} 2
{2, 3, 5} 2

Tập mục con của một tập mục thường xuyên thì cũng phải là tập mục thường xuyên!
Apriori
26

 Ví dụ: Xét T là tập dữ liệu như sau


V1 V2 V3 V4 V5
T1 1 1 0 0 0
T2 0 1 1 0 0
T3 1 0 0 0 1
T4 1 0 0 0 1
T5 0 1 1 0 1
T6 1 1 1 1 1
T7 1 1 1 0 0
T8 0 1 1 1 1
27 Khám phá các luật kết hợp

Khai phá dữ liệu - ĐHSPHN


Khám phá các luật kết hợp – B1
28
 Danh sách các tập mục thường xuyên
TX3
Itemset Support
{1, 3, 5} 2
{2, 3, 5} 2

 Sinh ra tất cả các tập mục con khác rỗng của mỗi tập
mục thường xuyên 𝐼
 Với 𝐼 = *1, 3, 5+ → *1, 3+; *1, 5+; *3, 5+; *1+; *3+; *5+
 Với 𝐼 = *2, 3, 5+ → *2, 3+; *2, 5+; *3, 5+; *2+; *3+; *5+

Khai phá dữ liệu - ĐHSPHN


Khám phá các luật kết hợp – B2
29

 Với mỗi tập con khác rỗng 𝑠 của 𝐼, sinh ra luật:


𝑠 → (𝐼 − 𝑠)
𝑠𝑢𝑝𝑝𝑜𝑟𝑡_𝑐𝑜𝑢𝑛𝑡(𝐼)
𝑛ế𝑢 ≥ min _𝑐𝑜𝑛𝑓
𝑠𝑢𝑝𝑝𝑜𝑟𝑡_𝑐𝑜𝑢𝑛𝑡(𝑠)

 Ví dụ: min_conf = 60%

Khai phá dữ liệu - ĐHSPHN


Khám phá các luật kết hợp
30
 R1: 1 & 3  5 min_conf = 60%
 Conf = sup{1, 3, 5} / sup{1, 3} = 2/3 = 66.66%
 R1 được lựa chọn TID Items
100 134
 R2: 1 & 5  3
200 235
 Conf = sup{1, 3, 5} / sup{1, 5} = 2/2 = 100%
300 1235
 R2 được lựa chọn
400 25
 R3: 3 & 5  1 500 135
 Conf = sup{1, 3, 5} / sup{3, 5} = 2/3 = 66.66%
 R3 được lựa chọn

Khai phá dữ liệu - ĐHSPHN


Khám phá các luật kết hợp
31
 R4: 1  3 & 5 min_conf = 60%
 Conf = sup{1, 3, 5} / sup{1} = 2/3 = 66.66%
 R4 được lựa chọn TID Items
100 134
 R5: 3  1 & 5
200 235
 Conf = sup{1, 3, 5} / sup{3} = 2/4 = 50%
300 1235
 R5 bị loại bỏ
400 25
 R6: 5  1 & 3 500 135
 Conf = sup{1, 3, 5} / sup{5} = 2/4 = 50%
 R6 bị loại bỏ

Khai phá dữ liệu - ĐHSPHN


Khám phá luật kết hợp
32

 Ví dụ: Xét T là tập dữ liệu như sau


V1 V2 V3 V4 V5
T1 1 1 0 0 0
T2 0 1 1 0 0
T3 1 0 0 0 1
T4 1 0 0 0 1
T5 0 1 1 0 1
T6 1 1 1 1 1
T7 1 1 1 0 0
T8 0 1 1 1 1
Tóm tắt
33
 Khai phá luật kết hợp được xem như là một trong
những đóng góp quan trọng nhất từ cộng đồng cơ sở
dữ liệu trong việc khám phá tri thức.
 Khai phá các frequent itemsets
 Khai phác các tập luật kết hợp

Khai phá dữ liệu - ĐHSPHN


THANK YOU!

You might also like