Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 89 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
89
Dung lượng
1,26 MB
Nội dung
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN VĂN TƢ KHAI PHÁ LUẬT KẾT HỢP TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái nguyên, năm 2011 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN VĂN TƢ KHAI PHÁ LUẬT KẾT HỢP TRONG CƠ SỞ DỮ LIỆU VÀ ỨNG DỤNG CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 60. 48. 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC TS. NGUYỄN HUY ĐỨC Thái nguyên, năm 2011 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i LỜI CAM ĐOAN Tôi xin cam đoan toàn bộ nội dung trong Luận văn là đƣợc thực hiện theo đúng đề cƣơng đã đƣợc hội đồng khoa học trƣờng Đại học Thái nguyên- khoa Công nghệ thông tin phê duyệt, nội dung thực hiện trong đề cƣơng đã đƣợc cán bộ hƣớng dẫn giao cho và kiểm soát. Nội dung luận văn, các phần trích lục các tài liệu hoàn toàn chính xác. Nếu có sai sót tôi hoàn toàn chịu trách nhiệm. Tác giả luận văn Nguyễn Văn Tư Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii LỜI CẢM ƠN Tôi xin chân thành cảm ơn các thầy cô Trƣờng Đại học Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên, các Thầy cô Viện công nghệ thông tin – Viện Khoa học và Công nghệ Việt Nam, các anh chị lớp Cao học K8 - khóa 2009-2011 đã giúp đỡ tôi trong quá trình nghiên cứu và thực hiện luận văn. Tôi xin trân trọng cảm ơn TS. Nguyễn Huy Đức – Khoa Thông tin - Máy tính, Trƣờng Cao đẳng Sƣ phạm Trung ƣơng, ngƣời thầy trực tiếp hƣớng dẫn, đƣa ra ý tƣởng, định hƣớng, đóng góp các ý kiến chuyên môn và tận tình giúp đỡ tôi trong suốt quá trình nghiên cứu và thực hiện luận văn thạc sĩ ngành khoa học máy tính. Tôi xin cảm ơn các bạn bè đồng nghiệp và gia đình đã giúp đỡ, đóng góp ý kiến và động viên tôi trong suốt qua trình học, quá trình nghiên cứu và hoàn thành luận văn . Tác giả Nguyễn Văn Tƣ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iii MỤC LỤC Trang Lời cam đoan……………………………………………………….…….………………i Lời cảm ơn… …………………………………………….…………….……………….ii Mục lục…………………… …………………………………….….…………… ……iii DANH MỤC CÁC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT v DANH MỤC CÁC BẢNG BIỂU vi DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ vii MỞ ĐẦU 1 Chƣơng 1: TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU VÀ KHAI PHÁ DỮ LIỆU 3 1.1. Quá trình phát hiện tri thức từ cơ sở dữ liệu. 3 1.2. Kiến trúc của hệ thống khai phá dữ liệu 6 1.3. Quá trình khai phá dữ liệu 8 1.4. Nhiệm vụ của khai phá dữ liệu. 10 1.5. Các phƣơng pháp chính trong khai phá dữ liệu 11 1.5.1. Phƣơng pháp luật kết hợp 12 1.5.2. Phƣơng pháp cây quyết định 12 1.5.4. Các phƣơng pháp dựa trên mẫu 14 1.6. Các ứng dụng của khai phá dữ liệu 15 Kết luận chƣơng 1: 16 Chƣơng 2: KHAI PHÁ LUẬT KẾT HỢP TRONG CƠ SỞ DỮ LIỆU 17 2.1. Bài toán mở đầu 17 2.2. Các khái niệm cơ sở 18 2.2.1.Cơ sở dữ liệu giao tác 19 2.2.2. Biểu diễn cơ sở dữ liệu giao tác 19 2.2.3. Tập mục thƣờng xuyên 21 2.2.4. Luật kết hợp 22 2.2.5. Độ hỗ trợ và độ tin cậy của luật kết hợp 22 2.3. Khai phá luật kết hợp 24 2.4. Các cách tiếp cận khai phá tập mục thƣờng xuyên 26 2.5. Các thuật toán điển hình khai phá tập mục thƣờng xuyên 27 2.5.1 Thuật toán Apriori 28 2.5.2.Thuật toán FP_growth 33 2.6. Thuật toán sinh luật kết hợp: 41 2.7. Một số mở rộng khai phá luật kết hợp trong cơ sở dữ liệu. 44 Kết luận chƣơng 2: 46 Chƣơng 3: KHAI PHÁ LUẬT KẾT HỢP CÓ TRỌNG SỐ 47 3.1. Một số khái niệm về luật kết hợp có trọng số 47 3.2. Khai phá luật kết hợp trọng số không chuẩn hóa 49 3.3. Khai phá luật kết hợp trọng số chuẩn hóa 52 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iv 3.3.1. Một số khái niệm về trọng số chuẩn hóa 52 3.3.2. Thuật toán khai phá luật kết hợp trọng số chuẩn hóa (MINVAL(W)) 54 Kết luận chƣơng 3: 56 Chƣơng 4: THỰC NGHIỆM KHAI PHÁ LUẬT KẾT HỢP 57 4.1. Giới thiệu bài toán 57 4.2. Dữ liệu thực nghiệm 58 4.3. Xây dựng chƣơng trình 60 4.4. Thực nghiệm khai phá 61 4.5. Kết quả thực nghiệm 63 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 63 1. Những kết quả đã đạt đƣợc 63 2. Hƣớng phát triển của đề tài là: 64 TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 67 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn v DANH MỤC CÁC KÝ HIỆU VÀ CÁC CHỮ VIẾT TẮT Ký hiệu Diễn giải KPDL Khai phá dữ liệu CSDL Cơ sở dữ liệu DB Cơ sở dữ liệu giao tác TID Định danh của giao tác I Tập các mục dữ liệu T Giao tác (transaction) C k k Tập các ứng viên là tập mục có k mục dữ liệu L k Tập các tập mục thƣờng xuyên có k mục dữ liệu k-itemset Tập mục gồm k mục BFS Breadth First Search DFS Depth First Search FP-growth Frequent-Pattern Growth FP-tree Frequent pattern tree Sup Độ hỗ trợ (support) Minsup Ngƣỡng hỗ trợ tối thiểu SC(X) Số lƣợng giao dịch chứa tập mục X SRC Kỹ thuật lấy mẫu ngẫu nhiên Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vi DANH MỤC CÁC BẢNG BIỂU Bảng 2.1: Danh mục các tập mục trong CSDL 19 Bảng 2.2: Biểu diễn ngang của CSDL giao tác. 20 Bảng 2.3: Biểu diễn dọc của CSDL giao tác. 20 Bảng 2.4: Ma trận giao tác của CSDL bảng 2.2 21 Bảng 2.5: Cơ sở dữ liệu DB 24 Bảng 2.6: Độ hỗ trợ của các mục 25 Bảng 2.7: Độ hỗ trợ của các tập mục 25 Bảng 2.8: Độ tin cậy của các luật 26 Bảng 2.9: CSDL giao tác minh hoạ cho thuật toán Apriori 31 Bảng 2.10: CSDL giao tác minh hoạ cho thuật toán FP- growth. 34 Bảng 3.1.a. Tập giao tác DB 48 Bảng 3.1.b. Thông tin của cửa hàng 48 Bảng 4.1: Dữ liệu đã trích chọn để khai phá 58 Bảng 4.2: Mã hóa các mặt hàng 59 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vii DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1. Quá trình khám phá tri thức 5 Hình 1.2. Kiến trúc của hệ thống khai phá dữ liệu 7 Hình 1.3: Quá trình khai phá dữ liệu 9 Hình 1.4: Mẫu kết quả với phƣơng pháp cây quyết định 12 Hình 1.5: Phân cụm các đối tƣợng k-Mean ( + là tâm của cụm) 13 Hình 2.1: Phân loại cá c thuật toán khai phá tập mục thƣờng xuyên. 27 Hình 2.2: Cây FP-tree đƣợc xây dựng dần khi thêm các giao tác t1, t2, t3. 35 Hình 2.3: Cây FP-tree của CSDL DB trong bảng 2.10 36 Hình 2.4: FP-tree phụ thuộc của m 39 Hình 2.5 : Các FP-tree phụ thuộc của am, cm và cam 39 Hình 4.1: Dữ liệu đã mã hóa chuẩn bị cho khai phá 60 Hình 4.2: Giao diện chƣơng trình 61 Hình 4.3: Giao diện kết quả khai phá tập mục thƣờng xuyên 62 Hình 4.4: Giao diện kết quả khai phá luật kết hợp 62 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1 MỞ ĐẦU Trong những năm qua, việc nắm bắt, xử lý đƣợc thông tin đƣợc coi là cơ sở của mọi hoạt động của đời sống xã hội, đặc biệt là trong sản xuất, kinh doanh. Những thông tin tiềm ẩn mang tính dự đoán trong các khối dữ liệu là rất lớn. Mỗi cá nhân hoặc tổ chức nào thu thập và hiểu đƣợc thông tin, hành động dựa trên các thông tin đƣợc kết xuất từ các thông tin đã có sẽ đạt đƣợc thành công trong mọi hoạt động. Chính vì lý do đó, việc tạo ra thông tin, tổ chức lƣu trữ và khai phá ngày càng trở nên quan trọng và gia tăng không ngừng. Sự tăng trƣởng vƣợt bậc của các cơ sở dữ liệu (CSDL) trong cuộc sống nhƣ: thƣơng mại, quản lý và khoa học …đã làm nảy sinh và thúc đẩy sự phát triển của kỹ thuật thu thập, lƣu trữ, phân tích và khai phá dữ liệu không chỉ bằng các phép toán đơn giản thông thƣờng nhƣ: phép đếm, thống kê mà đòi hỏi cách xử lý thông minh hơn, hiệu quả hơn. Từ đó các nhà quản lý có đƣợc thông tin có ích để tác động lại quá trình sản xuất, kinh doanh của mình đó là tri thức. Các kỹ thuật cho phép ta khai phá đƣợc tri thức hữu dụng từ CSDL (lớn) đƣợc gọi là các kỹ thuật khai phá dữ liệu (DM – Data Mining). Khai phá luật kết hợp là một nội dung quan trọng trong khai phá dữ liệu. Một trong những nội dung cơ bản nhất trong khai phá dữ liệu và rất thƣờng xuyên là phát hiện các luật kết hợp trong kho cơ sở dữ liệu khổng lồ, nhằm tìm ra các tập mục thƣờng xuyên thƣờng xuất hiện đồng thời trong cơ sở dữ liệu và rút ra các luật về ảnh hƣởng của tập mục thƣờng xuyên dẫn đến sự xuất hiện của một (hay một tập) mục thƣờng xuyên khác nhƣ thế nào, do vậy khai phá luật kết hợp trong kho cơ sở dữ liệu có ý nghĩa rất quan trọng, có lợi ích to lớn trong việc tổng hợp và cung cấp những thông tin cần thiết trong nguồn cơ sở dữ liệu lớn. [...]...2 Xuất phát từ thực tế nói trên và với mục đích tìm hiểu về bài toán tìm luật kết hợp trong cơ sở dữ liệu, em đã quyết định lựa chọn đề tài: Khai phá luật kết hợp trong cơ sở dữ liệu và ứng dụng Ứng dụng khai phá luật kết hợp trong cơ sở dữ liệu đã mang lại những lợi ích to lớn trong việc tổng hợp và cung cấp những thông tin trong các nguồn cơ sở dữ liệu lớn Đây là một đề tài... sinh ra các luật - Cắt tỉa các luật không đáng quan tâm từ luật kết xuất đƣợc 2.2 Các khái niệm cơ sở Khai phá luật kết hợp là một kỹ thuật quan trọng của khai phá dữ liệu Mục tiêu khai phá là phát hiện những mối quan hệ giữa các mục dữ liệu trong cơ sở dữ liệu Mô hình đầu tiên của bài toán khai phá luật kết hợp là mô hình nhị phân (hay còn gọi là mô hình cơ bản) đƣợc R Agrawal, T Imielinski và A Swami... chí nhất định Trong giai đoạn khai phá dữ liệu, có thể cần sự tƣơng tác của ngƣời dùng để điều chỉnh và rút ra các tri thức cần thiết nhất Các tri thức nhận đƣợc cũng có thể đƣợc lƣu và sử dụng lại 1.2 Kiến trúc của hệ thống khai phá dữ liệu Khai phá dữ liệu là quá trình rút trích thông tin bổ ích từ những kho dữ liệu Khai phá dữ liệu là quá trình chính trong khai phá tri thức từ cơ sở dữ liệu Kiến trúc... dữ liệu, ta loại bỏ các mục dữ liệu này khỏi dữ liệu trƣớc khi khai phá dữ liệu Dữ liệu sau khi lọc và chỉnh sửa sẽ nhỏ hơn, xử lý nhanh chóng hơn Quá trình khai phá dữ liệu đƣợc thể hiện bởi hình 1.3 sau: Thống kê tóm tắt Xác định nhiệm vụ Xác định dữ liệu liên quan Thu thập và tiền xử lý DL Giải thuật khai phá DL Mẫu Dữ liệu trực tiếp Hình 1.3: Quá trình khai phá dữ liệu Công việc tiếp theo sử dụng. .. đƣợc ứng dụng nhiều trong lĩnh vực tài chính và thị trƣờng chứng khoán bởi vì chúng có tính dự báo cao * Một số lưu ý khi thực hiện các phương pháp khai phá dữ liệu: Khi thực hiện các phƣơng pháp có những khó khăn phát sinh trong khai phá dữ liệu, đó là vì dữ liệu trong thực tế thƣờng rất lớn, động và nhiễu, làm thế nào để giải quyết sự dƣ thừa thông tin không thích hợp khi khai phá dữ liệu - Khai phá. .. Đánh giá mẫu cơ sở tri thức (Data mining engine) Máy khai phá dữ liệu (Knowledge-base) (Database or Warehouse Server) Máy chủ CSDL hay kho dữ liệu Làm sạch ; tích hợp dữ liệu; lọc Cơ sở dữ Cơ sở dữ liệu liệu Kho dữ liệu Các lƣu trữ thông tin khác Hình 1.2 Kiến trúc của hệ thống khai phá dữ liệu * Máy chủ CSDL (Database or Warehouse Server): Máy chủ có trách nhiệm lấy những dữ liệu thích hợp dựa trên... các mẫu giả Phƣơng pháp khắc phục là làm giảm kích thƣớc khi khai phá của bài toán và sử dụng các tri thức biết trƣớc để xác định các mục dữ liệu không phù hợp - Khai phá dữ liệu động: các kho cơ sở dữ liệu có đặc điểm là dữ liệu của chúng thay đổi liên tục Chẳng hạn nhƣ các mục trong cơ sở dữ liệu đã cho có thể bị thay đổi, bị xóa hoặc là tăng lên theo thời gian, việc khai phá dữ liệu bị ảnh hƣởng... Web và cải thiện hoạt động của các Website; trang Web mua bán qua mạng cũng tăng doanh thu nhờ áp dụng khai phá dữ liệu trong việc phân tích sở thích mua bán của khách hàng Kết luận chƣơng 1: Chƣơng 1 đã tìm hiểu một các tổng quan quá trình phát hiện tri thức và các vấn đề về khai phá dữ liệu trong đó khai phá dữ liệu là bƣớc quan trọng nhất để tìm ra các mẫu Khai phá dữ liệu có nhiều ứng dụng trong. .. thị dữ liệu, marketing, toán học, tin sinh học, nhận dạng mẫu, tính toán thống kê … 1.5 Các phƣơng pháp chính trong khai phá dữ liệu Khai phá dữ liệu gồm nhiều hƣớng tiếp cận phù hợp với từng cơ sở dữ liệu của các lĩnh vực khoa học và đời sống xã hội Một số phƣơng pháp chính trong khai phá dữ liệu là: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 12 1.5.1 Phƣơng pháp luật. .. ngữ tự nhiên và kỹ thuật khác nhằm biểu diễn các tri thức và dữ liệu khai phá 1.6 Các ứng dụng của khai phá dữ liệu Vào những năm của thế kỷ XX, khi công nghệ thông tin bùng nổ cả về bề rộng và chiều sâu, ảnh hƣởng đến hầu hết các lĩnh vực khoa học, kinh tế và đời sống xã hội Dữ liệu ngày càng tăng theo thời gian, ngƣời ta coi khai phá dữ liệu là quá trình phân tích cơ sở dữ liệu nhằm phát hiện ra . Xuất phát từ thực tế nói trên và với mục đích tìm hiểu về bài toán tìm luật kết hợp trong cơ sở dữ liệu, em đã quyết định lựa chọn đề tài: Khai phá luật kết hợp trong cơ sở dữ liệu và ứng dụng . từ cơ sở dữ liệu. 3 1.2. Kiến trúc của hệ thống khai phá dữ liệu 6 1.3. Quá trình khai phá dữ liệu 8 1.4. Nhiệm vụ của khai phá dữ liệu. 10 1.5. Các phƣơng pháp chính trong khai phá dữ liệu. Chƣơng 2: Khai phá luật kết hợp trong cơ sở dữ liệu Chƣơng 3: Khai phá luật kết hợp có trọng số Chƣơng 4: Thực nghiệm khai phá luật kết hợp Trong suốt quá trình tìm hiểu, nghiên cứu và hoàn