Khai phá luật kết hợp với dữ liệu phân tán dựa trên mô hình mapreduce (tt)

28 31 0
Khai phá luật kết hợp với dữ liệu phân tán dựa trên mô hình mapreduce (tt)

Đ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

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - TRẦN THỊ LỊCH KHAI PHÁ LUẬT KẾT HỢP VỚI DỮ LIỆU PHÂN TÁN DỰA TRÊN MƠ HÌNH MAPREDUCE LUẬN VĂN THẠC SĨ KỸ THUẬT HÀ NỘI – 2014 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG - KHAI PHÁ LUẬT KẾT HỢP VỚI DỮ LIỆU PHÂN TÁN DỰA TRÊN MƠ HÌNH MAPREDUCE Chun ngành: Khoa học máy tính Mã số : 60.48.01.01 LUẬN VĂN THẠC SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRẦN ĐÌNH QUẾ HÀ NỘI - 2014 MỞ ĐẦU Lý chọn đề tài Khai phá liệu (Data Mining ) lĩnh vực khoa học liên ngành xuất gần nhằm đáp ứng nhu cầu phát hiê ̣n những tri thức có ích , phục vụ cho công viê ̣c của người Các kết nghiên cứu với ứng dụng thành công khai phá liệu, khám phá tri thức cho thấy khai phá liệu lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có ưu hẳn so với cơng cụ phân tích liệu truyền thống Trong lĩnh vực khai phá liệu , mục đích luật kết hợp (Association Rule - AR) tìm mối kết hợp (Association) hay tương quan (Correlation) đối tượng khối lượng lớn liệu Ứng dụng luật kết hợp phổ biến nhiều lĩnh vực, kinh doanh phân tić h hành vi khách hàng , dự đoán nhu cầ u khách hàng Mô hin ̀ h MapReduce mơ hình lập trình giúp ứng dụng có thể xử lý nhanh lượng lớn liê ̣u các máy phân tán hoa ̣t đô ̣ng song son g, đô ̣c lâ ̣p với từ đó giúp rút ngắ n thời gian xử lý toàn bơ ̣ dữ liê ̣u MapReduce có thể chạy phần cứng thơng thường (commodity hardware), khơng địi hỏi server chạy MapReduce phải máy tính có khả tính tốn, lưu trữ truy xuất mạnh mẽ Do vậy, chi phí triển khai MapReduce rẻ MapReduce làm đơn giản hoá giải thuật tính tốn phân tán Với MapReduce, bạn cần cung cấp hai hàm Map Reduce với số thành phần xử lý liệu đầu vào Do vậy, nhà phát triển ứng dụng phân tán có thể tập trung nhiều cho phần logic ứng dụng, bỏ qua chi tiết phức tạp việc phân tán xử lý Sự đời MapReduce mở cho doanh nghiệp hội xử lý nguồn liệu đồ sộ với chi phí thấp thời gian nhanh Với việc áp dụng MapReduce, Amazon có thể xử lý file log phát sinh trình bán hàng mạng, phục vụ cho việc dự đoán xu hướng mua hàng khách hàng, sản phẩm mua nhiều… Facebook có thể xử lý khối lượng 10 tỷ hình ảnh mà họ lưu trữ để rút trích thơng tin kích thước hình ảnh, phát hình ảnh xấu Vì lý mà tơi chọn đề tài “ Khai phá luật kế t hợp với dữ liê ̣u phân tán dựa mô hình MapReduce” làm đề tài luận văn Mục đích nghiên cứu  Tìm hiểu kỹ thuật , thuâ ̣t toán khai phá luâ ̣t kế t hơ ̣p khai phá dữ liê ̣u  Nghiên cứu mô ̣t mô hình lâ ̣p trình MapReduce viê ̣c ứng du ̣ng vào các bài toán xử lý mô ̣t lươ ̣ng lớn dữ liê ̣u Sử du ̣ng H adoop, mô ̣t thể hiê ̣n của MapReduce, cho viê ̣c phân tić h dữ liê ̣u  Áp du ̣ng cấ u trúc, tham chiế u các đă ̣c trưng của mơ hình MapReduce vào toán phân tić h xu hướng khách hàng nhằm rút luật kết hợp Đối tƣợng phạm vi nghiên cứu  Nghiên cứu khái niệm, vai trò, ứng dụng kỹ thuật khai phá liệu  Tìm hiểu, nghiên cứu khai phá dữ liê ̣u với luâ ̣t kế t hơ ̣p và mô ̣t sớ th ̣t toán  Tìm hiểu , nghiên cứu mô hình lâ ̣p trình MapReduce, Hadoop Phƣơng pháp nghiên cứu  Nghiên cứu, tìm hiểu lý thuyết kỹ thuật khai phá liệu  Tìm hiểu cài đặt mơ hình lập trình MapReduce nề n Hadoop Sử du ̣ng ngôn ngữ lâ ̣p trin ̀ h Java tích hợp Framework Hadoop môi trư Eclipse ờng  Nguồ n dữ liê ̣u sẽ sử du ̣ng để thử nghiê ̣m là dữ liê ̣u mua bán lẻ của khách hàng đã đươ ̣c lưu trữ ta ̣i siêu thị Kết cấu luận văn Chƣơng 1: TỔNG QUAN KHAI PHÁ DƢ̃ LIỆU Giới thiê ̣u tổ ng quan về quá trình khai phá dữ liê ̣u, phương pháp khai phá liệu , nhiê ̣m vu ̣ chính , quy trình khai phá liệu Chƣơng 2: KHAI PHÁ LUẬT KẾT HỢP Trình bày tổng quan khai phá luật kết hợp giới thiê ̣u mô ̣t số thuâ ̣t toán khai phá luâ ̣t kế t hơ ̣p Chƣơng 3: TỔNG QUAN MÔ HÌ NH LẬP TRÌ NH MAPREDUCE Trình bày tổng quan mơ hình lập trình MapReduce , thành phần , cấ u trúc của mô hiǹ h này Làm quen với môi trường phân tán Hadoop mô hình đó Chƣơng 4: ỨNG DỤNG LUẬT KẾT HỢP TRONG MÔ HÌ NH MAPREDUCE Tóm tắt lại kết đạt , ưu điể m , nhươ ̣c điể m của thuâ ̣t toán và phương hướng phát triể n tiế p theo CHƢƠNG TỔNG QUAN KHAI PHÁ DỮ LIỆU 1.1 Khai phá dƣ̃ liêụ là gi?̀ 1.2 Quy trin ̀ h khai phá dƣ̃ liêụ Làm liệu Tích hợp liệu Trích chọn liệu Chuyển đổi liệu Khai phá liệu Ước lượng mẫu Biểu diễn tri thức 1.3 Các phƣơng pháp khai phá liệu 1.3.1 Phát luật kết hợp 1.3.2 Phân cụm 1.3.3 Phân lớp 1.3.4 Hồi quy 1.3.5 Mơ hình phụ thuộc 1.3.6 Phát thay đổi độ lệch 1.4 Các dạng sở liệu khai phá  CSDL quan hệ (relational databases)  CSDL dạng giao dịch (transactional databases)  CSDL mở rộng 1.5 Phân loại hệ khai phá liệu  Phân loại dựa kiểu liệu khai phá  Phân loại dựa dạng tri thức khám phá  Phân loại dựa kỹ thuật áp dụng  Phân loại dựa lĩnh vực áp dụng 1.6 Nhƣ̃ng thách thƣ́c khai phá dƣ̃ liêụ 1.7 Các ứng dụng khai phá liệu 1.8 Kế t luâ ̣n Trong chương một, luận văn trình bày cách tổng quan KPDL - cụ thể định nghĩa KPDL mục đích, ứng dụng, động thúc đẩy nhà tin học chú trọng vào lĩnh vực nghiên cứu CHƢƠNG 2: KHAI PHÁ LUẬT KẾT HỢP 2.1 Giới thiêụ 2.1.1 Các khái niệm bản Định nghĩa 2.1: Độ hỗ trợ (support) luật kết hợp X  Y : Support = Định nghĩa 2.2: Độ tin cậy (Confidence) luật kết hợp X  Y : Đơn vị tính % Confidence = Các luật thỏa mãn có support confidence thỏa mãn (lớn hoặc bằng) Minimum support Minimum confidence gọi luật mạnh (Strong Rule) Một itemsets mà tần suất xuất >= min_sup goi frequent itemsets 2.1.2 Khai phá luật kế t hợp 2.1.2.1 Phát biểu toán: - Cho tập mục I = {I1, I2, , Im} - Một sở liệu giao dịch D (n giao dịch) - Độ hỗ trợ tối thiểu minsup độ tin cậy tối thiểu mincof Tìm tập luật kết hợp R: X  Y cho support(X  Y) >= minsup confidence(X  Y) >= mincof 2.1.2.2 Giải tốn  Tìm tất tập mục thỏa mãn độ hỗ trợ tối thiểu minsup cho trước, hay tập mục phổ biến  Tìm tất luật kết hợp từ tập mục phổ biến thỏa độ tin cậy tối thiểu mincof cho trước 2.1.2.3 Phân loại luật kết hợp  Luật kết hợp nhị phân  Luật kết hợp mờ  Luật kết hợp nhiều mức 2.2 Mô ̣t số thuâ ̣t toán khai phá luâ ̣t kế t hơ ̣p 2.2.1 Thuật toán khai phá luật kế t hợp tuầ n tự 2.2.2 Thuật toán khai phá luật kết hợp song song 2.2.3 Thuật toán khai phá luật kế t hợp phân tán 2.3 Ứng dụng luật kết hợp 12 MapReduce sử dụng hai thao tác cho việc thực thi cơng việc ban đầu từ người dùng hàm map hàm reduce Hàm map có input cặp (k1, v1) output danh sách cặp (k2, v2) map(k1, v1) -> list(k2, v2) Sau giai đoạn chúng ta có tập hợp nhiều cặp (key, value) thuộc kiểu (k2, v2) gọi cặp (key, value) trung gian MR nhóm cặp theo key, cặp (key, value) trung gian có k2 nằm nhóm trung gian Một cách hình thức, hàm có thể mơ tả sau reduce(k2, list (v2))->list(v3) Trong k2 key chung nhóm trung gian, list(v2) tập values nhóm, list(v3)là danh sách giá trị trả reduce thuộc kiểu liệu v3 Do reduce áp dụng vào nhiều nhóm trung gian độc lập nhau, chúng lại lần có thể chạy song song với 3.1.3 Ưu điểm của MapReduce 3.1.4 Nguyên tắ c hoa ̣t động của MapReduce 13  Đọc liệu đầu vào  Thực xử lý phần liệu vào (xử lý phần ) (Thực hàm Map)  Trộn sắp xếp kết thu từ máy tính để kết tiện lợi so với mục đích q trình  Tổng hợp kết trung gian thu từ máy tính phân tán (Thực hàm reduce) Hình 3.2 Sơ đồ hoạt động trình Mapreduce  Đưa kết cuối 14 3.2 Giới thiêụ nề n tảng tính toán phân tán Hadoop mô hin ̀ h MapReduce 3.2.1 Hadoop là gì? 1) Hadoop framework cho phép phát triển ứng dụng phân tán 2) Hadoop cung cấp phương tiện lưu trữ liệu phân tán nhiều node 3.2.2 Lịch sử Hadoop 3.2.3 Các thành phần Hadoop 3.2.4 Ứng dụng Hadoop 3.3 Hadoop Distributed File System (HDFS) 3.3.1 Giới thiê ̣u 3.4 Kế t luâ ̣n Một số ván đề tìm hiểu chương này:  MapReduce mơ hình lập trình thực thi song song xử lý phát sinh tập liệu lớn  MapReduce mơ hình áp dụng hệ thống máy tính kết nối với cài đặt chương trình MapReduce thường kèm theo hệ thống chia sẻ file phân tán (HDFS) 15 CHƢƠNG 4: ỨNG DỤNG LUẬT KẾT HỢP TRONG MƠ HÌ NH MAPREDUCE 4.1 Giới thiệu tốn Maket Basket Analysis (MBA) phương pháp khai phá liệu để phân tích dựa tập liệu với Ý tưởng thuật tốn tìm kết hợp cặp mặt hàng cửa hàng… Trong chương chúng ta thực nghiệm mơ hình lập trình MapReduce với toán Maket Basket Analysis 4.1.1 Thuật toán khai phá luật kết hợp Apriori Bài toán khai phá luật kết hợp chia thành hai toán nhỏ: Bài tốn 1: Tìm tất tập mục thỏa mãn độ hỗ trợ tối thiểu minsup cho trước hay tập mục phổ biến Bài tốn 2: Tìm tất luật kết hợp từ tập mục phổ biến thỏa độ tin cậy tối thiểu mincof cho trước Thuật toán sau: 16 //(1) Map transaction t in data source to all Map nodes; C1 = {size frequent items}; // (2) min_support = num/total items; L1 = {size frequent items min_support}; for (k = 1; Lk !=∅; k++) begin // (3) xếp loại bỏ items trùng từ Lk Ck+1 = Lk join_sort Lk; for each transaction t in data source with Ck+1 // Đếm số lần xuất hiện Ck+1 t // (5) Tìm Lk+1 với Ck+1 thỏa mãn min_support Lk+1 = {size k+1 frequent items min_support}; end end return ∪k Lk; Hình 4.1 Thuật tốn Apriori 4.1.2 Tḥt toán khai phá luật kết hợp Apriori MapReduce Giai đoạn Mapper: 17 Step 1: Đọc giao dịch liệu đầu vào tạo tập Item (, ,…, ) where < Vn>:(vn1, vn2, vnm) Step 2: Sắp xếp tất tập tạo tập liệu sắp xếp : (, , …, ) < Un>: (un1, un2, unm) Step 3: Vòng lặp While < Un> có phần tử tiếp theo; //Chú ý:mỗi danh sách Un xử lý riêng rẽ 3.1: Vòng lặp For Item từ un1 tới unm < Un> with NUM_OF_PAIRS 3.a: sinh tập liệu : (yn1, yn2, ynl); Ynl: (unx uny) danh sách cặp (un1, un2, unm) where unx uny 3.b: Làm tăng xuất ynl; //Chú ý: (key, value) = (ynl, số lần xuất hiện) 3.2: Kết thúc vòng lặp For Step 4: Kết thúc vòng lặp While Tập liệu tạo đầu vào giai đoạn Reducer: (key, ) = (ynl, ) Hình 4.2 MBA Algorithm for Mapper 18 Giai đoạn Reducer Đọc(ynl,) data từ nhiều node Add the values for ynl to have (ynl, total number of occurrences) Hình 4.3 MBA Algorithm for Reducer 4.1.3 So sánh thuật toán apriori MapReduce thuật toán Apriori Độ phức tạp thuật toán Apriori O(k t n)) với k: kích cỡ frequent items, t: số giao dịch, n: số Items giao dịch với t>>k, n>>k Độ phức tạp thuật toán Apriori-Map/Reduce O(k t n/p) với k: kích thước frequent items, t: số transactions, n: số items transactions, p: số nodes Map Reduce giả sử kích thước Node Với điều kiện t >> k, n >> k Lý thuyết độ phức tạp thuật toán Apriori sử dụng Map/Reduce p lần so với thuật toán Apriori 19 4.2 Phƣơng pháp thử nghiệm hai thuật tốn Cài đặt mơ hình lập trì nh MapReduce nề n Hadoop Sử du ̣ng ngôn ngữ lâ ̣p trình Java Thử nghiệm hai thuật toán Apriori Apriori áp dụng MapReduce hai sở liệu giao dịch khác nhau:  Cơ sở liệu 1: Là liệu khách hàng ngân hàng gồm 11 thuộc tính 600 khách hàng  Cơ sở liệu 2: Gồm 1000 giao dịch hàng hóa 4.2.1 Cài đặt thuật toán Apriori sử dụng Map/Reduce  Đầu vào file “AssociationsSP.txt” File có dạng sở liệu giao dịch  Đầu cặp mặt hàng kết hợp với giao dịch tùy theo lựa chọn số item xuất 4.2.2 Cài đặt thuật toán Apriori Đầu vào: Gồm file: File config.txt có dòng: số Item, Số giao dịch, support File transa.txt: Là CSDL giao dịch Đầu ra: Là file output.txt chứa tập frequent Itemset 20 4.3 Kết 4.3.1 Kết quả thực nghiệm dạng bảng Bảng 4.1 Bảng so sánh thời gian thực hiện hai thuật toán Apriori Thời gian thực thuật toán Apriori Tuần tự Apriori với MapReduce Cơ sở liệu 34,607s 3,2s Cơ sở liệu 37,063s 4s 4.3.2 Kết quả thực nghiệm dạng biểu đồ 40 30 csdl1 20 csdl2 10 APRIORI_TT APRIORI_MR Hình 4.6 Biểu đồ so sánh hai thuật toán Apriori 21 80 70 60 50 40 30 20 1000 10 600 Apriori_TT Apriori_MR Hình 4.7 Biểu đồ biến thiên theo thời gian thực hiện hai thuật toán Một thuật toán khác PALM (Preprocessed Apriori For Logical Matching Using Map Reduce Algorithm) thuật toán cải tiến thuật toán Apriori áp dụng với mơ hình MapReduce cho kết sau: 22 Hình 4.8 Kết thực nghiệm cho thấy hiệu PALM áp dụng MapReduce 4.4 Đánh giá thực nghiệm Nhìn vào biểu đồ ta thấy:  Với sở liệu, số giao dịch thuật tốn Apriori với MapReduce có thời gian thực thuật toán tốt  Khi số lượng giao dịch tăng lên thời gian thực tốt so với Apriori  Theo hình 4.8 ta thấy hiệu thuật tốn PALM khác thuật toán mở rộng từ thuật tốn Apriori tổng qt áp dụng với mơ hình MapReduce làm giảm số lượng 23 giao tác để tạo tập phổ biến cuối Tác giả thực ba thử nghiệm (series) với hai thuật toán Apriori tổng quát PALM với tập liệu lớn (100 ghi) cho kết hình 4.8  Như với liệu thực nghiệm chứng minh cho ta thấy việc áp dụng mơ hình MapRedue vào giải toán khai phá luật kết hợp giúp chúng ta làm giảm thời gian thực thuật toán thực có hiệu toán cần xử lý khối lượng lớn liệu 4.5 Kế t luâ ̣n Trong chương chúng ta tìm hiểu số vấn đề sau:  Phân tích thuật tốn Apriori áp dụng mơ hình MapReduce theo phương pháp thông thường Cho thấy ưu điểm MapReduce hẳn độ phức tạp thuật tốn  Ứng dụng mơ hình MapReduce cho toán khai luật kết hợp Masket Basket Analysis, cài đặt Hadoop Java  Cài đặt, đánh giá thực nghiệm so sánh thuật toán Apriori với mơ hình MapReduce Apriori 24 KẾT LUẬN CHUNG Kết đạt đƣợc luận văn Sau thời gian tìm hiểu, nghiên cứu đến luận văn hoàn thành Về luận văn đáp ứng nội dung đăng ký đề cương Cụ thể luận văn đạt số kết sau:  Tìm hiểu, nghiên cứu số thuật toán khai phá liệu, khai phá luật kết hợp Đi sâu vào nghiên cứu thuật toán khai phá luật kết hợp sở liệu phân tán Phân tích, đánh giá ưu nhược điểm thuật tốn từ đưa đề xuất cải tiến nhằm tăng hiệu thuật tốn Tìm hiểu kỹ thuật tốn khai phá luật kết hợp khai phá liệu  Nghiên cứu mô ̣t mô hiǹ h lâ ̣p triǹ h MapReduce viê ̣c ứng du ̣ng vào các bài toán xử lý mô ̣t lươ ̣ng lớn dữ liê ̣u Sử du ̣ng H adoop, mô ̣t thể hiê ̣n của MapReduce, cho viê ̣c phân tích dữ liê ̣u  Áp du ̣ng cấ u trúc , tham chiế u các đă ̣c trưng của mơ hình MapReduce vào toán phân tić h xu hướng khách hàng nhằm rút luật kết hợp 25  Qua thực nghiệm rút ưu điểm, nhược điểm mơ hình MapReduce luật kết hợp cách khắc phục nhược điểm  Thử nghiệm tốn Maket Basket Analysis với mơ hình MapReduce Hạn chế đề tài  Cần tìm hiểu sâu mơ hình lập trình MapReduce mơ hình mơ hình mới, áp dụng với lượng sở liệu lớn phân tán để có tốn thực nghiệm thực tế  Cơ sở liệu đưa vào thực nghiệm chưa đa dạng Hƣớng nghiên cứu  Nghiên cứu mơ hình MapReduce áp dụng vào tốn khai phá Web  Ứng dụng luật kết hợp thương ma ̣i điê ̣n tử khai phá liệu trang thương mại điện tử ̣ phân tán 26 ... Tìm tất luật kết hợp từ tập mục phổ biến thỏa độ tin cậy tối thiểu mincof cho trước 2.1.2.3 Phân loại luật kết hợp  Luật kết hợp nhị phân  Luật kết hợp mờ  Luật kết hợp nhiều mức 2.2 Mô ̣t... sau:  Tìm hiểu, nghiên cứu số thuật toán khai phá liệu, khai phá luật kết hợp Đi sâu vào nghiên cứu thuật toán khai phá luật kết hợp sở liệu phân tán Phân tích, đánh giá ưu nhược điểm thuật... databases)  CSDL mở rộng 1.5 Phân loại hệ khai phá liệu  Phân loại dựa kiểu liệu khai phá  Phân loại dựa dạng tri thức khám phá  Phân loại dựa kỹ thuật áp dụng  Phân loại dựa lĩnh vực áp dụng

Ngày đăng: 19/03/2021, 17:58

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

Tài liệu liên quan