Bài giảng Khai phá dữ liệu: Chương 4 Khai phá luật kết hợp, cung cấp cho người học những kiến thức như: Khai phá luật kết hợp (Association rule); Các thuật toán khai phá vô hướng luật kết hợp (giá trị lôgic đơn chiều) trong CSDL giao dịch; Khai phá kiểu đa dạng luật kết hợp/tương quan; Khai phá kết hợp dựa theo ràng buộc; Khai phá mẫu dãy. Mời các bạn cùng tham khảo!
Chương Khai phá luật kết hợp KHAI PHÁ DỮ LIỆU Nội dung Khai phá luật kết hợp (Association rule) Các thuật tốn khai phá vơ hướng luật kết hợp (giá trị lôgic đơn chiều) CSDL giao dịch Khai phá kiểu đa dạng luật kết hợp/tương quan Khai phá kết hợp dựa theo ràng buộc Khai phá mẫu dãy DM DW 214 Khai phá luật kết hợp Một số ví dụ “luật kết hợp” (associate rule) • “98% khách hàng mà mua tạp chí thể thao mua tạp chí ơtơ” kết hợp “tạp chí thể thao” với “tạp chí ơtơ” • “60% khách hàng mà mua bia siêu thị mua bỉm trẻ em” kết hợp “bia” với “bỉm trẻ em” • “Có tới 70% người truy nhập Web vào địa Url vào địa Url phiên truy nhập web” kết hợp “Url 1” với “Url 2” Khai phá liệu sử dụng Web (Dữ liệu từ file log site, chẳng hạn MS cung cấp) • Các Url có gắn với nhãn “lớp” đặc trưng có luật kết hợp liên quan lớp Url DM DW 215 Khái niệm sở: Tập phổ biến luật kết hợp [IV06] Renáta Iváncsy, István Vajk (2006) Frequent Pattern Mining in Web DW DM Log Data, Acta Polytechnica Hungarica, 3(1):77-90, 2006 216 Khái niệm sở: Tập phổ biến luật kết hợp Cơ sở liệu giao dịch (transaction database) • Giao dịch: danh sách mục (mục: item, mặt hàng) phiếu mua hàng Giao dịch T tập mục • Tập toàn mục I = {i1, i2, …, ik} “tất mặt hàng” Một giao dịch T tập I: T I Mỗi giao dịch T có định danh TID • A tập mục A I T giao dịch: Gọi T chứa A A T • Luật kết hợp • Gọi A B “luật kết hợp” A I, B I AB= • Luật kết hợp A B có độ hỗ trợ (support) s CSDL giao dịch D D có s% giao dịch T chứa AB: xác suất P(AB) Tập mục A có P(A) s>0 (với s cho trước) gọi tập phổ biến (frequent set) Luật kết hợp A B có độ tin cậy (confidence) c CSDL D D có c% giao dịch T chứa A chứa B: xác suất P(B|A) • Support (A B) = P(AB) : s (A B) • Confidence (A B) = P(B|A) : c (A B) • Luật A B gọi đảm bảo độ hỗ trợ s D s(A B) s Luật DW AB gọi đảm bảo độ tin cậy c D c(A B) c Tập DM mạnh 217 Khái niệm bản: Mẫu phổ biến luật kết hợp Transaction-id Items bought 10 A, B, C 20 A, C 30 A, D 40 B, E, F Customer buys both Customer buys beer Customer buys diaper Tập mục I={i1, …, ik} CSDL giao dịch D = {d I} A, B I, AB=: A B luật kết hợp Bài tốn tìm luật kết hợp Cho trước độ hỗ trợ tối thiểu s>0, độ tin cậy tối thiếu c>0 Hãy tìm luật kết hợp mạnh XY Giả sử min_support = 50%, min_conf = 50%: A C (50%, 66.7%) C A (50%, 100%) Hãy trình bày nhận xét khái niệm luật kết hợp với khái niệm phụ thuộc hàm DW Các tính chất Armstrong DM 218 Một ví dụ tìm luật kết hợp Transaction-id Items bought 10 A, B, C 20 A, C 30 A, D 40 B, E, F For rule A C: Min support 50% Min confidence 50% Frequent pattern Support {A} 75% {B} 50% {C} 50% {A, C} 50% support = support({A}{C}) = 50% confidence = support({A}{C})/support({A}) = 66.6% DM DW 219 Khai niệm khai phá kết hợp DM DW 220 Khái niệm khai phá luật kết hợp Khai phá luật kết hợp: Tìm tất mẫu phổ biến, kết hợp, tương quan, cấu trú nhan-quả tập mục đối tượng CSDL quan hệ kho chứa thông tin khác Mẫu phổ biến (Frequent pattern): mẫu (tập mục, dãy mục…) mà xuất phổ biến CSDL [AIS93] Động lực: tìm mẫu quy (regularities pattern) DL Các mặt hàng mua nhau? — Bia bỉm (diapers)?! Mặt hàng mua sau mua PC ? Kiểu DNA nhạy cảm với thuộc này? Có khả tự động phân lớp Web hay không ? DM DW 221 Mẫu phổ biến khai phá luật kết hợp toán chất khai phá DL Nền tảng nhiều toán KPDL chất Kết hợp, tương quan, nhân Mẫu tuần tự, kết hợp thời gian vòng, chu kỳ phận, kết hợp không gian đa phương tiện Phân lớp kết hợp, phân tích cụm, khối tảng băng, tích tụ (nén liệu ngữ nghĩa) Ứng dụng rộng rãi Ví dụ: Phân tích DL bóng rổ, tiếp thị chéo (crossmarketing), thiết kế catalog, phân tích chiến dịch bán hàng Phân tích Web log (click stream), Phân tích chuỗi DNA v.v DM DW 222 KP mấu phổ biến ràng buộc: vấn đề tố ưu hóa câu hỏi Cho câu hỏi KP Mấu phổ biến với tập ràng buộc C, thuật tốn nên Mạnh mẽ: tìm tập phố biến bảo đảm ràng buộc C đầy đủ: Tìm tất tập phổ biến bảo đảm ràng buộc C Giải pháp “thơ ngây/hồn nhiên” (nạve) Tìm tất cát tập PB sau kiểm tra ràng buộc Tiếp cận hiệu Phân tích tính chất ràng buộc cách toàn diện Khai thác chúng sâu sắc tính tốn mẫu PB DM DW 268 Không đơn điêu KP theo ràng buộc TDB (min_sup=2) Chống đơn điệu (Anti-monotonicity) Một tập mục S vi phạm ràng buộc, tập lớn vi phạm sum(S.Price) v chống đơn điệu sum(S.Price) v không chống đơn điệu Ví dụ C: range(S.profit) 15 chống đơn điệu Tập mục ab vi phạm C Cũng tập chứa ab TID Transaction 10 a, b, c, d, f 20 b, c, d, f, g, h 30 a, c, d, e, f 40 c, e, f, g Item Profit a 40 b c -20 d 10 e -30 f 30 g 20 DW DM -10 269 h Ràng buộc chống đơn điệu Ràng buộc Chống đơn điệu vS No SV no SV yes min(S) v no min(S) v yes max(S) v yes max(S) v no count(S) v yes count(S) v no sum(S) v ( a S, a ) yes sum(S) v ( a S, a ) no range(S) v yes range(S) v no avg(S) v, { , , } convertible support(S) yes support(S) no DM DW 270 Tính đơn điệu KP luật dựa theo ràng buộc TDB (min_sup=2) Tính đơn điệu Khi tập mục S thỏa mãn ràng buộc, tập lớn thỏa mãn sum(S.Price) v đơn điệu min(S.Price) v đơn điệu Ví dụ C: range(S.profit) 15 Tập mục ab đảm bảo C Cũng tập chứa ab TID Transaction 10 a, b, c, d, f 20 b, c, d, f, g, h 30 a, c, d, e, f 40 c, e, f, g Item Profit a 40 b c -20 d 10 e -30 f 30 g 20 DW DM -10 271 h Ràng buộc đơn điệu Ràng buộc Đơn điệu vS yes SV yes SV no min(S) v yes min(S) v no max(S) v no max(S) v yes count(S) v no count(S) v yes sum(S) v ( a S, a ) no sum(S) v ( a S, a ) yes range(S) v no range(S) v yes avg(S) v, { , , } convertible support(S) no support(S) yes DM DW 272 Tính đọng Tính đọng: Cho A1, tập mục bảo đảm ràng buộc cô đọng C, S bảm đảm C dựa A1 , chằng hạn., S chứa tập thuộc A1 Tư tưởng: Bỏ qua xem xét CSDL giao dịch, có tập mục S bảo đảm ràng buộc C xác định dựa theo việc chọn mục min(S.Price) v cô đọng sum(S.Price) v không cô đọng Tối ưu hóa: Nếu C đọng đẩy đếm trước DM DW 273 Ràng buộc cô đọng Ràng buộc Cô đọng vS yes SV yes SV yes min(S) v yes min(S) v yes max(S) v yes max(S) v yes count(S) v weakly count(S) v weakly sum(S) v ( a S, a ) no sum(S) v ( a S, a ) no range(S) v no range(S) v no avg(S) v, { , , } no support(S) no support(S) no DM DW 274 Thuật tốn Apriori— Ví dụ Database D TID 100 200 300 400 itemset sup C1 {1} {2} Scan D {3} {4} {5} Items 134 235 1235 25 C2 itemset sup L2 itemset sup 2 {1 {1 {1 {2 {2 {3 C3 itemset {2 5} Scan D {1 3} {2 3} {2 5} {3 5} 2} 3} 5} 3} 5} 5} 2 L1 itemset sup {1} {2} {3} {5} 3 C2 itemset {1 2} Scan D L3 itemset sup {2 5} {1 {1 {2 {2 {3 3} 5} 3} 5} 5} DM DW 275 Thuật toán Naïve: Apriori +ràng buộc Database D TID 100 200 300 400 itemset sup C1 {1} {2} Scan D {3} {4} {5} Items 134 235 1235 25 C2 itemset sup L2 itemset sup 2 {1 {1 {1 {2 {2 {3 C3 itemset {2 5} Scan D {1 3} {2 3} {2 5} {3 5} 2} 3} 5} 3} 5} 5} 2 L1 itemset sup {1} {2} {3} {5} 3 C2 itemset {1 2} Scan D L3 itemset sup {2 5} {1 {1 {2 {2 {3 3} 5} 3} 5} 5} Constraint: DM DW Sum{S.price < 276 5} Thuật toán Apriori ràng buộc: Đẩy ràng buộc chống đơn điệu xuống sâu Database D TID 100 200 300 400 itemset sup C1 {1} {2} Scan D {3} {4} {5} Items 134 235 1235 25 C2 itemset sup L2 itemset sup 2 {1 {1 {1 {2 {2 {3 C3 itemset {2 5} Scan D {1 3} {2 3} {2 5} {3 5} 2} 3} 5} 3} 5} 5} 2 L1 itemset sup {1} {2} {3} {5} 3 C2 itemset {1 2} Scan D L3 itemset sup {2 5} {1 {1 {2 {2 {3 3} 5} 3} 5} 5} Constraint: DM DW Sum{S.price < 277 5} Thuật toán Apriori ràng buộc: Đẩy ràng buộc chống đơn điệu xuống sâu Database D TID 100 200 300 400 itemset sup C1 {1} {2} Scan D {3} {4} {5} Items 134 235 1235 25 C2 itemset sup L2 itemset sup 2 {1 {1 {1 {2 {2 {3 C3 itemset {2 5} Scan D {1 3} {2 3} {2 5} {3 5} 2} 3} 5} 3} 5} 5} 2 L1 itemset sup {1} {2} {3} {5} 3 C2 itemset {1 2} Scan D L3 itemset sup {2 5} {1 {1 {2 {2 {3 3} 5} 3} 5} 5} Constraint: DM DW min{S.price CSDL dãy TT SID sequence 10 20 30 40 Một phần tử chứa tập mục Tập mục phần tử không thứ tự , viết chúng theo ABC dãy Cho độ hỗ trợ min_sup =2, mẫu tuần DW DM tự sequential pattern 281 Một số chủ đề khai phá liệu nóng DM DW 282 ... frequency head f c a b m p f :4 c:1 c:3 b:1 b:1 a:3 p:1 m:2 b:1 F-list=f-c-a-b-m-p p:2 m:1 DM DW 245 Xây dựng FP DM DW 246 Xây dựng FP: chèn xâu vào DM DW 247 Lợi ích cấu trúc FP-tree Tính đầy đủ ... Minimum support = 1 24 123 A 12 1 24 AB 12 ABC 24 AC AD ABD ABE 12 34 B AE 345 D BC BD ACD 245 C 123 24 Closed but not maximal null 24 BE ACE E ADE CD Closed and maximal 34 CE BCD 45 DE BCE BDE CDE... Hàm tập 3,6,9 1 ,4, 7 Có tập ứng viên độ dài 1 24, 125, 136, 145 , 159, 2 34, 345 , 356, 357, 367, 368, 45 7, 45 8, 567, 689 2,5,8 1, 4, sang trái; 2, 5, dừng giữa; 3, 6, sang phải 1 24 125 136 Thêm 159