Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 51 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
51
Dung lượng
1,61 MB
Nội dung
Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm PHẦN MỞ ĐẦU Trong những năm gần đây cùng với sự phát triển nhanh chóng của khoa học kỹ thuật là sự bùng nổ về tri thức. Kho dữ liệu, nguồn tri thức của nhân loại cũng trở nên đồ sộ, vô tận làm cho vấn đề khai thác các nguồn tri thức đó ngày càng trở nên nóng bỏng và đặt ra thách thức lớn cho nền công nghệ thông tin thế giới. Cùng với những tiến bộ vượt bậc của công nghệ thông tin là sự phát triển mạnh mẽ của mạng thông tin toàn cầu, nguồn dữ liệu từ Internet trở thành kho dữ liệu khổng lồ. Nhu cầu về tìm kiếm và xử lý thông tin, cùng với yêu cầu về khả năng kịp thời khai thác chúng để nâng cao năng suất và chất lượng cho công tác quản lý, quyết định, dự báo trong các hoạt động sản xuất, kinh doanh,… đã trở nên cấp thiết trong xã hội hiện đại. Nhưng vấn đề tìm kiếm và sử dụng nguồn tri thức đó như thế nào để phục vụ cho công việc của mình lại là một vấn đề khó khăn đối với người sử dụng. Để đáp ứng phần nào yêu cầu này, người ta đã xây dựng các công cụ tìm kiếm và xử lý thông tin nhằm giúp cho người dùng tìm kiếm được các thông tin cần thiết cho mình, nhưng với sự rộng lớn, đồ sộ của nguồn dữ liệu trên Internet đã làm cho người sử dụng cảm thấy khó khăn trước những kết quả tìm được. Trong lĩnh vực thống kê và khai phá dữ liệu, K-Means là một thuật toán khá hiệu quả trong việc phân cụm các tập dữ liệu lớn. Mục đích của nó là gom các đối tượng dữ liệu thành các nhóm sao cho các đối tượng tương tự nhau thì vào cùng một nhóm. Nói chung, cho trước một tập dữ liệu cùng với các thuộc tính của nó, mục tiêu là phân các đối tượng này vào k cụm sao cho các đối tượng trong một cụm thì có các thuộc tính tương đồng và các đối tượng nằm trong các cụm khác nhau thì có các thuộc tính không tương đồng. Tuy nhiên, vẫn còn một số nhược điểm trong thuật toán phân cụm K-Means cổ điển. Đầu tiên là việc chọn điểm trung tâm (centroid) ban đầu và có thể dễ dàng bị mắc kẹt ở điểm cực tiểu địa phương liên quan đến độ đo tổng bình phương sai số (the sum of squared errors) được sử dụng Khai phá dữ liệu và nhà kho dữ liệu Trang 1 1 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm trong thuật toán. Mặt khác, bài toán K-Means trong việc cực tiểu hóa tổng bình phương sai số là một bài toán thuộc lớp NP-hard ngay cả khi số cụm và số thuộc tính chỉ là 2. Do đó, việc tìm kiếm các cụm tối ưu được cho là một bài toán nan giải. Trong bài tiểu luận này, tôi tìm hiểu kỹ thuật phân cụm K-Means và các cải tiến của nó, trong có thuật toán K-Prototypes – là thuật toán cải tiến của K-Means để làm việc với các tập dữ liệu hỗn hợp giữa thuộc tính số và thuộc tính phân lớp (category attribute), đồng thời xây dựng một ứng dụng minh họa thuật toán K-Prototypes trong việc phân cụm bệnh nhân. Sau cùng, trong quá trình tìm hiểu, nghiên cứu và thực hiện bài tiểu luận này, tôi xin trình bày một cải tiến cho thuật toán K-Means trong việc xây dựng một mô hình tối ưu hóa cực tiểu hàm tổng bình phương sai số trên một tập dữ liệu cho trước để tăng cường độ chính xác trong phân cụm của thuật toán K-Means, dựa trên thuật toán được trình bày trong luận văn Thạc sỹ năm 2012 của Elham Karoussi, khoa Công nghệ Thông tin và Truyền thông, trường Đại học Agder, NaUy. Tôi xin chân thành cảm ơn Phó giáo sư, Tiến sĩ Đỗ Phúc, giảng viên môn học “Khai phá dữ liệu và nhà kho dữ liệu”, đã truyền đạt những kiến thức quý báu về các hướng nghiên cứu khai phá dữ liệu tiên tiến hiện nay cũng như những định hướng nghiên cứu sâu hơn trong việc nghiên cứu và cải tiến các thuật toán còn nhiều vấn đề cần khám phá và phát triển; đã hướng dẫn và chỉ bảo để hoàn thành chuyên đề nghiên cứu rất bổ ích và lý thú này. Tôi cũng xin gửi lời cảm ơn tới các bạn cùng nhóm học Lớp CH6 đã trợ giúp rất nhiều trong việc hoàn thành các ứng dụng thử nghiệm. Nội dung của bài tiểu luận ngoài phần mở đầu và kết luận, có bốn chương như sau: Chương 1: Tổng quan về phân cụm dữ liệu. Chương 2: Thuật toán K-Prototype trong phân cụm dữ liệu. Chương 3: Cài đặt thử nghiệm chương trình phân loại bệnh nhân. Chương 4: Thử nghiệm một cải tiến cho thuật toán K-Means. Khai phá dữ liệu và nhà kho dữ liệu Trang 2 2 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm DANH MỤC BẢNG Bảng 1.1: Bảng sự kiện cho các biến nhị phân 18 Bảng 1.2: Bảng quan hệ chứa hầu hết các thuộc tính nhị phân 19 Bảng 3.1: Bảng dữ liệu Patient 37 Bảng 3.2: Bảng dữ liệu InputPatient 38 DANH MỤC HÌNH Hình 1.1: Quá trình phát hiện tri thức 4 Hình 1.2: Tập dữ liệu với 2 lớp: có và không có khả năng trả nợ 6 Hình 1.3: Phân lớp được học bằng mạng neuron cho tập dữ liệu cho vay 7 Hình 1.4: Phân cụm tập dữ liệu cho vay vào trong 3 cụm 9 Hình 2.1: Phân cụm một tập các điểm dựa trên thuật toán K-Means 28 Hình 2.2: Phân cụm một tập các điểm dựa trên thuật toán K-Medoids 30 Hình 3.1: Sơ đồ khối của ứng dụng 38 Hình 3.2: Giao diện chính của ứng dụng 39 Hình 3.3: Giao diện xem dữ liệu đầu vào (đã được tiền xử lý) 39 Hình 3.4: Giao diện cập nhật, chỉnh sửa, thêm mới dữ liệu đầu vào 40 Hình 3.5: Giao diện thể hiện hình ảnh dữ liệu đầu vào trước phân cụm 40 Hình 3.6: Giao diện nhập các thông số để thực hiện phân cụm 41 Hình 3.7: Màn hình thể hiện hình ảnh dữ liệu sau khi phân theo cụm 41 Hình 3.8: Màn hình thể hiện hình ảnh dữ liệu sau khi phân theo Khoa 41 Hình 3.9: Màn hình thể hiện các thông số sau khi phân cụm 42 Hình 3.10: Màn hình thể hiện trọng tâm cụm và các trọng số của cụm 42 Hình 3.11: Màn hình thể hiện kết quả phân cụm 42 Hình 3.12: Report thể hiện dữ liệu ban đầu chưa phân cụm 43 Hình 3.13: Report thể hiện dữ liệu sau khi phân cụm 43 Hình 3.14: Report thể hiện trọng tâm của các cụm 43 Hình 4.1: Tác động của thuật toán “K-Means in multilevel context” 46 Hình 4.2: Kết quả chạy thuật toán K-Means cổ điển trên tập dữ liệu Iris 47 Hình 4.3: Kết quả chạy thuật toán cải tiến trên tập dữ liệu Iris 47 Hình 4.4: Giao diện chương trình thực nghiệm K-Means cải tiến 49 Khai phá dữ liệu và nhà kho dữ liệu Trang 3 3 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm CHƯƠNG 1 TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU Chương này trình bày khái quát về khai khá dữ liệu, phân cụm dữ liệu. Phần cuối chương giới thiệu một số phương pháp phân cụm điển hình. 1. Tổng quan về khai phá dữ liệu Khai phá dữ liệu (Data Mining) là một khái niệm ra đời vào những năm cuối của thập kỷ 1980. Nó là quá trình trích xuất các thông tin có giá trị tiềm ẩn bên trong lượng lớn dữ liệu được lưu trữ trong các cơ sở dữ liệu, kho dữ liệu Hiện nay, ngoài thuật ngữ khai phá dữ liệu, người ta còn dùng một số thuật ngữ khác có ý nghĩa tương tự như: khai phá tri thức từ cơ sở dữ liệu, trích lọc dữ liệu, phân tích dữ liệu/mẫu, khảo cổ dữ liệu. Nhiều người coi Khai phá dữ liệu và một thuật ngữ thông dụng khác là Phát hiện tri thức trong cơ sở dữ liệu (Knowlegde Discovery in Databases - KDD) là như nhau. Tuy nhiên trên thực tế, khai phá dữ liệu chỉ là một bước thiết yếu trong quá trình Phát hiện tri thức trong cơ sở dữ liệu. Có thể nói Data Mining là giai đoạn quan trọng nhất trong tiến trình Phát hiện tri thức từ cơ sở dữ liệu, các tri thức này hỗ trợ trong việc ra quyết định trong nghiên cứu khoa học và sản xuất, kinh doanh. 2. Các bước của quá trình phát hiện tri thức Quá trình phát hiện tri thức tiến hành qua 6 giai đoạn như hình sau: Khai phá dữ liệu và nhà kho dữ liệu Trang 4 4 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm Hình 1.1: Quá trình phát hiện tri thức Bắt đầu của quá trình là kho dữ liệu thô và kết thúc với tri thức được chiết xuất ra. Về lý thuyết thì có vẻ rất đơn giản nhưng thực sự đây là một quá trình rất khó khăn gặp phải rất nhiều vướng mắc như: quản lý các tập dữ liệu, phải lặp đi lặp lại toàn bộ quá trình, (1) Gom dữ liệu: Tập hợp dữ liệu là bước đầu tiên trong quá trình khai phá dữ liệu. Đây là bước được khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ liệu từ các nguồn trên Internet. (2) Trích lọc dữ liệu: Ở giai đoạn này dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn nào đó phục vụ mục đích khai thác, ví dụ chọn tất cả những người có tuổi đời từ 25 - 35 và có trình độ đại học. (3) Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu: Giai đoạn thứ ba này là giai đoạn hay bị sao nhãng, nhưng thực tế nó là một bước rất quan trọng trong quá trình khai phá dữ liệu. Một số lỗi thường mắc phải trong khi gom dữ liệu là tính không chặt chẽ, thiếu logic. Vì vậy, dữ liệu thường chứa các giá trị vô nghĩa và không có khả năng kết nối dữ liệu. Ví dụ: tuổi = 673. Giai đoạn này sẽ tiến hành xử lý những dạng dữ liệu không chặt chẽ nói trên. Những dữ liệu dạng này được xem như thông tin dư thừa, không có giá trị. Bởi vậy, đây là một quá trình rất quan trọng vì dữ liệu này nếu không được “làm sạch - tiền xử lý - chuẩn bị trước” thì sẽ gây nên những kết quả sai lệch nghiêm trọng. (4) Chuyển đổi dữ liệu: Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có thể sử dụng và điều khiển được bằng cách tổ chức lại nó, tức là dữ liệu sẽ được chuyển đổi về dạng phù hợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp. (5) Khai phá dữ liệu: Đây là bước mang tính tư duy trong khai phá dữ liệu. Ở giai đoạn này nhiều thuật toán khác nhau đã được sử dụng để trích ra các mẫu từ dữ liệu. Thuật toán thường dùng là nguyên tắc phân loại, nguyên tắc kết, Khai phá dữ liệu và nhà kho dữ liệu Trang 5 5 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm (6) Đánh giá các luật và biểu diễn tri thức: Ở giai đoạn này, các mẫu dữ liệu được chiết xuất ra bởi phần mềm khai phá dữ liệu. Không phải bất cứ mẫu dữ liệu nào cũng đều hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức (knowledge) cần thiết. Đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa trên một số phép đo. Sau đó sử dụng các kỹ thuật trình diễn và trực quan hoá dữ liệu để biểu diễn tri thức khai phá được cho người sử dụng. Trên đây là 6 giai đoạn của quá trình phát hiện tri thức, trong đó giai đoạn 5 - khai phá dữ liệu (hay còn gọi là Data Mining) là giai đoạn được quan tâm nhiều nhất. 3. Các kỹ thuật khai phá dữ liệu Hình 1.2 bên dưới biểu diễn một tập dữ liệu giả hai chiều bao gồm 27 trường hợp. Mỗi một điểm trên hình đại diện cho một người vay tiền ngân hàng tại một số thời điểm trong quá khứ. Dữ liệu được phân vào hai lớp: những người không có khả năng trả nợ và những người tình trạng vay nợ đang ở trạng thái tốt (tức là tại thời điểm đó có khả năng trả nợ ngân hàng). Hai mục đích chính của khai phá dữ liệu trong thực tế là dự đoán và mô tả. Hình 1.2: Tập dữ liệu với 2 lớp: có và không có khả năng trả nợ 3.1. Khai phá dữ liệu dự đoán Nhiệm vụ của khai phá dữ liệu dự đoán là đưa ra các dự đoán dựa vào các suy diễn trên dữ liệu hiện thời. Nó sử dụng các biến hay các trường Khai phá dữ liệu và nhà kho dữ liệu Trang 6 6 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm trong cơ sở dữ liệu để dự đoán các giá trị không biết hay các giá trị tương lai. Bao gồm các kỹ thuật: phân lớp (classification), hồi quy (regression) • Phân lớp Mục tiêu của phương pháp phân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ liệu. Quá trình phân lớp dữ liệu thường gồm 2 bước: xây dựng mô hình và sử dụng mô hình để phân lớp dữ liệu. Bước 1: Xây dựng mô hình dựa trên việc phân tích các mẫu dữ liệu cho trước. Mỗi mẫu thuộc về một lớp, được xác định bởi một thuộc tính gọi là thuộc tính lớp. Các mẫu dữ liệu này còn được gọi là tập dữ liệu huấn luyện. Các nhãn lớp của tập dữ liệu huấn luyện đều phải được xác định trước khi xây dựng mô hình, vì vậy phương pháp này còn được gọi là học có giám sát. Bước 2: Sử dụng mô hình để phân lớp dữ liệu. Trước hết chúng ta phải tính độ chính xác của mô hình. Nếu độ chính xác là chấp nhận được, mô hình sẽ được sử dụng để dự đoán nhãn lớp cho các mẫu dữ liệu khác trong tương lai. Hay nói cách khác, phân lớp là học một hàm ánh xạ một mục dữ liệu vào một trong số các lớp cho trước. Hình 1.3 cho thấy sự phân lớp của các dữ liệu vay nợ vào trong hai miền lớp. Ngân hàng có thể sử dụng các miền phân lớp để tự động quyết định liệu những người vay nợ trong tương lai có nên cho vay hay không. Khai phá dữ liệu và nhà kho dữ liệu Trang 7 7 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm Hình 1.3: Phân lớp được học bằng mạng neuron cho tập dữ liệu cho vay • Hồi quy Phương pháp hồi quy khác với phân lớp dữ liệu ở chỗ, hồi quy dùng để dự đoán về các giá trị liên tục còn phân lớp dữ liệu thì chỉ dùng để dự đoán về các giá trị rời rạc. Hồi quy là học một hàm ánh xạ một mục dữ liệu vào một biến dự báo giá trị thực. Các ứng dụng hồi quy có nhiều, ví dụ như đánh giá xác xuất một bệnh nhân sẽ chết dựa trên tập kết quả xét nghiệm chẩn đoán, dự báo nhu cầu của người tiêu dùng đối với một sản phẩm mới dựa trên hoạt động quảng cáo tiêu dùng. 3.2. Khai phá dữ liệu mô tả Kỹ thuật này có nhiệm vụ mô tả về các tính chất hoặc các đặc tính chung của dữ liệu trong cơ sở dữ liệu hiện có. Bao gồm các kỹ thuật: phân cụm (clustering), phân tích luật kết hợp (association rules) • Phân cụm Mục tiêu chính của phương pháp phân cụm dữ liệu là nhóm các đối tượng tương tự nhau trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng. Phân cụm dữ liệu là một ví dụ của phương pháp học không giám sát. Không giống như phân lớp dữ liệu, phân cụm dữ liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện. Vì thế, có thể coi phân cụm dữ liệu là một cách học bằng quan sát (learning by observation), trong khi phân lớp dữ liệu là học bằng ví dụ (learning by example). Trong phương pháp này ta sẽ không thể biết kết quả các cụm thu được sẽ như thế nào khi bắt đầu quá trình. Vì vậy, thông thường cần có một chuyên gia về lĩnh vực đó để đánh giá các cụm thu được. Phân cụm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn thị trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại văn bản… Khai phá dữ liệu và nhà kho dữ liệu Trang 8 8 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm Ngoài ra phân cụm dữ liệu còn có thể được sử dụng như một bước tiền xử lý cho các thuật toán khai phá dữ liệu khác. Hình 1.4 cho thấy sự phân cụm tập dữ liệu cho vay vào trong 3 cụm: lưu ý rằng các cụm chồng lên nhau cho phép các điểm dữ liệu thuộc về nhiều hơn một cụm. Hình 1.4: Phân cụm tập dữ liệu cho vay vào trong 3 cụm • Luật kết hợp Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên hệ giữa các giá trị dữ liệu trong cơ sở dữ liệu. Mẫu đầu ra của giải thuật khai phá dữ liệu là tập luật kết hợp tìm được. Khai phá luật kết hợp được thực hiện qua 2 bước: Bước 1: Tìm tất cả các tập phổ biến, một tập phổ biến được xác định qua tính độ hỗ trợ và thỏa mãn độ hỗ trợ cực tiểu. Bước 2: Sinh ra các luật kết hợp mạnh từ tập phổ biến, các luật phải thỏa mãn độ hỗ trợ cực tiểu và độ tin cậy cực tiểu. Phương pháp này được sử dụng rất hiệu quả trong các lĩnh vực như marketing có chủ đích, phân tích quyết định, quản lý kinh doanh,… 4. Tổng quan về phân cụm dữ liệu Việc xử lý gom nhóm một tập các đối tượng vào trong các lớp chứa các đối tượng giống nhau được gọi là phân cụm. Một cụm là một tập hợp Khai phá dữ liệu và nhà kho dữ liệu Trang 9 9 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm các đối tượng dữ liệu giống nhau trong phạm vi cùng một cụm và không giống nhau với các đối tượng trong các cụm khác. Bài toán phân cụm là một hoạt động quan trọng, được dùng rộng rãi trong nhiều ứng dụng, bao gồm nhận dạng, phân tích dữ liệu, xử lý ảnh, nghiên cứu thị trường, Bằng phân cụm, ta có thể nhận biết các vùng đông đúc và thưa thớt, do đó tìm ra toàn bộ các mẫu phân bố và các tương quan thú vị giữa các thuộc tính dữ liệu. Trong kinh doanh, phân cụm có thể giúp cho các nhà nghiên cứu thị trường tìm ra các nhóm riêng biệt dựa trên khách hàng của họ và mô tả các nhóm khách hàng dựa trên các mẫu mua sắm. Trong sinh vật học, nó có thể được dùng để tìm ra các nguyên tắc phân lớp thực vật và động vật, phân lớp gien theo chức năng giống nhau và có được sự hiểu biết thấu đáo các cấu trúc kế thừa trong các mẫu. Phân cụm cũng có thể được dùng để nhận biết các vùng đất giống nhau dùng trong cơ sở dữ liệu đánh giá tài nguyên đất đai và nhận biết các nhóm có hợp đồng bảo hiểm ô tô với mức chi phí trung bình cao, cũng như nhận biết các nhóm nhà trong thành phố theo kiểu nhà, giá trị và khu dân cư. Nó có thể cũng giúp cho việc phân lớp dữ liệu trên Internet để khai thác thông tin. Như một hàm khai phá dữ liệu, bài toán phân cụm được dùng như là một công cụ độc lập để có thể nhìn thấu được bên trong sự phân bố dữ liệu, để quan sát các đặc điểm của mỗi cụm và tập trung trên một tập đặc biệt các cụm cho phép phân tích xa hơn. Tiếp theo, nó phục vụ như là một bước tiền xử lý cho các giải thuật khác như phân lớp và mô tả, thao tác trên các cụm đã tìm được. Phân cụm dữ liệu là một môn khoa học trẻ đang phát triển mạnh mẽ. Có một số lượng lớn các bài báo nghiên cứu trong nhiều hội nghị, hầu hết trong các lĩnh vực của khai phá dữ liệu: thống kê, học máy, cơ sở dữ liệu không gian, sinh vật học, kinh doanh, với tầm quan trọng và các kỹ thuật khác nhau. Do số lượng lớn các dữ liệu đã thu thập trong cơ sở dữ liệu nên phép phân cụm gần đây trở thành một chủ đề tích cực cao trong nghiên cứu khai phá dữ liệu. Khai phá dữ liệu và nhà kho dữ liệu Trang 10 10 [...]... tất cả các đối tượng trong cùng một cụm Khai phá dữ liệu và nhà kho dữ liệu Trang 24 25 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm Trong mỗi lần lặp kế tiếp, một cụm được chia vào trong các cụm nhỏ hơn cho tới khi cuối cùng mỗi đối tượng trong một cụm hay cho tới khi gặp một điều kiện kết thúc Sự kết hợp của sự lặp lại việc định vị và phân ly phân cấp sẽ thuận lợi...11 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm Như là một nhánh của thống kê, bài toán phân cụm được nghiên cứu mở rộng đã nhiều năm, tập trung chính trên phương pháp phân cụm dựa trên khoảng cách Các công cụ phân cụm dựa trên các thuật toán K-Means, K-Medoids và một số các phương pháp khác cũng được xây dựng trong nhiều gói phần mềm hay hệ thống phân tích... Mahattan và Minkowski 5.3 Các biến nhị phân Một biến nhị phân chỉ có hai trạng thái 0 hay 1, với 0 là biến vắng mặt, 1 là biến có mặt Cho trước biến hút thuốc mô tả một bệnh nhân, ví Khai phá dữ liệu và nhà kho dữ liệu Trang 17 18 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm dụ, 1 chỉ rằng bệnh nhân hút thuốc, 0 cho biết bệnh nhân không hút thuốc Xử lý các biến nhị phân. .. điển hình của phân cụm trong khai phá dữ liệu: 1 Khả năng mở rộng: Nhiều giải thuật phân cụm làm việc tốt trong các tập dữ liệu nhỏ chứa ít hơn 200 đối tượng dữ liệu, tuy nhiên một cơ sở dữ liệu lớn có thể chứa hàng triệu đối tượng Phân cụm cho một mẫu của Khai phá dữ liệu và nhà kho dữ liệu Trang 11 12 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm một tập dữ liệu... định vị trong một hình chữ nhật được biểu diễn như Hình 2.2 Cho k = 3, tức là người dùng cần phân các đối tượng vào trong 3 cụm Theo thuật toán 2.2, ta chọn 3 đối tượng tùy ý (đánh dấu "+") với vai trò là 3 tâm cụm ban đầu Sau đó mỗi đối tượng được phân bố vào các cụm Khai phá dữ liệu và nhà kho dữ liệu Trang 30 31 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm đã... dụ: cùng một tập dữ liệu, khi trình diễn với các trật tự khác nhau trong cùng một giải Khai phá dữ liệu và nhà kho dữ liệu Trang 12 13 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm thuật, có thể phát sinh đột xuất các cụm khác nhau Do vậy, việc phát triển các giải thuật nhạy cảm với trật tự đầu vào thực sự quan trọng 7 Số chiều cao: Một cơ sở dữ liệu hay một kho... bệnh nhân và đề xuất một cải tiến phân cụm STING là một ví dụ điển hình của phương pháp dựa trên lưới WaveCluster và CLIQUE là hai giải thuật phân cụm dựa trên cả lưới và mật độ CHƯƠNG 2 THUẬT TOÁN K-PROTOTYPES TRONG PHÂN CỤM DỮ LIỆU Nội dung chương này giới thiệu chi tiết về các phương pháp phân chia nổi tiếng và thường được dùng nhất là K-Means (MacQueen 1967), K-Medoids (Kaufman và Rousseew 1987) và. .. và các dạng cải tiến của chúng Trong đó, đi sâu vào trình bày chi tiết thuật toán K-Prototypes dùng để phân cụm dữ liệu với các giá trị hỗn hợp số và phân lớp 1 Thuật toán K-Means Ý tưởng của thuật toán là chia n phần tử thành k nhóm sao cho các phần tử trong cùng một nhóm sẽ gần tâm của nhóm đó nhất Thuật toán K-Means lấy tham số đầu vào k và phân chia một tập n đối tượng vào trong k cụm để cho kết... cũng có thể áp dụng kỹ thuật này, ví dụ những dữ liệu bao hàm các thuộc tính phân lớp Về phía người sử dụng, họ phải chỉ rõ k - số cụm, và điều này là một bất lợi Thuật Khai phá dữ liệu và nhà kho dữ liệu Trang 27 28 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm toán K-Means không thích hợp với việc tìm các cụm có hình dáng không lồi hay các cụm có kích thước khác... bệnh nhân này, Tom và Anne có thể có bệnh giống nhau nhất 5.4 Các biến tên, có thứ tự và dựa trên tỷ lệ Khai phá dữ liệu và nhà kho dữ liệu Trang 19 20 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm • Biến tên Biến tên là sự suy rộng của biến nhị phân, trong đó nó có thể mang nhiều hơn hai trạng thái Ví dụ, bản đồ màu là một biến tên có thể có 5 trạng thái: đỏ, vàng, . 1 1 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm trong thuật toán. Mặt khác, bài toán K-Means trong việc cực tiểu hóa tổng bình phương sai số là một bài toán. nhau được gọi là phân cụm. Một cụm là một tập hợp Khai phá dữ liệu và nhà kho dữ liệu Trang 9 9 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm các đối tượng. nghiệm K-Means cải tiến 49 Khai phá dữ liệu và nhà kho dữ liệu Trang 3 3 Thuật toán K-Prototypes trong phân loại bệnh nhân và đề xuất một cải tiến phân cụm CHƯƠNG 1 TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU Chương