Khai phá dữ liệu và thuật toán khai phá luật kết hợp song song

43 326 0
Khai phá dữ liệu và thuật toán khai phá luật kết hợp song song

Đ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

ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN  - LỜI CẢM ƠN Xin chân thành cảm ơn Thầy giáo PGS.TS Đoàn Văn Ban tận tình dạy hướng dẫn suốt thời gian học tập làm luận văn Tôi xin xin lời biết ơn chân thành đến quý Thầy giáo, cô giáo Viện Công nghệ Thông tận tình giảng dạy, trang bị cho kiến thức quý báu suốt trình học tập Khoa LÊ THỊ VIỆT HOA Xin cảm ơn tất anh chị em học viên Cao học khóa 5, cám ơn cán công chức, giảng viên – Khoa Công nghệ Thông tin - Đại học Thái Nguyên tạo điều kiện giúp đỡ suốt trình học tập làm luận văn Cuối xin cảm ơn gia đình, bạn bè, đồng nghiệp giúp đỡ KHAI PHÁ DỮ LIỆU VÀ THUẬT TOÁN KHAI PHÁ LUẬT KẾT HỢP SONG SONG suốt thời gian học tập hoàn thành luận văn Thái Nguyên, tháng năm 2008 Tác giả Lê Thị Việt Hoa Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số : 60.48.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hướng dẫn khoa học: PGS.TS ĐOÀN VĂN BAN THÁI NGUYÊN 2008 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn http://www.lrc-tnu.edu.vn MỤC LỤC Trang phụ bìa Trang Lời cám ơn Lời cam đoan Mục lục Danh mục kí hiệu, chữ viết tắt LỜI CAM ĐOAN Danh mục hình vẽ Tôi xin cam đoan đề tài khoa học “Khai phá liệu thuật toán khai phá luật kết hợp song song ” công trình nghiên ứu c thân Các số liệu kết nghiên cứu nêu luận văn trung thực, tác giả cho phép sử dụng tài liệu tham khảo trình bày luận văn Tôi xin chịu trách nhiệm luận văn Mở đầu Chương 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 1.1 Khái niệm 1.2 Kiến trúc hệ thống khai phá liệu 1.3 Các giai đoạn trình khai phá liệu 1.4 Một số kỹ thuật khai phá liệu 1.5 Các sở liệu phục vụ cho khai phá liệu 10 1.6 Các phương pháp khai phá liệu 11 1.7 Các ứng dụng khai phá liệu 13 1.8 Khai phá liệu lĩnh vực liên quan 14 1.9 Các thách thức phát tri thức khai phá liệu 15 1.10 Kết luận chương 16 Chương 2: KHAI PHÁ LUẬT KẾT HỢP TRONG CƠ SỞ DỮ LIỆU 17 2.2 Luật kết hợp 18 2.2.1 Các khái niệm 18 2.2.2 Khai phá luật kết hợp 21 2.2.3 Cách tiếp cận khai phá luật kết hợp 22 2.3 Luật kết hợp sở Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 17 2.1 Mở đầu 24 2.3.1 Phát tập mục phổ biến 24 2.3.2 Sinh luật kết hợp 30 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 2.4 Khai phá luật kết hợp với số khái niệm mở rộng DANH MỤC CÁC KÝ HIỆU VIẾT TẮT 32 2.4.1 Giới thiệu 32 2.4.2 Khai phá luật kết hợp trọng số 32 Ck Tập k-itemset ứng viên 43 Ck Tập k-itemset ứng viên mà TID giao dịch sinh Conf Độ tin cậy (Confidence) CFPT FP-Tree điều kiện sở (Fisst conditional FP-Tree) 50 D Cơ sở liệu giao dịch 3.2 Hư ớng tiếp cận thiết kế thuật toán khai phá luật kết hợp song song 51 Di Phần thứ i sở liệu D Item Mục Itemset Tập mục 2.4.3 Khai phá luật kết hợp tổng quát 2.5 Kết luận chương 49 Chương 3: MỘT SỐ PHƯƠNG PHÁP KHAI PHÁ LUẬT KẾT HỢP SONG SONG VÀ PHÂN TÍCH ĐÁNH GIÁ CÁC THUẬT TOÁN 3.1 Nguyên lý thiết kế thuật toán song song 50 Diễn giải Ký hiệu liên kết với tập mục ứng viên 3.2.1 Mô hình song song liệu 51 3.2.2 Mô hình song song thao tác 51 I Tập mục 52 KDD Phát tri thức sở liệu (Knowledge Discovery in Database) CSDL Cơ sở liệu (Database) k-itemset Tập mục gồm k mục 3.3 Một số thuật toán khai phá luật kết hợp song song 3.3.1 Thuật toán Count Distribution (CD) 52 3.3.2 Thuật toán Data Distribution (DD) 54 3.3.3 Thuật toán Candidate Distribution 58 Lk Tập k-itemset phổ biến 3.3.4 Thuật toán song song Fp-Growth 60 MPI Truyền thông điệp 65 minconf Ngưỡng tin cậy tối thiểu minsup Ngưỡng hỗ trợ tối thiểu OLAP Phân tích trực tuyến 3.3.5 Thuật toán song song Eclat 3.4 Phân tích, đánh giá so sánh việc thực thuật toán 71 3.4.1 Phân tích đánh giá thuật toán song song 71 OLTP Xử lý giao dịch trực tuyến 3.4.2 So sánh việc thực thuật toán 73 SC Số đếm hỗ trợ (support count) 74 sup Độ hỗ trợ (support) T Giao dịch (transaction) Tid Định danh giao dịch Tid-List Danh sách định danh giao dịch X ⇒Y Luật kết hợp (với X tiền đề, Y hệ quả) 3.5 Kết luận chương Kết luận 75 Tài liệu tham khảo 77 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn MỞ ĐẦU DANH MỤC HÌNH VẼ VÀ BẢNG Trang Với bùng nổ phát triển công nghệ thông tin mang lại nhiều hiệu khoa học hoạt động thực tế, khai phá Hình 1.1 Khám phá tri thức sở liệu điển hình Hình 1.2 Các bước quy trình khai phá liệu Hình 1.3: Cây định Hình 1.4: Mẫu kết nhiệm vụ phân cụm liệu Hình 1.5: Mẫu kết nhiệm vụ hồi quy chứa đựng nhiều thông tin tiềm ẩn, phong phú đa dạng, đòi hỏi phải có phương pháp nhanh, phù hợp, xác, hiệu để lấy Hình 1.6: Một số lĩnh vực liên quan đến khai phá liệu 14 thông tin bổ ích Những “ tri thức” chiết suất từ nguồn sở liệu Hình 2.1 Sơ đồ tổng quan thuật toán khai phá tập mục phổ biến 24 Hình 2.2: Ví dụ thuật toán Apriori 28 Bảng 2.1.a Thông tin cửa hàng bán lẻ 33 Bảng 2.1.b Tập giao dịch D cửa hàng 33 Hình 3.1 Mô hình song song liệu 51 Hình 3.2 Mô hình song song thao tác 52 Hình 3.3 Sơ đồ thuật toán Count Distribution 52 Hình 3.4 Phát hi ện tập mục phổ biến thuật toán song song CD 54 Hình 3.5 Sơ đồ mô tả thuật toán Data Distribution 55 Hình 3.6: Sơ đồ luồng thuật toán Data Distribution 56 Hình 3.7: Phát hi ện tập mục phổ biến thuật toán song song DD 57 Hình 3.8: Các phân hoạch CSDL FP-Tree cục ban đầu 61 Bảng 3.1: Các mẫu điều kiện sở FP-Tree điều kiện sở 62 Hình 3.9: Quá trình sinh tập phổ biến xử lý P1 P2 63 Hình 3.10: Quá trình chuyển đổi CSDL theo chiều dọc 70 liệu lĩnh vực mang lại hiệu thiết thực cho người Khai phá liệu giúp người sử dụng thu tri thức hữu ích từ sở liệu kho liệu khổng lồ khác Cơ sở liệu đơn vị, tổ chức kinh doanh, quản lý khoa học nguồn thông tin hỗ trợ cho lãnh đạo việc lên kế hoạch hoạt động việc định sản xuất kinh doanh T iến hành công việc thực trình phát tri thức sở liệu (Knowledge Discovery in Database) mà kỹ thuật khai phá liệu (Data Mining) cho phép phát tri thức tiềm ẩn Để lấy thông tin mang tính tri thức khối liệu khổng lồ, cần thiết phải phát triển kỹ thuật có khả tích hợp liệu từ hệ thống giao dịch khác nhau, chuyển chúng thành tập hợp sở liệu ổn định có chất lượng Các kỹ thuật gọi kỹ thuật tạo kho liệu môi trường liệu nhận áp dụng kỹ thuật tạo kho liệu nói gọi kho liệu (Data Warehouse) [19, 24] Một nội dung khai phá liệu phổ biến phát luật kế t hợp Phương pháp nhằm tìm tập thuộc tính thường xuất đồng thời sở liệu rút luật ảnh hưởng tập thuộc tính dẫn đến xuất (hoặc tập) thuộc tính khác Bên cạnh đó, nhu cầu song s ong hóa xử lý phân tán cần thiết kích thước lưu trữ liệu ngày nhiều nên đòi hỏi tốc độ xử lý dung lượng nhớ hệ thống phải đảm bảo Vì thế, yêu cầu cần có thuật toán song song hiệu cho việc phát luật kết hợp Ứng dụng khai phá liệu mang lại lợi ích to lớn việc tổng hợp cung cấp thông tin nguồn sở liệu lớn Hơn nhu cầu song song hóa xử lý phân tán cần thiết kích Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn thước d ữ liệu lưu trữ ngày lớn nên đòi hỏi tốc độ xử lý dung lượng nhớ hệ thống phải đảm bảo Vì thế, yêu cầu cần có thuật toán Chương TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU song song hiệu cho luật kết hợp Phương pháp nghiên cứu luận văn tổng hợp kết dự a báo khoa ọc h số hội thảo quốc tế báo chuyên ngành, từ trình bày vấn đề khai phá liệu xây dựng số thuật toán khai phá luật kết hợp song song Nội dung luận văn trình bày chương phần kết luận Chương 1: Tổng quan khai phá liệu: Giới thiệu tổng quan trình khai phá liệu, kho liệu khai phá liệu; kiến trúc hệ thống khai phá liệu; Nhiệm vụ phương pháp khai phá liệu Chương 2: Khai phá luật kết hợp song song: Chương trì nh bày tổng quan luật kết hợp; phát biểu toán khai phá liệu, phát luật kết hợp; khái niệm luật kết hợp phương pháp khai phá luật kết hợp; khai phá luật kết hợp với số khái niệm mở rộng Chương 3: Một số phương pháp khai phá luật kết hợp song song phân tích đánh giá thuật toán song song Thái Nguyên 01 tháng 10 năm 2008 1.1 Khái niệm Khai phá liệu khái niệm đời vào năm cuối thập kỷ 80, trình tìm kiếm, khám phá d ưới nhiều góc độ khác nhằm phát mối liên hệ, quan hệ liệu, đối tượng bên CSDL, kết việc khai phá xác định mẫu hay mô hình tồn bên chúng nằm ẩn CSDL [3] Về chất giai đoạn rút trích tìm mẫu, mô hình hay thông tin mới, tri thức tiềm ẩn có CSDL chủ yếu phục vụ cho mô tả dự đoán Đây giai đoạn quan trọng trình phát tri thức từ CSDL, tri thức hỗ trợ việc định, điều hành khoa học kinh doanh Khai phá liệu tiến trình khám phá tri thức tiềm ẩn CSDL, cụ thể hơn, tiến trình lọc, sản sinh tri thức mẫu tiềm ẩn, chưa biết thông tin hữu ích từ CSDL lớn 1.2 Kiến trúc hệ thống khai phá liệu Khai phá d ữ liệu trình rút trích thông tin bổ ích từnhững kho liệu lớn Khai phá d ữ liệu quátrình khai phá tri th ức từ s liệu Kiến trúc hệ thống khai phá liệu có thành [2] phần sau: Tác giả Lê Thị Việt Hoa Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Hình 1.1 Khám phá tri thức sở liệu điển hình Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn • CSDL, kho liệu lưu trữ thông tin khác: Đây hay tập CSDL, liệu, trang tính hay dạng khác thông tin lưu trữ nạp hết liệu vào nhớ mà khó chiết xuất liệu tệp đơn giản để phân tích Các kỹ thuật làm sách liệu tích hợp liệu thực Thống kê tóm tắt • Máy chủ CSDL (Database or Warehouse Server): Máy chủ có trách nhiệm lấy liệu thích hợp dựa yêu cầu khám phá người dùng • Cơ sở tri thức (Knowledge-base): Đây miền tri thức dùng để tìm kiếm hay đánh giá độ quan trọng mẫu kết thu Tri thức bao gồm phân cấp khái niệm dùng để tổ chức thuộc tính hay giá trị thuộc tính mức trừu tượng khác • Máy khai phá liệu (Data mining engine): hệ thống khai phá liệu cần phải có tập Modul chức để thực công việc, chẳng hạn kết hợp, phân lớp, phân cụm • Modul đánh giá mẫu ( Pattern evaluation): Bộ phận tương tác với Modul khai phá liệu để tập trung vào việc duyệt tìm mẫu đáng quan Xác định nhiệm vụ Xác định liệu liên quan Thu thập tiền xử lý liệu Giải thuật khai phá liệu Mẫu DL trực tiếp Hình 1.2 Các bước quy trình khai phá liệu Quá trình xử lý khai phá liệu bắt đầu việc xác định xác vấn đề cần giải Sau xác định liệu liên quan dùng để xây dựng giải pháp Tiếp theo thu thập liệu có liên quan xử lý chúng thành dạng cho thuật toán khai phá liệu hiểu tâm Nó dùng ngưỡng độ quan tâm để lọc mẫu khám phá Quá trình khai phá liệu [2] trải qua ba bước: Cũng Modul đánh giá mẫu tích hợp vào Modul khai phá liệu, Bước một: Lọc liệu thực trình tiền xử lý Công tùy theo cách cài đặt phương pháp khai phá liệu dùng việc tích hợp chỉnh sửa liệu Khi liệu thu thập từ nhiều • Giao diện đồ họa cho người dùng ( Graphical user interface) Bộ phận nguồn khác nên có sai sót, dư thừa trùng lặp Lọc cho phép người dùng giao tiếp với hệ thống khai phá liệu Thông qua liệu cắt bỏ dư thừa để liệu định dạng thống Dữ liệu sau giao diện người dùng tương tác với hệ thống cách đặc tả yêu cầu lọc chỉnh sửa nhỏ hơn, xử lý nhanh chóng khai phá hay nhiệm vụ, c ung cấp thông tin trợ giúp cho việc tìm kiếm Ví dụ, toán tìm quy luật mua hàng khách hàng thực khai phá thăm dò kết khai phá trung gian Ngoài siêu thị, ta tìm xem khách hàng thường mua mặt hàng để phận cho phép người dùng xem lược đồ CSDL, lược đồ kho liệu, đánh giá mẫu hiển thị mẫu khuôn dạng khác 1.3 Các giai đoạn trình khai phá liệu Các thuật toán khai phá liệu thường mô tả chương trình hoạt động trực tiếp tệp liệu Với phương pháp học máy thống kê trước đây, bước thuật toán thường nạp toàn tệp (file) liệu vào nhớ Khi chuyển sang ứng dụng công nghiệp liên quan đến việc khai phá kho liệu lớn, mô hình đáp ứng Không Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn xếp hàng gần Từ liệu nguồn siêu thị cung cấp, có nhiều thuộc tính không cần thiết cho khai phá liệu như: Mã khách hàng, nhà cung cấp, đơn giá hàng, người bán hàng… Các liệu cần cho quản lý bán hàng không cần cho khai phá liệu, ta loại bỏ thuộc tính khỏi liệu trước khai phá liệu Bước hai: Khai phá liệu, công việc chính, sử dụng thuật toán khác để khai phá kiến thức tiềm ẩn liệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Bước ba: Sau xử lý, trình ước lượng kết khai phá theo yêu cầu Một kỹ thuật phân lớp liệu Han Kamber đưa định người dùng Nhiều kỹ thuật khai phá liệu ứng dụng cho nguồn Mỗi nút đại diện định dựa vào giá trị thuộc tính tương ứng Kỹ liệu, kỹ thuật cho kết khác Các kết ước lượng thuật nhiều tác giả nghiên cứu đưa nhiều thuật toán quy tắc đó, cuối kết không thỏa mãn yêu cầu, Một ví dụ tiêu biểu định: phải làm lại với kỹ thuật khác có kết mong muốn Tuổi 1.4 Một số kỹ thuật khai phá liệu 30-35 TID Mục đích khai phá liệu chiết xuất tri thức có lợi cho kinh doanh hay cho nghiên cứu khoa học… Do đó, ta xem mục đích khai >35 Giáo sư Yes Sinh viên phá liệu mô tả kiện dự đoán Các mẫu khai phá liệu phát nhằm vào mục đích Dự đoán liên quan đến việc sử dụng biến Yes đối tượng (bản ghi) CSDL để chiết xuất mẫu, dự đoán giá trị chưa biết giá trị tương lai biến đáng quan tâm Mô tả tập trung vào việc tìm kiếm mẫu mô tả liệu mà người hiểu Để đạt mục đích này, nhiệm vụ khai phá liệu bao gồm sau: Yes No No Hình 1.3: Cây định Trong hình 1.3 định cho lớp mua laptop, khách hàng mua hay không m ua laptop Mỗi nút đại diện lớp mà đánh giá mua laptop Yes hay No Sau mô hình xây dựng, dự đoán việc mua laptop hay không dựa vào thuộc tính khách hàng tuổi nghề nghiệp Cây định ứng dụng rộng rãi nhiều hoạt động đời sống thực Phân lớp liệu [24] Khái niệm phân lớp liệu Han Kamber đưa năm 2000 Phân lớp liệu xây dựng mô hình mà phân đối tượng thành lớp để dự đoán giá trị bị số thuộc tính liệu hay tiên đoán giá trị liệu xuất tương lai Quá trình phân lớp li ệu thực qua hai bước Bước thứ nhất: Dựa vào tập hợp liệu huấn luyện, xây dựng mô hình mô tả đặc Phân nhóm liệu [13, 24] Phân nhóm kỹ thuật khai phá liệu tương tự phân lớp liệu Tuy nhiên, phân nhóm liệu trình học không giám sát, trình nhóm nhữn g đối tượng vào lớp tương đương, đến đối tượng nhóm tương đương nhau, chúng phải khác với đối tượng nhóm khác Trong phân lớp liệu, ghi thuộc lớp phải xác định trước, phân nhóm không xác định trước trưng lớp liệu khái niệm, trình học có giám Trong phân nhóm, đối tượng nhóm lại dựa vào giống sát, học theo mẫu cung cấp trước Bước thứ hai: Từ lớp liệu chúng Sự giống đối tượng xác định những khái niệm xác định trước, dự đoán giá trị đối chức giống Thông thường giống định lượng tượng quan tâm khoảng cách độ đo khác xác định chuyên gia lĩnh vực Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Ứng dụng hồi quy nhiều, ví dụ: dự đoán số lượng sinh vật phát Nợ nhóm + + + + + + + nhóm + + + + + quảng cáo… hình 1.5 mẫu kết hồi quy tuyến tính đơn giản, tổng + + từ xa; dự đoán khả tử vong bệnh nhân biết kết xét nghiệm chuẩn đoán; dự đoán nhu cầu tiêu thụ sản phẩm hàm chi tiêu + + + + + + + + + + quang thời rừng cách dò tìm vi sóng thiết bị cảm biến số nợ điều chỉnh cho phù hợp giống hàm thu nhập tuyến tính nhóm Thu nhập Hình 1.4: Mẫu kết nhiệm vụ phân cụm liệu Đa số ứng dụng phân nhóm sử dụng phân chia thị trường Với phân nhóm khách hàng vào nhóm, doanh nghiệp cung cấp dịch vụ khác tới nhóm khách hàng cách thuận lợi Ví dụ, dựa vào chi tiêu, số tiền tài khoản việc rút tiền khách hàng, ngân hàng xếp khách hàng vào nhóm khác Việc điều chỉnh không đáng kết tồn tương quan yếu hai biến Tổng hợp (summarization): Là công việc liên quan đến phương pháp tìm kiếm mô tả cô đọng cho tập liệu [23, 24] Các kỹ thuật tổng hợp thường áp dụng việc phân tích liệu có tính thăm dò báo cáo tự động Mô hình hóa phụ thuộc (dependency modeling): Là việc tìm kiếm mô hình mô Với nhóm, ngân hàng cho vay khoản tiền tương ứng cho việc mua nhà, mua xe, … Trong trư ờng hợp ngân hàng cung cấp tả phụ thuộc quan trọng biến Mô hình phụ thuộc tồn hai mức: dịch vụ tốt hơn, chắn tất khoản tiền cho vay thu hồi Ta tham khảo khảo sát toàn diện kỹ thuật thuật thuộc cục vào biến khác;  Mức định lượng mô hình xác định mức toán phân nhóm  Mức cấu trúc mô hình (thường dạng đồ thị) xác định biến phụ độ phụ thuộc biến [13, 24] Những phụ thuộc thường biểu thị dạng luật Hồi qui (Regression): Là việc học hàm ánh xạ từ tập liệu thành biến dự đoán có giá trị thực Nhiệm vụ hồi qui tương tự phân lớp, điểm khác chỗ thuộc t ính để dự báo liên tục không rời rạc [13, 23] Việc dự báo giá trị số thường làm phương pháp thống kê cổ điểm chẳng hạn hồi qui tuyến tính Tuy nhiên, phương pháp mô hình hóa sử dụng [13, 24] Nợ đường hồi quy tuyến tính + 0 + 0 + + + + + + 0 Phát thay đổi độ lệch (change and deviation dectection): Nhiệm vụ tập trung vào khám phá thay đổi có ý nghĩa liệu dựa vào giá trị chuẩn hay độ đo biết trước, phát độ lệch đáng kể nội dung tập liệu nội dung mong đợi Hai mô hình độ lệch thường dùng lệch theo thời gian lệch theo nhóm Độ lệch theo thời gian thay đổi có liệu hai tập liệu, tính trường hợp tập đối tượng 0 trọng số liên kết phụ thuộc nút nghĩa liệu theo thời gian Độ lệch theo nhóm khác + Quan hệ phụ thuộc biểu diễn dạng mạng tin cậy [24] Đó đồ thị có hướng dạng chu trình, nút biểu diễn thuộc tính thuộc tập kia, nghĩa xác định liệu nhóm đối tượng 0 có khác đáng kể so với toàn đối tượng [13, 24] Thu nhập Hình 1.5: Mẫu kết nhiệm vụ hồi quy Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn khai phá luật kết hợp không gian tương tự khai phá luật kết hợp thêm 1.5 Các sở liệu phục vụ cho khai phá liệu Dựa vào kiểu liệu mà kỹ thuật khai phá áp dụng, chia vị từ không gian Cơ sở liệu có yếu tố thời gian liệu thành loại khác Giống sở liệu không gian, sở liệu có yếu tố thời gian bao Cơ sở liệu quan hệ Đến nay, hầu hết liệu lưu giữ dạng sở liệu quan hệ Cơ sở liệu quan hệ nguồn tài nguyên lớn chứa đối tượng mà cần khai phá Cơ sở liệu quan hệ có cấu trúc cao, liệu mô tả tập thuộc tính lưu bảng Khai phá liệu sở liệu quan hệ chủ yếu tập trung khai phá mẫu Ví dụ, sở liệu ngân hàng, ta tìm khách hàng có mức chi tiêu cao, ta phân loại khách hàng dựa vào trình chi tiêu họ Cũng với việc phân tích mục chi tiêu khách hàng, cung cấp số thông tin khách hàng đến doanh nghiệp khác Giả sử khách hàng chi tháng 500 đô la cho thời trang, phép, ngân hàng cung cấp thông tin khách hàng cho cửa hàng thời trang Cơ sở liệu giao tác Cơ sở liệu giao tác tập hợp ghi giao dịch, đa số trường hợp chúng ghi liệu hoạt động doanh nghiệp, tổ chức Với tính phổ biến máy tính thương mại điện tử, ngày có nhiều sở liệu giao tác Khai phá liệu sở liệu giao tác tập trung vào khai phá luật kết hợp, tìm mối tương quan mục liệu gồm hai phần: Phần thứ liệu quan hệ hay giao tác, phần thứ hai thông tin thời gian xuất liệu phần thứ Những luật kết hợp có yếu tố thời gian có nhiều thông tin luật kết hợp Ví dụ, từ luật kết hợp {Bia} ⇒ {Thuốc lá}, với liệu có yếu tố thời gian có nhiều luật: Độ hỗ trợ luật {Bia} ⇒ {Thuốc lá} 20% từ đến 13 giờ, 50% thời gian 19 tới 22 Rõ ràng rằng, người bán lẻ xác định chiến lược để buôn bán tốt Hầu hết nghiên cứu lĩnh vực ngày hình thành hướng khai phá liệu gọi khai phá mẫu lặp liên tục, khai phá tập mục liệu thường xuyên sở liệu thời gian Cơ sở liệu đa phương tiện Số lượng trang web bùng nổ giới, web có mặt khắp nơi, duyệt web nhu cầu tầng lớp xã hội Thông tin web phát triển với tốc độ cao, khai phá thông tin web (web mining) đ ã trở thành lĩnh vực nghiên cứu khai phá liệu, nhà nghiên cứu đặc biệt quan tâm Khai phá d ữ liệu web thông thường chia thành ba phạm trù chính: Khai phá cách dùng web (web usage mining), khai phá c ấu trúc web (web structure mining) khai phá n ội dung web (web content mining) Khai phá cách dùng web tập trung vào việc khai phá thông tin người tiết phần sau truy nhập web Với thông tin người khai phá liệu cung cấp thông tin hữu ích cho người dùng nhà kinh doanh Cơ sở liệu không gian 1.6 Các phương pháp khai phá d ữ liệu ghi giao dịch Nghiên cứu sâu sở liệu giao tác mô tả chi Cơ sở liệu không gian bao gồm hai phần: Phần thứ liệu quan hệ hay giao tác, phần thứ hai thông tin định vị thông tin địa lý Những luật kết hợp sở liệu không gian mô tả mối quan hệ đặc trưng sở liệu không gian Dạng luật kết hợp không gian có • Phân lớp dự đoán (Classification & Prediction) Xếp đối tượng vào lớp đa biết Ví dụ : phân lp vùng địa lý theo liệu thời tiết Đối với hướng tiếp cận thường áp dụng số kỹ thuật học máy (Machine learning), định (Decision dạng X ⇒ Y, với X, Y tập hợp vị từ không gian Những thuật toán Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 10 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 11 http://www.lrc-tnu.edu.vn tree), mạng nơron nhân tạo (Neural network) Với hướng này, người ta gọi học có giám sát hạy học có thầy (Supervised learning) • Phân cụm phân đoạn (Clusterring and Segmentation) Sắp xếp đối tượng theo cụm (số lượng tên cụm chưa biết trước) Các đối tượng gom cụm cho mức độ tương tự đối tượng cụm lớn mức độ tương tự đối tượng nằm cụm khác nhỏ Lớp toán phân cụm gọi học không giám sát hạy học không thầy quảng cáo, tiếp thị, quản lý hàng tồn kho dự trữ hàng Các luật kết hợp sử dụng cho ứng dụng khác dự đoán lỗi, cho mạng điện thoại việc xác định kiện xuất trước • Khai phá chuỗi theo thời gian (Sequential temporal patterns) Cũng tương tự khai phá liệu luật kết hợp có thêm tính thứ tự tính thời gian Hướng tiếp cận ứng dụng nhiều lĩnh vực tài thị trường chứng khoán chúng có tính dự báo cao • Mô tả khái niệm tổng hợp hóa (Summarization) • Luật kết hợp (Association rules) Luật kết hợp dạng luật biểu diễn tri thức dạng đơn giản Mục tiêu phương pháp phát đưa mối liên hệ giá trị liệu sở liệu Mẫu đầu giải thuật khai phá liệu tập luật kết hợp tìm Ví dụ luật kết hợp: Một cửa hàng bán văn phòng phẩm đăng thông tin quảng cáo tuần tờ báo địa phương Khi mặt hàng, chẳng hạn mực in định bán giảm giá, người bán hàng xác định mặt hàng khác mua lúc với mực in Họ thấy giấy A4 mực in khách hàng mua chiếm 30% kẹp giấy mua kèm với mực in 40% Dựa vào mối quan hệ này, người bán hàng bày bán giấy A4 kẹp giấy gần với mặt hàng mực in bán giảm giá Họ định không đưa mặt hàng vào danh sách mặt hàng giảm giá Các hành động nhằm mục đích tăng thêm toàn khối lượng hàng bán việc bán mặt hàng mua mực in Liên quan đế n phương pháp tìm kiếm mô tả cho tập liệu Các kỹ thuật toán tắt thường áp dụng cho phân tích liệu tương tác có tính thăm dò tạo báo cáo tự động 1.7 Các ứng dụng khai phá liệu Khai phá liệu lĩnh vực thu hút quan tâm nhiều nhà nghiên cứu, nhờ có nhiều ứng dụng thực tiễn, ứng dụng điển hình, liệt kê sau: - Phân tích liệu hỗ trợ định (Analysis & decition support) - Điều trị y học (Medical): mối liên hệ triệu chứng, chuẩn đoán phương pháp điều trị (chế độ dinh dưỡng, thuốc men, phẫu thuật) - Phân lớp văn bản, tóm tắt văn phân lớp trang Web (Text mining & Web mining) - Tin sinh học (Bio-informatics): Tìm kiếm, đối sánh hệ gen thông tin di truyền, mối liên hệ số hệ gen số bệnh di truyền - Nhận dạng Có luật kết hợp đề cập ví dụ Luật thứ là: “30% khách hàng mua mực in lẫn giấy A4 ” Luật thứ hai là: “40% khách hàng mua mực - Tài thị trường chứng khoán (Finance & stock market): Phân tích tình hình tài dự đoán giá cổ phiếu in mua kẹ p giấy” Các luậ t kết hợp thường sử dụng - Bảo hiểm (Insurance) cửa hàng bán lẻ để phân tích giao dịch cửa hàng Đối với người quan lý - Giáo dục (Education) kinh doanh, luậ t kết hợp phát dùng chiến dịch Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 12 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 13 http://www.lrc-tnu.edu.vn 3.2 Hư ớng tiếp cận thiết kế thuật toán khai phá luật kết hợp song song Chương MỘT SỐ PHƯƠNG PHÁP KHAI PHÁ LU ẬT KẾT HỢP SONG SONG VÀ PH ÂN T ÍCH Đ ÁNH GI Á CÁC THUẬT TOÁN Hai hư ớng tiếp cận thi ết kế thuật toán khai phá luật ếkt hợp song song là: (1) Mô h ình song song d ữ liệu (2) Mô hình song song thao tác 3.2.1 Mô hình song song liệu 3.1 Nguyên lý thiết kế thuật toán song song Bộ xử lý Những thuật toán, có số thao tác thực đồng thời Tập DL 1.1 Thao tác gọi thuật toán song song Tổng quát hơn, thuật toán song song tập tiến trình tác vụ thực đồng thời trao đổi liệu với để kết hợp giải toán đặt [1] Thao tác Có năm nguyên lý việc thiết kế thuật toán song so ng: Các nguyên lý lập lịch: Giảm thiểu xử lý sử dụng thuật toán cho thời gian tính toán không tăng (xét theo khía cạnh độ phức tạp) Nguyên lý hình ống: Nguyên lý áp dụng toán xuất dãy thao tác {T1, T2,…, Tn}, Ti+1 thực sau Ti kết thúc Nguyên lý chiađể trị: Chia toán thành phần nhỏ hơn, tương đối độc lập với giải chúng cách song song Nguyên lý đồ thị phụ thuộc liệu: Phân tích mối quan hệ liệu tính toán để xây dựng đồ thị phụ thuộc liệu dựa vào để xây dựng thuật toán song song Nguyên lý điều khiển tranh đua: Nếu hai tiến trình muốn truy cập vào liệu chúng phải tương tranh với nhau, nghĩa chúng cản trở lẫn Ngoài ra, thi ết kế thuật toán song song cần quan tâm đến vấn đề sau: - Hiệu thực thuật toán song song khác nhau, mà yếu tố quan trọng ảnh hưởng tới độ phức tạp tính toán cấu hình tôpô liên kết mạng đơn vị xử lý - Thuật toán song song phải thiết kế dựa kiến thức kiến trúc máy tính, ngôn ng ữ lập trình song song phương pháp tính toán Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 50 Tập DL 1.n Thao tác n Bộ xử lý n Hình 3.1 Mô hình song song liệu Mô hình song song liệu thực thi thao tác gi ống hay thực thi lệnh tập liệu thời điểm Tất xử lý thực chương trình giống Tuy nhiên, chương trình này, ta s dụng cấu trúc điều khiển if – then – else để định lệnh thực thi với xử lý nào, tức số phần ch ương trình thực một vài xử lý Trong mô hình song song ữd liệu, liệu cần phải phân chia thành tập liệu để tăng tốc đạt cách giảm khối lượng liệu cần xử lý xử lý Thuật toán thiết kế dựa vào mô hình song song d ữ liệu dễ dàng thực thi, phụ thuộc vào kiến trúc máy tính song song suất cao Tuy nhiên, gặp khó khăn vi ệc cân tải công việc chênh lệch liệu 3.2.2 Mô hình song song thao tác Trong mô hình song song thao tác, xử lý thực thi tập thị khác Các chương trình phối hợp với để hoàn thành mục tiêu Ý tưởng mô hình song song giao tác giảm độ phức tạp giao tác cách chia thao tác thành thao tác nhỏ để thực thi Tập liệu hoạt động chương trình không thiết giống Bộ xử lý Tập DL 1.1 Thao tác http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên Thao tác n 51 Tập DL 1.n http://www.lrc-tnu.edu.vn minsup: Độ hỗ trợ tối thiểu L: Tập tập mục phổ biến Nội dung thuật toán: Dữ liệu vào: I, minsup, D1, D2, , Dp Ra: L Hình 3.2 Mô hình song song thao tác Các thuật toán song song thiết kế dựa vào mô hình song song thao tác có độ phức tạp tính toán nhỏ so với thuật toán thao tác chia thành thao tác nhỏ để dễ xử lý Tuy nhiên, việc thực thi Phương pháp: C1 = I; for (k=1; Ck ≠ φ; k++) begin thuật toán lại phụ thuộc vào kiến trúc máy tính song song mang tính chuyên dụng // bước 1: Tính số đếm hỗ trợ cục 3.3 Một số thuật toán khai phá luật kết hợp song song // bước 2: Trao đổi số đếm hỗ trợ với xử lý khác để 3.3.1 Thuật toán Count Distribution (CD) // thu số đếm hỗ trợ D count(Ck, Di); // xử lý thứ i forall tập mục X ∈ Ck begin Thuật toán sử dụng kiến trúc không chia sẻ, xử lý có xử lý nhớ phụ riêng Các xử lý kết nối với mạng truyền thông truyền thông tin cho việc truyền thông điệp Dựa mô hình song song liệu, liệu phân hoạch cho xử lý, xử lý thực thi công việc giống thuật toán Apriori tuần p X.count = j =1 end; // bước 3: Xác định tập mục phổ biến sinh tập mục tự thông tin xử lý phân hoạch liệu Số đếm hỗ trợ tổng thể thiết lập thông qua môi trường truyền thông điệp MPI P1 P2 ∑ X j count ; // ứng viên Ck+1 Lk = {c c∈ Ck |c,count ≥ minsup *| D ∪ D2 ∪…∪Dp}; P3 Ck+1 = apriori_gen(Lk); end; return L = L ∪ L2 ∪…∪ Lk; All reduce Giải thích thuật toán Trong thu ật toán CD,CSDL D phân hoạch thành {D1, D2,…, Dp} phân Phân hoạch Phân hoạch Phân hoạch Hình 3.3 Sơ đồ thuật toán Count Distribution Bước 1: Mỗi xử lý Pi quét phân hoạch CSDL cụ D i để tính số đếm hỗ trợ cục cho tập mục ứng cử Ck Các kí hiệu sử dụng thuật toán I: Tập mục phân biệt CSDL giao dịch D D1, D2,…, Dp: Các phân hoạch CSDL, p số xử lý Số hóa Trung tâm Học liệu – Đại học Thái Nguyên bố cho xử lý Pi (1 ≤ i ≤ p) Thu ật ot án g ồm bước sau: 52 http://www.lrc-tnu.edu.vn Bước 2: Mỗi xử lý trao đổi số đếm hỗ trợ cục tập mục ứng cử CSDL D cách sử dụng lệnh MPI_Allreduce MPI Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 53 http://www.lrc-tnu.edu.vn Bước 3: Các tập mục phổ biến tổng thể Lk xác định dựa vào ngưỡng hỗ trợ minsup tập mục ứng cử Ck+1 sinh từ Lk cách áp dụng thuật toán apriori_gen() xử lý cách độc lập Thuật toán CD lặp lại bước → không tập mục ứng cử sinh Ví dụ: Cho CSDL giao dịch D, minsup = 33% Phân hoạch D cho xử lý P0, P1 P2, xử lý có hai giao dịch (bảng a), k số vòng lặp (a) Phân hoạch CSDL TID Items fdbe feb adb aefc ade acfe (b) Bước 1, với k = Số xử lý Số đếm cục Item P0 a b c d e f P1 P2 (d) Bước với k = bước 1,2 với k=3 Số đếm cục Số đếm 3-itemset tổng P0 P1 P2 thể ace acf ade aef bde bef cef 0 0 1 0 1 1 0 2 2 P0 P1 P2 Số đếm tổng thể 2 2 1 1 1 3 (c) Bước với k = bước 1,2 với k=2 Số đếm cục Số đếm 2-itemset tổng P0 P1 P2 thể (e) Bước với k = bước 1,2 với k=4 Trả L, thuật toán kết thúc Số đếm cục Số đếm 4-itemset tổng P0 P1 P2 thể acef 1 ab ac ad ae af bc bd be bf cd ce cf de df ef 0 0 0 2 0 0 0 1 1 1 0 1 0 1 0 0 1 1 2 2 2 0 0 Hình 3.5 Sơ đồ mô tả thuật toán Data Distribution Nội dung thuật toán: Dữ liệu vào: I, minsup, D1, D2,…, Dp Dữ liệu ra: L Phương pháp: C1j =1/p * | I |; for (k=1; C kj ≠ φ; k++) begin // bước 1: tính số đếm hỗ trợ cục count( C kj , Di); // xử lý thứ i // bước 2: truyền phân hoạch sở liệu cục đến // xử lý khác, nhận CSDL cục từ xử lý truyền đến, // quét Dj (1 ≤ i ≤ p, j ≠ i) để tính số đếm hỗ trợ tổng thể broadcast(Dj); for (j=1; (j≤ p and j ≠ i); j++) begin receive(Dj); //từ xử lý j count( C ki , Dj); end; // bước 3: xác định tập mục phổ biến Lik từ C ki , Hình 3.4 Phát tập mục phổ biến thuật toán song song CD 3.3.2 Thuật toán Data Distribution (DD) Trong thuật toán DD, CSDL D phân hoạch thành {D 1, D2,…, Dp} nên xử lý làm việc với tập liệu không đầy đủ, việc trao đổi liệu xử lý cần thiết Ngoài ra, tập mục ứng cử phân hoạch phân bố cho tất xử lý, xử lý làm việc với tập mục ứng cử Ci khác P1 P2 P3 Tập hợp tất Lk liệu phân hoạch // trao đ ổi Lik với xử lý để thu tập mục phổ biến Lk // sinh tập mục ứng cử Ck+1 // phân hoạch Ck+1 phân bố cho tất xử lý Lik = {c | c ∈ C ki | c.count ≥ s * |D1 ∪ D2 ∪…∪ Dp|}; p Lk =  Lik ; i =1 Ck+1 = apriori_gen(Lk); C ki +1 = 1/p * | Ck+1|; // phân hoạch lại tập mục ứng viên end; return L = L1 ∪ L2 ∪…∪ Lk; Thuật toán Data Disbution có bước sau: Bước 1: Mỗi xử lý quét phân hoạch CSDL cục để tính số đếm hỗ trợ cục tập mục ứng cử phân bổ cho Số hóa Trung tâm Họchoạch liệu – Đại học Phân Thái Nguyên Phân hoạch 54 http://www.lrc-tnu.edu.vn Phân hoạch Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 55 http://www.lrc-tnu.edu.vn Bước 2: Mỗi xử lý truyền phân hoạch CSDL đến xử lý khác nhận phân hoạch CSDL từ xử lý khác truyền đến, Sau quét phân hoạch CSDL nhận , để tính số đếm hỗ trợ tổng thể tập mục ứng cử CSDL D Bước 3: Mỗi xử lý định tập mục phổ biến từ phân hoạch tập mục ứng cử nó, trao đổi với xử lý khác để nhận tất tập mục phổ biến Lk sau sinh ập t mụ c ứng cử C k+1 từ Lk, từ phân hoạch Ck+1 phân bố phân hoạch ứng cử cho tất lý Thuật toán DD lặp lại bước → không tập mục ứng cử sinh Phân bố liệu cục thuật toán Thuật toán thông báo đến p-1 hàm nhận đồng MPI để nhận liệu từ xử lý Nếu liệu tập mục nhận từ xử lý khác, trước tiên xử lý xử lý liệu nhận trước xử lý liệu cục Điều tránh tắc nghẽn liệu đường truyền thông hay đệm Nếu liệu nhận, xử lý đọc tập mục (giao dịch) từ liệu cục cập nhật số đếm hỗ trợ cho tập mục ứng cử Khi tất liệu sử dụng để cập nhật tập mục ứng cử cục bộ, giai đoạn tìm tập mục ứng cử cho xử lý Nhận yêu cầu Dữ liệu nhận ? NO Đọc giao dịch cục Cập nhật độ hỗ trợ cho tập mục ứng cử Xử lý hết liệu ? YES Tìm kiếm tập mục ứng cử Hình 3.6: Sơ đồ luồng thuật toán Data Distribution Ví dụ: Cho CSDL giao dịch D, minsup = 33% Phân hoạch D cho xử lý P0, P1 P2, xử lý có hai giao dịch (bảng a), k số vòng lặp Thuật toán DD thực (theo thứ tự a, b, c, d, e, f, g, h, i) sau: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 56 (a) Phân hoạch CSDL Items Các xử lý fdbe P0 feb adb P1 aefc ade P2 acfe (c) Bước giai đoạn k=1 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 a c e b d f (e) Bước giai đoạn k=2 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 ab bc ce ac bd cf ad be de ae bf df af cd ef (g) Bước giai đoạn k=3 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 ace aef bef acf bde cef ade (b) Bước giai đoạn k=1 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 a c e b d f (d) Bước k=1 bước k=2 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 ab bc ce ac bd cf ad be de ae bf df af cd ef (f) Bước k=2 bước k=3 Số Số Số đếm Item đếm Item đếm P0 P1 P2 ace aef bef acf bde cef ade Item (h) Bước k=3 bước k=4 Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 acef ∅ ∅ (i) Bước giai đoạn k=4 Bước giai đoạn k=4 Xuất L, kết thúc thuật toán Số Số Số Item đếm Item đếm Item đếm P0 P1 P2 acef ∅ ∅ YES NO TID http://www.lrc-tnu.edu.vn Hình 3.7: Phát tập mục phổ biến thuật toán song song DD 3.3.3 Thuật toán Candidate Distribution Thuật toán Candidate Distribution thực phân hoạch liệu lẫn tập mục ứng cử Theo cách này, xử lý xử lý độc lập Trong  giai đoạn (  giá trị heuristic), thuật toán chia tập mục phổ biến L  −1 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 57 http://www.lrc-tnu.edu.vn cho xử lý cho xử lý P i sinh Cim (m ≥  ) độc lập với xử lý khác ( Cim ∩ C mj = φ, i ≠ j) Trong thời điểm, liệu phân chia lại cho xử lý sinh tập mục ứng cử Cim cách độc lập với tất xử lý khác Tùy vào tính tối ưu việc phân chia tập mục, số phần sở liệu có số xử lý Nội dung thuật toán Giai đoạn k <  : Sử dụng thuật toán CD DD Giai đoạn k = 1: 1) Phân hoạch Lk+1 cho xử lý cho tập Lk-1 cân 2) Bộ xử lý P i sinh C kj từ phân hoạch Lk-1 gán cho Lưu ý, P i truy xuất đến Lk-1 đầy đủ sử dụng phương pháp cắt tỉa chuẩn sinh C kj giai đoạn 3) Pi tính số đếm hỗ trợ tổng thể cho tập mục ứng cử C kj CSDL phân hoạch lại thành D i thời điểm 4) Sau Pi xử lý tất liệu cục liệu nhận từ xử lý khác Các L jk cần cho việc cắt tỉa C kj +1 bước cắt tỉa sinh tập ứng cử 5) Bộ xử lý Pi sinh L jk từ C kj truyền dị đến N-1 xử lý khác cách sử dụng N-1 phép chuyển dị 2) Pi sinh C kj cách sử dụng L jk −1 cục Ta biết Pi không nhận L jk −1 từ tất xử lý khác, nên Pi phải thận trọng lúc cắt tỉa Nó cần phải nhận biết tập mục (một tập k-1-itemset tập mục ứng cử) mặt L jk −1 với tập mục có mặt số L jk −1 tập chưa nhận x lý Pi Pi nhận biết cách khảo sát L j −1 sử dụng phần tiền tố với độ dài 1-1 tập mục cần xem xét, cách tìm kiếm xử lý trả lời kiểm tra Lik −1 nhận từ xử lý 3) Pi thiết lập giai đoạn D i đếm Sau Pi sinh Lik từ C ik truyền dị Lik đến xử lý khác N-1 phép chuyển dị Phân hoạch CSDL Có thể mô tả thuật toán phân hoạch Lk qua ví dụ sau: Cho L=3 {ABC, ABD, ABE, ACD, ACE, BCD, BCE, BDE, CDE} Sau đó: L4 = {ABCD, ABCE, ABDE, ACDE, BCDE} L5 = {ABCDE}; L6 = {} ần tiền tố chung Để ý đến tập L3, Z = {ABC, ABD, ABE} có ph AB tập ứng cử ABCD, ABCE, ABDE, ABCDE có phần tiền tố AB Hàm apriori_gen() sinh tập mục ứng cử cách nối item Z Do đó, giả sử rằng, mục tập mục thứ tự, ta phân chia t ập mục L3 dựa vào phần tiền tố chung có độ dài (k-1) Đảm bảo phân hoạch gán cho nhiều xử lý sinh tập mục ứng cử cách độc lập (chưa tính đến bước cắt tỉa) Giai đoạn k >  : 1) Bộ xử lý P i tập hợp tất tập mục phổ biến mà xử lý khác chuyển đến Chúng sử dụng bước cắt tỉa sinh tập mục ứng cử không sử dụng bước kết nối Các tập mục nhận từ xử lý Pj có độ dài k-1 nhỏ k -1 (nếu xử lý P j chậm hơn) lớn k-1 (nếu b ộ x lý P j nhanh hơn) Bộ xử lý P i lưu giữ phần tập mục phổ biến chuyển đến cho xử lý P j Các đệm dùng để nhận tập mục phổ biến phản hồi lại sau xử lý Việc phân chia lại CSDL giao dịch theo cách: Bất kỳ bó giao dịch mà hỗ trợ cho tập mục chứa L k mà tập mục gán cho xử lý bó giao dịch chép sang ổ đĩa cục xử lý Chính mà xử lý xử lý toàn dị bội 3.3.4 Thuật toán song song Fp-Growth Dựa vào thuật toán Fp-Tree trình bày [15] Thuật toán này, ta xây dựng số Fp -tree cục môi trường nhớ phân tán sử dụng mô hình “Chủ - Tớ” Dựa chiến lược lập lịch làm việc động giai Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 58 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 59 http://www.lrc-tnu.edu.vn đoạn hợp mẫu điều kiện sở giai đoạn khai phá để cân khối lượng công việc trình thực thi (2) Khai phá song song sinh tập mục phổ biến Bộ xử lý Khai phá tập mục song song P0 Thuật toán khai phá mẫu phổ biến song song gồm hai nhiệm vụ sau: (1) Xây dựng song song FP-Tree P1 Giai đo ạn đầu thuật toán khai phá song song xây dựng FP-Tree đ ồng thời m ỗi xử lý Tương t ự thuật toán CD, ta chia CSDL giao dịch D cho P xử lý Đảm bảo xử lý có N/P giao dịch (D N/P), N P tổng số giao dịch CSDL số xử lý Việc phân hoạch CSDL D cho P xử lý thực cách ngẫu nhiên Sau phân hoạch liệu, công việc xác định 1- itemset phổ biến (F1-itemset) trước xây dựng FP-Tree cục bộ, Mỗi xử lý tính toán đếm hỗ trợ (flocal(i)) mục i cách quét phân hoạch CSDL cục D N/P, tất xử lý đếm flocal(i) cục đến xử lý Chủ Bộ xử lý Chủ tập hợp tất mục kết hợp chúng lại để sinh số đếm hỗ trợ tổng thể ( fglocal(i)) Sau đó, ụmc có hỗ trợ nhỏ ngưỡng hỗ trợ minsup lược bỏ Tập 1-itemset phổ biến thu truyền cho tất xử lý nhóm Bước xây dựng FP-Tree cục bộ, Mỗi xử lý quét CSDL cục DN/P chèn mục phổ biến vào FP-Tree, Việc xây dựng FP-Tree xử lý với CSDL cục giống thuật toán [15] P0 P1 3:4 P2 5:1 3:3 8:3 6:1 9:1 8:2 6:1 9:3 0:1 5:1 9:2 7:1 7:1 5:2 7:1 0:1 3:4 8:4 9:3 0:1 5:2 0:1 5:2 6:2 6:1 7:1 6:2 0:1 0:1 7:1 7:1 0:1 7:1 Hình 3.8: Các phân hoạch CSDL FP-Tree cục ban đầu Phương pháp khai phá bao ồm g số giai đoạn sau: Trong giai đoạn đầu, ta xét toàn FP-Tree tạo mẫu điều kiện sở Trong giai đoạn tiếp theo, ta tập hợp mẫu điều kiện sở từ xử lý để xây dựng FPTree điều kiện sở (CFPT) cho mục phổ biến Giai đoạn cuối thực thi việc khai phá cách xây dựng đệ qui mẫu điều kiện sở CFPTs sinh tất tập mục phổ biến Xây dựng mẫu điều kiện sở Mỗi xử lý thăm bảng tiêu đề (1-itemset phổ biến cục bộ) theo hướng từ xuống tạo mẫu điều kiện sở cho mục phổ biến Việc thiết lập mẫu điều kiện sở cách xét toàn nút FPTree cục từ xuống thuật toán trình bày [15] Quá trình xây dựng mẫu điều kiện sở minh họa bảng 3.1 Xây dựng FP-Tree điều kiện sở Khi tất mẫu điều kiện sở tìm được, FP -Tree điều kiện Ví dụ: Cho CSDL với 12 giao dịch 10 mục (0, 1,…, 9) hình 3.3 CSDL Dđược phân hoạch cho xử lý P 0, P1, P2 Mỗi xử lý có số giao dịch Với ngưỡng hỗ trợ 6, ta xác định nhanh số đếm hỗ trợ cho mục sau {3:11, 8:9, 5:8, 6:7, 0:7, 7:7} Hình 3.8 FP-Tree cục ban đầu xây dựng P 0, P1, P2 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên P2 Các giao dịch 3, 7, 8, 0, 3, 6, 3, 5, 6, 8, 0, 3, 5, 6, 7, 8, 0, 3, 4, 5, 5, 6, 3, 4, 5, 8, 0, 3, 5, 6, 7, 8, 0, 3, 4, 3, 5, 6, 7, 8, 0, 3, 4, 7, 8, 0, 3, 5, 6, 8, 60 http://www.lrc-tnu.edu.vn xây dựng cách hợp mẫu điều kiện sở Phương pháp hợp tương tự đề cập [15] [23] Với mục phổ biến, mẫu điều kiện sở hợp cho số đếm hỗ trợ mục giống tăng lên để tính số đếm hỗ trợ tổng thể Nếu số đếm hỗ trợ tổng thể mục mà nhỏ ngưỡng hỗ trợ tối thiểu, mục lược bỏ khỏi FP-Tree điều kiện Quá trình minh họa bảng 3.1 với ngưỡng hỗ trợ tối thiểu 6.0 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 61 http://www.lrc-tnu.edu.vn Để sinh FP-Tree điều kiện ta sử dụng mô hình Chủ - Tớ Bộ xử lý Mô hình song songđược áp dụng mô hình Chủ - Tớ Bộ xử lý Chủ Chủ chuyển mục cần khai phá cho x lý Tớ Các xử lý Tớ sinh FP-Tree điều kiện cho mục đó, xử lý Tớ hoàn thành việc chuyển mục sở cần khai phá cho mục sinh tập mục phổ biến Trong mô hình này, xử lý Tớ hoàn thành nhiệm vụ, sinh FP-Tree điều kiện, chuyển mã thông báo đến xử lý Chủ yêu cầu nhận nhiệm vụ khác lập tức, điều làm cho xử lý bận cho mục Nhiệm vụ xử lý chủ lắng nghe yêu cầu đến từ xử lý Tớ Nó trả lời cách chuyển mục đến xử lý Tớ Khi đến kết thúc trình khai phá Ở đây, việc cân đối khối lượng công việc xảy thời gian thực thi (runtime) Mô hình Chủ - Tớ trì mà xử lý Tớ nhận mục từ xử lý Chủ chuyển đến, bắt đầu sinh tất tập mục phổ biến sinh ứng với mục phổ biến F1-itemset Sau tất xử lý Tớ chuyển tập mục phổ biến mà CFPT cho mục Chi phí truyền thông thuật toán tương đối thấp xử lý chuyển mã thông báo Hơn nữa, khối lượng công việc cân sinh đến xử lý Chủ, giai đoạn khai phá kết thúc xử lý nhóm xử lý Tớ hoàn thành nhiệm vụ nhận nhiệm vụ khác quy mẫu điều kiện sở FP -Tree điều kiện Items Các mẫu điều kiện sở P0 P1 hình 3.9 Các FP-Tree điều kiện P2 Trước lượt bỏ Sau lượt bỏ (3 : 6) 983:1 065983:1 65983:1 (3:6, 8:5, 9:5, 065983:1 65:1 0983:1 5:4, 6:5, 0:4) Tương ứng với mục i ∈ F1-itemset, tập mục phổ biến sinh đệ Ở đây, ta có xử lý xử lý Tớ P1, P2 sinh tập mục phổ biến; Hình 3.9 tập mục phổ biến CSDL D Bộ xử lý 063:1 65983:1 593:1 83:1 (3:7, 8:5, 9: 5, 63:1 65983:1 65983:1 5:4, 6:4 ) (3 : 7) 5983:2 5983:1 3:1 5:1 983:2 93:1 5983:2 (3:6, 8:5, 9:5, (3:6, 5:6) 3:1 (3:7, 8:6, 9:7) 3:6 (3:7, 8:6, 9:7) 83:3 (3 : 6) (3:9, 8:8) P2 5:1 5:5 (3 : 6) (5 : 6) 3:7 9:1 8:6 9:6 83:2 3:3 3:2 3:4 (3 : 9) (3 : 9) ∅ ∅ ∅ ∅ ∅ Bảng 3.1: Các mẫu điều kiện sở FP-Tree điều kiện sở Sinh tập mục phổ biến Sinh tập mục phổ biến cách xây dựng lầm lượt mẫu điều kiện sở điều kiện FP-Tree xử lý Khi nhánh FP-Tree điều kiện xây dựng, ta thu tập hợp mục khả thuật toán FP-Growth trình bày [15] Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 62 http://www.lrc-tnu.edu.vn (3 : 7) P2 Mức đệ qui (3:9, 8:8) P2 P1 3:9 Các tập mục phổ biến 3:7 P1 983:2 83:3 Item Các FP-Tree điều kiện mức 3:6 5:6) 983:2 Bộ xử lý Các tập mục phổ biến P1 983:1 Item Các FP-Tree điều kiện mức (3 : 9) (9 : 7) (3 : 7) (8 : 6) (3 : 7) (3 : 6) (8 : 6) (8 : 6) (3 : 9) 3:9 (8 : 8) 8:8 (3 : 8) Hình 3.9: Quá trình sinh tập phổ biến xử lý P1 P2 Nội dung thuật toán FP-Growth Vào: Các phân hoạch CSDL DN/P minsup Ra: Tập mục phổ biến Phương pháp: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 63 http://www.lrc-tnu.edu.vn 1) Quét CSDL cục D N/P; 1) 2) Tính số đếm hỗ trợ cục mục i flocal(i); 2) for (mỗi Bộ xử lý Tớ) 3) Nhận flocal(i); 5) 4) 5) đến Bộ xử lý Tớ 7) else Chuy ển flocal(i), ∀ i đến Bộ xử lý chủ Nhận 1-itemset ph ổ biến F1-itemset; 8) Xây dựng FP-Tree cục FPTlocal mục F1-itemset cách quét DN/P cục 9) Duyệt toàn FPT local sinh mẫu điều kiện sở truyền đến tất xử lý; 11) 13) for(mỗi mục phổ biến i ∈ F1-itemset) // Lập lịch tạo CFPTs Nh 15) ận yêu cầu Bộ xử lý Tớ chuyển mục i; for(mỗi mục phổ biến i ∈ F1-itemset) // Lập lịch cho việc khai phá 14) Nh ận yêu cầu Bộ xử lý Tớ chuyển mục i cần khai phá; for(mỗi Bộ xử lý Tớ) 16) Tập hợp tập mục phổ biến xuất tất tập mục phổ biến; 17) end 18) else //hợp mẫu điều kiện sở 19) Yêu c ầu mục i sinh FP-Tree ều kiện CFPTi cho mục ;i 20) until (hết mục phổ biến); 21) Truy ền CFPTs đến tất Bộ xử lý (từ Bộ xử lý Chủ) nhận tất CFPTs; 22) 23) Sinh tập mục β = i ∪ α Xây dựng mẫu điều kiện sở 6) else for i bảng tiêu đề Cây Sinh tập mục β = i ∪ α Xây dựng mẫu điều kiện sở β CFPTβ 7) if CFPTβ ≠ ∅ then FP-Growth-OneItem(CFPTβ, β, null); 3.3.5 Thuật toán song song Eclat 1) Nhóm tập mục giao dịch Phương pháp đ ể nhóm tập mục phổ biến có liên quan với cách sử 10) if (Bộ xử lý chủ) then begin 12) else if(i ≠ null) then β CFPTβ Gán F1-itemset = {i| ∑flocal(i); ≥ minsup, ∀ i} truyền F1-itemset 6) Sinh tập mục có độ hỗ trợ ≥ minsup tổ hợp nút đường dẫn 3) if (Bộ xử lý chủ) then 4) if(Tree chứa đường dẫn đơn) and (i ≠ null) then Yêu c ầu mục i vàgọi FP-Growth-OneItem (CFPTs, null i); 24) until (hết mục phổ biến); dụng lược đồ phân chia lớp tương đương Mỗi lớp tương đương chứa tập mục ứng cử quan h ệ tương đương với Bên cạnh, ta sử dụng kỹ thuật tổ chức CSDL theo chiều dọc để nhóm giao dịch có liên quan với Phân lớp tương đương Gọi Lk tập itemset phổ biến Không tính tổng quát, giả sử L k xếp theo thứ tự từ điển Ta phân hoạch tập mục Lk thành lớp tương đương sau: Nếu phần t Lk có k – thành viên giống chúng thuộc lớp Ký hiệu: Lớp tương đương chứa a Sa = [a] Trong phạm vi lớp, ta sinh k-itemset ứng cử cách kết nối tất S i  cặp với tiền tố định danh lớp Trong đó: |Si| số phần   = S i ( S i − 1) /   tử lớp có định danh i Các k- itemset ứng cử ứng cử sinh ta từ lớp khác độc lập với Tổ chức sở liệu Thuật toán Eclat sử dụng cách tổ chức liệu theo chiều dọc Với tổ chức liệu theo chiều dọc, CSDL gồm danh sách mục Mỗi mục 25) Chuyển tập mục phổ biến đến Bộ xử lý Chủ; Thủ tục FP-Growth-OneItem (Tree, α, i) Phương pháp: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 64 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 65 http://www.lrc-tnu.edu.vn xác định danh sách định danh giao dịch có chứa mục đó, ký hiệu tid-List Những ưu điểm cách tổ chức theo chiều dọc: Compute_Frequent(E2) /*Pha rút gọn*/ - Nếu tid-List theo thứ tự tăng dần độ hỗ trợ k-itemset ứng cử tính toán phép lấy giaocác tid-List hai (k-1)subset b ất kỳ, Với cách tổ chức này, thuật toán không cần phải trì cấu trúc liệu phức tạp, không băm c ũng sinh tất -ksubset c giao dịch thực thao tác tìm kiếm băm - Các tid-List chứa tất thông tin liên quan tập mục, vậy, tính độ hỗ trợ cho tập mục không cần phải quét toàn CSDL Vì tất thông tin lớp tương đương nhóm nên sinh tập mục phổ biến trước chuyển sang lớp Ví dụ: Giả sử tid-List AB, AC là: T(AB) = {1, 5, 7, 10, 50}; T(AC) = {1, 4, 7, 10, 11} Thì T(AB) ∩ T(AC) cho T(ABC) = {1, 7, 10} Ta tính độ hỗ trợ cách đếm số phần tử tid-List, số phần tử tid-List l ớn độ hỗ trợ tối thiểu chèn ABC vào L3 2) Thuật toán song song Eclat Giải thích thuật toán 1) Phần khởi tạo Pha khởi tạo bao gồm việc tính toán tất -itemset phổ biến CSDL cần khai phá Ta không cần tính số đếm hỗ trợ -itemset việc xác định số đếm hỗ trợ -itemset đạt lần duyệt CSDL Để tính toán cho 2-itemset, xử lý sử dụng mảng cục tiến hành số hóa mục CSDL theo hai chiều Mặt khác, xử lý tính số đếm hỗ trợ cục cho 2-itemset thực phép lấy tổng rút gọn (sum-reduction) tất xử lý để xây dựng số đếm hỗ trợ tổng thể Kết thúc pha khởi tạo, tất xử lý có số đếm hỗ trợ tổng thể tất 2-itemset phổ biến L2 CSDL 2) Pha biến đổi gồm bước Nội dung thuật toán Bước 1: Đầu tiên L2 phân hoạch thành lớp tương đương Sau lớp tương đương gán cho xử lý cho cân Begin Bước 2: CSDL biến đổi từ định dạng theo chiều ngang thành /* Pha khởi tạo*/ 1) Duyệt qua phân hoạch CSDL cục 2) Tính toán số đếm hỗ trợ cục cho tất 2-itemset 3) Xây d ựngsố đếm hỗ trợ tổng thể cho tập mục chứa L2 /*Pha biến đổi*/ 4) Phân hoạch L2 thành lớp tương đương 5) Lập lịch L2 tập xử lý 6) Tổ chức phân hoạch liệu cục theo chiều dọc 7) Truyền tid-List có liên quan tới xử lý khác 8) L2 cục = nhận tid-List từ xử lý khác /*Pha đồng thời*/ 9) forparallel lớp tương E2 L2 cục Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 10) Tập hợp kết đưa kết hợp end 66 http://www.lrc-tnu.edu.vn chiều dọc phân phối lại Do đó, nhớ cục xử lý, tid-List tất 2-itemset lớp tương đương gán cho Lập lịch phân lớp tương đương Đầu tiên, ta phân hoạch L2 thành lớp tương đương cách sử dụng tiền tố chung mô tả Tiếp theo, phân chia cho xử lý lớp tương đương Mỗi lớp tương đương gán trọng số dựa vào số phần tử lớp Vì phải khảo sát tất cặp bước lặp tiếp theo, nên ta m gán trọng số   cho mộ t lớp với m số p h ần tử củ a lớp tươn g đ ương   tương ứng Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 67 http://www.lrc-tnu.edu.vn Sắp xếp lớp dựa theo trọng số gán cho xử lý nạp nhất, nghĩa xử lý có trọng số toàn phần lớp nhỏ Nếu ước lượng tốt số tập mục phổ biến mà nhận từ lớp tương đương sử dụng ước lượng làm trọng số Trong phạm vi lớp, lấy độ hỗ trợ trung bình tập mục làm trọng số Biến đổi CSDL theo chiều dọc Sau phân hoạch lớp tương đương cân xử lý, ta biến đổi CSDL cục từ định dạng theo chiều ngang theo chiều dọc Điều thực bước: Bước 1: Mỗi xử lý duyệt CSDL cục xây dựng tid-List cục cho tất 2-itemset Bước 2: Mỗi xử lý cần xây dựng tid-List toàn cục cho tập mục lớp tương đương Do đó, phải gửi tid -List cho xử lý khác nhận tid-List từ xử lý khác gửi đến 3) Pha đồng thời Cơ sở liệu phân bố lại, tid -List tất itemset lớp tương đương cục thường trú đĩa cục Mỗi xử lý tính toán tất tập mục phổ biến cách độc lập Nó đọc trực tiếp từ nhớ cục tid-List 2-itemset, sau sinh tất tập mục phổ biến trước chuyển sang bước tiếp theo, bước bao gồm việc quét phân hoạch CSDL cục biến đổi lần Trong phạm vi lớp tương đương, cần khảo sát tất cặp 2-itemset thực lấy giao tid-List tương ứng Nếu số phần tử tid-List kết lớn độ hỗ trợ tối thiểu tập mục bổ sung vào L3 Sau đó, tiếp tục phân hoạch L thành lớp tương đương dựa tiền tố chung độ dài Quá trình lặp lại thủ tục thực sau: Compute_Frequent(Ek); End Compute_Frequent 4) Pha rút gọn Tại thời điểm cuối pha đồng thời, trích rút kết từ xử lý đưa kết Quá trình thực bước truyền thông khác thuật toán *) Giai đoạn khởi tạo: Khi thu số đếm hỗ trợ tất -itemset, ta cần thực phép lấy tổng rút gọn để tính số đếm tổng thể Ta định mảng m kích thước   (m số mục) vùng kênh nhớ dùng chung, sau 2  xử lý truy cập mảng chung (theo phương thức loại từ lẫn nhau) để tăng số đếm hỗ trợ hành lên số đếm hỗ trợ cục đợi rào chắn xử lý cuối thực xong việc truy cập mảng dùng chung để tăng số đếm hỗ trợ Các số đếm hỗ trợ cục sử dụng để xây dựng tid-List đảo toàn cục *) Giai đoạn biến đổi Mỗi xử lý quét phân hoạch CSDL cục lần thứ hai xây dựng tid-List theo chiều dọc tất -itemset phổ biến L Vì CSDL gốc ban đầu phân hoạch theo dạng khối nên CSDL đảo xử lý gồm vùng định danh không liên tiếp Ta sử dụng thông tin với thông tin số đếm hỗ trợ cục để đặt tid-List xử lý khác gửi đến vào khoảng trống thích hợp, tid-List toàn cục thu xuất theo thứ tự từ điển, Với lưu giữ này, tiết kiệm chi phí xếp cho tid-List giao dịch phân tán cách ngẫu nhiên Quá trình biến đổi hoàn thành qua bước sau: Bước 1: Biến đổi tid-List cục Begin Compute_Frequent(Ek-1) for tất itemset I1 I2 Ek-1 Trước tiên, ta chia L2 thành hai nhóm Các ật p mục thuộc lớp tương if((I1.tidList ∩ I2tidList) ≥ minsup) Bổ sung (I1 ∪ I2) vào Lk; Phân hoạch Lk thành lớp tương đương; đương mà gán cho xử lý cục bộ, kí hiệu G, tập mục lại thuộc lớp tương đương khác, kí hiệu R Với xử lý Pi, nhớ dành vùng nhớ có kích thước forparallel lớp tương đương Ek Lk Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 68 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 69 http://www.lrc-tnu.edu.vn ∑ glocal _ count ( g ) + ∑ partial _ count (r , Pi) g∈G r∈R Với g ∈ G, r ∈ R: tập mục partial_count(r, Pi): Số đếm hỗ trợ tập mục r xử lý Pi Sau đó, xử lý thực việc biến đổi ghi tid -List phần tử G vào khoảng trống thích hợp Các phần tử R để trống Hình 3.10 mô tả bước biến đổi CSDL ba xử lý: L2 Số đếm hỗ trợ tổng thể Số đếm hỗ P0 trợ cục P1 P2 Bước 2: Truyền tid-List Một việc biến đổi CSDL cục hoàn thành, ta cần phải nhận tidList tất 2-itemset G từ xử lý khác truyền đến truyền tid-List R đến xử lý khác Các tid-List đến chép vào khoảng trống thích hợp Vì phần giao dịch phân biệt tăng đều, tid-List tập mục G viết đĩa, R bị loại bỏ Để truyền tid-List cục qua kênh nhớ, sử dụng lợi việc 12 13 15 23 25 34 35 truyền thông điệp nhanh mức người sử dụng Mỗi xử lý xác định kích thước đệm (2MB) cho vùng truyền, vùng nhận dùng chung 10 13 10 15 16 14 17 định danh Việc truyền thông tiến hành theo cách khóa luân phiên pha 10 11 ghi đọc Trong pha ghi, xử lý ghi tid-List tập mục P 10 vào vùng truyền ch o đến đạt đến giới hạn không gian đệm Tại 4 Phân chia L2 thành l ớp tương đương gán cho xử lý P0, P1, P2 P0 – (12, 13, 15); P1 – (23, 25); P2 – (34, 35) Kí hiệu: tid- List P 0, P1, P2 là: Lớp tương đương cục (G) Lớp khác (R) 12 13 15 23 25 34 35 Lớp tương đương cục sau truyền thời điểm này, vào pha đọc, quét vùng nhận xử lý đặt tid-List G vào khoảng trống thích hợp Khi vùng đọc quét xong, vào pha ghi Quá trình lặp lại nhận tất tid-List phận Tại thời điểm cuối pha này, CSDL định dạng theo chiều dọc Sau đó, xử lý vào pha đồng thời tính toán tập mục phổ biến mô tả Việc phép rút gọn cuối đượ c thực tương tự phép rút gọn pha khởi tạo 3.4 Phân tích, đánh giá so sánh việc thực thuật toán 3.4.1 Phân tích đánh giá thuật toán song song 12 13 15 Lớp tương đương cục (G) Lớp khác (R) 23 25 23 25 34 35 Lớp tương đương cục sau truyền 23 25 thức, O() định nghĩa sau: Một thuật toán có độ phức tạp tính toán tính toán f(n) = O(g(x)) ⇔ Tồn Lớp khác (R) Lớp tương đương cục (G) 23 25 34 35 34 35 Lớp tương đương cục sau truyền Đánh giá thuật toán chủ yếu vào thời gian thực tính theo hàm kích cỡ liệu vào (input) Hàm gọi độ phức tạp tính toán thời gian f(n) thuật toán ký hiệu O(f(n)) Một cách hình số dương C số nguyên x0 cho ≤ f(x) ≤ C * g(x), với số lượng liệu vào x ≥ x0 O(1) ký hiệu cho số Ngoài ra, độ phức tạp tính toán thuật toán song song phụ thuộc vào kiến trúc máy tính song song số lượng xử lý phép sử dụng 34 35 hệ thống phụ thuộc vào thời gian trao đổi liệu xử lý Hình 3.10: Quá trình chuyển đổi CSDL theo chiều dọc Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 70 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 71 http://www.lrc-tnu.edu.vn Độ phức tạp thời gian thước đo quan trọng đánh giá mức độ hiệu thuật toán song song Giả sử mô hình tính toán có p xử lý; dẫn đến mức độ song song có giới hạn; ngược lại, không bị giới hạn 3.4.2 So sánh việc thực thuật toán Dựa vào việc thực thi thuật toán CSDL khác cho thấy thuật Mức độ hiệu thuật toán thể mức độ song song toán FP-Growth thực thi nhan h nhất, tiếp đến thuật toán Eclat, thuật toán Candidate distribution, CD, DD Việc theo thứ hạng mang tính tương đối, thuật toán có ưu điểm nhược điểm riêng thuật toán Là số lượng cực đại phép toán độc lập thực đồng thời thời điểm thực thuật toán Trong số thuật toán khai phá liệu luật kết hợp song song, thuật toán song song cài đặt dựa thuật toán Apriori (chẳng hạn thuật Ký hiệu p(w) độ song song thuật toán, thuật toán đạt hiệu để giải toán có kích cỡ w thuật toán cần sử dụng nhiều p(w) xử toán CD, DD, Candidate distribution) đư ợc sử dụng phổ biến thực thi số lượng xử lý không bị chặn lý Độ phức tạp thời gian thuật toán song song sử dụng p xử lý để giải chúng đơn giản dễ dàng Hơn nữa, luật kết hợp sinh trực tiếp dựa vào cách thức khai phá tập mục Bởi tập mục ứng cử sinh ta toán có kích cỡ n hàm f(n, p) xác định thời gian cực đại trôi qua tất thông tin tập tính toán Tốc độ thực thuật điểm bắt đầu thực thuật toán xử lý thời điểm kết thúc toán tỉ lệ với số lượng giao dịch gặp khó khăn việc xử lý liệu vào xử lý nhiều mục nhiều mẫu CSDL lớn Có hai thao tác khác thuật toán song song: Các phép toán sở như: +, -, *, /, AND, OR,… Các phép truyền liệu kênh truyền Vì độ phức tạp thời gian thuật toán song song xác định số phép toán s số bước truyền tải liệu xử lý với Nên từ suy ra, đ ộ phức tạp thời gian thuật toán song song không phụ thuộc vào mô hình tính toán mà ph ụ thuộc vào xử lý sử dụng Định nghĩa liên quan đến độ phức tạp giải thuật song song là: Định nghĩa 3.1: Một thuật toán song song có độ phức tạp tính toán O(t) với p xử lý thực nhiều O(t * p) phép toán sở Định nghĩa 3.2: Một thuật toán song song có độ phức tạp tính toán O(t) sử dụng nhiều xử lý để thực O(e) phép toán sở cài đặt với p xử lý có độ phức tạp thời gian O([e/p]+t) Định nghĩa 3.3: Một thuật toán song song có độ phức tạp tính toán O(t) với p xử lý cài đặt với [p/f] xử lý (1≤ f ≤ p) có độ phức tạp thời gian O(f * t) Ngoài ra, đánh giá thuật toán song song cần phải xét tới độ tăng tốc hiệu suất Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 72 http://www.lrc-tnu.edu.vn Thuật toán song song Eclat có ưu điểm tính toán nhanh độ hỗ trợ thông qua tập giao dịch tid-List Thuật toán thiết kế dựa mô hình song song thao tác, có ốt c độ thực thi nhanh hệ thống đa xử lý nhớ phân tán Hạn chế chủ yếu thuật toán chúng cần phải sinh phân bố lại tid-List Hơn nữa, với tập mục phổ biến có kích thước lớn, phần chung chủ yếu tid-List lấy giao lặp lại nhiều lần tất tập Để giảm bớt tình trạng này, cách thiết lập tối ưu khác kiểm tra thay đổi tid-List thay cho việc lưu giữ tid-List toàn cục thông qua vòng ặl p cho giảm đáng kể khối lượng liệu tính toán Thuật toán FP-Growth xử ký lượng lớn CSDL hiệu có tốc độ thực thi tỷ lệ hiệu so với lượng giao dịch lớn, lặp lại nhiều lần hay lặp lại nhiều lần cục giao dịch kết hợp lại tạo thành nhánh FP-Tree Tuy nhiên ích lợi không tăng tăng thêm số lượng xử lý nhiều FP-Tree cho tập giao dịch khác hoàn toàn dư thừa Lợi ích hạn chế CSDL rải rác Thuật toán xử lý số lượng lớn mục việc gán mục cho nhiều xử lý mà không quan tâm không gian lưu trữ tập mục Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 73 http://www.lrc-tnu.edu.vn KẾT LUẬN 3.5 Kết luận chương Trong chương trình bày nguyên lý thiết kế thuật toán song song hai hướng tiếp cận việc thiết kế thuật toán khai phá luật kết hợp song song là: Mô hình song song liệu mô hì nh song song giao tác Một số thuật toán khai phá luật kết hợp song song thiết kết dựa hai mô hình thuật toán Count Distribution, Data Distribution, Candidate Distribution, Eclat, FP-Growth Chương đánh giá chung ưu nhược điểm so sánh việc thực thuật toán làm sở cho việc cải tiến thuật toán phát thuật toán song song Kết đạt luận văn Khai phá liệu lĩnh vực quan trọng, bao gồm nhi ều lĩnh vực nhiều kỹ thuật khác Luận văn đề cập đến nội dung phát tri thức, khai phá liệu Ứng dụng khai phá liệu lớn có ích hoạt động sản xuất, kinh doanh trợ giúp cho việc hoạch định chiến lược nhà quản lý nh hỗ trợ định Bên cạnh, luận văn đề cập đến khó khăn, thách thức việc ứng dụng nghiên cứu kỹ thuật khai phá liệu • Về mặt lý thuyết, khai phá liệu công đoạn tiến trình lớn , tiến trình khám phá tri thức từ CSDL Phương pháp khai phá liệu là: phương pháp sử dụng định luật, phương pháp quy nạp, phương pháp phát luật kết hợp, phương pháp dựa mẫu, mô hình phụ thuộc dựa đồ thị xác suất, phương pháp phân lớp hồi quy phi tuyến tính…, phương pháp áp dụng liệu thông thường tập mờ Trong luận văn trình bày chi tiết vấn đề khai phá luật kết hợp: từ khái niệm sở, toán xuất phát đến mô hình hình thức, thuật toán khai phá luật kết hợp sở thuật toán khai phá luật kết hợp trọng số, luật kết hợp định lượng luật kết hợp tổng quát • Về thuật toán khai phá luật kết hợp, luận văn trình bày số thuật toán tiêu biểu khai phá luật kết hợp như: Apriori, phân hoạch, AIS, SETM,… • Trên sở thuật toán tuần tự, luận văn trình bày chi tiết thuật toán song song Count Distribution, Data Distribution, Candidate Distribution, Eclat, FP-Growth Việc đánh giá thuật toán làm rõ c hất luật kết hợp nội dung trình bày luận văn Hướng nghiên cứu Trên sở nghiên cứu trình bày luận văn, tiếp tục nghiên cứu sâu thuật toán khai phá luật kết hợp song song , tìm cách cải tiến nhằm khắc phục nhược điểm thuật toán song song có Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 74 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 75 http://www.lrc-tnu.edu.vn TÀI LIỆU THAM KHẢO thuật toán khai phá liệu song song khác để áp dụng vào số toán khai phá liệu phù hợp cho giai đoạn như: quy luật thị trường, chứng khoán bất động sản, dự đoán rủi ro tín dụng, định hướng kinh doanh, y tế… Tiếng việt Đoàn Văn Ban, Nguyên M ậu Hân (2006) Xử lý song song phân tán, Trong trình học tập, tìm hiểu nghiên cứu với khoảng thời gian làm luận văn, cố gắng tập trung tìm hiểu tham khảo tài liệu Nxb Khoa học & Kỹ thuật, Hà Nội Nguyễn Thanh Bình (2007), Khai phá liệu: Khái niệm kỹ thuật, liên quan Tuy nhiên ời th gian nghiên u có hạn nên không tránh khỏi thiếu sót mong nhận nhận xét đóng góp ý kiến Huế Đỗ Phúc (2006), Giáo trình khai phá liệu , Nxb Đại học Quốc gia TP Hồ Chí Minh thầy cô giáo quan tâm để luận văn hoàn thiện Hồ Thuần, Hồ Cẩm Hà (2006), Các hệ sở liệu Lý thuyết Thực hành, Tập 2, Nxb Giáo dục Nguyễn Thanh Thủy (2003), Phát hi ện tri thức khai phá liệu: Công cụ, phương pháp ứng dụng, Bài gi ảng Trường Thu, Hà Nội Tiếng Anh A Savaere, E Omiecinski and S.Navathe (1995), An efficient algorihm for mining association rules in large databases, In 21st VLDB Con& Agrawal and J.Shafer (1996), Parallel mining of association rules, In IEEE Trans, on Knowledge and Data Engg, pages 8(6): 962 – 969 CAI, Chun Hing (1998), Mining Association Rules With Weighted Items, The Chinese University of Hong Kong, August H.Mannila, H Toivonen and I.Verkamo (1994), efficient algorithms for discovering association rules, In AAAI Wkshp, Knowledge Discoverry in Databases, July 10 J.Han, J.Pei and Y.Yin (2000), Mining Frequent Pattens Without Candidate Generation, In ACM SIGMOD 11 J.S.Park, M.Chenand P.S.Yu (1995), Efficient parallel data mining for association rules, In ACM Intl, Conf Information and Knowledge Management, November 12 Jiamwei Li, Ying Lui, Wei-Keng Liao, Alok Choudhay (2006), Parallel Data Mining Algorithms for Association Eules and Clustering, by CRC Press, LLC Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 76 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 77 http://www.lrc-tnu.edu.vn 13 Kwok-Leung Tsui, Victoria C,P Chen, Wei Jiang, Y Alp Aslandogan, (2001), Data Minning Methods and applications 14 M, Holshimer, M.Kersten, H.Manila and H Toivonen (1995), A perspectiveon databases and data mining, In lsr Ind, Conf Knowledge Địa Internet 25 ://www.cs.cmu.edu/~scandal/nesl/algorithms.html 26 ://computing.llnl.gov/tutorials/parallel_comp/index.html 27 MPI home page.http://www.mcs.anl.gov/mpi Discovery and Data Mining, August 15 M.Houtsma and A.Swami (1995), Set-oriented miningof association rules in relational databases, In lth Intln, Conf Data Engineeng 16 M.J Zaki, S.Parthasarathy, W.Li and M.Ogihara (1997), Evaluation of sampling for data mining of association rules, In th Intl, Wkshp Research Issues in Data En, gg, Apr 17 Ming-Syan Chen, Jiawei Han and Philip S.Yu (1996), Data Mining: An Overview from a Databases Perpective, IEEE Transactions on Knowledge and Data Engineering, Vol.8, No.6, pp 866-883 18 Margaret H Dunham, Yongqiao Xiao, Le Gruenwald, Zahid Hossain, (2003) A survey of Assocition rules, Department of Computer Science and Engineering Southerm Methodist University Dallas 19 O.R.Zaiane, Mohammad El-Haijj and Paul L (2001), Fast Parallel Association Rule Mining Without Candidacy Generation, Proc Of the IEEE 2001 International Conference in Data Minning (ICDM’2001), San Jose, CA, USA, November 29-December 20 R Agmwal, H.Manila, R Srikant, H Toivonen and A Verkamo (1996), Fast discovery of association rules, In U.Fayyad and et al, editors, Advances in Knowledge Discovery and Data Minning MIT Press 21 R Agrawal and R Srikant, (1994), Fast algorithms for minning association rules, In 20th VL.DBConf, Sept 22 R Agrawal, T Imielinski and A Swami (1993), Minning association rules between sets of items i large databases, In ACM SIGMOD Intil C@ Managenment of Data, May 23 Two Crows (2005), Introduction to Data Minning and Knowledge Discovery, Edition third 24 Usama Fayyad, Gregory Piatetsky-Shapiro, and Padhraic Smyth, (2002) From Data Minning To Discory Knowledge in Database Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 78 http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên 79 http://www.lrc-tnu.edu.vn

Ngày đăng: 04/08/2016, 22:22

Từ khóa liên quan

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

Tài liệu liên quan