nghiên cứu tập mục thường xuyên và luật kết hợp

72 219 0
nghiên cứu tập mục thường xuyên và luật kết hợp

Đ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

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 HỌC THÁI NGUYÊN TRƯỜNG ĐH CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG  LÊ VĂN SƠN NGHIÊN CỨU TẬP MỤC THƯỜNG XUYÊN VÀ LUẬT KẾT HỢP 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 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 MỤC LỤC Trang MỞ ĐẦU 1 Chƣơng 1: TỔNG QUAN VỀ PHÁ DỮ LIỆU 3 1.1. Khai phá dữ liệu. 3 1.2. Các phƣơng pháp chính trong khai phá dữ liệu 4 1.3. Các cơ sở dữ liệu có thể khai phá 5 1.4. Quá trình khai phá dữ liệu. 6 1.5. Một số ứng dụng của khai phá dữ liệu 7 1.6. Khai phá dữ liệu và các lĩnh vực có liên quan 8 1.7. Những khó khăn, thách thức trong khai phá dữ liệu. 9 Chƣơng 2: TẬP MỤC THƢỜNG XUYÊN VÀ LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU 12 2.1. Các khái niệm cơ bản 12 2.1.1. Cơ sở dữ liệu giao tác 12 2.1.2. Tập mục và độ hỗ trợ 14 2.1.3. Tập mục thƣờng xuyên (Frequent intemset) 14 2.1.4. Luật kết hợp (Association Rule) 15 2.2. Khai phá tập mục thƣờng xuyên và mở rộng 16 2.2.1. Khai phá tập mục thƣờng xuyên 16 2.2.2. Mở rộng bài toán khai phá tập mục thƣờng xuyên 17 2.3. Khai phá luật kết hợp 18 2.4. Một số tính chất của tập mục thƣờng xuyên và luật kết hợp 20 2.4.1. Một số tính chất của tập mục thƣờng xuyên 20 2.4.2. Một số tính chất của luật kết hợp. 20 2.5. Một số hƣớng tiếp cận trong khai phá luật kết hợp 21 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 CHƢƠNG 3: MỘT SỐ PHƢƠNG PHÁP KHAI PHÁ DỮ LIỆU BẰNG LUẬT KẾT HỢP 23 3.1. Mở đầu 23 3.2. Thuật toán APRIORI khai phá tập mục thƣờng xuyên 24 3.3. Khai phá tập mục thƣờng xuyên theo hƣớng tiếp cận không sinh ứng cử. 30 3.3.1. Thuật toán tạo cây FP-tree [4] 31 3.3.2. Duyệt cây FP-tree để sinh các tập mục thƣờng xuyên. 40 3.4. Khai phá tập mục cổ phần cao 43 3.5. Thuật toán FSM 47 3.5.1. Cơ sở lý thuyết của thuật toán FSM 47 3.5.2 Thuật toán FSM 48 3.6. Thuật toán AFSM 52 3.6.1 Cơ sở lý thuyết của thuật toán AFSM 52 3.6.2 Thuật toán AFSM 55 Chƣơng 4: XÂY DỰNG ỨNG DỤNG KHAI PHÁ TẬP MỤC CỔ PHẦN CAO - THỬ NGHIỆM TRÊN CSDL BÁN HÀNG 59 4.1. Đặt bài toán 59 4.2. Thiết kế modul chƣơng trình và giải thuật 59 4.3. Giao diện sử dụng và chức năng chƣơng trình 60 4.4. Đánh giá kết quả và hƣớng phát triển của chƣơng trình. 63 KẾT LUẬN 64 TÀI LIỆU THAM KHẢO 65 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 DANH MỤC CÁC KÝ HIỆU VÀ CÁC TỪ VIẾT TẮT Từ hoặc cụm từ Từ viết tắt Tiếng Anh Khai phá tri thức KDD Knowledge Discovery in Database Khai phá dữ liệu KPDL Data Mining Cơ sở dữ liệu CSDL Database 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 DANH MỤC CÁC BẢNG Bảng 2.1: Biểu diễn ngang của cơ sở dữ liệu giao tác 15 Bảng 2.2: Biểu diễn dọc của cơ sử dữ liệu giao tác 15 Bảng 2.3: Ma trận giao tác của cơ sở dữ liệu bảng 2.1 16 Bảng 2.4: Các tập mục thƣờng xuyên của CSDL bảng 2.3 với minsup=50% 17 Bảng 2.5: Các luật kết hợp sinh ra từ tập mục thƣờng xuyên BCE 21 Bảng 3.1: Ký hiệu mô tả trong thuật toán Apriori 26 Bảng 3.2: CSDL minh hoạ thuật toán Apriori 29 Bảng 3.3: Danh sách các tập mục thƣờng xuyên của CSDL bảng 3.2 31 Bảng 3.4: CSDL giao tác minh hoạ xây dựng cây FP-tree 35 Bảng 3.5: Thống kê tần xuất của các mục trong CSDL 35 Bảng 3.6: CSDL giao tác sau khi loại bỏ các mục không thƣờng xuyên và sắp xếp các mục theo thứ tự giảm dần của tần xuất 37 Bảng 3.7: Cơ sở dữ liệu ví dụ 46 Bảng 3.8: Giá trị lmv và cổ phần của các mục dữ liệu trong CSDL bảng 3.7 47 Bảng 3.9: Các tập mục cổ phần cao của CSDL bảng 3.7 47 Bảng 3.10: Cơ sở dữ liệu minh hoạ thuật toán FSM 52 Bảng 3.11: Giá trị lmv và CF với k =1 52 Bảng 3.12: Giá trị lmv và CF với k = 2 52 Bảng 3.13: Giá trị lmv và CF với k = 3 53 Bảng 3.14: Giá trị lmv và CF với k=4 53 Bảng 3.15: Các giá trị lmv và hàm tới hạn với k=2 58 Bảng 3.16: Các giá trị lmv và hàm tới hạn với k=3 58 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 HÌNH Hình 1.1: Quá trình khai phá dữ liệu 9 Hình 1.2: Khai phá dữ liệu và các lĩnh vực có liên quan 11 Hình 2.1: Phân loại các thuật toán khai phá tập mục thƣờng xuyên 19 Hình 3.1: Bảng Header của cây FP-tree của CSDL bảng 3.5 36 Hình 3.2: Cây FP-tree sau khi xét giao tác với TID = T01 37 Hình 3.3: Cây FP-tree sau khi xét giao tác với TID = T02 37 Hình 3.4: Cây FP-tree sau khi xét giao tác với TID = T03 38 Hình 3.5: Cây FP-tree sau khi xét giao tác với TID = T04 38 Hình 3.6: Cây FP-tree sau khi xét giao tác với TID = T05 39 Hình 3.7: Cây FP-tree sau khi xét giao tác với TID = T06 39 Hình 3.8: Cây FP-tree sau khi xét giao tác với TID = T07 40 Hình 3.9: Cây FP-tree sau khi xét giao tác với TID = T08 40 Hình 3.10: Cây FP-tree sau khi xét giao tác với TID = T09 41 Hình 3.11: Cây FP-tree CSDL bảng 3.4 42 Hình 3.12: Không gian tìm kiếm tập mục cổ phần cao theo thuật toán AFSM 59 Hình 4.1: Cửa sổ giao diện chƣơng trình 61 Hình 4.2: Cửa sổ thực hiện nhập CSDL 62 Hình 4.3: Nhập ngƣỡng cổ phần minShare 63 Hình 4.4: Cửa sổ thể hiện các bƣớc tìm tập mục cổ phần cao 64 Hình 4.5: Cửa sổ hiển thị kết quả tìm tập mục cổ phần cao 64 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 Sự phát triển nhanh chóng của các ứng dụng Công nghệ thông tin và Internet vào nhiều lĩnh vực đời sống xã hội nhƣ quản lý kinh tế, quản lý nhân sự, khoa học kỹ thuật…đã mở ra nhiều cơ hội cho các tổ chức, doanh nghiệp trong việc thu thập và xử lý thông tin. Hơn nữa các công nghệ lƣu trữ, phục hồi dữ liệu phát triển một cách nhanh chóng, làm xuất hiện nhiều cơ sở dữ liệu khổng lồ. Để khai thác có hiệu quả nguồn thông tin từ các cơ sở dữ liệu khổng lồ trên, yêu cầu cấp thiết đặt ra là cần phải có những kỹ thuật, công cụ để chuyển đổi kho dữ liệu khổng lồ thành những tri thức có ích. Từ đó các kỹ thuật Khai phá dữ liệu trở thành một lĩnh vực đƣợc đặc biệt quan tâm trong ngành Công nghệ thông tin. Khai phá dữ liệu là một khái niệm đƣợc ra đời vào những năm cuối của thập kỷ 1980, là quá trình khám phá thông tin ẩn đƣợc tìm thấy trong các cơ sở dữ liệu và đƣợc ứng dụng một cách rộng rãi trong nhiều lĩnh vực khác nhau nhƣ: marketing, tài chính, ngân hàng và bảo hiểm, khoa học, y tế, an ninh, internet…Rất nhiều tổ chức và công ty lớn trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh doanh của mình và đã thu đƣợc những lợi ích to lớn. Một trong các nội dung cơ bản và phổ biến nhất trong khai phá dữ liệu là tìm các tập mục thƣờng xuyên từ đó phát hiện các luật kết hợp. Phƣơng pháp này nhằm tìm ra các tập thuộc tính 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 một tập thuộc tính dẫn đến sự xuất hiện của một (hoặc một tập) thuộc tính khác nhƣ thế nào. Đồng thời mở rộng khai phá tập mục thƣờng xuyên là khai phá tập mục cổ phần cao để có thể đánh giá đƣợc sự đóng góp của tập mục trong tổng số các mục dữ liệu của cơ sở dữ liệu. 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 2 Từ những lý do trên tôi chọn đề tài “Nghiên cứu tập mục thường xuyên và luật kết hợp”. Luận văn đƣợc xây dựng dựa trên một số nghiên cứu trong lĩnh vực khai phá tập mục thƣờng xuyên và luật kết hợp trong những năm gần đây. Luận văn đƣợc tổ chức thành 04 chƣơng Chƣơng 1. Tổng quan về khai phá dữ liệu Chƣơng 2. Tập mục thƣờng xuyên và luật kết hợp trong khai phá dữ liệu Chƣơng 3: Một số phƣơng pháp khai phá dữ liệu bằng luật kết hợp Chƣơng 4. Xây dựng ứng dụng khai phá tập mục cổ phần cao-ứng dụng thử nghiệm trên CSDL bán hàng Kết luậ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 3 Chƣơng 1: TỔNG QUAN VỀ PHÁ DỮ LIỆU 1.1. Khai phá dữ liệu. Trong kỷ nguyên bùng nổ công nghệ thông tin, các công nghệ lƣu trữ dữ liệu ngày càng phát triển tạo điều kiện cho việc thu thập, lƣu trữ dữ liệu tốt hơn. Đặc biệt trong lĩnh vực kinh doanh, các doanh nghiệp đã nhận thức đƣợc tầm quan trọng của việc nắm bắt và xử lý thông tin, nhằm giúp các chủ doanh nghiệp trong việc vạch ra các chiến lƣợc kinh doanh, kịp thời mang lại lợi nhuận to lớn. Từ đó khiến các tổ chức, doanh nghiệp tạo ra một lƣợng dữ liệu khổng lồ cho riêng mình. Các kho dữ liệu ngày càng lớn trong đó tiềm ẩn nhiều thông tin có ích. Để khai thác có hiệu quả nguồn thông tin từ các kho dữ liệu khổng lồ dẫn tới một yêu cầu cấp thiết là phải có những kỹ thuật và công cụ mới để biến kho dữ liệu khổng lồ thành những thông tin cô đọng và có ích. Kỹ thuật Khai phá dữ liệu (Data mining) ra đời nhƣ một kết quả tất yếu đáp ứng yêu cầu đó. Khai phá dữ liệu (Data mining) là quá trình trích xuất các thông tin có giá trị tiềm ẩn bên trong lƣợng lớn dữ liệu đƣợc lƣu trữ trong các cơ sở dữ liệu, kho dữ liệu. Hiện nay, ngoài thuật ngữ khai phá dữ liệu ngƣời ta còn dùng một số thuật ngữ khác có ý nghĩa tƣơng tự nhƣ: Khai phá tri thức từ CSDL (Knowledge mining from databases), trích lọc dữ liệu (Knowledge extraction), phân tích dữ liệu/mẫu (data/pattern analysis), khảo cổ dữ liệu (data archaeology), nạo vét dữ liệu (data dredging). Nhiều ngƣời coi khai phá dữ liệu và một thuật ngữ thông dụng khác là khám phá tri thức trong CSDL (Knowledge Discovery in Databases –KDD) là nhƣ nhau. Thực tế khai phá dữ liệu chỉ là một bƣớc thiết yếu trong quá trình khám phá tri thức trong CSDL. 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 4 Theo Giáo sƣ Tom Mitchell [11] định nghĩa KPDL: “KPDL là việc sử dụng dữ liệu lịch sử để khám phá những qui tắc và cải thiện những quyết định trong tƣơng lai” Tóm lại: Khai phá dữ liệu là một quá trình tìm kiếm, phát hiện ra các tri thức mới và các tri thức có ích ở dạng tiềm ẩn trong các cơ sở dữ liệu lớn. 1.2. Các phƣơng pháp chính trong khai phá dữ liệu Các phƣơng pháp chính trong KPDL có thể đƣợc phân chia theo chức năng hay lớp các bài toán khác nhau [7] nhƣ sau: - Phân lớp và dự đoán (classicfication and prediction): Xếp một đối tƣợng vào một trong những lớp đã biết trƣớc. Ví dụ: Phân lớp các bệnh nhân theo dữ liệu trong hồ sơ bệnh án. Hƣớng tiếp cận này thƣờng sử dụng các kỹ thuật nhƣ học máy (Machine learning), cây quyết định (Decision tree), mạng nơ ron nhân tạo (Neural network) Với phƣơng pháp này còn đƣợc gọi là học có giám sát. - Luật kết hợp (Association rules): Là dạng luật biểu diễn tri thức ở dạng khá đơn giản. Mục tiêu của phƣơng pháp này là phát hiện và đƣa ra các mối liên hệ giữa các giá trị dữ liệu trong cơ sở dữ liệu. Luật kết hợp đƣợc ứng dụng nhiều trong lĩnh vực kinh doanh, y học, tin – sinh học, tài chính, thị trƣờng chứng khoán - Khai phá chuỗi theo thời gian (Sequential temporal patterns): Tƣơng tự nhƣ khai phá dữ liệu bằng luật kết hợp nhƣng có thêm tính thứ tự và tính thời gian. Hƣớng tiếp cận này đƣợ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. - Phân cụm và phân đoạn (Clusterring and Segmentation): Sắp xếp các đối tƣợng theo từng cụm dữ liệu tự nhiên (số lƣợng và tên của cụm chƣa đƣợc biết trƣớc). Các đối tƣợng đƣợc gom cụm sao cho mức độ tƣơng tự giữa các đối tƣợng trong cùng một cụm là lớn nhất và mức độ tƣơng tự giữa các [...]... LIỆU BẰNG LUẬT KẾT HỢP 3.1 Mở đầu Khai phá luật kết hợp là phát hiện những mối quan hệ giữa các giá trị dữ liệu trong CSDL, các mối quan hệ đó chính là luật kết hợp Nhƣ đã trình bày khai phá luật kết hợp có hai pha: Pha 1 tìm tất cả các tập mục thƣờng xuyên thoả mãn ngƣỡng độ hỗ trợ tối thiểu minsup cho trƣớc; pha 2 tìm các luật kết hợp từ các tập mục thƣờng xuyên tìm đƣợc, sinh ra các luật kết hợp thoả... Apriori “Bất kỳ tập con nào của tập mục thường xuyên cũng phải là tập mục thường xuyên Vì vậy các tập mục ứng viên gồm k mục có thể đƣợc sinh ra bằng cách kết nối các tập mục thƣờng xuyên có (k-1) mục và loại bỏ tập mục ứng viên có chứa bất kỳ một tập con nào không phải là thƣờng xuyên Thuật toán duyệt cơ sở dữ liệu nhiều lần Mỗi lần duyệt, thuật toán thực hiện hai bƣớc: Bƣớc kết nối và bƣớc tỉa Trong... các tập đã sinh Kết quả kết nối l1 và l2 là: (l1[1],l1[2], ,l1[k-2],l1[k-1],l2[k-1]) - Bƣớc tỉa (prune): Tập Ck chứa tập Lk, tức là tất cả các k -tập mục thƣờng xuyên đều thuộc tập Ck Tập Ck có thể là rất lớn dẫn đến khối lƣợng tính toán lớn Thuật toán áp dụng tính chất Apriori để rút gọn tập C k: “Bất kỳ một tập (k-1) -tập mục không thường xuyên thì nó không thể là tập con của tập k -tập mục thường xuyên ... Tìm các tập mục ứng viên và các tập mục thƣờng xuyên Tập các ứng viên là tập mục mà có thể hy vọng nó là tập thƣờng xuyên Tập mục thƣờng xuyên là tập mục có độ hỗ trợ lớn hơn hoặc bằng ngƣỡng hỗ trợ tối thiểu cho trƣớc Có nhiều thuật toán tìm tập mục thƣờng xuyên, ta có thể phân chúng theo hai tiêu chí sau: - Phƣơng pháp duyệt qua không gian tìm kiếm - Phƣơng pháp xác định độ hỗ trợ của tập mục Phƣơng... min conf đƣợc gọi là luật kết hợp mạnh 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 16 2.2 Khai phá tập mục thƣờng xuyên và mở rộng 2.2.1 Khai phá tập mục thường xuyên Các nghiên cứu về khai phá tập mục thƣờng xuyên tập trung vào tìm các thuật toán mới hoặc đề xuất giải pháp nâng cao hiệu quả các thuật toán đã có Bài toán khai phá tập mục thƣờng xuyên có thể chia thành... toán nối hai (k-1) -tập mục để sinh ra k -tập mục, sử dụng tính chất Apriori để tỉa các tập ứng viên Bƣớc kết nối và bƣớc tỉa thực hiện nhƣ sau: - Bƣớc kết nối (join): Tập các k -tập mục ứng viên Ck đƣợc sinh ra bởi việc kết nối Lk-1 với chính nó Giả sử các mục của các tập mục đã đƣợc sắp xếp theo thứ tự từ điển Hai tập mục l1 và l2 của Lk-1 đƣợc nối nếu chúng có k-2 mục dữ liệu bằng nhau, mục dữ liệu thứ... cả các tập mục thƣờng xuyên từ CSDL nghĩa là tìm tất cả các tập mục X thoả mãn s(X) ≥ minsup Đây là pha tốn khá nhiều thời gian của CPU và thời gian vào ra ổ đĩa Pha 2: Sinh các luật tin cậy từ các tập mục thƣờng xuyên tìm thấy ở pha 1 Pha này tƣơng đối đơn giản và tốn ít thời gian hơn so với pha 1 Nếu X là tập thƣờng xuyên, luật kết hợp đƣợc sinh từ X có dạng X c Y , với YX,  Y≠ và YX= và c là... từ tập mục thƣờng xuyên BCE 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 20 2.4 Một số tính chất của tập mục thƣờng xuyên và luật kết hợp 2.4.1 Một số tính chất của tập mục thường xuyên - Tính chất 1: Độ hỗ trợ của tập con Nếu X  Y, (X, Y là các tập mục) thì s(X) ≥ s(Y) Chứng minh: Tất cả các tác vụ đều nằm trong D  Điều phải chứng minh - Tính chất 2: Một tập chứa tập. .. mẫu trên cây; Thuật toán khai phá tập mục cổ phần cao FSM và AFSM để đánh giá mức độ đóng góp của tập mục trong CSDL và khám phá tất cả các tập mục có cổ phần không nhỏ hơn ngƣỡng quy định 3.2 Thuật toán APRIORI khai phá tập mục thƣờng xuyên 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 [10] Thuật toán tìm các tập mục có độ hỗ trợ thỏa mãn lớn hơn... tƣởng và thuật toán Apriori là nền tảng cho việc phát triển nhiều thuật toán khai phá tập mục thƣờng xuyên sau này Một số ký hiệu dùng để mô tả thuật toán Ký hiệu k-intemset Ý nghĩa Tập mục có k mục Tập các tập k-itemset thƣờng xuyên (với độ hỗ trợ minsup Lk nào đó) Mỗi phần tử của tập có hai trƣờng: - Tập mục (itemsets) - Độ hỗ trợ (count) Tập các tập k-itemset ứng cử (gọi là tập các tập thƣờng Ck xuyên . tôi chọn đề tài Nghiên cứu tập mục thường xuyên và luật kết hợp . Luận văn đƣợc xây dựng dựa trên một số nghiên cứu trong lĩnh vực khai phá tập mục thƣờng xuyên và luật kết hợp trong những. Tập mục và độ hỗ trợ 14 2.1.3. Tập mục thƣờng xuyên (Frequent intemset) 14 2.1.4. Luật kết hợp (Association Rule) 15 2.2. Khai phá tập mục thƣờng xuyên và mở rộng 16 2.2.1. Khai phá tập mục. phá tập mục thƣờng xuyên 16 2.2.2. Mở rộng bài toán khai phá tập mục thƣờng xuyên 17 2.3. Khai phá luật kết hợp 18 2.4. Một số tính chất của tập mục thƣờng xuyên và luật kết hợp 20 2.4.1. Một

Ngày đăng: 07/10/2014, 09:14

Từ khóa liên quan

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

Tài liệu liên quan