Tải bản đầy đủ (.ppt) (78 trang)

KHAI PHÁ LUẬT KẾT HỢP DỰA TRÊN CÁC RÀNG BUỘC TIỂU LUẬN MÔN HỌC KHAI PHÁ DỮ LIỆU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (717.64 KB, 78 trang )

ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KHOA HỌC

KHAI PHÁ LUẬT KẾT HỢP
DỰA TRÊN CÁC RÀNG BUỘC
TIỂU LUẬN MÔN HỌC KHAI PHÁ DỮ LIỆU

Giáo viên hướng dẫn: TS. Hoàng Thị Lan Giao


NỘI DUNG:
1

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

2

Khai phá luật kết hợp luận lý một chiều từ tập giao tác

3
4
5
6

Khai phá luật kết hợp đa mức từ tập giao tác
Khai phá luật kết hợp đa chiều từ CSDL quan hệ và kho
dữ liệu
Từ khai phá sự kết hợp để phân tích sự tương quan
Khai phá kết hợp luật kết hợp dựa trên các ràng buộc



Phân công thực hiện:
1. Trần Thị Thành
2. Lê Bá Minh Phong
3. Nguyễn Thị Thanh Tâm
4. Nguyễn Vũ Cát Tường
5. Trần Thị Mỹ Ngân
6. Trần Như Đăng Tuyên

Phần 1
Phần 2
Phần 3
Phần 4
Phần 5
Phần 6


2.1 Khai phá luật kết hợp
2.1.1 Phân tích giỏ mua hàng:


2.1 Khai phá luật kết hợp
2.1.1 Phân tích giỏ mua hàng:
Ví dụ:

Các thơng tin mà khách hàng mua máy tính cũng có xu
hướng mua phần mềm quản lý được thể hiện trong luật kết
hợp dưới đây:

computer financial_management_software
[support=2%; confidence = 60%] (1)


Độ hỗ trợ (support)2% cho luật kết hợp (1).
Độ tin cậy(confidence) 60%.
Thông thường, nguyên tắc liên kết được coi là thú vị nếu chúng đáp ứng
cả độ hỗ trợ và độ tin cậy một ngưỡng tối thiểu.
Ngưỡng này có thể được thiết lập bởi người sử dụng hoặc các chuyên gia.


2.1 Khai phá luật kết hợp
2.1.2 Một số khái niệm cơ bản

Phần tử: I4
Tập phần tử:
{I1, I2, I5},
{I2}, …
Bộ chuyển dich:
T800


2.1 Khai phá luật kết hợp
2.1.2 Một số khái niệm cơ bản

Giả sử I = {i1, i2,…, im} là tập các mặt hàng. Cho D là các dữ liệu
công việc có liên quan, một tập hợp các giao dịch trong đó mỗi giao dịch
T là một tập các mục với T  I.
 Mỗi giao dịch có liên quan đến một định danh, được gọi là TID.
Cho A là một nhóm các mặt hàng. Một T giao dịch được gọi là chứa A
nếu và chỉ nếu A T.
Một luật kết hợp dưới hình thức AB, với A  I, B  I và
 Một luật mà đáp ứng cả độ hỗ trợ tối thiểu (min_sup) và

độ tin cậy tối thiểu (min_conf) thì được gọi là mạnh.
Chúng ta qui định min_sup và min_conf xảy ra giữa 0% và 100%


2.1 Khai phá luật kết hợp
2.1.2 Một số khái niệm cơ bản

 Một tập các mục được gọi là một tập mục.
 Một tập mục có chứa các k mặt hàng gọi là một k-tập mục.
 Tần suất xuất hiện của tập mục là số các giao dịch có
chứa các tập mục.
 Một tập mục thỏa mãn độ hỗ trợ tối thiểu nếu tần số
xuất hiện của tập mục là lớn hơn hoặc bằng min_sup và tổng
số các giao dịch trong D.
Số lượng các giao dịch cần thiết cho tập mục để đáp ứng
độ hỗ trợ tối thiểu gọi là tính hỗ trợ tối thiểu.


2.1 Khai phá luật kết hợp
2.1.2 Một số khái niệm cơ bản

 Nếu tập mục thỏa mãn độ hỗ trợ tối thiểu thì đó là tập

mục phổ biến.
 K-tập mục phổ biến được ký hiệu là Lk.
Khai phá luật kết hợp trong tập dữ liệu lớn, qua 2 bước:
Tìm tất cả các tập mục phổ biến.
Tạo ra các luật kết hợp mạnh cho các tập mục phổ biến.
Những quy tắc trên phải đáp ứng độ hỗ trợ tối thiểu và độ
tin cậy tối thiểu.



2.1 Khai phá luật kết hợp
2.1.3 Khai phá luật kết hợp
Trong thực tế, có nhiều loại luật kết hợp. Các luật kết hợp
có thể được phân loại dựa trên các tiêu chí sau đây:
1. Căn cứ vào loại giá trị xử lý trong luật :
Nếu một luật quan tâm kết hợp giữa sự hiện diện hay
vắng mặt của mặt hàng, đó là một luật kết hợp Boolean.
Ví dụ:

Luật (1) ở trên là một luật kết hợp Boolean
thu được từ phân tích thị trường trong giỏ hàng.


2.1 Khai phá luật kết hợp
2.1.3 Khai phá luật kết hợp
1. Căn cứ vào loại giá trị xử lý trong luật :
Nếu một luật mô tả sự kết hợp giữa số lượng hoặc thuộc
tính mặt hàng, thì nó là một luật kết hợp lượng số.
Ví dụ:
Luật sau là một luật kết hợp định lượng, với X đại diện
cho một khách hàng:
Age(X,“30…39”)

income(X,“24K…48K”)  buys (X, high resolution TV)(2)


2.1 Khai phá luật kết hợp
2.1.3 Khai phá luật kết hợp

2. Căn cứ vào chiều của dữ liệu:
Nếu các mục hoặc các thuộc tính trong luật kết hợp chỉ
có một chiều thì nó là luật kết hợp đơn chiều.
 Quy tắc (1) có thể được viết lại như sau:
buys(X,“computer")buys(X,”financial_management_software") (3)

Quy tắc (1) là luật kết hợp một chiều vì nó đề cập đến chỉ
một chiều của dữ liệu là buys.
Nếu một luật tham chiếu đến hai hoặc nhiều chiều như buys,
time_of_transaction và customer_category thì nó là một luật
kết hợp đa chiều.
Quy tắc (2) trên đây được coi là một đa chiều vì nó bao gồm
3 chiều: age, income và buys.


2.1 Khai phá luật kết hợp
2.1.3 Khai phá luật kết hợp

3. Căn cứ vào các mức trong các luật:
Một số phương pháp để khai thác luật kết hợp có thể tìm
thấy ở mức.
Ví dụ: Giả sử một tập hợp các luật kết hợp được khai
thác dưới đây:
age(X, “30…39") buys(X, “laptop computer") (4)
age(X, “30…34") buys(X, “computer")
(5)
Trong quy tắc (4) và (5), các mặt hàng đã mua được tham
chiếu ở mức khác nhau.(Tức là, "computer” là mức
trừu tượng cao hơn "laptop computer”).


Nếu các quy tắc trong một tập đã cho không tham chiếu đến các
mục hoặc các thuộc tính tại các mức khác nhau thì đó là luật kết hợp
đơn mức.


2.2 Khai phá luật kết hợp lý luận một chiều từ tập giao tác
Xét hệ thống cho trong bảng sau:
Bài tốn tìm luật trên được
đưa về hai bài tốn con:
Làm thế nào khai phá
luật kết hợp?

1. Tìm tất các tập mục phổ
biến có độ hỗ trợ lớn
hơn hoặc bằng ngưỡng
min_sup
2. Với mỗi tập phổ biến,
sinh ra tất các luật (X
=> Y), có độ tin cậy lớn
hơn hoặc bằng
min_conf


2.1 thuật toán Apriori:
Ý tưởng thuật toán:
Input: I, D, min_sup
Output: Tất cả tập mục phổ biến A
Method: Trước tiên, tìm tất cả 1- tập mục phổ biến. Từ 1- tập mục phổ
biến sinh ra 2- tập mục phổ biến. Quá trình này lập lại cho đến
khi khơng cịn tập mục phổ biến nào sinh ra.

Thuật toán gồm hai giai đoạn chính là kết nối và rút gọn.


Giai đoạn kết nối

Gọi Lk-1 là tập tất cả (k – 1)-tập mục phổ biến.
Chúng ta sẽ tìm tất cả k-tập mục phổ biến (dự tuyển) của k-tập mục
phổ biến, kí hiệu Ck
Giả sử các tập mục được sắp xếp theo thứ tự từ điển.
Lấy l1, l2 là hai tập mục phổ biến bất kỳ thuộc Lk-1, gọi Li[j] là mục
thứ j của tập mục li.
Khi đó, nếu l1 và l2 có (k – 2) mục đầu tiên giống nhau thì kết hợp
chúng lại thành k-tập mục gồm các mục:
(l1[1]=l2[1] ^ … ^ l1[k-2]=l2[k-2])^(l1[k-1]Bổ sung vào Ck


Giai đoạn rút gọn

Tạo tập Lk từ Ck
1. Khởi tạo Lk:= 
2. For l thuộc Ck do
3.
4.

If supp(l) ≥ min-sup then
Lk := Lk  {l}


Ví dụ: Xét hệ thống

Hệ thống này có 4 giao tác và 5 mục.
Giả sử min-sup = 50%

Quá trình tìm tất cả tập mục phổ biến theo thuật toán Apriori:


2.2 sinh luật kết hợp từ những tập luật phổ biến
Bài tốn thứ hai có nghĩa là với tập mục phổ biến Z cho trước, tìm tập Y
sao cho:
(X  Z\Y)  Y thỏa confidence(X  Y) ≥ min_conf
Thuật toán:
1. For Y ≠ , Y Z do
2. X:=Z\Y
3. If confidence(X  Y) ≥ min_conf then
Tạo luật X  Y


Giải thuật Apriori
Đặc điểm
Tạo ra nhiều tập dự tuyển
104 frequent 1-itemsets  nhiều hơn 107 (≈104(104-1)/2) 2itemsets dự tuyển
Một k-itemset cần ít nhất 2k -1 itemsets dự tuyển
trước đó.
Kiểm tra tập dữ liệu nhiều lần
Chi phí lớn khi kích thước các itemsets tăng lên dần.
Nếu k-itemsets được khám phá thì cần kiểm tra tập
dữ liệu k+1 lần.


2.2 Khai phá luật kết hợp lý luận một chiều từ tập giao tác

Giải thuật Apriori
Các cải tiến của giải thuật Apriori
Kỹ thuật dựa trên bảng băm (hash-based technique)
Một k-itemset ứng với hashing bucket count nhỏ hơn
minimum support threshold không là một frequent itemset.
Giảm giao dịch (transaction reduction)
Một giao dịch khơng chứa frequent k-itemset nào thì khơng
cần được kiểm tra ở các lần sau (cho k+1-itemset).
Phân hoạch (partitioning)
Một itemset phải frequent trong ít nhất một phân hoạch thì
mới có thể frequent trong toàn bộ tập dữ liệu.
Lấy mẫu (sampling)
Khai phá chỉ tập con dữ liệu cho trước với một trị support
threshold nhỏ hơn và cần một phương pháp để xác định
tính tồn diện (completeness).
Đếm itemset động (dynamic itemset counting)
Chỉ thêm các itemsets dự tuyển khi tất cả các tập con của
chúng được dự đoán là frequent.


2.2 Khai phá luật kết hợp lý luận một chiều từ tập giao tác
Giải thuật FP-Growth
Nén tập dữ liệu vào cấu trúc cây (Frequent Pattern tree, FP-tree)
Giảm chi phí cho tồn tập dữ liệu dùng trong q trình
khai phá
Infrequent items bị loại bỏ sớm.
Đảm bảo kết quả khai phá không bị ảnh hưởng
Phương pháp chia-để-trị (divide-and-conquer)
Quá trình khai phá được chia thành các công tác nhỏ.
1. Xây dựng FP-tree

2. Khám phá frequent itemsets với FP-tree
Tránh tạo ra các tập dự tuyển
Mỗi lần kiểm tra một phần tập dữ liệu


2.2 Khai phá luật kết hợp lý luận một chiều từ tập giao tác
Giải thuật FP-Growth
1. Xây dựng FP-tree
1.1. Kiểm tra tập dữ liệu, tìm frequent 1-itemsets
1.2. Sắp thứ tự frequent 1-itemsets theo sự giảm dần của support
count (frequency, tần số xuất hiện)
1.3. Kiểm tra tập dữ liệu, tạo FP-tree
Tạo root của FP-tree, được gán nhãn “null” {}
Mỗi giao dịch tương ứng một nhánh của FP-tree.
Mỗi node trên một nhánh tương ứng một item của giao dịch.
Các item của một giao dịch được sắp theo giảm dần.
Mỗi node kết hợp với support count của item tương
ứng.
Các giao dịch có chung items tạo thành các nhánh có prefix
chung.


Giải thuật FP-Growth


2.2 Khai phá luật kết hợp lý luận một chiều từ tập giao tác


×