Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 85 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
85
Dung lượng
2,4 MB
Nội dung
i S húa bi Trung tõm Hc liu http://www.lrc-tnu.edu.vn/ đại học thái nguyên Tr-ờng đại học CÔNG NGHệ THÔNG TIN Và TRUYềN THÔNG NGUYN TH LUYN KHAI PH TP MC LI CH CAO DA TRấN CU TRC CY TIN T LUN VN THC S KHOA HC MY TNH thái nguyên - năm 2014 ii Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ ®¹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 THỊ LUYẾN [ KHAI PHÁ TẬP MỤC LỢI ÍCH CAO DỰA TRÊN CẤU TRÚC CÂY TIỀN TỐ LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 Ngƣời hƣớng dẫn khoa học: TS. LÊ VĂN PHÙNG Thái Nguyên, 2014 iii Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ LỜI CAM ĐOAN Tôi xin cam đoan Luận văn "Khai phá tập mục lợi ích cao dựa trên cấu trúc cây tiền tố" đã đƣợc thực hiện theo đúng mục tiêu đề ra dƣới sự hƣớng dẫn của TS. Lê Văn Phùng. Kết quả đạt đƣợc trong luận văn là sản phẩm của cá nhân tôi. Trong toàn bộ luận văn, những điều đƣợc trình bày là của cá nhân và là đƣợc tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và đƣợc trích dẫn hợp pháp. Tôi xin chịu hoàn toàn trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình. Thái Nguyên, ngày 29 tháng 9 năm 2014 Người cam đoan Nguyễn Thị Luyến iv Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ LỜI CẢM ƠN Lời đầu tiên tôi xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới TS. Lê Văn Phùng – Trƣờng Đại học công nghệ Thông tin và Truyền thông, Thầy đã chỉ bảo và hƣớng dẫn tận tình cho tôi trong suốt quá trình làm việc và thực hiện luận văn này. Tôi xin chân thành cảm ơn sự dạy bảo, giúp đỡ, tạo điều kiện và khuyến khích tôi trong quá trình học tập và nghiên cứu của các thầy cô giáo của Viện Công nghệ thông tin, Trƣờng Đại học Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên. Và cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, ngƣời thân và bạn bè, những ngƣời luôn ở bên tôi những lúc khó khăn nhất, luôn động viên tôi, khuyến khích tôi trong cuộc sống và trong công việc. Tôi xin chân thành cảm ơn! Thái Nguyên, ngày 29 tháng 9 năm 2014 Tác giả Nguyễn Thị Luyến v Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN iv DANH MỤC CÁC HÌNH VẼ vii DANH MỤC CÁC BẢNG viii DANH MỤC CÁC KÝ HIỆU ix DANH MỤC CHỮ VIẾT TẮT x MỞ ĐẦU 1 CHƢƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 3 1.1 Quá trình khám phá tri thức 3 1.1.1 Khái niệm về quá trình khám phá tri thức và khai phá dữ liệu 3 1.1.2 Kiến trúc về một số hệ thống khai phá dữ liệu 5 1.1.3. Một số ứng dụng của khai phá dữ liệu 6 1.2 Một số phƣơng pháp khai phá dữ liệu thông dụng 7 1.2.1 Phƣơng pháp luật kết hợp 7 1.2.2 Phƣơng pháp cây quyết định 8 1.3 Kết luận chƣơng 1 12 CHƢƠNG 2: KHAI PHÁ TẬP MỤC THƢỜNG XUYÊN VÀ TẬP MỤC LỢI ÍCH CAO 13 2.1 Khai phá tập mục thƣờng xuyên 13 2.1.1 Cơ sở dữ liệu giao tác 13 2.1.2 Tập mục thƣờng xuyên và luật kết hợp 15 2.1.3 Bài toán khai phá luật kết hợp và một số thuật toán về khai phá tập mục thƣờng xuyên 17 2.2 Bài toán Khai phá tập mục lợi ích cao 29 2.2.1 Khái niệm về tập mục lợi ích cao 29 2.2.2 Một số bài toán khai phá tập mục lợi ích cao 29 2.3 Khai phá tập mục lợi ích cao dựa trên cây tiền tố 34 2.3.1 Định nghĩa cây tiền tố 34 vi Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 2.3.2 Một số thuật toán khai phá tập mục lợi ích cao dựa trên cây tiền tố 35 2.3.3 Các cấu trúc cây tiền tố cho khai phá lợi ích cao 56 2.3.4 Thuật toán UP-Growth 59 2.4 Kết luận chƣơng 2 62 CHƢƠNG 3: THỰC NGHIỆM KHAI PHÁ TẬP MỤC LỢI ÍCH CAO DỰA TRÊN CẤU TRÚC CÂY TIỀN TỐ 63 3.1. Bài toán phát hiện nhóm các mặt hàng có lợi nhuận cao 63 3.2. Mô tả dữ liệu 63 3.3 Xây dựng chƣơng trình 70 3.4 Thực nghiệm khai phá tìm tập mục lợi ích cao 71 3.5 Kết luận chƣơng 3 72 KẾT LUẬN 73 1. Những kết quả chính của luận văn 73 2. Hƣớng nghiên cứu tiếp theo 73 TÀI LIỆU THAM KHẢO 74 A. Tiếng việt 74 B. Tiếng Anh 74 vii Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ DANH MỤC CÁC HÌNH VẼ Hình 1.1. Các bƣớc trong Data Mining và KDD 5 Hình 1.2. Kiến trúc của một hệ thống khai phá dữ liệu 5 Hình 1.3. Luồng thông tin đƣợc sử dụng theo cách kết hợp 8 Hình 1.4 Cây quyết định về khái niệm mua máy tính 9 Hình 1.5. Cây quyết định phân lớp (bad/good) mức lƣơng 11 Hình 1.6 Các bƣớc thực hiện thuật toán K-Mean 12 Hình 2.1. Cây FP-tree của CSDL bảng 2.5 27 Hình 2.2. Cây COFI-tree của mục D 27 Hình 2.3. Minh họa các bƣớc khai phá cây D-COFI-tree 28 Hình 2.4. Cây TWUI-tree sau khi lƣu giao tác T 1 39 Hình 2.5. Cây TWUI-tree sau khi lƣu giao tác T1 và T2 39 Hình 2.6. Cây TWUI-tree của CSDL bảng 2.9 và bảng 2.10 40 Hình 2.7. Cây C-COUI-tree sau khi lƣu mẫu CBE 42 Hình 2.8. Cây C-COUI-tree sau khi lƣu mẫu CBE và CE 43 Hình 2.9. Cây C-COUI-tree sau khi xây dựng xong 43 Hình 2.10. Cây D-COUI-tree 43 Hình 2.11. Cây B-COUI-tree 44 Hình 2.12. Các bƣớc khai phá cây D-COUI-Tree 45 Hình 2.13. Không gian tìm kiếm tập mục lợi ích cao theo thuật toán Hai pha 56 Hình 2.14. Cây TWUI-tree có các mục dữ liệu sắp tăng dần theo trật tự từ điển của cơ sở dữ liệu bảng 2.9 và bảng 2.10 57 Hình 2.15. Cây TWUI-tree có các mục dữ liệu sắp giảm dần theo số lần xuất hiện của chúng trong cơ sở dữ liệu bảng 2.9 và bảng 2.10 57 Hình 2.16. Cây TWUI-tree có các mục dữ liệu sắp giảm dần theo TWU của chúng trong cơ sở dữ liệu bảng 2.9 và bảng 2.10 58 Hình 2.17. Cây TWUI-tree của CSDL bảng 2.8 với minutil = 40 62 Hình 2.18. Cây UP-tree của CSDL bảng 2.8 với minutil = 40 62 Hình 3.1. Tệp CSDL.txt biểu diễn dữ liệu đầu vào 70 Hình 3.2. Giao diện chính của chƣơng trình 71 Hình 3.3. Tập các mục lợi ích cao 72 viii Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ DANH MỤC CÁC BẢNG Bảng 1.1: Tập dữ liệu huấn luyện quyết định phân lớp mức lƣơng 10 Bảng 2.1: Biểu diễn ngang của cơ sở dữ liệu giao tác 14 Bảng 2.2: Biểu diễn dọc của cơ sở dữ liệu giao tác 14 Bảng 2.3: Ma trận giao tác của cơ sở dữ liệu cho ở bảng 2.1 15 Bảng 2.4: Cơ sở dữ liệu giao tác minh họa thực hiện thuật toán Apriori 21 Bảng 2.5: CSDL giao tác minh họa thực hiện thuật toán COFI-tree 25 Bảng 2.6: Các mục dữ liệu và độ hỗ trợ 25 Bảng 2.7: Các mục dữ liệu thƣờng xuyên đã sắp thứ tự 25 Bảng 2.8: Các mục DL trong giao tác sắp xếp giảm dần theo độ hỗ trợ 26 Bảng 2.9. CSDL giao tác 32 Bảng 2.10 Bảng lợi ích 32 Bảng 2.11: Lợi ích các giao tác của cơ sở dữ liệu bảng 2.9 và bảng 2.10 37 Bảng 2.12: Lợi ích TWU của các mục dữ liệu 37 Bảng 2.13: Các mục dữ liệu có lợ 38 Bảng 2.14. Các mục dữ liệu trong giao tác sắp giảm dần theo lợi ích TWU 38 Bảng 2.15. Kết quả tính lợi ích của các tập mục ứng viên 46 Bảng 2.16: Cơ sở dữ liệu ví dụ cho thuật toán UP-Growth 60 Bảng 2.17: Bảng lợi ích của CSDL bảng 2.15 61 Bảng 2.18: Các giao tác đƣợc sắp lại các mục dữ liệu theo TWU giảm dần 61 Bảng 3.1 Dữ liệu đã trích chọn để khai phá 65 Bảng 3.2. Mã hóa các mặt hàng 68 Bảng 3.3. Bảng lợi ích các mặt hàng 69 ix Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ DANH MỤC CÁC KÝ HIỆU X : Số phần tử của tập hợp X. A, B, C,…: Tên các mục dữ liệu trong cơ sở dữ liệu giao tác ví dụ. Conf(X->Y): Độ tin cậy của một luật X->Y db DB : db là cơ sở dữ liệu giao tác con của DB. DB = {T 1 , T 2 ,…, T m }: Cơ sở dữ liệu có m giao tác. I = {i 1 , i 2 ,…, i n }: Tập n mục dữ liệu. I p : Mục dữ liệu thứ p. m: Số giao tác một cơ sở dữ liệu giao tác. Minconf: Độ tin cậy tối thiểu minShare: Ngƣỡng cổ phần tối thiểu. minsup: Ngƣỡng độ hỗ trợ tối thiểu. minutil: Ngƣỡng lợi ích tối thiểu n: Số mục dữ liệu một cơ sở dữ liệu giao tác. Nếu X Y thì X gọi là tập con của tập Y, Y gọi là tập cha của tập X P(Y/X): Xác suất có điều kiện (độ tin cậy của luật Y->X) P(Y/X): Xác suất có điều kiện (độ tin cậy của luật kết hợp X->Y) Sup(X): Tỷ lệ % của giao tác chứa tập X T q : Giao tác thứ q. U(X): Lợi ích của tập mục trong CSDL DB X = ABC thay cho X = {A, B, C} trong các cơ sở dữ liệu giao tác ví dụ. X, Y,…: Tập con của tập mục dữ liệu I, X, Y I. x Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ DANH MỤC CHỮ VIẾT TẮT AIS Thuật toán AIS CHARM Thuật toán CHAM CNTT Công nghệ thông tin CSDL Cơ sở dữ liệu FP-Growth Thuật toán FP-Growth SETM Thuật toán SETM UP-Growth Thuật toán UP-Growth DM Data Mining Khai phá dữ liệu HU High Utility Khai phá tập mục lợi ích cao TWU Transaction Weighted Utility Tập mục ràng buộc lợi ích theo giao tác TWUI-tree Transaction Weighted Utility tree Là một cấu trúc cây tiền tố KDD Knowledge Discovery from Data Phát hiện tri thức từ dữ liệu PT Prefix-tree Cây tiền tố [...]... phá tập mục lợi ích cao không ?” Với mục ích tìm hiểu bài toán tập mục lợi ích cao và các thuật toán khai phá dựa trên cấu trúc cây tiền tố, em đã chọn đề tài Khai phá tập mục lợi ích cao dựa trên cấu trúc cây tiền tố làm luận văn cao học của mình Trong đó tìm hiểu vận dụng kiến thức sƣu tập đƣợc vào giải quyết bài toán về khai phá tập mục lợi ích cao dựa trên cấu trúc cây đặc biệt là cây tiền tố ... CSDL Khai phá tập mục lợi ích cao thực sự là một lĩnh vực đang thu hút nhiều nhà nghiên cứu và doanh nghiệp quan tâm Khai phá tập mục lợi ích cao là sự mở rộng, tổng quát hóa của khai phá tập mục cổ phần cao Mô hình khai phá tập mục lợi ích cao đƣợc Yao và cộng sự đề xuất (Hong Yao và Hamilton, 2006; H Yao, Hamilton và Butz, 2004) [6], [12] Trong mô hình khai phá tập mục lợi ích cao, giá trị của mục. .. quan về khai phá dữ liệu Chƣơng II: Khai phá tập mục thƣờng xuyên và tập mục lợi ích cao Chƣơng III: Thực nghiệm khai phá tập mục lợi ích cao dựa trên cấu trúc cây tiền tố Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 3 CHƢƠNG 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 1.1 Quá trình khám phá tri thức 1.1.1 Khái niệm về quá trình khám phá tri thức và khai phá dữ liệu Theo bách khoa toàn thƣ, khai phá dữ... kiến trúc, quá trình khai phá dữ liệu và một số phƣơng pháp khai phá dữ liệu thông dụng Phƣơng pháp luật kết hợp, phƣơng pháp cây quyết định, phƣơng pháp K- Mean (Phân cụm), đều là những thuật toán đơn giản, quen thuộc và rất quan trọng trong quá trình khai phá tập mục lợi ích cao Trong chƣơng 2 sẽ trình bày các khái niệm cơ bản về tập mục thƣờng xuyên và tập mục lợi ích cao, cấu trúc cây tiền tố và... thuật toán khai phá tập mục lợi ích cao sử dụng cấu trúc cây tiền tố Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 13 CHƢƠNG 2 KHAI PHÁ TẬP MỤC THƢỜNG XUYÊN VÀ TẬP MỤC LỢI ÍCH CAO 2.1 Khai phá tập mục thƣờng xuyên 2.1.1 Cơ sở dữ liệu giao tác Định nghĩa 1 Cho tập các mục (item) I i1 , i2 , , in Một giao tác (transaction) T là một tập con của I, T I Cơ sở dữ liệu giao tác là một tập các giao... có bảng lợi ích cho biết lợi ích mang lại khi bán một đơn vị hàng đó (gọi là giá 1 Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ 2 trị chủ quan, do ngƣời quản lý kinh doanh xác định) Lợi ích của một tập mục là số đo lợi nhuận mà tập mục đó đóng góp trong CSDL, nó có thể là tổng lợi nhuận, là tổng chi phí của tập mục Khai phá tập mục lợi ích cao là khám phá tất cả các tập mục lợi ích không... các mục dữ liệu thƣờng xuyên, sắp chúng theo thứ tự giảm dần của độ hỗ trợ và chèn lên cây Hình 1.9 biểu diễn cây FP-tree Giai đoạn 2: Khai phá cây FP-tree Xét lần lƣợt các mục dữ liệu từ dƣới lên trong bảng đầu mục của cây FP-tree, với mỗi mục dữ liệu, xây dựng cây COFI-tree của nó, khai phá cây này tìm các mẫu thƣờng xuyên, sau khi khai phá xong, loại bỏ cây đó và xây dựng cây COFI-tree cho mục dữ... của thực tiễn, khai phá tập mục thƣờng xuyên đã có nhiều cách thức mở rộng và ứng dụng, từ thay đổi phƣơng pháp luận đến thay đổi đa dạng các kiểu dữ liệu, mở rộng các nhiệm vụ khai phá và đa dạng các ứng dụng mới Trong những năm qua, đã có nhiều hƣớng mở rộng bài toán đƣợc quan tâm nghiên cứu Một trong những hƣớng đó là bài toán khai phá tập mục lợi ích cao, đánh giá lợi ích mà tập mục dữ liệu mang... xây dựng cây FP-tree Giai đoạn thứ hai, khai phá cây FP-tree chia thành nhiều bƣớc tƣơng ứng với các mục dữ liệu trong bảng đầu mục của cây FP-tree, mỗi bƣớc sử dụng một cấu trúc dữ liệu phụ trợ là cây COFI-tree của mục dữ liệu đó Mỗi nút của cây FP-tree gồm 3 trƣờng: tên mục dữ liệu, độ hỗ trợ và một con trỏ (con trỏ này trỏ đến nút tiếp theo cùng trên trên cây hoặc là null nếu không có) Cây FP-tree... phƣơng pháp khai phá phát triển (growth) từng đoạn dựa trên cây FP-tree gọi là phƣơng pháp FP-growth; Kỹ thuật tìm kiếm đƣợc dùng ở đây là dựa vào sự phân chia, “chia để trị”, phân rã nhiệm vụ khai phá thành nhiệm vụ nhỏ hơn * Thuật toán Apriori Apriori là thuật toán khai phá tập mục thƣờng xuyên do R Agrawal và R Srikant đề xuất vào năm 1993 [11] Ý tƣởng của thuật toán Apriori còn là nền tảng cho việc phát