Phát hiện các luật kết hợp trong cơ sở dữ liệu

80 19 0
Phát hiện các luật kết hợp trong cơ sở dữ liệu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Phát hiện các luật kết hợp trong cơ sở dữ liệu Phát hiện các luật kết hợp trong cơ sở dữ liệu Phát hiện các luật kết hợp trong cơ sở dữ liệu luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - LUẬN VĂN THẠC SĨ KHOA HỌC PHÁT HIỆN CÁC LUẬT KẾT HỢP TRONG CƠ SỞ DỮ LIỆU NGÀNH: CÔNG NGHỆ THÔNG TIN MÃ SỐ: NGUYỄN HỒNG PHƯƠNG Người hướng dẫn khoa học: TS NGUYỄN KIM ANH HÀ NỘI 2009 LỜI CAM ĐOAN Tôi xin cam đoan luận văn “Phát luật kết hợp sở liệu” thực hướng dẫn TS Nguyễn Kim Anh – Viện Công Nghệ Thông Tin Truyền Thông, trường Đại học Bách Khoa Hà Nội Mọi trích dẫn tài liệu tham khảo sử dụng luận văn rõ nguồn gốc Tơi xin hồn tồn chịu trách nhiệm lời cam đoan Hà Nội, ngày 22 tháng 10 năm 2009 Tác giả luận văn Nguyễn Hồng Phương Phát luật kết hợp sở liệu Mục lục Mục lục - Danh mục hình vẽ, bảng biểu - Danh mục thuật ngữ, từ viết tắt Lời nói đầu - Chương 1: Tổng quan 1.1 Khai phá liệu 1.2 Luật kết hợp - 1.2.1 Định nghĩa thức 1.2.2 Định nghĩa thay 10 1.3 Các vấn đề phát luật kết hợp sở liệu - 11 Chương 2: Luật kết hợp - 13 2.1 Hai tính chất - 13 2.1.1 Tính chất 13 2.1.2 Tính chất 13 2.2 Phát tập mục thường xuyên - 14 2.2.1 Giải thuật Apriori 14 2.2.2 Giải thuật AprioriTid 15 2.3 Phát luật kết hợp - 17 2.3.1 Giải thuật đơn giản 18 2.3.2 Một giải thuật nhanh - 19 Chương 3: Sử dụng FP-tree phát tập mục thường xuyên - 21 3.1 Giới thiệu 21 3.2 Thiết kế xây dựng mẫu thường xuyên - 22 3.2.1 Cây mẫu thường xuyên - 22 3.2.2 Tính đầy đủ tính đọng FP 26 3.3 Khai phá mẫu thường xuyên sử dụng FP - 27 3.4 Đánh giá thực nghiệm nghiên cứu hiệu - 31 Chương 4: Luật kết hợp mở rộng - 33 4.1 Khai phá luật kết hợp đa mức - 33 4.1.1 Phát biểu toán 33 4.1.2 Thuật toán 37 4.2 Khai phá luật kết hợp định lượng - 40 4.2.1 Xử lý thuộc tính định lượng 41 Nguyễn Hồng Phương 1/78 Phát luật kết hợp sở liệu 4.2.2 Ánh xạ từ toán luật kết hợp định lượng toán luật kết hợp boolean - 43 4.2.3 Phát biểu hình thức toán phát luật kết hợp định lượng - 44 4.2.4 Cách tiếp cận khối dày đặc - 47 4.3 Khai phá luật kết hợp mờ 53 4.3.1 Tập rõ - 54 4.3.2 Tập mờ 54 4.3.3 Các thao tác mờ 55 4.3.4 Giao dịch mờ luật kết hợp mờ 56 4.3.5 Phân vùng mờ miền thuộc tính định lượng 60 4.4 Khai phá luật kết hợp mờ có trọng số 62 4.4.1 Luật kết hợp mờ trọng số - 62 4.4.2 Luật kết hợp mờ trọng số chuẩn hóa 63 Chương 5: Thử nghiệm 67 5.1 Phát luật kết hợp với thuật toán Apriori - 67 5.1.1 Các lớp thuật toán 67 5.1.2 Kết chạy thử - 68 5.2 Phát luật kết hợp nhờ xây dựng FP-tree - 70 5.2.1 Dữ liệu đầu vào 70 5.2.2 Kết chạy thử - 70 5.3 Phát luật kết hợp định lượng nhờ phân vùng - 71 5.3.1 Các lớp thuật toán 71 5.3.2 Kết chạy thử - 73 Chương 6: Kết luận hướng phát triển 74 6.1 Kết luận chung 74 6.1.1 Những kết đạt 74 6.1.2 Tồn - 74 6.2 Hướng phát triển 75 Tài liệu tham khảo 76 Nguyễn Hồng Phương 2/78 Phát luật kết hợp sở liệu Danh mục hình vẽ, bảng biểu Hình 1.1: Quá trình phát tri thức Bảng 1.2: Ví dụ sở liệu 11 Hình 1.3: Các vấn đề trình bày báo cáo 12 Hình 2.1: A nhỏ superset(A) nhỏ 13 Hình 2.2: B lớn subset(B) lớn 13 Hình 2.3: Giải thuật Apriori 14 Hình 2.4: Hàm AprioriGen sử dụng giải thuật Apriori 15 Hình 2.5: Giải thuật AprioriTid 16 Hình 2.6: Ví dụ AprioriTid 17 Hình 2.7: Một giải thuật đơn giản sinh luật 18 Hình 2.8: Thủ tục GenRules sử dụng giải thuật 18 Hình 2.9: Một giải thuật nhanh để sinh luật 19 Hình 2.10: Thủ tục GenRules sử dụng giải thuật nhanh 19 Bảng 3.1: Một sở liệu giao dịch 23 Hình 3.2: Cây FP kết 25 Bảng 3.3: Cơ sở mẫu FP có điều kiện mục 29 Hình 3.4: Thời gian thực ngưỡng hỗ trợ 32 Hình 3.5: Thời gian thực số giao dịch 32 Hình 4.1: Phân cấp khái niệm đồ uống 33 Hình 4.2: Hai phân cấp khái niệm 34 Hình 4.3: Ví dụ 35 Hình 4.4: Ví dụ luật thú vị 37 Hình 4.5:Thuật tốn 38 Hình 4.6: Thuật toán Cumulate 40 Bảng 4.7: Quan hệ People (Người) 41 Bảng 4.8: Ví dụ luật kết hợp định lượng có phạm trù 41 Bảng 4.9: Hai cách tiếp cận phân vùng thuộc tính 43 Bảng 4.10: Bảng thu sau ánh xạ 44 Hình 4.11: Các bước giải toán 47 Hình 4.12: Ví dụ số luật định lượng 48 Hình 4.13: Tập mờ 55 Hình 4.14: Phần bù mờ 55 Bảng 4.15: Tập giao dịch mờ 56 Bảng 4.16: Tuổi sinh người 58 Hình 4.17:Một số nhãn ngơn ngữ thuộc tính Age 59 Nguyễn Hồng Phương 3/78 Phát luật kết hợp sở liệu Hình 4.18: Một số nhãn ngơn ngữ thuộc tính Hour 59 Bảng 4.19: Giao dịch mờ tương ứng bảng 4.16 59 Hình 4.20: Ví dụ phân vùng tập mờ 61 Bảng 4.21: Miền tập mờ Age (p = 30%) 61 Bảng 4.22: Ví dụ thuộc tính giá trị mờ 63 Bảng 4.23: Trọng số mục 63 Hình 4.24: Thuật toán khai phá luật kết hợp trọng số chuẩn hóa 65 Bảng 5.1: Tổng hợp số liệu kiểm thử Apriori 69 Bảng 5.2: Tổng hợp số liệu kiểm thử FP-tree 70 Bảng 5.3: Tổng hợp số liệu kiểm thử luật định lượng 73 Nguyễn Hồng Phương 4/78 Phát luật kết hợp sở liệu Danh mục thuật ngữ, từ viết tắt Thuật ngữ, từ viết tắt Data Mining KDD - Knowledge Discovery in Databases Association Rule Discovery Apriori item itemset k-itemset frequent itemset large itemset FP-tree minsup, smin minconf, cmin crisp set Fuzzy set Fuzzy transaction quantitative association rule quantitative attribute categorical attribute WFS NWFS Nguyễn Hồng Phương Ý nghĩa, giải thích Khai phá liệu Phát tri thức sở liệu Phát luật kết hợp Tên giải thuật tiếng để phát tập mục thường xuyên Mục Tập mục Tập mục có k mục Tập mục thường xuyên, phổ biến Tập mục lớn Cây mẫu thường xuyên Độ hỗ trợ tối thiểu Độ tin cậy tối thiểu Tập rõ Tập mờ Giao dịch mờ Luật kết hợp định lượng Thuộc tính định lượng Thuộc tính phạm trù Độ hỗ trợ mờ trọng số Độ hỗ trợ mờ trọng số chuẩn hóa 5/78 Phát luật kết hợp sở liệu Lời nói đầu Sự tiến cơng nghệ cho phép thu thập lượng lớn liệu lưu trữ chúng Tuy nhiên, tập liệu tự chúng không phản ánh quy luật thuộc tính để từ vận dụng vào thực tế Khai phá liệu xem hướng nghiên cứu sở liệu Từ khối liệu lớn, việc khai phá tri thức chúng phục vụ cho hệ thống sử dụng trí tuệ nhân tạo trung tâm, trường đại học số cơng ty lớn quan tâm nghiên cứu có số cơng trình cơng bố Bài tốn khai phá luật kết hợp giới thiệu từ năm 1993, người ta mong muốn xác định mối quan hệ thuộc tính cấu trúc sở liệu quan hệ Bài toán khai phá luật kết hợp đặt tìm tất luật kết hợp thỏa mãn độ hỗ trợ tối thiểu độ tin cậy tối thiểu Với mong muốn tìm hiểu lĩnh vực đồng thời cài đặt thử nghiệm số thuật toán, em thực cơng việc q trình làm luận văn cao học Bản báo cáo trình bày lý thuyết từ đến chuyên sâu, từ tảng toán phát luật kết hợp sở liệu giao dịch xa phát luật kết hợp mở rộng sở liệu luật kết hợp định lượng, luật kết hợp đa mức, luật kết hợp mờ Bố cục luận văn gồm chương sau: Chương - Tổng quan Chương trình bày khái niệm khai phá liệu luật kết hợp Chương - Luật kết hợp Nội dung chương giới thiệu tính chất hai giai đoạn để tìm luật kết hợp sở liệu giao dịch Chương - Sử dụng FP-Tree để phát tập mục thường xuyên Chương giới thiệu cách tiếp cận khác để sinh tập mục thường xuyên mà trải qua bước sản sinh tập mục ứng cử viên cách truyền thống Chương - Luật kết hợp mở rộng Chương trình bày phạm vi khác tốn phát luật kết hợp: phát luật kết hợp đa mức sở liệu giao dịch, phát luật kết hợp định lượng, phát luật kết hợp mờ sở liệu quan hệ Chương - Thử nghiệm Chương giới thiệu cài đặt thuật toán cung cấp số kết kiểm thử Nguyễn Hồng Phương 6/78 Phát luật kết hợp sở liệu Chương - Kết luận hướng phát triển Chương tổng kết lại việc làm chưa làm luận văn, đồng thời cung cấp số gợi ý cho công việc Em xin gửi lời cảm ơn tới TS Nguyễn Kim Anh, người tận tình giúp đỡ em trình làm luận văn Em mong nhận ý kiến đóng góp thầy cô giáo bạn bè Hà Nội, ngày 22 tháng 10 năm 2009 Học viên Nguyễn Hồng Phương Nguyễn Hồng Phương 7/78 Phát luật kết hợp sở liệu Chương 1: Tổng quan Phần đầu chương giới thiệu tổng quan quy trình khai phá liệu (data mining) cách ngắn gọn Luật kết hợp trình bày phần xem kỹ thuật khai phá liệu 1.1 Khai phá liệu Khả sản sinh thu thập liệu tăng lên nhanh thập niên gần đây.Các tiến thu thập liệu khoa học thương mại thiết bị mã vạch, cảm biến, vệ tinh không gian, làm liệu trở nên “ngập lụt” Bên cạnh đó, cơng nghệ lưu trữ có tiến Con người tạo thiết bị lưu trữ nhanh, rẻ, dung lượng lớn đĩa từ, đĩa CD-ROM Chúng ta cần có cơng nghệ hay cơng cụ với khả thông minh để tự động biến đổi liệu xử lý thành thông tin tri thức có ích Thuật ngữ phát tri thức sở liệu (knowledge discovery in databases - KDD) trở nên phổ biến Quá trình phát tri thức phải trải qua số bước tương tác lặp Xen bước việc ứng dụng giải thuật để trích rút mẫu liệu, gọi khai phá liệu (data mining) Theo [1], bước trình phát tri thức gồm: Sau phân tích mục đích người sử dụng cuối nhận tri thức cần thiết, chọn tập liệu đích Điều có nghĩa tập trung vào tập biến hay liệu mẫu Dữ liệu đích tiền xử lý làm để loại bỏ liệu bẩn ngoại lai Đưa đặc trưng có ích biểu diễn liệu Mục tiêu trình phát tri thức dự đoán giá trị tương lai biến quan tâm tìm mẫu liệu mà người hiểu Giải thuật khai phá liệu thích hợp lựa chọn áp dụng Có số thuật giải: kết hợp, phân lớp, phân nhóm, Nguyễn Hồng Phương 8/78 Phát luật kết hợp sở liệu Trong phần này, chủ yếu ta xét đến việc chuẩn hóa trọng số cho tập mục theo kích thước tập mục Độ hỗ trợ mờ trọng số chuẩn hóa NWFS (Normalized Weighted Fuzzy Support) tập mục tính cơng thức: NWFS < X , A,w> = (∏ x ∈X w( x j , a j ))1 / k * FS < X , A,w> j k kích thước tập mục Một k-tập mục gọi tập mục thường xuyên độ hỗ trợ mờ trọng số chuẩn hóa lớn minsup: NWFS < X , A,w> ≥ minsup Ngược lại, tập mục gọi k-tập mục nhỏ Ví dụ: Xét X = {Balance, Credit}, A = {medium, high} liệu cho hai bảng Ta có: NWFS = (0.6*0.1)1/2*((0.3+0.72+0.56+0.72+0.63)/5) = 0.144 Nếu giá trị minsup 0.10 tập mục {, } tập mục thường xuyên Ở đây, ta lưu ý, tất tập tập mục thường xuyên thường xuyên luật kết hợp nhị phân giới thiệu phần đầu báo cáo Ví dụ, tập {, } khơng phải tập mục thường xun (NWFS 0.076) Vì tập tập mục thường xun khơng thường xuyên nên phát sinh k-tập mục ứng cử cách đơn giản từ (k-1)-tập mục Chúng ta xem xét vấn đề nhờ sử dụng tập thường xuyên z-tiềm cho tập mục ứng cử Một k-tập mục gọi tập thường xuyên z-tiềm nếu: (∏ x ∈X w( x j , a j ) * ∏ y ∈Y w( y j , b j ))1 / z * FS < X , A,w> ≥ minsup j j đó: z giá trị nằm k kích thước cực đại tập mục thường xuyên, với , Y ≠X tập mục với trọng số tối đa Ví dụ: Với liệu hai bảng trên, giá trị tập thường xuyên 2-tiềm tập mục là: (0.1*0.9)1/2 * ((0.6+0.9+0.8+0.8+0.7)/5) = 0.228 ≥ 0.10 Thuật toán khai phá luật kết hợp trọng số chuẩn hóa Đầu vào: Cơ sở liệu D, ngưỡng hỗ trợ tối thiểu minsup, ngưỡng tin cậy tối thiểu minconf Đầu ra: Danh sách luật đáng quan tâm Một số ký hiệu sử dụng thuật toán: Nguyễn Hồng Phương 64/78 Phát luật kết hợp sở liệu D: Cơ sở liệu; DT: Cơ sở liệu giao dịch; w: trọng số tập mục; Fk: Tập k-tập mục thường xuyên (có k item); Ck: Tập k-tập mục ứng cử (có k item); I: Tập mục đầy đủ; minsup: ngưỡng hỗ trợ; minconf: ngưỡng tin cậy Main Algorithm(minsup, minconf, D) 1: I = Search(D); 2: (C1, DT, w) = Transform(D, I); 3: k = 1; 4: (Ck, Fk) = Checking(Ck, DT, minsup); 5: while(|Ck|≠∅) 6: begin 7: inc(k); 8: if(k==2) then 9: Ck = Join1(Ck-1) 10: else Ck = Join2(Ck-1); 11: Ck = Prune(Ck); 12: (Ck, Fk) = Checking(Ck, DT, minsup); 13: F = F ∪ Fk; 14: end 15: Rules(F, minconf); Hình 4.24: Thuật toán khai phá luật kết hợp trọng số chuẩn hóa Giải thích: Search(D): Thủ tục nhận sở liệu, tìm trả tập mục đầy đủ I = {i1, i2, ,im} Ví dụ: liệu cho bảng I = {Balance, Credit, Income} Transform(D, I): Bước tạo sở liệu giao dịch DT từ sở liệu gốc người sử dụng cách dùng tập mờ, tạo trọng số cho tập mờ Tại thời điểm, 1-tập mục ứng cử C1 phát sinh từ sở liệu giao dịch Nếu 1-tập mục thường xuyên tập thường xuyên z-tiềm giữ C1, ngược lại bị cắt bỏ Ví dụ: C1 = {, , , , , } tập đầy đủ 1-tập mục ứng cử Checking(Ck, DT, minsup): thủ tục này, sở liệu giao dịch quét giá trị độ hỗ trợ mờ trọng số tập mục ứng cử Ck tính Nếu giá trị độ hỗ trợ mờ trọng số lớn minsup đưa vào tập mục thường xuyên Fk Join1(Ck-1): Bước kết nối phát sinh C2 từ C1 sau: Insert into C2 Nguyễn Hồng Phương 65/78 Phát luật kết hợp sở liệu Select , from , in C1 where X≠Y Ví dụ: Sau bước Join này, C2 = {, ,…} C2 ≠ {…, ,…} Join2(Ck-1): Tạo Ck từ Ck-1 Prune(Ck): Trong bước cắt tỉa, tập mục bị cắt tỉa trường hợp sau: Tập tập mục ứng cử Ck không tồn Ck-1 Tập mục tập thường xuyên z-tiềm tập mục thường xuyên Rules(F): Tìm luật từ tập mục thường xuyên F Nguyễn Hồng Phương 66/78 Phát luật kết hợp sở liệu Chương 5: Thử nghiệm Các cài đặt thử nghiệm sử dụng ngôn ngữ lập trình Java Thuật tốn phát luật kết hợp nhị phân nhờ Apriori phát luật kết hợp định lượng sở liệu giao dịch cài đặt thử nghiệm 5.1 Phát luật kết hợp với thuật toán Apriori 5.1.1 Các lớp thuật toán a Dữ liệu đầu vào Vì mục đích cài đặt thuật toán Apriori để phát tập mục thường xuyên sinh luật từ tập mục thường xuyên nên sở liệu giao dịch đầu vào để dạng văn (file text) Cấu trúc file sau: 10 0 0 10 0204507090 10 0000000090 Trong file này, ta thấy có 10 thuộc tính (item) đánh số từ đến 10 Các thuộc tính phân cách dấu cách Mỗi dịng giao dịch Giao dịch có item tương ứng vị trí số thứ tự item, khơng có item vị trí điền số Ví dụ, giao dịch (dịng đầu) có chứa đủ 10 item Giao dịch thứ hai (dịng thứ hai) có chứa item {1, 3, 4, 5, 10}, không chứa item {2, 6, 7, 8, 9} b Lớp ItemSet Lớp ItemSet đại diện cho tập mục Vì tốn liên quan đến sở liệu giao dịch nên ta biểu diễn mục số (số nguyên) Dữ liệu thành phần lớp ItemSet gồm thông tin sau: private int[] set; // Tap muc private int count; // Bo dem cho biet so giao dich ho tro tap muc private int size; // So luong item thuc su co tap muc private int capacity; // So luong item co the chua tap muc c Lớp Large_i Lớp biểu diễn i-tập mục thường xuyên Dữ liệu thành phần lớp gồm danh sách tập mục Nguyễn Hồng Phương 67/78 Phát luật kết hợp sở liệu d Lớp Large Lớp Large chứa tập mục thường xuyên, bao gồm tập mục có mục, mục, … e Lớp SubItemSet Lớp biểu diễn tập mục tập mục khác f Lớp Ck Lớp chứa tập mục ứng cử viên g Lớp AssociationRule Lớp biểu diễn luật kết hợp Dữ liệu thành phần gồm: private int[] antecedent; private int[] consequent; private int support; private float confidence; h Lớp SetOfAssociationRule Lớp SetOfAssociationRule chứa luật kết hợp 5.1.2 Kết chạy thử Với file liệu đầu vào: 10340 02305 12305 02005 10340 02305 12305 02005 mincount = cmin = 0.6 kết chạy chương trình: {1 }/[count: 4] {2 }/[count: 6] {3 }/[count: 6] {5 }/[count: 6] {1 }/[count: 4] {2 }/[count: 4] {2 }/[count: 6] {3 }/[count: 4] Nguyễn Hồng Phương 68/78 Phát luật kết hợp sở liệu {2 }/[count: 4] Phan sinh luat o day Luat 1: {3 }->{1 } /(4, 0.6666667) Luat 2: {1 }->{3 } /(4, 1.0) Luat 3: {3 }->{2 } /(4, 0.6666667) Luat 4: {2 }->{3 } /(4, 0.6666667) Luat 5: {5 }->{2 } /(6, 1.0) Luat 6: {2 }->{5 } /(6, 1.0) Luat 7: {5 }->{3 } /(4, 0.6666667) Luat 8: {3 }->{5 } /(4, 0.6666667) Luat 9: {3 }->{2 } /(4, 1.0) Luat 10: {5 }->{2 } /(4, 0.6666667) Luat 11: {3 }->{2 } /(4, 0.6666667) Luat 12: {2 }->{3 } /(4, 0.6666667) Luat 13: {5 }->{2 } /(4, 0.6666667) Luat 14: {2 }->{3 } /(4, 0.6666667) Luat 15: {2 }->{5 } /(4, 1.0) Luat 16: {3 }->{2 } /(4, 0.6666667) Luat 17: {2 }->{3 } /(4, 0.6666667) Bảng tổng hợp số lượng tập mục thường xuyên luật sinh ra: Số thuộc Số giao dịch tính minsup (mincount) 2/4 3/4 4/8 5/8 5/7 9/14 10 14 10/14 12/14 minconf Số tập mục thường xuyên Số luật 0.6 0.8 0.6 0.6 0.8 0.6 0.6 0.9 0.8 0.8 0.9 0.6 9 9 10 10 10 10 10 17 17 17 12 17 17 12 Bảng 5.1: Tổng hợp số liệu kiểm thử Apriori Nguyễn Hồng Phương 69/78 Phát luật kết hợp sở liệu 5.2 Phát luật kết hợp nhờ xây dựng FP-tree 5.2.1 Dữ liệu đầu vào 1 1 2 6 7 Dữ liệu đầu vào thuật toán gồm số cách ký tự trắng Mỗi giao dịch biểu diễn dịng Nếu thuộc tính có mặt giao dịch số tương ứng với xuất dịng 5.2.2 Kết chạy thử Với độ hỗ trợ 20%, độ tin cậy 80% kết sau: FP tree storage = 364 FP tree updates = FP tree nodes = 15 FP TREE 1:5 2:3 3:2 4:1 5:1 7:1 6:1 6:1 3:1 4:1 6:1 4:1 5:1 7:1 Và sinh luật có tới 268 luật! Bảng tổng hợp chạy thử chương trình: Số thuộc Số giao dịch tính minsup (mincount) minconf Số tập mục thường xuyên Số luật (20%) (40%) (60%) 80% 80% 80% 75 29 268 41 Bảng 5.2: Tổng hợp số liệu kiểm thử FP-tree Nguyễn Hồng Phương 70/78 Phát luật kết hợp sở liệu 5.3 Phát luật kết hợp định lượng nhờ phân vùng Thuật toán cài đặt trải qua công đoạn trình bày phần 4.2.3, sau ánh xạ tốn tìm kiếm luật kết hợp nhị phân áp dụng thuật toán Apriori để đưa luật kết hợp 5.3.1 Các lớp thuật toán a Dữ liệu đầu vào Quantitative Age Married numCars 23 25 1 29 0 34 38 Dữ liệu đầu vào thuật toán file text minh họa Dịng cho biết có xử lý thuộc tính định lượng "Quantitative" Dòng thứ hai chứa tiêu đề thuộc tính, cách dấu cách Các dòng chứa giá trị thuộc tính, cách dấu cách b Lớp Cmean Lớp cài đặt thuật tốn phân nhóm c-mean giá trị cho thuộc tính Dữ liệu thành phần lớp gồm có: private int[] element; private int[][] cmatrix; private double[] ccore; private Interval[] cinterval; private int n=0; // Số phần tử private int c=0; // Số nhóm c Lớp Transact Lớp quản lý giao dịch Dữ liệu thành phần gồm có: Nguyễn Hồng Phương 71/78 Phát luật kết hợp sở liệu private Vector DoT; private int NoT; // Số lượng giao dịch private int NoA; // Số lượng thuộc tính private int[] KoA; // Kiểu thuộc tính 0: Phạm trù 1: Định lượng private int LoC=3; // Nếu số giá trị mức thuộc tính phạm trù private String[] ToA; // Tiêu đề thuộc tính private HashSet[] VoA; // Tập giá trị thuộc tính private Vector BoA; private HashMap BoT; private int[] CoA; // Cột thuộc tính private int NoC; // Số cột nhị phân private int[][] BoM; // Ma trận nhị phân biến đổi private boolean isQuantitative; // Giao dịch giao dịch boolean d Lớp Interval Lớp biểu diễn phân đoạn Nó gồm có liệu thành phần sau: private double minEndpoint; private double maxEndpoint; private boolean hasPoint=false; e Lớp ItemSet Lớp biểu diễn tập mục, kế thừa từ kiểu liệu HashSet Java Do đó, cần bổ sung thêm tham số thành phần, là: private Integer count f Lớp LargeSet Lớp biểu diễn tập mục thường xuyên, kế thừa lớp HashSet Java khai báo thêm số mục: private Integer NoI g Lớp Apriori Lớp cài đặt xử lý liên quan đến thuật toán Apriori Dữ liệu thành phần gồm có: private HashSet frequentSet; // Các tập mục thường xuyên private double cMin=0.5d; // Độ tin cậy private double sMin=2; // Ngưỡng hỗ trợ private LargeSet CkSet; // Tập k-mục ứng cử private LargeSet LkSet; // Tập k-mục thường xuyên private int[][] data; // liệu giao dịch private int NoT; // Số giao dịch private int NoA; // Số thuộc tính private HashMap BoT=null; Nguyễn Hồng Phương 72/78 Phát luật kết hợp sở liệu 5.3.2 Kết chạy thử Với file liệu đầu vào: Quantitative Age Married numCars 23 25 1 29 0 34 38 support = confidence = 0.5d kết là: Large 1-itemset [{1}:2, {2}:2, {4}:2, {5}:3, {7}:2, {8}:2] Large 3-itemset [{2,5,8}:2] Large 2-itemset [{2,5}:2, {2,8}:2, {5,8}:2] Luật: Rules Confident {,} -> {} 1.0 {} -> {,} 1.0 {} -> {,} 0.6666666666666666 {,} -> {} 1.0 {} -> {,} 1.0 {} -> {,} 1.0 {,} -> {} 1.0 {} -> {,} 0.6666666666666666 {} -> {,} 1.0 {} -> {} 1.0 {} -> {} 0.6666666666666666 {} -> {} 1.0 {} -> {} 1.0 {} -> {} 0.6666666666666666 {} -> {} 1.0 Bảng tổng hợp chạy thử chương trình: Số thuộc tính Số giao dịch thuộc tính định lượng, thuộc tính phạm trù minsup (mincount) minconf Số tập mục thường xuyên Số luật 0.5 (50%) 10 15 0.8 (80%) 10 Bảng 5.3: Tổng hợp số liệu kiểm thử luật định lượng Nguyễn Hồng Phương 73/78 Phát luật kết hợp sở liệu Chương 6: Kết luận hướng phát triển Chương tổng hợp lại mà luận văn làm được, hạn chế đề xuất công việc 6.1 Kết luận chung 6.1.1 Những kết đạt Như dề cập phần đầu luận văn, việc nghiên cứu lĩnh vực khai phá liệu có khai phá luật kết hợp quan tâm Khai phá luật kết hợp vấn đề mang tính thực tiễn điều khẳng định mà khối lượng thông tin lưu trữ ngày lớn đa dạng Luận văn trình bày khái niệm luật kết hợp, giới thiệu thuật toán cổ điển để phát luật kết hợp sở liệu giao dịch thuật toán Apriori, AprioriTid để phát luật kết hợp sở liệu giao dịch, thuật toán xây dựng FP-tree để phát tập mục thường xuyên mà trải qua bước sinh tập mục ứng cử Tiếp theo, báo cáo giới thiệu số vấn đề nâng cao phát luật kết hợp: luật kết hợp đa mức sở liệu giao dịch, luật kết hợp sở liệu quan hệ có chứa thuộc tính định lượng thuộc tính phạm trù, luật kết hợp mờ luật kết hợp mờ có trọng số Bản báo cáo đưa ví dụ nhằm minh họa cho khái niệm thuật tốn Bản báo cáo trình bày số phân tích, đánh giá cho thuật tốn Các thuật tốn phát luật kết hợp theo Apriori phát luật kết hợp định lượng cài đặt thử nghiệm 6.1.2 Tồn Do thời gian thực trình độ cịn hạn chế nên chưa giải số vấn đề sau: • Trước hết có nhận xét rằng, trình lưu trữ thao tác sở liệu giá trị số thuộc tính ổn định theo thời gian (chẳng hạn thuộc tính mã số, họ tên, ngày sinh), với số thuộc tính khác, giá trị chúng thay đổi theo thời gian (ví dụ: chức vụ, bậc lương) Luận văn chưa đề cập đến khía cạnh • Tiếp theo, thuật toán cài đặt thực bảng Trên thực tế, luật kết hợp tồn nhiều bảng Nguyễn Hồng Phương 74/78 Phát luật kết hợp sở liệu 6.2 Hướng phát triển Từ nghiên cứu tìm hiểu đây, gợi mở số hướng phát triển cho luận văn: • Nghiên cứu tốn phát luật kết hợp có yếu tố thời gian • Phát luật kết hợp nhiều quan hệ • Cài đặt tự động chương trình phát luật kết hợp tổng quát • Phân loại luật kết hợp thu để sử dụng Nguyễn Hồng Phương 75/78 Phát luật kết hợp sở liệu Tài liệu tham khảo [1] Ralf Rantzau, Extended Concepts for Association Rule Discovery, Faculty of Information, University of Stuttgart, 1997 [2] Rakesh Agrawal and Ramakrishnan Srikant, Fast Algorithms for Mining Association Rules, In Proceedings of the 20th International Conference on Very Large Databases, Santiago, Chile, pages 487-499, 1994 [3] Tzung-Pei Hong, Kuei-Ying Lin, Shyue-Liang Wang, Fuzzy data mining for interesting generalized association rules, Fuzzy Sets and Systems 138 (2003) 255-269, 2003 [4] M.Kaya, R Alhajj, Genetic algorithm based framework for mining fuzzy association rules, Fuzzy Sets and Systems 152 (2005) 587-601, 2005 [5] Ada Wai-chee Fu, Man Hon Wong, Siu Chun Sze, Wai Chiu Wong, Wai Lun Wong nad Wing Kwan Yu, Finding Fuzzy Sets for the Mining of Fuzzy Association Rules for Numerical Attributes, The Chinese University of Hong Kong [6] Ashish Mangalampalli, Vikram Pudi, Fuzzy Logic-based Pre-processing for Fuzzy Association Rule Mining, Centre for Data Engineering (CDE), International Institute of Information Technology (IIIT) [7] T.W Liao, Aivars K Celmins, robert J Hammell Il, A fuzzy c-means variant for the generation of fuzzy term sets, Fuzzy Sets and Systems 135 (2003) 241257, 2003 [8] Rakesh Agrawal, Tomasz Imielinski, Arun Swami, Mining Association Rules between Sets of Items in Large Databases, in Proceeding of the 1993 ACM SIGMOD Conference Washington DC, USA, May 1993 [9] Markus Hegland, Algorithm for Association Rules, Australian National University, Canberra ACT 0200, Australia [10] Laurentiu Cristofor, Dan Simovici, Mining Association Rules in Entity- Relationship Modeled Databases, University of Massachusetts at Boston [11] Micheline Kamber, Jiawei Han, Jenny Y Chiang, Metarule-Guided Mining Multi-Dimensional Association rules Using Data Cubes, American Association for Artificial Intelligence, 1997 [12] Jiawei han, Micheline Kamber, and Jenny Chiang, Mining Multi-Dimensional Nguyễn Hồng Phương 76/78 Phát luật kết hợp sở liệu Association Rules Using Data Cubes, Technical Report CMPT-TR-97-06, Database Systems Research Laboratory, Simon of Computing Science, 1997 [13] Chan Man Kuok, Ada Fu, Man hon Wong, Mining Fuzzy Association Rules in Databases, The Chinese University of Hong Kong [14] M Delgado, N Marin, M J Martin-Bautista, D Sanchez, M A Vila, Mining Fuzzy Association Rules: An Overview, University of Granada, Spain [15] Jiawei Han, Jian Pei, and Yiwen Yin, Mining Frequent Patterns without Candidate Generation, Simon Fraser University [16] Zengyou He, Xiaofei Xu, Shengchun Deng, A FP-Tree Based Approach for Mining All Strongly Correlated Pairs without Candidate Generation, supported by the High Technology Research and Development Program of China, 2002 [17] Rolly Inatn, Oviliani Yenty Yuliana, Andreas Handojo, Mining Multidimensional Fuzzy Association Rules from A Database of Medical Record Patients, Petra Christian University, Indonesia [18] Ramakrishnan Srikant, Quoc Vu, Rakesh Agrawal, Mining Association Rules with Item Constraints, American Association for Artificial Intelligence, 1997 [19] Ramakrishnan Srikant, Rakesh Agrawal, Mining Generalized Association Rules, in Proceedings of the 21st VLDB Conference Zurich, Swizerland, 1995 [20] Jianjiang Lu, Baowen Xu, Hongji Yang, A Classification Method of Fuzzy Association Rules, IEEE International Workshop on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications, 2003 [21] Miguel Delgado, Nicolás Marín, Daniel Sánchez, Maria Amparo Vila, Fuzzy Association Rules: General Model and Application, IEEE, 2003 [22] Kok-Leong Ong, Wee-Keong Ng, Ee-Peng Lim, Mining Multi-Level Rules with Recurrent Items Using FP’-Tree, Nanyang Technological University [23] R S Thakur, R C Jain, K R Pardasani, Fast Algorithm for Mining Multi- Level Association Rules in Large Databases, Asian Journal of Information Management 1(1), ISSN 1819-334X, 2007 [24] N.Rajkumar, M R Karthik, S N Sivanandam, Fast Algorithm for Mining Multilevel Association Rules, IEEE, 2003 [25] Jiawei Han, Youngjian Fu, Discovery of Multiple-Level Association Rules from Large Databases, in Proceedings of the 21st VLDB Conference Zurich, Nguyễn Hồng Phương 77/78 Phát luật kết hợp sở liệu Swizerland, 1995 [26] Ferenc Peter Pach, Janos Abonyi, Association Rule and Decision Tree based Methods for Fuzzy Rule Base Generation, in proceedings of world academy of science, engineering and technology volume 13 May 2006 ISSN 1307-6884, 2006 [27] David W Cheung, Vincent T Ng, Benjamin W Tam, Maintenance of Discovered Knowledge: A Case in Multi-level Association Rules, Hong Kong [28] Weining Zhang, Mining Fuzzy Quantitative Association Rules, IEEE, 1999 [29] Miguel Delgado, Nicolás Marín Daniel Sánchez, María-Amparo Vila, Tơwards a Linguistic Approach to Assess Fuzzy Association Rules, University of Granada, Spain [30] Brian Lent, Arun Swami, Jennifer Widom, Clustering Association Rules, Stanford University, IEEE, 1997 [31] Bakk Lukas Helm, Fuzzy Association Rules An Implementation in R, Master thesis, Vienna University of Economics and Business Administration, 2007 [32] Jiawei Han, Jian Pei, Yiwen Yin, Mining Frequent Patterns without Candidate Generation, School of Computing Science, Simon Fraser University, SIGMOD 2000 [33] Attila Gyenesei, Fuzzy Partitioning of Quantitative Attribute Domains by a Cluster Goodness Index, TUCS Technical Report No 368, ISBN 952-12-07361, 2000 Nguyễn Hồng Phương 78/78 ... D} Bảng 1.2: Ví dụ sở liệu 1.3 Các vấn đề phát luật kết hợp sở liệu Các nghiên cứu tập trung vào phát luật kết hợp sở liệu giao dịch sở liệu quan hệ Cơ sở liệu giao dịch sở liệu có chứa giao dịch... từ đến chuyên sâu, từ tảng toán phát luật kết hợp sở liệu giao dịch xa phát luật kết hợp mở rộng sở liệu luật kết hợp định lượng, luật kết hợp đa mức, luật kết hợp mờ Bố cục luận văn gồm chương... kết hợp: phát luật kết hợp đa mức sở liệu giao dịch, phát luật kết hợp định lượng, phát luật kết hợp mờ sở liệu quan hệ Chương - Thử nghiệm Chương giới thiệu cài đặt thuật toán cung cấp số kết

Ngày đăng: 12/02/2021, 21:36

Tài liệu cùng người dùng

Tài liệu liên quan