1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Các thuật toán phân cụm dữ liệu và ứng dụng

91 829 5

Đ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

Thông tin cơ bản

Định dạng
Số trang 91
Dung lượng 1,09 MB

Nội dung

BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - NGUYỄN THẾ HUỲNH CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC Toán Công Nghệ NGƯỜI HƯỚNG DẪN KHOA HỌC: TS Nguyễn Hữu Tiến Hà Nội – 2010 MỤC LỤC LỜI CẢM ƠN MỞ ĐẦU DANH MỤC THUẬT NGỮ VIẾT TẮT DANH MỤC BẢNG DANH MỤC HÌNH Chương 10 Tổng quan lý thuyết nhận dạng 10 Chương 12 Các khái niệm phân cụm 12 2.1 Giới thiệu 12 2.1.1 Định nghĩa phân cụm 13 2.2 Độ đo gần gũi 14 2.2.1 Định nghĩa 14 2.2.2 Độ đo gần gũi hai điểm 15 2.2.3 Độ đo gần gũi điểm tập 22 2.2.4 Độ đo gần gũi hai tập 25 Chương 26 Các thuật toán phân cụm 26 3.1 Giới thiệu 26 3.2 Các thuật toán phân cụm 26 3.2.1 Trường hợp véc tơ đặc trưng duyệt thuật toán lần 26 3.2.2 Thuật toán phân cụm cải tiến MBSAS (Modified Basic Sequential Algorithmic Scheme) 29 3.2.3 Thuật toán phân cụm hai ngưỡng TTSAS (Two – Threshold Sequential Algorithm Scheme) 30 3.2.4 Các phương pháp hiệu chỉnh thuật toán BSAS 33 3.2.5 Thuật toán BSAS cải tiến (kết hợp phương pháp hiệu chỉnh) 34 4.1 Giới thiệu 36 4.2 Các thuật toán phân cụm tích tụ 37 4.2.1 Định nghĩa số đại lượng hữu ích thuật toán 38 4.2.2 Thuật toán phân cụm tích tụ dựa lý thuyết ma trận 40 4.2.3 Thuật toán phân cụm tích tụ dựa lý thuyết đồ thị 45 4.3 Các thuật toán phân cụm phân 52 Chương 55 5.1 Giới thiệu 55 5.2 Thuật toán K – means 56 5.3 Thuật toán ISODATA 58 5.4 Thuật toán ISODATA sửa đổi 69 PHỤ LỤC CHƯƠNG TRÌNH ỨNG DỤNG 72 A.Chuẩn bị liệu 72 B.Thuật toán K –Means 75 C.Thuật toán ISODATA 78 D.Một số hình ảnh mô tả kết chạy chương trình 83 KẾT LUẬN 89 TÀI LIỆU THAM KHẢO 90 LỜI CẢM ƠN Trước tiên em xin chân thành cảm ơn thầy giáo TS NGUYỄN HỮU TIẾN tận tình hướng dẫn, bảo em thời gian qua Em xin bày tỏ lòng biết ơn tới thầy cô giáo khoa Toán Tin Ứng Dụng nói riêng trường Đại Học Bách Khoa Hà Nội nói chung dạy bảo, cung cấp kiến thức quý báu cho em suốt trình học tập nghiên cứu trường Em xin gửi lời cảm ơn tới gia đình, bạn bè, người cổ vũ, quan tâm giúp đỡ em suốt thời gian học tập lúc lam luận văn Do thời gian kiến thức có hạn nên luận văn không tránh khỏi thiếu sót định Em mong nhận góp ý quý báu thầy cô bạn Hà Nội tháng 10 năm 2010 NGUYỄN THẾ HUỲNH MỞ ĐẦU Trong thời đại công nghiệp hóa ngày nay, để sản xuất sản phẩm công nghiệp, vai trò thông tin định hướng điều khiển trở nên quan trọng Từ nghiên cứu nhận dạng đưa định hướng điều cần thiết cho việc hoạch định đường đắn để phát triển lĩnh vực Nhận dạng có lịch sử lâu đời, trước năm 1960 thành tựu nhận dạng hầu hết thu từ nghiên cứu thống kê học Nhận dạng ngành khoa học mà mục đích nghiên cứu phương pháp phân chia đối tượng thành nhóm lớp (phân cụm) Trong khuôn khổ luận văn chủ yếu tìm hiểu thuật toán phân cụm liệu v Bố cục luận văn Ngoài phần Mở đầu, Mục lục, Danh mục hình, Phụ lục chương trình, Kết luận, Tài liệu tham khảo, nội dung luận văn gồm năm chương: Chương 1: Tổng quan lý thuyết nhận dạng Chương giới thiệu tổng quan lý thuyết nhận dạng nêu số ứng dụng quan trọng nhận dạng sống Chương 2: Các khái niệm phân cụm Chương giới thiệu khái niệm kỹ thuật phân cụm gồm định nghĩa phân cụm, độ đo độ gần gũi sử dụng phân cụm xét độ đo số trường hợp cụ thể (độ đo gần gũi hai điểm, hai tập, điểm với tập trường hợp véc tơ liệu giá trị thực, giá trị rời rạc, khuyết liệu…) Chương 3: Các thuật toán phân cụm Chương giới thiệu thuật toán cải tiến chúng phân cụm liệu thuật toán phân cụm Đặc điểm thuật toán đơn giản, dễ hiểu có tốc độ xử lý nhanh ta cài đặt máy tính Chương 4: Các thuật toán phân cụm theo thứ bậc Chương mô tả dạng thuật toán phân cụm thuật toán phân cụm theo thứ bậc Cụ thể tìm hiểu hai loại thuật toán là: Các thuật toán phân cụm tích tụ thuật toán phân cụm phân rã Đặc điểm thuật toán kết phân cụm thu theo cấu trúc thứ bậc mà dựa vào lựa chọn kết phù hợp Chương 5: Thuật toán K – Means thuật toán ISODATA Chương tìm hiểu hai thuật toán ứng dụng chủ yếu nhận dạng thuật toán K-Means thuật toán ISODATA Đây hai thuật toán mà chương trình, liệu tự tổ chức gom cụm dựa vào vài tham số đầu vào Đây hai thuật toán ngày ứng dụng nhiều lĩnh vực khác DANH MỤC THUẬT NGỮ VIẾT TẮT DM Dissimilarity Measure SM Similarity Measure BSAS Basic Sequential Algorithmic Scheme MBSAS Modified Basic Sequential Algorithmic Scheme TTSAS Two – Threshold Sequential Algorithmic Scheme WPGMA Weight Pair Group Method Average UPGMA Unweighted Pair Group Method Average UPGMC Unweighted Pair Group Method Centroid WPGMC Weighted Pair Group Method Centroid GAS Generalize Agglomerative Scheme MUAS Matrix Updating Algorithmic Scheme GTAS Graphic Theory Algorithmic Scheme ISODATA Iterative Self- Organizing Data Alnalysis Techniques A DANH MỤC BẢNG Bảng 1: mô tả 20 liệu xét nghiệm rượu vang đỏ "Vinho Verde"…………………………………………………………………………………73 Bảng mô tả thống kê 300 mẫu xét nghiệm theo điểm đánh giá chuyên gia…………………………………………………………………………………… 73 Bảng 3: Kết phân cụm liệu theo thuật toán K-Means với k=4……………….76 Bảng 4: Đánh giá độ xác thuật toán K-Means với k=4……………………76 Bảng 5: Kết phân cụm liệu theo thuật toán K-Means với k=2……………….76 Bảng 6: Đánh giá độ xác thuật toán K-Means với k=2……………………76 Bảng 7: Kết phân cụm theo thuật toán ISODATA với tham số nhập đầu vào chương trình (k,I,L, , , ) = (4,15,2,30,7,10)……………………………………… 79 Bảng 8: Đánh giá độ xác thuật toán ISODATA với tham số đầu vào (k, I, L, , , ) = (4, 20, 2, 30, 7, 10)…………………………… .79 Bảng 9: Kết phân cụm theo thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (4, 20, 2, 30, 7, 10)………………………………… 79 Bảng 10: Đánh giá độ xác thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (4, 20, 2, 30, 7, 10)…………………………80 Bảng 11: Kết phân cụm theo thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (2, 15, 2, 30, 7, 10)…………………………… 80 Bảng 12: Đánh giá độ xác thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (2, 15, 2, 30, 7, 10)…………………………80 Bảng 13: Kết phân cụm theo thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (2, 20, 2, 30, 7, 10)…………………………….80 Bảng 14: Đánh giá độ xác thuật toán ISODATA với tham số nhập đầu vào chương trình (k, I, L, , , ) = (2, 20, 2, 30, 7, 10)…………………………81 DANH MỤC HÌNH Hình1: Menu chương trình thuật toán K-Means………………………………….75 Hình2: Menu chương trình thuật toán ISODATA……………………………… 78 Hình3: Kết phân cụm thuật toán K-Means với số phân cụm nhập 4…… 82 Hình4: Kết phân cụm thuật toán K-Means với số phân cụm nhập 2…… 83 Hình5: Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 15, 2, 30, 7, 10)……………………………………………… 84 Hình6: Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10)……………………………………………… 85 Hình7: Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 15, 2, 30, 7, 10)……………………………………………… 86 Hình8: Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 20, 2, 30, 7, 10)……………………………………………… 87 Điểm / Cụm 4 8 0 64 97 10 32 43 13 10 0 Bảng 3: Kết phân cụm liệu theo thuật toán K-Means với k=4 So sánh với điểm đánh giá chuyên gia ta có kết đánh độ xác thuật toán sau: Cụm Độ xác 7/15 97/172 13/89 8/23 % tương ứng 50 57 15 35 Bảng 4: Đánh giá độ xác thuật toán K-Means với k=4 Ø Kết thu chạy thuật toán với tham số nhập số cụm mong muốn 2: Điểm/ 11 128 67 18 44 22 Cụm Bảng 5: Kết phân cụm liệu theo thuật toán K-Means với k=2 So sánh với điểm đánh giá chuyên gia ta có kết đánh độ xác thuật toán sau: 76 Cụm 2 Độ xác 139/189 25/97 25/97 % tương ứng 74 26 26 Bảng 6: Đánh giá độ xác thuật toán K-Means với k=2 Ø Kết luận: Đánh giá độ xác thuật toán hai kết thu chạy chương trình số liệu cho thấy độ xác thuật toán tăng lên đáng kể trường hợp nhập số cụm Trường hợp giả định có cụm có độ xác cao 57% với số cụm độ xác cao thu 74% Kết cho thấy số cụm liệu hợp lý 77 C.Thuật toán ISODATA Menu chương trình: Hình2: Menu chương trình thuật toán ISODATA Chương trình cho phép nhập tham số đầu vào gồm: Số cụm khởi tạo: k Số vòng lặp giới hạn: I Số cụm kết hợp (trong trường hợp kết hợp cụm): L Số véc tơ dạng nhỏ chứa cụm: Độ lệch chuẩn cực đại: Giới hạn nhỏ cho phép khoảng cách hai cụm: Ngoài ra, chương trình chạy liệu hai chiều nên cho phép nhập thông tin X Y tương ứng với cột liệu file Excel Thực chạy chương trình với số liệu phần A hai biến đầu vào X ‘free sunfur dioxide’ Y ‘pH’ sau: 78 a Với tham số (k, I, L, , , ) = (4, 15, 2, 30, 7, 10) ta thu kết quả: Điểm/ Cụm 11 124 67 17 48 22 0 0 0 0 Bảng 7: Kết phân cụm theo thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 15, 2, 30, 7, 10) Nếu xét trường hợp cụm điểm chuyên gia đánh giá, ta có bảng đánh giá độ xác thuật toán: Cụm Độ xác 11/15 48/172 0/89 0/23 % tương ứng 73 28 0 Bảng 8: Đánh giá độ xác thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10) b Với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10) ta thu kết quả: 79 Điểm/ Cụm 11 129 69 20 43 20 0 0 0 0 Bảng 9: Kết phân cụm theo thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10) Nếu xét trường hợp cụm điểm chuyên gia đánh giá, ta có bảng đánh giá độ xác thuật toán: Cụm Độ xác 11/15 43/172 0/89 0/23 % tương ứng 73 25 0 Bảng 10: Đánh giá độ xác thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10) c Với tham số (k, I, L, , , ) = (2, 15, 2, 30, 7, 10) ta thu kết quả: Điểm/ Cụm 11 128 67 18 44 22 3 Bảng 11: Kết phân cụm theo thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 15, 2, 30, 7, 10) 80 Nếu xét trường hợp cụm điểm chuyên gia đánh giá, ta có bảng đánh giá độ xác thuật toán: Cụm Độ xác 132/187 28/113 % tương ứng 71 25 Bảng 12: Đánh giá độ xác thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 15, 2, 30, 7, 10) d Với tham số (k, I, L, , , ) = (2, 20, 2, 30, 7, 10) ta thu kết quả: Điểm/ Phân cụm 44 22 11 128 67 18 Bảng 13: Kết phân cụm theo thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 20, 2, 30, 7, 10) Nếu xét trường hợp cụm điểm chuyên gia đánh giá, ta có bảng đánh giá độ xác thuật toán: Cụm Độ xác 48/189 88/113 % tương ứng 25 78 Bảng 14: Đánh giá độ xác thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 20, 2, 30, 7, 10) 81 Kết luận: - - Thuật toán ISODATA cho kết phân cụm ổn định, trường hợp chạy thuật toán cho kết phân cụmcụm (đúng trường hợp phân cụmcụm xét theo điểm đánh giá chuyên gia) Độ xác cao thuật toán tăng tăng giá trị số vòng lặp giới hạn (khi nhập số vòng lặp giới hạn 15 độ xác cao đạt 74% với số vòng lặp 20 thuật toán đạt độ xác cao 78%) Kết luận chung: Qua kết chạy chương trình với hai thuật toán K-Means ISODATA cho thấy: - Kết phân cụm 300 liệu phần A cụm Kết phù hợp với kết đánh giá chuyên gia Thuật toán ISODATA có độ xác cao kết hội tụ so với thuật toán K-Means 82 D.Một số hình ảnh mô tả kết chạy chương trình 1- Kết phân cụm thuật toán K-Means với số cụm khởi tạo nhập 4: Hình3 83 2- Kết phân cụm thuật toán K-Means với số cụm khởi tạo nhập 2: Hình4 84 3- Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 15, 2, 30, 7, 10) Hình5 85 4- Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (4, 20, 2, 30, 7, 10) Hình6 86 5- Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 15, 2, 30, 7, 10) Hình7 87 6- Kết phân cụm thuật toán ISODATA với tham số (k, I, L, , , ) = (2, 20, 2, 30, 7, 10) Hình8 88 KẾT LUẬN Luận văn tập trung nghiên cứu cài đặt số thuật toán phân cụm liệu Đây số thuật toán thuyết nhận dạng Những kết mà luận văn đạt được: + Về mặt lý thuyết, luận văn tìm hiểu thuật toán phân cụm liệu từ thuật toán đơn giản, đến thuật toán mà ngày ứng dụng nhiều lĩnh vực phương pháp cải tiến thuật toán + Về thực tiễn, luận văn tiến hành cài đặt thử nghiệm số liệu loại rượu vang đỏ ‘Vinho Verde’ Bồ Đào Nha, thu kết phù hợp có độ xác cao Do điều kiện thời gian nên luận văn tiến hành thử nghiệm hai thuật toán K-Means ISODATA trường hợp hai biến cụ thể liệu Hướng phát triển luận văn: + Tiến hành cài đặt tất thuật toán phân cụm + Thực phân tích phân cụm nhiều liệu khác nhau, nhiều kiểu liệu khác thực tế nhằm xác định mức độ phù hợp thuật toán phân cụm loại liệu cụ thể + Từ kết thực tế thu đề xuất số cải tiến nhằm hoàn thiện thuật toán phân tích phân cụm 89 TÀI LIỆU THAM KHẢO Sergios Theodoridis and Konstantinos Koutroumbas (1999), Patern Recognition, Academic Press Sing-Tze Bow (2002), Patern Recognition and Image Preprocessing, Marcel Dekker Anik K Jane and Richard C Dubles (1998), Algorithm for Clustering Data, Prentice - Hall Pavel Berkin, Survey of Clustering data Mining Techniques, Accrue Software, San Jose Duda R.O and Hart P.E (1973), Patern Classification and Scene Analysis, John Wiley Sons Anderberg M.R (1973), Cluster Analysis for Application, Academic Press Tou J.T and Gonzales R.C (1974), Patern Recognition Principles, Addison – Wesley Fukunaga K (1992), Introduction to Statical Patern Recognition 2-nd Edition, Academic Press Young T.Y and Calvert T.W (1974), Classification, Estimattion and Patern Recognition, Academic Press 90 ... 4: Các thuật toán phân cụm theo thứ bậc Chương mô tả dạng thuật toán phân cụm thuật toán phân cụm theo thứ bậc Cụ thể tìm hiểu hai loại thuật toán là: Các thuật toán phân cụm tích tụ thuật toán. .. véc tơ liệu giá trị thực, giá trị rời rạc, khuyết liệu ) Chương 3: Các thuật toán phân cụm Chương giới thiệu thuật toán cải tiến chúng phân cụm liệu thuật toán phân cụm Đặc điểm thuật toán đơn... trình thuật toán ISODATA……………………………… 78 Hình3: Kết phân cụm thuật toán K-Means với số phân cụm nhập 4…… 82 Hình4: Kết phân cụm thuật toán K-Means với số phân cụm nhập 2…… 83 Hình5: Kết phân cụm thuật

Ngày đăng: 15/07/2017, 23:15

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w