Tổng quan về khai phá dữ liệu và phân cụm dữ liệu. Thuật toán khai phá tập thường xuyên hiệu quả sử dụng kỹ thuật phân cụm. Phát triển thuật toán khai phá tập thường xuyên dựa vào sự gom cụm dữ liệu. Thuật toán QFIM
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - Mai Thị Hiên PHÁT TRIỂN THUẬT TOÁN KHAI PHÁ TẬP THƯỜNG XUYÊN DỰA VÀO SỰ GOM CỤM DỮ LIỆU Chuyên ngành: CÔNG NGHỆ THÔNG TIN LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC TS NGUYỄN HỮU TRỌNG Hà Nội – 2013 LỜI CẢM ƠN Tác giả xin chân thành tri ân TS Nguyễn Hữu Trọng - Đại học Nha Trang, vị thầy đáng kính, dày cơng hướng dẫn giúp đỡ tác giả hoàn thành luận văn Xin chân thành cảm ơn Quý Thầy Cô, nhân viên thuộc Viện Công nghệ thông tin Truyền Thông, Viện Sau đại học – Trường Đại học Bách Khoa Hà Nội, Quý Thầy cô Trường Đại học Nha Trang, … quan tâm giúp đỡ tận tâm thiết thực q trình nghiên cứu hồn thành luận văn Xin chân thành cảm ơn quý Thầy Cơ đọc góp ý chân thành để tác giả hoàn thiện luận văn Xin chân thành cảm ơn đồng nghiệp thuộc Trung tâm Ngoại ngữ - Tin học – Học viện Hải quân, cảm ơn bạn học viên lớp Cao học Cơng nghệ thơng tin khóa 2012A học Nha Trang, người thân yêu tạo điều kiện mặt thời gian, công việc, động viên, giúp đỡ suốt trình học tập hoàn thành luận văn Cuối xin cảm ơn người thân gia đình bạn bè ln tạo điều kiện thuận lợi nhất, chỗ dựa mặt tinh thần vững để tác giả hồn thành nhiệm vụ Hà Nội, tháng 10 năm 2013 Mai Thị Hiên ii LỜI CAM ĐOAN Tôi xin cam đoan cơng trình nghiên cứu hướng dẫn TS Nguyễn Hữu Trọng Các số liệu, kết nêu luận văn trung thực chưa công bố cơng trình khác Hà Nội, ngày tháng 11 năm 2013 Mai Thị Hiên iii MỤC LỤC TRANG PHỤ BÌA i LỜI CẢM ƠN II LỜI CAM ĐOAN III MỤC LỤC IV DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT VI DANH MỤC CÁC BẢNG VII DANH MỤC CÁC HÌNH, ĐỒ THỊ VIII MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÂN CỤM DỮ LIỆU 1.1 MỞ ĐẦU 1.2 CÁC MƠ HÌNH KHAI PHÁ DỮ LIỆU 1.2.1 Khai phá liệu suy diễn 1.2.2 Khai phá liệu mô tả 1.3 CÁC KHÁI NIỆM CƠ BẢN 1.3.1 Cơ sở liệu giao tác 1.3.2 Tính chất tập thường xuyên 13 1.4 KHAI PHÁ LUẬT KẾT HỢP 13 1.4.1 Cách tiếp cận khai phá luật kết hợp 14 1.4.2 Một số thuật toán phát luật kết hợp 15 1.5 PHÂN CỤM DỮ LIỆU 23 1.5.1 Khái niệm phân cụm 23 1.5.2 Các phép đo độ tương tự 24 1.5.3 Một số thuật toán phân cụm 26 1.6 KẾT LUẬN 29 CHƯƠNG THUẬT TOÁN KHAI PHÁ TẬP THƯỜNG XUYÊN HIỆU QUẢ SỬ DỤNG KỸ THUẬT PHÂN CỤM 30 2.1 MỞ ĐẦU 30 iv 2.2 NỘI DUNG THUẬT TOÁN 31 2.2.1 Phân cụm phân hoạch 31 2.2.2 Các thủ tục cài đặt 32 2.3 VÍ DỤ MINH HỌA 34 2.4 KẾT LUẬN 36 CHƯƠNG PHÁT TRIỂN THUẬT TOÁN KHAI PHÁ TẬP THƯỜNG XUYÊN DỰA VÀO SỰ GOM CỤM DỮ LIỆU THUẬT TOÁN QFIM 38 3.1 MỞ ĐẦU 38 3.2 THUẬT TỐN QFIM TÌM TẬP THƯỜNG XUN TRÊN CƠ SỞ DỮ LIỆU GIAO TÁC ĐÃ PHÂN CỤM 39 3.2.1 Phân cụm sở liệu giao tác 39 3.2.2 Thuật toán QFIM 43 3.3 VÍ DỤ MINH HỌA 47 3.3.1 Dữ liệu 47 3.3.2 Áp dụng thuật toán QFIM để khai phá tập thường xuyên 49 3.4 KẾT QUẢ THỬ NGHIỆM 58 3.4.1 Tập liệu T10I4D100K 59 3.4.2 Tập liệu T1I5D10000K 60 3.5 ĐÁNH GIÁ THUẬT TOÁN 61 3.5.1 Độ phức tạp thuật toán 61 3.5.2 Tính đắn thuật toán 62 3.6 KẾT LUẬN 62 KẾT LUẬN 64 NHỮNG KẾT QUẢ ĐẠT ĐƯỢC 64 HƯỚNG NGHIÊN CỨU TIẾP THEO 66 TÀI LIỆU THAM KHẢO 67 v DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Trong suốt luận văn này, tác giả dùng thống nhất: Ký hiệu: I = {x1, x2, …, xn}: Tập n mục liệu T = {t1, t2, …, tm}: Cơ sở liệu có m giao tác xj: mục liệu thứ j ti:Giao tác thứ i m: Số giao tác sở liệu giao tác n: Số mục liệu sở liệu giao tác A, B, C, …: Tên mục liệu sở liệu giao tác ví dụ X, Y: Là tập tập mục liệu I, X, Y ⊆ I S: Là tập giao tác sở liệu giao tác T, S ⊆ T X = ABC thay cho X = {A, B, C} ví dụ minh họa S0, MinSup: Ngưỡng tối thiểu Supp(xi) thay cho Supp({xi}) ∥X∥: Số phần tử tập hợp X Set(t): Tập hợp mục liệu giao tác t Subset(U) = {X | X ⊆ U}: Tập tập U Viết tắt: KPDL: Khai phá liệu KPTT: Khai phá tri thức CSDL: Cơ sở liệu DL: Dữ liệu MDL: Mục liệu TT: Thuật toán GC: Gom cụm CNTT: Công nghệ thông tin TUV: Tập ứng viên vi DANH MỤC CÁC BẢNG Bảng 1.1 Cơ sở liệu giao tác Bảng 1.2 Ma trận giao tác 10 Bảng 1.3 Biểu diễn ngang CSDL giao tác 11 Bảng 1.4 Biểu diễn dọc CSDL giao tác 11 Bảng 1.5 Kết thuật toán Apriori 16 Bảng 1.6 Những biến đổi liệu FP-Growth 20 Bảng 2.1 Cơ sở liệu giao tác 34 Bảng 2.2 Kết phân cụm 34 Bảng 2.3 Kết thuật toán Improved Apriori 35 Bảng 3.1 Mã hóa dịch vụ giá trị gia tăng 47 Bảng 3.2 Dữ liệu 20 thuê bao di động 48 Bảng 3.3 Ma trận giao tác 49 Bảng 3.4 Độ hỗ trợ MDL 49 Bảng 3.5 Độ hỗ trợ giảm dần MDL 50 Bảng 3.6 CSDL xếp 50 Bảng 3.7 Kết phân rã giao tác 51 Bảng 3.8 Kết phân cụm giao tác 52 Bảng 3.9 Tập C2’ 55 Bảng 3.10 Ý nghĩa tham số tên CSDL 58 Bảng 3.11 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T10I4D100K 59 Bảng 3.12 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T1I5D10000K 60 vii DANH MỤC CÁC HÌNH, ĐỒ THỊ Hình 1.1 Quá trình khai phá tri thức CSDL Hình 1.2 Cây định Hình 1.3 FP-tree liệu bảng 1.1 20 Hình 1.4 Thành phần FP-tree 21 Hình 3.1 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T10I4D100K 59 Hình 3.2 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T1I5D10000K 60 viii MỞ ĐẦU Trên giới, nhân loại bước vào thời đại - thời đại mà thơng tin, tri thức trở thành lực lượng sản xuất trực tiếp; thời đại xã hội thông tin kinh tế tri thức hình thành sở phát triển ứng dụng rộng rãi Công nghệ thông tin (CNTT) - Truyền thông Việt Nam trở thành thành viên Tổ chức Thương mại Thế giới (WTO) Trong xu thương mại tồn cầu hóa đó, cạnh tranh thị trường quốc tế ngày diễn gay gắt Để tồn phát triển, công ty cần phải nỗ lực cố gắng đề chiến lược đắn để sử dụng đạt hiệu tối đa nguồn lực công ty, nâng cao lợi cạnh tranh cuối trở thành người chiến thắng Ngành công nghiệp viễn thông khỏi quỹ đạo Các công ty viễn thông lưu trữ khối lượng liệu khổng lồ, bao gồm: liệu khách hàng, dịch vụ giá trị gia tăng, thơng tin cảnh báo tình trạng hệ thống mạng viễn thông,… Những liệu khách hàng bao gồm: thông tin cá nhân, chi tiết gọi, dịch vụ giá trị gia tăng mà khách hàng đăng ký sử dụng,… giúp nhận diện đặc tính khách hàng Hiện nay, th bao viễn thơng, có nhiều dịch vụ giá trị gia tăng khác Ví dụ: truy cập internet, đọc truyện online, đọc sách điện tử, gửi tin nhắn nhóm, chặn gọi lạ, báo gọi nhỡ, nhạc chờ Imuzilk, chuyển tiền, Yahoo chat, quà tặng âm nhạc, đọc báo online, dịch vụ Game,… Với sở liệu (CSDL) thuê bao, khám phá mối liên kết việc sử dụng dịch vụ Có thể đưa luật “có 75% khách hàng gọi điện thoại quốc tế có truy cập internet”, “có 10% khách hàng sử dụng dịch vụ nhạc chờ Imuzilk có truy cập internet”, “có 70% khách hàng dùng dịch vụ Mobile Internet dịch vụ Dailyinfo sử dụng Yahoo chat”, Trên sở phân tích luật vậy, cơng ty viễn thơng điều chỉnh việc đầu tư thiết bị cho phù hợp với phát triển khách hàng Ví dụ có thêm số lượng lớn khách hàng đăng ký gọi điện thoại quốc tế phải đầu tư thêm thiết bị cung cấp dịch vụ Internet, có số lượng lớn khách hàng sử dụng nhạc chờ Imuzilk chưa cần đầu tư thêm thiết bị cung cấp dịch vụ Internet Cũng từ việc phân tích tập luật, cơng ty tăng số lượng trạm giao dịch nơi có tần suất sử dụng dịch vụ cao nơi có số lượng người dùng đăng ký sử dụng dịch vụ lớn Thơng qua đó, đưa sách chăm sóc khách hàng thích hợp, có chiến lược kinh doanh, tiếp thị hiệu quả, phát huy tối đa hiệu suất công việc, tiết kiệm chi phí nhân lực dựa kết dự đoán Ứng dụng kỹ thuật khai phá liệu (data mining) để phát quy luật ẩn chứa khối liệu khổng lồ mang lại cho công ty viễn thông nhiều hội để phát triển ứng dụng mang tính thực tiễn cao Đây hướng phù hợp sớm áp dụng phổ biến nhiều công ty viễn thông lớn giới công ty viễn thông nước ta Khai phá liệu cơng đoạn tiến trình lớn khai phá tri thức (Knowledge Discovery Process - KDP) Khai phá liệu giúp phát xu phát triển từ thông tin khứ, cho phép đề xuất dự báo mang tính thống kê, gom cụm phân loại liệu Tìm luật kết hợp công việc khai phá liệu Q trình giải theo hai bước chính: Bước một, tìm tất tập thường xuyên theo ngưỡng tối thiểu S0 cho trước Bước hai, dựa vào tập thường xuyên, tìm luật kết hợp Tất khó khăn q trình tập trung bước Các nghiên cứu khai phá luật kết hợp tập trung cải tiến tốc độ xử lý, dung lượng nhớ số lần truy cập CSDL Nghiên cứu liên hệ, tìm luật kết hợp MDL giới thiệu lần Agrawal R., Imielinski T., Swami A., [9] Trên giới, kết nghiên cứu khai phá luật kết hợp tổng kết [15] B.Goethals [16] Thuật toán AIS Agrawal R giới thiệu lần vào năm 1993 [9], thuật toán Apriori năm 1994 [10] bước tác giả nhóm nghiên cứu cơng bố: FP_Growth J Han năm 2000 [18] ( 3.8p Cụm Q: CLQ) Giao tác Mục liệu Bảng 3.8q Cụm J: CLJ Giao tác Mục liệu T tJ1 ( 3.8r Cụm I: CLI) Giao tác Mục liệu ( 3.8s Cụm R: CLR) Giao tác Mục liệu - Bước 5: Áp dụng kỹ thuật thuật tốn Apriori để tìm tất tập MDL thường xuyên theo ngưỡng MinSup = (3/20 =0.15%) Bước 5.1: k=1 Từ bảng 3.5 thu tập MDL thường xuyên L1: L1 = {B, A, M, S, F, O, C, G, H, P, E} Bước 5.2: k=2 • Tìm C2: Từ tập L1, ghép hai MDL L1 thu tập C2’: Bảng 3.9 Tập C2’ BA AM MS SF FO OC CG GH HP BM AS MF SO FC OG CH GP HE BS AF MO SC FG OH CP GE BF AO MC SG FH OP CE BO AC MG SH FP OE BC AG MH SP FE BG AH MP SE BH AP ME BP AE BE Tập C2 = C2’ • Phân cụm C2 UB = {A, M, S, F, O, C, G, H, P, E} 55 PE UA = {M, S, F, O, C, G, H, P, E} UM = {S, F, O, C, G, H, P, E} US = {F, O, C, G, H, P, E} UF = {O, C, G, H, P, E} UO = {C, G, H, P, E} UC = {G, H, P, E} UG = {H, P, E} UH = {P, E} UP = {E} UE = {} • Tìm L2 Với UB = {A, M, S, F, O, C, G, H, P, E}: Duyệt cụm CLB ta có: Supp(A)=5, Supp(M)=2, Supp(S)=4, Supp(F)=1, Supp(O)=1,Supp(C)=3, Supp(G)=3, Supp(H)=1, Supp(P)=1, Supp(E)=1 L2 = {BA, BS, BC, BG} Với UA = {M, S, F, O, C, G, H, P, E}: Duyệt cụm CLA ta có: Supp(M)=2 , Supp(S)=5, Supp(F)=3, Supp(O)=2, Supp(C)=4, Supp(G)=0, Supp(H)=1, Supp(P)=0, Supp(E)=0 L2 = {BA, BS, BC, BG, AS, AF, AC} Với UM = {S, F, O, C, G, H, P, E}: Duyệt cụm CLM: Supp(S)=2, Supp(F)=1, Supp(O)=3, Supp(C)=0, Supp(G)=2, Supp(H)=0, Supp(P)=2, Supp(E)=1 L2 = {BA, BS, BC, BG, AS, AF, AC, MO} Với US = {F, O, C, G, H, P, E}: Duyệt cụm CLS: Supp(F)=2, Supp(O)=2, Supp(C)=2, Supp(G)=1, Supp(H)=1, Supp(P)=0, Supp(E)=1 L2 = {BA, BS, BC, BG, AS, AF, AC, MO} Với UF = {O, C, G, H, P, E}: Duyệt cụm CLF: Supp(O)=2, Supp(C)=2, Supp(G)=0, Supp(H)=1, Supp(P)=0, Supp(E)=1 56 L2 = {BA, BS, BC, BG, AS, AF, AC, MO} Với UO = {C, G, H, P, E}: Duyệt cụm CLO: Supp(C)=0, Supp(G)=2, Supp(H)=1, Supp(P)=3, Supp(E)=2 L2 = { BA, BS, BC, BG, AS, AF, AC, MO, OP} Với UC = {G, H, P, E}: Duyệt cụm CLC: Supp(G)=0, Supp(H)=0, Supp(P)=0, Supp(E)=0 L2 = { BA, BS, BC, BG, AS, AF, AC, MO, OP} Với UG = {H, P, E}: Duyệt cụm CLG: Supp(H)=1, Supp(P)=2, Supp(E)=2 L2 = { BA, BS, BC, BG, AS, AF, AC, MO, OP} Với UH = {P, E}: Duyệt cụm CLH: Supp(P)=1, Supp(E)=1 L2 = { BA, BS, BC, BG, AS, AF, AC, MO, OP} Với UP = {E}: Duyệt cụm CLP: Supp(E)=1 L2 = { BA, BS, BC, BG, AS, AF, AC, MO, OP} Bước 5.3: k=3 • Tìm C3: Hợp hai tập MDL L2 có MDL đầu giống nhau, thu tập C3’ sau: C3’ = {BAS, BAC, BAG, BSC, BSG, BCG, ASF, ASC, AFC} Từ tập C3’, loại bỏ tập X=[x0, x1, x2] có tập =[x1, x2] không thuộc L2, ta thu tập C3 C3 = {BAS, BAC} • Phân cụm C3 ta có: UB = {AS, AC} UA = {} UM = {} US = {} UF = {} UO = {} UC = {} UG = {} UH = {} UP = {} UE = {} • Tìm L3: 57 Với UB = {AS, AC}: duyệt cụm CLB ta có: Supp(AS)=3, Supp(AC)=3 L3 = {BAS, BAC} Bước 5.4: k=4 • Tìm C4: Từ tập L3, hợp hai tập MDL có hai MDL đầu giống nhau, ta thu tập C4’ sau: C4’ = {BASC} Loại bỏ C4’ tập MDL có tập MDL khơng thuộc L3 thu tập C4: C4 = {} L4 = {} Kết thúc thuật toán Như tất tập MDL thường xuyên theo MinSup = là: L = L1 ∪ L2 ∪ L3 ∪ L4 = { B, A, M, S, F, O, C, G, H, P E, BA, BS, BC, BG, AS, AF, AC, MO, OP, BAS, BAC} 3.4 KẾT QUẢ THỬ NGHIỆM Cài đặt thuật tốn QFIM Apriori ngơn ngữ Delphi Chạy thử nghiệm hai thuật toán với ngưỡng tối thiểu khác tập CSDL mẫu lấy từ http://fimi.ua.ac.be/data - Thử nghiệm với CSDL T10I4D100K máy tính HP: xử lý Intel Core(TM)2 Duo 2.00Ghz với nhớ 4GB, hệ điều hành Window - Thử nghiệm với CSDL T1I5D10000K máy Del Insprion 14-3420: xử lý Intel Core-i5 2.5 Ghz, nhớ 4GB, hệ điều hành Window Ý nghĩa tham số tên CSDL bảng 3.10: Bảng 3.10 Ý nghĩa tham số tên CSDL D Số lượng giao tác T Kích thước trung bình giao tác I Kích thước trung bình tập thường xuyên 58 3.4.1 Tập liệu T10I4D100K CSDL gồm 100.000 giao tác 1.000 MDL kích thước trung bình tập thường xuyên 4: Bảng 3.11 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T10I4D100K S0 QFIM (Giây) Apriori (Giây) 50 190 6199 100 106 3026 200 81 2417 300 72 2050 400 48 1789 500 46 1389 7000 6000 Time (s) 5000 4000 QFIM 3000 Apriori 2000 1000 50 100 200 300 MinSup 400 500 Hình 3.1 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T10I4D100K 59 3.4.2 Tập liệu T1I5D10000K CSDL có 10.000.000 giao tác 100 MDL kích thước trung bình tập thường xuyên 5: Bảng 3.12 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T1I5D10000K S0 QFIM (Giây) Apriori (Giây) 5000 15017 1285 6000 12826 1115 7000 10921 1225 8000 10643 1024 9000 9756 878 10000 9151 989 12000 8221 837 15000 7043 707 16000 14000 Time (s) 12000 10000 8000 6000 QFIM 4000 Apriori 2000 MinSup Hình 3.2 So sánh thời gian chạy hai thuật toán QFIM Apriori liệu T1I5D10000K 60 3.5 ĐÁNH GIÁ THUẬT TỐN 3.5.1 Độ phức tạp thuật tốn Thuật tốn QFIM tìm tập tất tập thường xun theo ngưỡng S0 chia làm hai bước chính: Bước 1: Phân cụm liệu Bước 2: Tìm tập thường xuyên liệu phân cụm Ở bước 1, thực thủ tục: - Thủ tục 1: Duyệt CSDL gốc T1 lần thứ để tính độ hỗ trợ MDL - Thủ tục 2: Duyệt T1 lần thứ hai, chuyển giao tác thành dãy có thứ tự giảm dần theo độ hỗ trợ lưu vào CSDL T - Thủ tục 3: Phân cụm: Duyệt qua T, ứng với t=(xi1,xi2,…,xik), phân rã thành k-1 giao tác ghi vào cụm tương ứng Với CSDL giao tác T1 = {t1, t2, …, tm} I = {x1, x2, …, xn} Thủ tục có độ phức tạp O(m); Thủ tục có độ phức tạp O(m); Thủ tục có độ phức tạp O(n*m); Như độ phức tạp bước Max{O(m), O(n*m)} = O(n*m) Trong thử nghiệm 1, 90 giây, thử nghiệm 803 giây cho việc phân cụm Như vậy, thời gian phân cụm không đáng kể Bước thuật toán bước tổ chức lại liệu, công việc thực lần, độc lập với bước Bước thuật toán, thay phải duyệt tồn CSDL để tính độ hỗ trợ tập MDL Apriori, duyệt cụm Số phần tử cụm liệu nhỏ độ hỗ trợ MDL tương ứng: ||CLxi|| < Supp(xi), thời gian tính tốn nhỏ nhiều Các TUV tổ chức thành dãy có thứ tự giảm dần theo độ hỗ trợ MDL phân thành cụm Ukxi gồm ứng viên bắt đầu xi, nên cụm 61 TUV duyệt cụm liệu, đó, ta đưa hết liệu cụm vào nhớ trong, tốc độ truy xuất nhanh 3.5.2 Tính đắn thuật toán Phần phân cụm liệu: CSDL giao tác T I UT CSDL giao tác phân rã từ T hai CSDL tương đương (đã chứng minh) việc phân cụm UT thành TCL dựa quan hệ tương đương ≈ định nghĩa Do đó, CSDL sau phân cụm bảo đảm bảo tồn tính chất liệu ban đầu Phần tìm tập thường xuyên Kỹ thuật tìm tập thường xuyên thuật toán QFIM dựa kỹ thuật thuật toán APRIORI nên bảo đảm tìm tập MDL thường xuyên 3.6 KẾT LUẬN Trọng tâm luận văn tập trung chương Tác giả phát triển thuật toán khai phá tập thường xuyên dựa vào phân hoạch cụm liệu, thuật toán khai phá tập thường xun nhanh (QFIM) có ví dụ minh họa cụ thể rõ ràng bước thuật toán Với kỹ thuật phân hoạch cụm liệu, thuật toán QFIM đảm bảo tính dừng song song hóa q trình khai phá tập thường xuyên Thuật toán QFIM thuật toán phát triển tảng thuật toán Apriori, với hướng nghiên cứu cố gắng làm giảm kích thước CSDL cần duyệt tính độ hỗ trợ TUV song song hóa q trình khai phá Như biết, thuật tốn Apriori, lần tính độ hỗ trợ TUV lần duyệt CSDL giao tác Việc phân hoạch giao tác vào cụm nhỏ, cho lần tính độ hỗ trợ cần duyệt cụm tương ứng hướng cải tiến nhằm nâng cao hiệu khai phá Apriori Thuật toán QFIM có khối lượng tính tốn nhỏ hơn, chạy nhanh thuật toán Apriori nhiều với lý sau: - Phân hoạch CSDL thành k cụm nhỏ, việc khai phá tập thường xuyên thực song song k máy tính riêng lẻ 62 - Kích thước cụm nhỏ nhiều so với CSDL ban đầu nên đưa tồn cụm liệu vào nhớ để xử lý - Thuật tốn tìm tất tập thường xuyên xuất CSDL - Khi cho ngưỡng tối thiểu khác, thuật toán cần tìm tập thường xun mà khơng cần xếp phân cụm lại - Sau phân hoạch giao tác vào cụm, kích thước cụm nhỏ độ hỗ trợ MDL tương ứng với cụm Do thời gian duyệt cụm nhanh nhiều thời gian duyệt CSDL lớn Đây ưu điểm bật thuật toán - Sau xếp MDL giao tác theo thứ tự giảm dần độ hỗ trợ, làm cho MDL có tần số xuất cao lên đầu giao tác Điều giúp phép tốn tìm kiếm MDL có thuộc giao tác sớm dừng - Bằng việc cắt bỏ MDL giao tác phân cụm, ta giảm độ dài giao tác giảm số giao tác cụm có nhiều giao tác chứa MDL Như vậy, lần làm giảm số phép so sánh tính độ hỗ trợ giảm thời gian duyệt cụm - Thuật tốn QFIM khơng phụ thuộc nhiều vào liệu nguồn kích thước cụm số lượng phép toán phụ thuộc vào tần số xuất MDL Như thuật toán hiệu với liệu thưa Điều có ý nghĩa lớn liệu thực tế thưa, chí thưa 63 KẾT LUẬN NHỮNG KẾT QUẢ ĐẠT ĐƯỢC - Nghiên cứu tổng quan lĩnh vực khai phá liệu, tìm hiểu số thuật tốn điển hình như: AIS[9], Apriori[10], Partition[24], FP_Growth[18],… - Nghiên cứu phương pháp thuật toán phân cụm liệu - Tìm hiểu số thuật tốn đề xuất tạp trí như: PAFI[21], M2TQT[27], Improved Apriori[21], TDFI[2],… - Đóng góp luận văn nghiên cứu đề xuất thuật toán khai phá tập thường xuyên nhanh dựa vào phân cụm liệu, thuật toán: Quick Frequent Itemset Mining – QFIM, bao gồm hai bước chính: - Phân cụm CSDL: Duyệt CSDL gốc T1 để tính độ hỗ trợ MDL, xếp MDL theo thứ tự giảm dần độ hỗ trợ Duyệt T1, chuyển giao tác T1 thành có thứ tự theo thứ tự giảm dần độ hỗ trợ, thu CSDL giao tác T Tiếp theo phân rã giao tác T, thu CSDL giao tác phân rã UT Cuối phân giao tác UT thành cụm tương ứng theo quan hệ tương đương định nghĩa, phân hoạch TCL UT - Khai phá tập thường xuyên CSDL giao tác phân cụm: Áp dụng kỹ thuật thuật toán Apriori để khai phá tập thường xuyên TCL: Sau tìm TUV k phần tử Ck, phân Ck thành nhiều cụm, để tính độ hỗ trợ TUV duyệt cụm DL tương ứng Tác giả đưa hai cải tiến cho thuật tốn tìm tập thường xuyên CSDL phân cụm Xây dựng chương trình ngơn ngữ Delphi - Cải tiến thuật toán phân cụm: Mỗi cụm tương ứng với MDL MDL giao tác thuộc cụm Sử dụng tính chất nêu, trước phân giao tác vào cụm, cắt bỏ MDL giao tác Khi loại bỏ giao tác có MDL Vì vậy, giảm kích thước cụm việc tính độ hỗ trợ tập MDL để tìm tập thường xuyên theo ngưỡng S0 giảm S0 phép toán 64 - Cải tiến thuật tốn Apriori: Tại bước tìm tập tập thường xuyên kMDL (k> 2), tổ chức TUV thành dãy có thứ tự giảm dần theo độ hỗ trợ MDL phân thành cụm Ukxi gồm ứng viên bắt đầu xi, cắt bỏ xi trước lưu vào cụm Từ đây, cụm TUV duyệt cụm liệu tương ứng Đây tảng cho thuật tốn xử lý song song đưa toàn liệu cụm vào nhớ để tăng tốc độ khai phá Thuật toán QFIM thể rõ ưu điểm sau: - Có thể khai phá song song máy tính tiêng lẻ - Có số lần đọc CSDL lớn - Giảm nhiều khối lượng phép toán, tốc độ xử lý nhanh, hiệu Trong trình thực luận văn, tác giả cố gắng tập trung nghiên cứu toán tham khảo nhiều tài liệu ngồi nước có liên quan kết nghiên cứu tác giả khác công bố, đặc biệt tài liệu trọng tâm ý tưởng sâu sắc thầy giáo TS Nguyễn Hữu Trọng, thầy trực tiếp hướng dẫn tác giả thực đề tài 65 HƯỚNG NGHIÊN CỨU TIẾP THEO Bài toán khai phá tập thường xuyên nhiều nhà nghiên cứu nước quan tâm phạm vi ứng dụng rộng rãi chứa đựng nhiều hướng nghiên cứu mở rộng khác Trong luận văn tác giả chọn hướng nhỏ để nghiên cứu: Khai phá tập thường xuyên dựa vào gom cụm liệu Tuy nhiên trình nghiên cứu thực đề tài, tác giả nhận thấy đề tài mở rộng theo nhiều hướng khác Cụ thể, tác giả đề xuất số hướng nghiên cứu sau: - Khai phá tập thường xuyên CSDL gia tăng Các thuật toán khai phá tập thường xuyên CSDL gia tăng theo thời gian nhiều nhà nghiên cứu quan tâm có nhiều kết cơng bố Với phát triển ứng dụng CNTT lĩnh vực thương mại điện tử, mạng xã hội điện thoại di động ngày phổ biến, yêu cầu xử lý thông tin trực tuyến ngày cấp bách Việc phát triển thuật toán khai phá tập thường xuyên CSDL gia tăng trở nên cấp bách thiết thực - Nghiên cứu kỹ thuật khai phá liệu mờ Các thuật tốn khai phá tập thường xun cơng bố chủ yếu xử lý CSDL nhị phân Các thuật tốn xử lý phần thơng tin khách hàng là: Khách hàng đăng ký sử dụng dịch vụ nào? Cịn nhiều thơng tin quan trọng khác mà nhà kinh doanh cần quan tâm như: Kiểu khách hàng sử dụng dịch vụ nào? Dịch vụ thường sử dụng vào khoảng thời gian nào? Để biểu diễn xử lý thông tin dạng tổng quát trên, hướng nghiên cứu mở là: Áp dụng kỹ thuật mờ hóa liệu - Áp dụng lý thuyết xác suất để khai phá liệu Trong xã hội thông tin ngày nay, khối lượng liệu ngày lớn Việc xử lý toàn khối liệu khổng lồ trở nên tốn trí có lúc thực Phát triển áp dụng thuật toán ngẫu nhiên vào KPDL CSDL khổng lồ mang lại triển vọng lớn việc giải toán thực tế 66 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Xuân Huy, Đoàn Văn Ban, Nguyễn Hữu Trọng, Huỳnh Văn Đức (2007), "Thuật toán khai thác liệu tăng trưởng", Tạp chí Khoa học Công nghệ,Viện Khoa học Công Nghệ Việt Nam, 45(2), tr 9-18 [2] Nguyễn Xuân Huy, Đoàn Văn Ban, Nguyễn Hữu Trọng, (2007), “Phát triển thuật toán khai thác liệu dựa bao đóng thuộc tính”, Tạp chí Tin học Điều khiển học, Viện Khoa học Công Nghệ Việt Nam, 23(2), tr 113-141 [3] Nguyễn Hữu Trọng (2008), Phát triển số thuật toán khai phá luật kết hợp sở liệu gia tăng, Luận án tiến sĩ, Viện Công nghệ thông tin [4] Nguyễn Hữu Trọng, Mai Thị Hiên, Bùi Chí Thành, Nguyễn Thị Minh Châu, Phạm Ngọc Công, Nguyễn Văn Rạng (2013), “Phát triển thuật tốn tìm tập thường xun dựa vào phân cụm liệu”, Hội thảo quốc gia lần thứ XV: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Hà Nội [5] Nguyễn Hữu Trọng, Bùi Chí Thành, Mai Thị Hiên, Nguyễn Thị Minh Châu, Phạm Ngọc Công (2013), “Phát triển thuật toán khai phá luật kết hợp dựa vào phân hoạch liệu”, Hội nghị Nghiên cứu ứng dụng Công nghệ Thông tin lần thứ FAIR-3, Huế [6] Nguyễn Hữu Trọng (2007), “Thuật toán khai phá tập mục liệu thường xuyên CSDL gia tăng dựa phân lớp liệu”, Tạp chí Khoa học Công nghệ, Viện Khoa học Công Nghệ Việt Nam, 45(3), tr15-26 [7] Nguyễn Hữu Trọng (2007), “Thuật toán khai thác luật kết hợp CSDL tăng trưởng theo chiều ngang”, Hội nghị Nghiên cứu ứng dụng Công nghệ Thông tin lần thứ FAIR-3, Nha Trang [8] Nguyễn Hữu Trọng (2010), “Một thuật toán khai thác luật kết hợp liệu có yếu tố thời gian”, Kỷ yếu hội thảo Quốc gia Biên Hòa 05-06 tháng năm 2009, Nhà xuất Khoa học Kỹ thuật, Hà Nội 2010, tr 247-263 67 Tiếng Anh [9] Agrawal R., Imielinski T., Swami A N (1993), "Mining association rules between sets of items in large databases", Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, pp 207–216 [10] Agrawal R., Srikant R (1994),"Fast algorithms for mining association rules", In Proc 20th Int Conf Very Large Data Bases,VLDB, J B Bocca, M Jarke, and C Zaniolo, Eds Morgan Kaufmann, pp 487-499 [11] Akhilesh Tiwari, Rajendra K Gupta, Dev Prakash Agrawal (2009), “Cluster Based Partition Approach for Mining Frequent Itemsets”, IJCSNS International Journal of Computer Science and Network Security, Vol.9 No.6, pp 191 – 199 [12] Amitabha Das, Wee-keong Ng, Yew-kwong Woon (2001),"Rapid association rule mining", In Proceedings of the tenth international conference on Information and knowledge management ACM Press, pp 474-481 [13] Anil Vasoya , Rekha Sharma, Ph.D (2013), “Mining of frequent Itemset using PAFI and Transaction Reduction Method”, International Journal of Applied Information Systems (IJAIS), pp 20–24 [14] Berkhin P (2002), Survey of clustering data mining techniques, Tech rep., Accrue Software, San Jose, CA [15] Borgelt C., Kruse R (2002), "Induction of association rules: Apriori implementation", In Proceedings of the 15th Conference on Computational Statistics, pp 395–400 [16] Goethals B (2003), Survey on frequent pattern mining, Technical report, Helsinki Institute for Information Technology [17] Han J., Kamber (2012), Data Mining Concepts and Techniques, Morgan Kanufmann [18] Han J., Pei H., Yin Y (2000), "Mining Frequent Patterns without Candidate Generation", In: Proc Conf on the Management of Data (SIGMOD’00, Dallas, TX) ACM Press, New York, NY, USA, pp.1-12 68 [19] Jaishree Singh, Hari Ram, Dr J.S Sodhi (2013), “ Improving efficiency of Apriori Algorithm Using Transaction Reduction”, International Journal of Scientific and Research Publications, 3(1) [20] Jiao Yabing (2013), ” Research of an Improved Apriori Algorithm in Data Mining Association Rules”, International Journal of Computer and Communication Engineering, 2(1), pp 25 – 27 [21] D.Kerana Hanirex , Dr.M.A.Dorai Rangaswamy (2011), “Efficient algorithm for mining frequent itemsets using clustering techniques”, International Journal on Computer Science and Engineering (IJCSE), 3(3), pp.1028 – 1032 [22] D Kerana Hanirex , Dr A Kumaravel (2012), “An Efficient Partition and Two Dimensional Approach For Mining Frequent Itemsets”, International Journal of Technological Synthesis and Analysis (IJTSA), 1(1), pp.14 – 17 [23] Oded Maimon, Lior Rokach (2010), Data mining and knowledge discovery handbook, Springer New York Dordrecht Heidelberg London [24] Savesere A., Omiecinski E., Navathe S (1995), "An efficient algorithm for mining association rules in large databases", In Proceedings of 20th International Conference on VLDB, pp.432-444 [25] Shenoy P., Haritsa J R., Sudarshan S., Bhalotia G., Bawa M., Shah D (2000), “Turbo-charging Vertical Mining of Large Databases”, SIGMOD RECORD International conference, Management of data, 29(2), pp.22-33 [26] Sunil Kumar S, Shyam Karanth S, Akshay K C, Ananth Prabhu,Bharathraj Kumar M (2012), “Improved Aprori Algorithm Based on bottom up approach using Probability and Matrix”, IJCSI International Journal of Computer Science Issues, 9(3), pp.242-246 [27] Wu J., Dai J.Y., Yang D.L., Hung M.C (2008), "An Efficient Data Mining Approach on Compressed Transactions", International Journal of Electrical and Computer Engineering, 3(2) 69 ... 36 CHƯƠNG PHÁT TRIỂN THUẬT TOÁN KHAI PHÁ TẬP THƯỜNG XUYÊN DỰA VÀO SỰ GOM CỤM DỮ LIỆU THUẬT TOÁN QFIM 38 3.1 MỞ ĐẦU 38 3.2 THUẬT TỐN QFIM TÌM TẬP THƯỜNG XUN TRÊN CƠ SỞ DỮ LIỆU GIAO... triển thuật toán khai phá tập thường xuyên nhanh (QFIM - Quick Frequent Itemset Mining) trình bày chi tiết chương 37 Chương PHÁT TRIỂN THUẬT TOÁN KHAI PHÁ TẬP THƯỜNG XUYÊN DỰA VÀO SỰ GOM CỤM DỮ LIỆU... thành cụm (thuật tốn PAFI), sau áp dụng thuật tốn Improved Apriori để khai phá tập thường xuyên độc lập cụm Trong chương ba, tác giả phát triển thuật toán khai phá tập thường xuyên dựa vào phân