ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG HUYỀN TRANG PHƢƠNG PHÁP PHÂN CỤM DỰA TRÊN TẬP THÔ VÀ GIẢI THUẬT DI TRUYỀN LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội - 2016 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG HUYỀN TRANG PHƢƠNG PHÁP PHÂN CỤM DỰA TRÊN TẬP THÔ VÀ GIẢI THUẬT DI TRUYỀN Ngành: Hệ thống thông tin Chuyên ngành: Hệ thống thông tin Mã số: 60480104 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS HOÀNG XUÂN HUẤN Hà Nội - 2016 LỜI CẢM ƠN Tôi xin gửi lời biết ơn sâu sắc đến ngƣời thầy PGS,TS Hoàng Xuân Huấn, thầy cô trƣờng Đại học Công nghệ dành nhiều thời gian tâm huyết giảng dạy, hƣớng dẫn khoa học; giúp nâng cao, mở rộng kiến thức, phát triển lực nghiên cứu khoa học, vận dụng thiết thực vào lĩnh vực hệ thống thông tin, hoàn thành tốt luận văn tốt nghiệp này; Trân trọng cảm ơn tới lãnh đạo đơn vị, đồng nghiệp nơi công tác tạo điều kiện thuận lợi cho hoàn thành khóa đào tạo; Xin biết ơn, yêu quý gia đình, ngƣời thân đồng hành vƣợt khó sống, công tác học tập Tôi xin chân thành cảm ơn! Học viên Hoàng Huyền Trang LỜI CAM ĐOAN Tôi xin cam đoan kết đạt đƣợc luận văn sản phẩm cá nhân tôi, thực dƣới hƣớng dẫn PGS, TS Hoàng Xuân Huấn Toàn nội dung luận văn, điều đƣợc trình bày cá nhân đƣợc tổng hợp từ nhiều nguồn tài liệu Tất tài liệu tham khảo có xuất xứ rõ ràng đƣợc trích dẫn quy định Tôi xin hoàn toàn chịu trách nhiệm lời cam đoan Hà Nội, tháng 11 năm 2016 Học viên Hoàng Huyền Trang MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH VẼ DANH MỤC CÁC BẢNG BIỂU MỞ ĐẦU CHƢƠNG I PHÂN CỤM DỮ LIỆU VÀ MỘT SỐ VẤN ĐỀ LIÊN QUAN 10 1.1 Giới thiệu phân cụm liệu 10 1.1.1 Khái niệm mục đích phân cụm liệu 10 1.1.2 Phƣơng pháp phân cụm liệu 11 1.1.3 Phân cụm với giải thuật K-Means 12 1.2 Lý thuyết tập thô 14 1.2.1 Hệ thông tin định 14 1.2.2 Quan hệ bất khả phân biệt 16 1.2.3 Xấp xỉ tập hợp 17 1.2.4 Thuộc tính thiết yếu không thiết yếu 18 1.3 Giải thuật di truyền 19 1.3.1 Thông tin 19 1.3.2 Các thành phần giải thuật di truyền 19 1.3.3 Quy trình thuật toán di truyền 23 1.3.4 Các thông số giải thuật di truyền 25 CHƢƠNG II PHÂN CỤM DỮ LIỆU DỰA TRÊN TẬP THÔ VÀ GIẢI THUẬT DI TRUYỀN 26 2.1 Giới thiệu 26 2.2 Phƣơng pháp phân cụm tập thô 26 2.3 Phƣơng pháp phân cụm dựa giải thuật di truyền 31 2.4 Phƣơng pháp phân cụm dựa tập thô giải thuật di truyền 33 CHƢƠNG III CÀI ĐẶT VÀ PHÂN TÍCH THÍ NGHIỆM 35 3.1 Dữ liệu thử nghiệm 35 3.2 Cài đặt thuật toán 35 3.3 Kết thử nghiệm 37 KẾT LUẬN 39 TÀI LIỆU THAM KHẢO 40 DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Chữ viết tắt GA NST Tiếng Anh Genetic Algorithm Nghĩa Tiếng Việt Giải thuật di truyền Nhiễm sắc thể DANH MỤC CÁC HÌNH VẼ Hình 1.1 Quy trình phân cụm Hình 1.2 Mô phân cụm liệu Hình 1.3 Mô tả phân cụm cứng/rõ phân cụm mềm/mờ Hình 1.4 Sơ đồ thuật toán phân cụm K-Means Hình 1.5 Mô tả trình phân cụm K-Means Hình 1.6 Mô tả xấp xỉ - dƣới Hình 1.7 Sơ đồ giải thuật di truyền Hình 2.1 Mô tả khoảng cách đối tƣợng tới trung tâm cụm Hình 2.2 Mô tả gom cụm vào xấp xỉ - dƣới Hình 2.3 Sơ đồ phân cụm K-Means thô Hình 3.1 Giao diện chƣơng trình Hình 3.2 Giao diện nhập liệu thuộc tính Hình 3.3 Giao diện hiển thị file liệu Hình 3.4 Giao diện kết thuật toán DANH MỤC CÁC BẢNG BIỂU Bảng 1.1 Hệ thống thông tin Bảng 1.2 Bảng định Bảng 1.3 Các triệu chứng cảm cúm Bảng 2.1 So sánh hai giải thuật K-Means, di truyền Bảng 3.1 Kết thực nghiệm với phân cụm K-Means thông thƣờng Bảng 3.2 Kết thực nghiệm với phân cụm dựa tập thô giải thuật di truyền MỞ ĐẦU Phân cụm liệu nghiên cứu quan trọng khai thác liệu đƣợc áp dụng cho đa lĩnh vực [7,8] Mục tiêu phân cụm liệu để phân loại đối tƣợng nhãn thành nhiều cụm mà đối tƣợng thuộc cụm tƣơng tự khác cụm khác Phân cụm liệu đƣợc chia làm hai loại phân cụm liệu cứng/rõ (mỗi điểm liệu thuộc cụm) phân cụm liệu mềm/mờ (mỗi điểm liệu thuộc nhiều cụm dựa vào xác suất định) [12,15] Một kỹ thuật đƣợc sử dụng phổ biến phân cụm liệu thuật toán KMeans, thuộc phân cụm rõ, với hội tụ nhanh chóng khả tìm kiếm địa phƣơng mạnh mẽ Trong trình phân cụm K-Means truyền thống, đối tƣợng liệu thu đƣợc cụm định Tuy nhiên, thực tế đối tƣợng thuộc lớp khác thƣờng ranh giới rõ ràng, việc mô tả liệu thực khó khăn Giải pháp cho đối tƣợng đƣợc cung cấp lý thuyết tập thô, phƣơng pháp tính toán mềm khai thác liệu Để tăng hiệu kết xác cho phân cụm việc sử dụng lý thuyết tập thô tiếp cận hỗ trợ phân cụm K-Means đƣợc đề xuất, xây dựng nên phƣơng pháp phân cụm K-Means thô Mặc dù giải thuật K-Means thô có khả tìm kiếm địa phƣơng mạnh mẽ nhƣng lại dễ rơi vào cực trị địa phƣơng Một biện pháp khắc phục đƣợc hạn chế kết hợp với giải thuật di truyền Thuật toán di truyền thuật toán tìm kiếm ngẫu nhiên với kỹ thuật tối ƣu toàn cầu dựa nguyên tắc tiến hóa sinh học, có lƣợng lớn số song song tiềm ẩn thực không gian tìm kiếm lớn cung cấp giải pháp tối ƣu hóa toàn cầu giúp tránh đƣợc tối ƣu địa phƣơng Luận văn trình bày khảo cứu cách hệ thống báo [6] kiến thức phân cụm liệu rõ, thô theo hƣớng K-Means ứng dụng giải thuật di truyền để phân cụm liệu thô Trên sở xây dựng chƣơng trình thực nghiệm số liệu, kết cho thấy ƣu điểm phƣơng pháp Thông qua quy định phù hợp áp dụng lợi thuật toán, tính xác cụm đƣợc cải thiện Kết thực nghiệm cho thấy thuật toán đƣợc đề xuất có khả điều chỉnh kết có đƣợc độ xác cao Cấu trúc luận văn gồm chƣơng : Chƣơng I Phân cụm liệu số vấn đề liên quan Chƣơng II Phân cụm dựa tập thô thuật toán di truyền Chƣơng III Cài đặt phân tích thí nghiệm 27 - Một đối tƣợng v thuộc xấp xỉ dƣới tập thuộc xấp xỉ ( v A X v A X ) Nghĩa xấp xỉ dƣới tập tập hợp xấp xỉ tƣơng ứng ( A X A X ) - Nếu đối tƣợng v không thuộc xấp xỉ dƣới A X thuộc hai nhiều xấp xỉ ( v A X Y0 , Y1 U , A(Y0 ) A(Y1 ), v A(Y0 ) A(Y1 ) ) Nghĩa đối tƣợng thuộc khu vực biên K-Means sử dụng lý thuyết tập thô (Rough K-Means ) Phƣơng pháp phân cụm thô [13] phổ biến đƣợc bắt nguồn từ phân cụm K-Means cổ điển Tạo ngẫu nhiên k cụm từ n đối tƣợng Giả định đối tƣợng đƣợc biểu diễn vector m chiều Mục tiêu để định đối tƣợng n vào k cụm Mỗi cụm đƣợc đại diện vector m chiều, trọng tâm hay vector cho cụm Quá trình bắt đầu cách chọn ngẫu nhiên k trọng tâm k cụm Các đối tƣợng đƣợc gán cho cụm k dựa giá trị tối thiểu khoảng cách d(v, x) x x1 , vector đối tƣợng v v1 , , v j , , vm vector cụm , x j , , xm với j m Khoảng cách d (v, x) đƣợc cho nhƣ sau: d (v, x) || v x || thƣờng chuẩn Euclide Sau phân tất đối tƣợng vào cụm khác nhau, vector trọng tâm cụm đƣợc tính nhƣ sau: x j v vx j với |x| size cụm x | x| Quá trình dừng lại trọng tâm cụm ổn định, tức vector trọng tâm lặp lại trƣớc trùng với trọng tâm cụm lần lặp Kết hợp thô vào phân cụm K-Means đòi hỏi việc bổ sung khái niệm xấp xỉ dƣới Đặc biệt: Tính toán trọng tâm cần phù hợp đƣợc định liệu đối tƣợng đƣợc gán cho xấp xỉ thấp cụm Các vấn đề giải chi tiết nhƣ sau: (1) Tính toán trọng tâm Tính toán trọng tâm cụm từ KMeans cổ điển cần phải đƣợc sửa đổi bao gồm có xấp xỉ dƣới xấp xỉ Về đối tƣợng đƣợc quan tâm khác xấp xỉ dƣới Tính toán trọng tâm sửa đổi cho thô đƣợc cho bởi: 28 Nếu [A x & A x A x ] Thì v j vA x x j | A x | Ngƣợc lại Nếu [A x & A x A x ] vj v A x A x xj | A x A x | vj vj v A x A x vA x x w w lower upper j Ngƣợc lại | A x | | A x A x | với j m wlower wuper Các thông số wlower wupper tƣơng ứng với tầm quan trọng tƣơng đối xấp xỉ dƣới xấp xỉ Nếu xấp xỉ cụm tƣơng đƣơng với xấp xỉ dƣới, cụm cụm thông thƣờng Nhƣ vậy, điều kiện [A x & A x A x ] luôn giữ để tính toán trọng tâm thƣờng (2) Quyết định xem đối tượng gán cho xấp xỉ cụm Bƣớc việc sửa đổi thuật toán K-Means cho thô thiết kế tiêu chí để xác định xem đối tƣợng thuộc xấp xỉ dƣới cụm cụ thể nhƣ sau: Về bản, đối tƣợng đƣợc giao cho xấp xỉ dƣới cụm khoảng cách đối tƣợng cụm trung tâm nhỏ nhiều so với khoảng cách tới trung tâm cụm lại khác (Hình 2.1) Hình 2.1 Mô tả khoảng cách đối tượng tới trung tâm cụm 29 Cụ thể, vector đối tƣợng v, d(v, xj) khoảng cách v trọng tâm cụm xj Sau đó, có hai bƣớc để xác định thành viên đối tƣợng: d v, x j Bƣớc Xác định trọng tâm gần nhất: dmin d v, xi 1min j k Bƣớc Kiểm tra khoảng cách với trọng tâm cụm gần trọng tâm T t : d v, xi d v, x j Thresold,i j khác Nếu T v thuộc xấp xỉ nhiều cụm Nếu T v thuộc xấp xỉ dƣới cụm Do đó, ta có đƣợc nguyên tắc sau cho phân công đối tƣợng đến xấp xỉ: Nếu T Thì v A xi & v A x j , j T Ngƣợc lại v A xi & v A xi Cần nhấn mạnh không gian xấp xỉ A không đƣợc xác định dựa mối quan hệ đƣợc xác định trƣớc tập đối tƣợng Các xấp xỉ dƣới đƣợc xây dựng dựa tiêu chí mô tả Ý tƣởng thuật toán Rough K-Means tóm tắt: Bƣớc Khởi tạo: Chọn ngẫu nhiên k tâm cụm xuất phát x x1 , , xk Bƣớc Gom cụm đối tƣợng dựa vào xấp xỉ xấp xỉ dƣới (mỗi cụm gồm tập: tập phần tử quan hệ với tâm ứng với xấp xỉ dƣới, tập phần tử quan hệ với tâm ứng với xấp xỉ - Hình 2.2) Hình 2.2 Mô tả gom cụm vào xấp xỉ - Đối với đối tƣợng v, d(v, xi) khoảng cách trọng tâm cụm xi Với d v, xi d v, x j Thresold ;1≤ i, j ≤ k đƣợc sử dụng để xác định thành viên cụm nhƣ sau: Nếu d v, xi d v, x j Thresold v A xi & v A x j v không thuộc xấp xỉ dƣới 30 Ngƣợc lại, v A xi & v A xi nhƣ d (v, xi) tối thiểu, 1≤ i ≤ k Bƣớc Cập nhật lại trọng tâm xi trọng tâm xj = wlower v A x vA x vj A x wupper vA x A x vj A x A x Nếu A x A x vj A x Ngƣợc lại Trong wlower, wupper trọng số thỏa wlower +wupper = Nếu tiêu chuẩn hội tụ đƣợc đáp ứng, nghĩa trung tâm cụm trùng với lần lặp trƣớc dừng lại; Ngƣợc lại đến bƣớc Bắt đầu Input: k cụm, tập đối tƣợng Xác định trọng tâm cụm Với đối tƣợng, Tìm tâm cụm gần với khoảng cách d(v,xi) Tìm khoảng cách đối tƣợng đến trọng tâm khác d(v,xj) No d(v,xi)- d(v,xj) ≤ Thresold Yes Yes Gom đối tƣợng vào xấp xỉ Xi & Xj Thay đổi thành viên cụm? No Kết thúc Hình 2.3 Sơ đồ phân cụm K-Means thô Gom đối tƣợng vào xấp xỉ dƣới Xi 31 So sánh phân cụm thô phân cụm K-Means Voges [16] có so sánh phân cụm thô với phân cụm K-Means, nhận thấy hai kỹ thuật phân cụm xác định số cụm cụ thể đƣợc sử dụng Giải pháp phân cụm thô khác so với K-Means khả nhóm đối tƣợng nhiều cụm khác Phân cụm thô tạo nhiều cụm phân cụm K-Means [16], với số lƣợng cụm cần thiết để mô tả liệu phụ thuộc vào khoảng cách đo Nhiều cụm có nghĩa đối tƣợng có hội cao cụm Một giải pháp với cụm không cung cấp giải pháp hữu ích phân vùng liệu Mặt khác, nhiều cụm làm cho lời giải khó khăn Ngoài ra, mức độ trùng lặp cụm đƣợc giảm thiểu để đảm bảo cụm đƣợc cung cấp thông tin để hỗ trợ việc giải thích 2.3 Phƣơng pháp phân cụm dựa giải thuật di truyền GA trình tìm kiếm dựa nguyên tắc tiến hóa thông qua chọn lọc tự nhiên Các thành phần quan trọng bao gồm: gen, nhiễm sắc thể, quần thể, hệ, hàm thích nghi, lựa chọn, lai ghép đột biến K-Means sử dụng giải thuật di truyền Thuật toán K-Means đƣợc sửa đổi để thích ứng với nguyên tắc GA Nhiễm sắc thể có tổng cộng kxm gen m gen đại diện cho trọng tâm cụm tƣơng ứng Kích thƣớc quần thể số hệ thông số đầu vào Đầu vào: Số cụm k, kích thƣớc quần thể, tập liệu D chứa n đối tƣợng, số hệ muốn tạo tMax Đầu ra: Một tập hợp K cụm Bƣớc 1: Khởi tạo Mỗi NST đƣợc tạo cách chọn ngẫu nhiên k phần tử tập liệu để làm k trọng tâm cụm Bƣớc 2: Lặp từ t =1 đến tMax 1, Đối với nhiễm sắc thể Đƣa phần tử D vào cụm với trọng tâm cụm gần Tính lại k tâm cụm trung bình k cụm vừa tạo thay vào NST Tính toán độ thích nghi cho NST 2, Tạo hệ NST sử dụng phép toán lựa chọn, lai ghép đột biến 3, Sắp xếp cá thể sau đột biến theo thứ hạng (Chọn cá thể có độ thích nghi tốt nhất) Bƣớc 3: In kết Tách k cụm NST quần thể hệ tạo sau có độ thích nghi lớn Điều kiện dừng: Lặp lại bƣớc hệ t = tMax 32 Chú ý: khởi tạo ngẫu nhiên k phần tử không cho phần tử trùng NST Độ thích nghi lớn NST tức tổng khoảng cách từ trọng tâm cụm NST tới điểm liệu ban đầu nhỏ so với NST khác So sánh Phân cụm K-Means K-Means sử dụng giải thuật di truyền Thuật toán phân cụm phổ biến thƣờng đƣợc sử dụng K-Means - kỹ thuật phân nhóm đơn giản hiệu nhƣng kết chƣa đạt giá trị tối ƣu kết phụ thuộc vào việc lựa chọn trung tâm cụm ban đầu Giải thuật di truyền giải thuật tìm kiếm ngẫu nhiên dựa tiến hóa di truyền học tự nhiên, đồng thời có số lƣợng lớn giá trị tiềm ẩn song song, cung cấp giải pháp tối ƣu cho đối tƣợng hàm thích nghi Bảng 2.1 đƣa so sánh hai giải thuật: Bảng 2.1 So sánh hai giải thuật K-Means, di truyền K-Means sử dụng di truyền K-Means - Đầu vào: k, liệu; Quần thể - Đầu vào: k, liệu; k trung P, p nhiễm sắc thể đƣợc chọn ngẫu tâm cụm đƣợc lựa chọn ngẫu nhiên nhiên; Tmax - Phƣơng pháp phân hoạch - Phƣơng pháp tiến hóa - Mục tiêu: Giảm thiểu tổng khoảng - Mục tiêu: Giảm thiểu tổng bình cách từ điểm liệu đến trọng phƣơng khoảng cách tâm cụm - Điều kiện dừng: Không có - Điều kiện dừng: Số lần lặp đạt giá thay đổi trung tâm cụm trị tối đa - Độ phức tạp: O(Tmax*p*n*k*d) - Độ phức tạp: O(n*k*d*i) Trong đó: Trong đó: + n: số điểm liệu + n: số điểm liệu + k: số cụm + k: số cụm + d: kích thƣớc liệu + d: kích thƣớc liệu + Tmax: số lần lặp + i: số lần lặp + p: kích cỡ quần thể Từ bảng 2.1 đƣa số nhận xét sau: - Thuật toán thực không gian tìm kiếm với số cá thể nhiều hơn, bị rơi vào lời giải tối ƣu cục nhƣ phƣơng pháp khác 33 - Thuật toán dễ thực hiện, phải biểu diễn NST để giải toán khác toán có phƣơng pháp mã hóa NST cần viết lại hàm tính độ thích nghi cho toán - Thời gian tính toán thuật toán di truyền chậm phƣơng pháp khác 2.4 Phƣơng pháp phân cụm dựa tập thô giải thuật di truyền Thuật toán K-Means truyền thống thuật toán di truyền cần phải xác định trƣớc số cụm chọn kích cỡ ban đầu tham số Hơn nữa, thuật toán di truyền đƣợc cải tiến làm cho kết không rơi vào tối ƣu địa phƣơng, có khả tìm kiếm toàn cầu mạnh mẽ Đồng thời, đối tƣợng có ranh giới không rõ ràng đƣợc thể cách sử dụng tập thô Vì mà xấp xỉ xấp xỉ dƣới cụm mô tả giới khách quan tốt Trên sở này, phƣơng pháp phân cụm hiệu dựa vào tập thô thuật toán di truyền đƣợc cung cấp [6] Đầu vào: n đối tƣợng liệu, số cụm k Đầu ra: Đầu trung tâm cụm tƣơng ứng với thành phần có giá trị hàm thích nghi lớn Bƣớc Khởi tạo k số cụm, quần thể ngẫu nhiên P có p nhiễm sắc thể, chọn k tâm cụm, số hệ muốn lặp tMax Mã hóa k cụm Bƣớc Phân cụm thô: Giải mã nhiễm sắc thể, gom đối tƣợng tƣơng ứng với k cụm phù hợp với nguyên tắc khoảng cách, sau làm theo phân cụm K-Means thô để phân phối đối tƣợng Bƣớc Tính toán giá trị hàm thích nghi Bƣớc Lựa chọn, lai ghép đột biến Bƣớc Đánh giá lại quần thể Nếu số lần lặp với giá trị tối đa đƣợc xác định, chuyển sang bƣớc 6, không, thuật toán tiếp tục từ bƣớc đến bƣớc Bƣớc Kết thúc Ở phƣơng pháp mã hóa nhị phân khái niệm xấp xỉ xấp xỉ dƣới đƣợc giới thiệu để mã hóa phân cụm thô Chiến lƣợc mã hóa nhƣ sau: Nếu đối tƣợng tập liệu thuộc biên miền âm cụm, mã tƣơng ứng chuỗi nhiễm sắc thể 1, ngƣợc lại Thuật toán di truyền dễ dàng hoạt động có bảng mã nhị phân với tính đơn giản, biên dịch chéo thuận tiện 34 Cơ chế để ngăn chặn cận huyết [6] (The mechanisms to prevent incest) Để trì đa dạng quần thể lựa chọn cá thể kết nối, sử dụng chế để ngăn chặn cận huyết, hạn chế cá thể tƣơng tự lại kết đôi Cụ thể, chọn xác suất hai cá thể, khoảng cách Hamming chúng nhỏ so với ngƣỡng cho trƣớc, lai gép chúng quần thể; không, quay lại tiếp tục chọn lần Chiến lƣợc Elitist [6] (Chọn lọc ƣu tú) Để bảo tồn cá thể tốt giá trị hàm thích nghi cá thể, sử dụng chiến lƣợc chọn lọc ƣu tú, có nghĩa chép cá thể có giá trị thích nghi cao quần thể sang quần thể mới, cá thể không tham gia vào hoạt động lai ghép đột biến 35 CHƢƠNG III CÀI ĐẶT VÀ PHÂN TÍCH THÍ NGHIỆM 3.1 Dữ liệu thử nghiệm Để xác minh tính hợp lệ thuật toán phân cụm, sử dụng liệu sở liệu UCI học máy để kiểm tra thuật toán Nguồn liệu mẫu đƣợc lấy từ địa website: ftp://ftp.ics.uci.edu/pub/machine-learning-databases Sử dụng liệu Zoo để phân cụm, liệu đơn giản có 17 thuộc tính (15 thuộc tính Boolean, numerics) thuộc tính “type” thuộc tính lớp Số trƣờng hợp là: 101 Các thông số thí nghiệm nhƣ sau: số cụm k đƣợc thay đổi tham số khác cố định, kích thƣớc quần thể ban đầu số trƣờng hợp liệu; thuật toán chạy t= 100 lần liên tục; Pc=0.3, Pm=0.02 3.2 Cài đặt thuật toán Chƣơng trình cài đặt thuật toán xây dựng đặc trƣng dựa thuật toán KMeans kết hợp giải thuật di truyền để phân cụm tập liệu thô đƣợc viết ngôn ngữ C# môi trƣờng Net Framework, sử dụng công cụ visual studio 2013 kết hợp DevExpress Hình 3.1 Giao diện chương trình Chƣơng trình gồm modul chính: Module 1: Khai báo thuộc tính Module 2: Đọc file liệu tập thô Module 3: Phân cụm tập liệu đánh giá cụm 36 Chọn tải liệu Hình 3.2 Giao diện nhập liêu thuộc tính Hình 3.3 Giao diện hiển thị file liệu Phân cụm tập liệu đánh giá cụm Hình 3.4 Giao diện kết thuật toán 37 3.3 Kết thử nghiệm Bảng 3.1 Kết thực nghiệm với phân cụm K-Means thông thường K-Means Lƣợt test Cụm số Thời gian chạy 41,6% 27,7% 30,7% 0.01 41,6% 27,7% 30,7% 0.01 41,6% 27,7% 30,7% 0.02 Thời gian chạy 40,6% 17,8% 20,8% 15,8% 5% 0.02 40,6% 17,8% 20,8% 15,8% 5% 40,6% 17,8% 20,8% 15,8% 5% 0.02 Thời gian chạy 5,9% 18,8% 10,9% 12,9% 7,9% 34,7% 8,9% 0.02 5,9% 18,8% 10,9% 12,9% 7,9% 34,7% 8,9% 5,9% 18,8% 10,9% 12,9% 7,9% 34,7% 8,9% 0.02 K=3 41,6% 41,6% 27,7% 27,7% 30,7% 30,7% 0 K=5 40,6% 40,6% 17,8% 17,8% 20,8% 20,8% 15,8% 15,8% 5% 5% 0.01 K=7 5,9% 5,9% 18,8% 18,8% 10,9% 10,9% 12,9% 12,9% 7,9% 7,9% 34,7% 34,7% 8,9% 8,9% 0.02 Giá trị trung bình 41,6% 27,7% 30,7% 0.008 40,6% 17,8% 20,8% 15,8% 5% 0.01 5,9% 18,8% 10,9% 12,9% 7,9% 34,7% 8,9% 0.012 38 Bảng 3.2 Kết thực nghiệm với phân cụm dựa tập thô giải thuật di truyền GA rough K-Means Lƣợt test Cụm số 39,6% 29,7% 30,7% Thời gian chạy 9440 19,8% 20,8% 13,8% 18,8% 26,8% Thời gian chạy 9661 40,6% 30,7% 28,7% 36,6% 30,7% 32,7% 10437 9016 21,8% 20,8% 13,8% 24,8% 18,8% 9650 23,8% 19,8% 13,8% 18,8% 23,8% 9513 10,9% 18,8% 14,9% 14,9% 15,8% 12,9% 11,8% 9944 7,8% 14,9% 13,9% 17,8% 14,9% 13,9% 16,8% 9865 17,8% 14,9% 12,9% 9,8% 12,9% 13,9% 17,8% Thời gian chạy 9944 K=3 37,6% 35,7% 26,7% 9407 K=5 23,8% 18,8% 16,8% 18,8% 21,8% 9667 K=7 11,8% 11,8% 13,9% 13,9% 19,8% 13,9% 14,9% 10027 Giá trị trung bình 44,6% 28,7% 26,7% 9054 38,6% 31,9% 29.5% 9470.8 24,8% 16,8% 23,8% 17,8% 16,8% 9545 22,8% 19,4% 16,4% 19,8% 21.6% 9607.2 18,8% 14,9% 8,9% 12,9% 17,8% 14,9% 11,8% 10120 13,4% 15.1% 12,9% 13,9% 16.2% 13,9% 14.6% 9980 Từ bảng 3.1 3.2 cho thấy so sánh giải thuật K-Means thông thƣờng với GA thô K-Means Kết bao gồm giá trị tỉ lệ gom đối tƣợng vào cụm giá trị trung trung bình thời gian từ thử nghiệm Có thể thấy GA thô K-Means cải thiện kết K-Means qua lần thí nhiệm với số cụm xác định trƣớc Thời gian tính toán phân cụm dựa tập thô giải thuật di truyền có chậm nhƣng việc chọn lọc đối tƣợng vào cụm đa dạng, đồng cho lần chạy Kết thực nghiệm thuật toán kết hợp tập thô thuật toán di truyền, làm cho độ xác phân cụm ƣu việt phân cụm K-Means thông thƣờng Thuật toán đƣa giải pháp tối ƣu toàn cầu có đƣợc kết phân cụm tốt 39 KẾT LUẬN Luận văn trình bày khảo cứu cách có hệ thống báo [6] kiến thức lý thuyết phân cụm liệu, thuật toán phân cụm K-Means; khái niệm lý thuyết tập thô giải thuật di truyền Tìm hiểu giải thuật chung cho phân cụm rõ, thô theo hƣớng thuật toán K-Means ứng dụng giải thuật di truyền phân cụm thô Tiến hành cài đặt thử nghiệm với liệu UCI Luận văn tìm hiểu chiến lƣợc cải tiến phân cụm dựa lý thuyết tập thô thuật toán di truyền để cải thiện chất lƣợng phân cụm Trên sở kết đạt đƣợc, hƣớng nghiên cứu tiếp nhƣ sau: - Tiếp tục nghiên cứu số giải thuật phân cụm dựa tập thô giải thuật di truyền - Xây dựng tiếp chƣơng trình chạy thử nghiệm giải thuật phân cụm, cải thiện thuật toán để có chất lƣợng phân cụm tốt - Tìm kiếm cách thức ứng dụng giải thuật vào thực tiễn Do thời gian hiểu biết lĩnh vực nhiều hạn chế nên luận văn không tránh khỏi khiếm khuyết Tôi xin tiếp thu góp ý quý thầy cô, đọc giả, khắc phục hạn chế, tiếp tục phát triển đề tài theo hƣớng chọn ứng dụng hữu ích công việc sống 40 TÀI LIỆU THAM KHẢO I TÀI LIỆU TIẾNG VIỆT [1] Nguyễn Văn Chức, “Ứng dụng lý thuyết tập thô khai phá liệu”, bis.net.vn năm 2013 [2] Hoàng Xuân Huấn (2012), “Giáo trình Nhận dạng mẫu”, Trƣờng Đại học công nghệ – Đại Học Quốc Gia Hà Nội [3] Nguyễn Đức Thuần, “Lý thuyết tập thô khai phá liệu”, Tập san tin học Quản lý, tập 02, số 2, 2012, 25-32 [4] Vũ thị Anh Trâm, “Sử dụng phương pháp xây dựng đặc trưng dựa di truyền để toám tắt liệu”, luận văn ths năm 2012, ĐH Công nghệ- ĐHQGHN II TÀI LIỆU TIẾNG ANH [5] Bashar Al-Shboul, and Sung-Hyon Myaeng,“Initializing K-Means using Genetic Algorithms”, in World Academy of Science, Engineering and Technology 54 2009 [6] Jianyong Chen and Changsheng Zhang “Efficient Clustering Method Based on Rough Set and Genetic Algorithm” in College of Physics and Electronic Information Engineering, Wenzhou University, Wenzhou, 325035, China; Procedia Engineering 15 (2011) 1498 – 1503 [7] Jiawei Han, Micheline Kamber Data Mining: Concepts and Techniques[M] US Kaufmann Publishers, Inc, 2001: p.223-262 [8] Grabmeier J, Rudolph A Techniques of cluster algorithms in data mining[J] Data Mining and Knowledge Discovery, 2005,6(4):303-360 [9] Guoyin Wang, Yiyu Yao, Hong Yu “A Survey on Rough Set Theory and Applications[J]”, Chinese Journal of Computers,2009 32(7):1229-1246 [10] Kevin E Voges , and Nigel K Ll Pope, “Rough Clustering Using an Evolutionary Algorithm” [11] Parvesh Kumar and Siri Krishan Wasan, “Comparative Study of KMeans , Pam and Rough K-Means Algorithms Using Cancer Datasets”, in 2009 International Symposium on Computing, Communication, and Control (ISCCC 2009) Proc.of CSIT vol.1 (2011) © (2011) IACSIT Press, Singapore [12] Pawan Lingras, “Interval Set Clustering of Web Users with Rough KMeans [J]” Journal of Intelligent Information System,2004, 23: 15-16 [13] Pawan Lingras and Georg Peter, “Applying Rough Set Concepts to Clustering” 41 [14] Pawlak Z “Rough set theory and its application to data analysis[J]” Cybernetics and Systems, 1998, 9: 661-668 [15] Ting Lin, Haixiang Guo, Kejun Zhu, Siwei Gao “An Improved Genetic K-Means Algorithm for Optimal Clustering[J]”.Mathematic in Practice and Theory, 2007, 37(8):104-111 [16] Voges, K E., N K Ll Pope, and M R Brown, “Cluster Analysis of Marketing Data Examining On-line Shopping Orientation: A Comparison of KMeans and Rough Clustering Approaches”, in Abbass, H A., R A Sarker, and C S Newton (eds.), Heuristics and Optimization for Knowledge Discovery, Idea Group Publishing, Hershey, PA, 2002, pp 207-224 ... 2.2 Phƣơng pháp phân cụm tập thô 26 2.3 Phƣơng pháp phân cụm dựa giải thuật di truyền 31 2.4 Phƣơng pháp phân cụm dựa tập thô giải thuật di truyền 33 CHƢƠNG III CÀI ĐẶT VÀ PHÂN TÍCH... phần giải thuật di truyền 19 1.3.3 Quy trình thuật toán di truyền 23 1.3.4 Các thông số giải thuật di truyền 25 CHƢƠNG II PHÂN CỤM DỮ LIỆU DỰA TRÊN TẬP THÔ VÀ GIẢI THUẬT DI TRUYỀN... Phƣơng pháp phân cụm liệu Phân cụm liệu đƣợc chia làm hai loại phân cụm liệu cứng phân cụm liệu mềm: Phân cụm liệu cứng (hay phân cụm rõ) phƣơng pháp gán đối tƣợng vào cụm xác định rõ ranh giới cụm