Chương 4 - Các phương pháp học có giám sát (Giới thiệu về phân cụm, phân cụm dựa trên phân tách). Chương này trình bày những nội dung chính sau: Lý thuyết về phân cụm, ví dụ phân cụm, phân loại phân cụm, thành phần, các bước phân loại, điểm trung tâm, hàm khoảng cách,... Mời các bạn cùng tham khảo.
Học Máy (IT 4862) Nguyễn ễ Nhật hậ Quang quangnn-fit@mail.hut.edu.vn Trường Đại học Bách Khoa Hà Nội Viện Công nghệ thông tin truyền thông Năm học 2011-2012 Nội dung d môn ô học: h Giới thiệu chung g Đánh giá hiệu hệ thống học máy Các phương pháp học dựa xác suất Các phương pháp học có giám sát Cá phương Các h pháp há học h không khô giám iá sát át Giới thiệu phân cụm Phân â cụ cụm dựa ttrên ê p phân â tác tách: k-Means ea s Lọc cộng tác Học tăng cường Học Máy (IT 4862) Học có vs khơng có giám sát Học có giám sát (Supervised learning) Tập liệu (dataset) bao gồm ví dụ, dụ mà ví dụ gắn kèm với nhãn lớp/giá trị đầu mong muốn Mục đích học (xấp xỉ) giả thiết (vd: phân lớp, hàm mục tiêu, ) tiêu ) phù hợp với tập liệu có Giả thiết học (learned hypothesis) sau dùng để phân lớp/dự đốn ví dụ Học khơng có giám sát (Unsupervised learning) Tập liệu (dataset) bao gồm ví dụ, mà ví dụ khơng có thơng tin nhãn lớp/giá trị đầu mong muốn Mục đích tìm (học) cụm/các cấu trúc/các quan hệ tồn tập liệu có Học Máy (IT 4862) Phân cụm ụ Phân cụm/nhóm (Clustering) phương pháp học khơng có giám sát sử dụng phổ biến Học phân cụm Tồn phương pháp học khơng có giám sát khác, ví dụ: Lọc cộng tác (Collaborative filtering), Khai phá luật kết hợp (Association rule mining) mining), Đầu vào: tập liệu khơng có nhãn (các ví dụ khơng có nhãn lớp/giá trị đầu mong muốn) Đầu ra: cụm (nhóm) ví dụ Một cụm (cluster) tập ví dụ Tương tự với (theo ý nghĩa, đánh giá đó) Khác biệt với ví dụ thuộc cụm khác Học Máy (IT 4862) Phân cụm ụ – Ví dụ ụ Một ví dụ phân cụm: Các ví dụ phân chia thành cụm [Liu, 2006] Học Máy (IT 4862) Phân cụm ụ – Các thành p phần Hàm tính khoảng cách (độ tương tự, độ khác biệt) Giải ả thuật phân cụm • Dựa phân tách (Partition-based clustering) • Dựa tích tụ phân cấp (Hierarchical clustering) • Bản đồ tự tổ thức (Self-organizing map – SOM) ợp ((Mixture models)) • Các mơ hình hỗn hợp • … Đánh giá chất lượng phân cụm (Clustering quality) • Khoảng cách/sự khác biệt cụm → Cần cực đại hóa • Khoảng cách/sự khác biệt bên cụm → Cần cực tiểu hóa Học Máy (IT 4862) Phân cụm ụ k-Means Là phương pháp phổ biến phương pháp phân cụm dựa chia cắt (partition (partition-based based clustering) Tập liệu D={x1,x2,…,xr} • i ví dụ (một vectơ khơng gian n chiều) •x Giải thuật k-means phân chia (partitions) tập liệu thành k cụm • Mỗi cụm (cluster) có điểm trung tâm, gọi centroid •k k (tổng số cụm thu được) giá trị xác định trước (vd: định người thiết kế hệ thống phân cụm) Học Máy (IT 4862) k-Means – Các bước Với giá trị k xác định trước • Bước B 1 Chọn Ch ngẫu ẫ nhiên hiê k víí dụ d (được (đ gọii hạt h t nhân – seeds) để sử dụng làm điểm trung tâm ban đầu ((initial centroids)) k cụm • Bước Đối với ví dụ, gán vào cụm (trong số k cụm) có điểm trung tâm (centroid) gần ví dụ • Bước Đối với cụm, tính tốn lại điểm trung tâm (centroid) dựa tất ví dụ thuộc vào cụm • Bước Dừng lại điều kiện hội tụ (convergence criterion) thỏa mãn; không, quay lại Bước Học Máy (IT 4862) k-means(D, k) D: Tập ví dụ học k: Số lượng cụm kết (thu được) Lựa chọn ngẫu nhiên k ví dụ tập D để làm điểm trung tâm ban đầu ầ (initial centroids) while not CONVERGENCE ụ x∈D for each ví dụ Tính khoảng cách từ x đến điểm trung tâm (centroid) Gán x vào cụm có điểm trung tâm (centroid) gần x end for for each cụm Tính (xác định) lại điểm trung tâm (centroid) dựa ví dụ thời thuộc vào cụm end while return {k cụm kết quả} Học Máy (IT 4862) Điều kiện ệ hội ộ tụ ụ Q trình phân cụm kết thúc, nếu: • Khơng có (hoặc có khơng đáng kể) việc gán lại ví dụ vào cụm khác, • Khơng có (hoặc có khơng đáng kể) thay đổi điểm trung tâm ( (centroids) t id ) ủ cụm, h ặ • Giảm khơng đáng kể tổng lỗi phân cụm: k E Error =∑ d ( x , m ) ∑ i i =1 x∈Ci Ci: Cụm thứ i mi: Điểm trung tâm (centroid) cụm Ci d(x, mi): Khoảng cách (khác biệt) ví dụ x điểm trung tâm mi Học Máy (IT 4862) 10 k-Means – Minh họa ọ (1) ( ) [Liu, 2006] Học Máy (IT 4862) 11 k-Means – Minh họa ọ ((2)) [Liu, 2006] Học Máy (IT 4862) 12 Điểm trung tâm, Hàm khoảng cách Xác định điểm trung tâm: Điểm trung bình (Mean centroid) mi = Ci ∑x x∈Ci • ((vectơ)) mi điểm trung g tâm ((centroid)) cụm Ci • |Ci| kích thước cụm Ci (tổng số ví dụ Ci) Hàm khoảng cách: Euclidean distance d ( x, m i ) = x − m i = (x1 − mi1 )2 + (x2 − mi )2 + + (xn − )2 • (vectơ) mi điểm trung tâm (centroid) cụm Ci • d(x,mi) khoảng cách ví dụ x điểm trung tâm mi Học Máy (IT 4862) 13 k-Means – Các ưu điểm Đơn giản • Rất dễ cài ài đặt • Rất dễ hiểu Hiệ Hiệu ả • Độ phức tạp thời gian ~ O(r.k.t) r: Tổng số ví dụ (kích thước tập liệu) k: Tổng số cụm thu t: Tổng số bước lặp (của q trình phân cụm) • Nếu ế ả giá trị k t ề nhỏ, ỏ giải ả thuật k-means xem có độ phức tạp mức tuyến tính k means giải thuật phân cụm dùng phổ biến k-means Học Máy (IT 4862) 14 k-Means – Các nhược điểm (1) Giá trị k (số cụm thu được) phải xác định trước Giải thuật k-means cần xác định cách tính điểm trung bình (centroid) cụm • Đối ố với thuộc tính định danh (nominal attributes), giá trị trung bình xác định giá trị phổ biến Giải thuật k-means k means nhạy cảm (gặp lỗi) với ví dụ ngoại lai (outliers) • Các ví dụ ụ ngoại g lai ví dụ ụ ((rất)) khác biệt ệ với tất ví dụ ụ khác • Các ví dụ ngoại lai lỗi trình thu thập/lưu liệu • Các ví dụ ngoại lai có giá trị thuộc tính (rất) khác biệt với giá trị thuộc tính ví dụ khác Học Máy (IT 4862) 15 k-Means – Các ví dụ ụ ngoại g lai [Liu, 2006] Học Máy (IT 4862) 16 Giải q y vấn đề ngoại g lai • Giải pháp Trong trình phân cụm, cần loại bỏ số ví dụ ụq khác biệt ệ với ((cách xa)) điểm trung g tâm (centroids) so với ví dụ khác ─ Để chắn (khơng loại nhầm), theo dõi ví dụ ngoại lai (outliers) qua vài (thay 1) bước lặp phân cụm, cụm trước định loại bỏ • Giải p pháp p Thực ự ệ việc ệ lấyy mẫu ngẫu g nhiên ((a random sampling) ─ Do trình lấy mẫu lựa chọn tập nhỏ tập liệu ban đầu, đầu nên khả ngoại lai (outlier) chọn nhỏ ─ Gán ví dụ cịn lại tập liệu vào cụm tùy theo đánh giá khoảng cách (hoặc độ tương tự) Học Máy (IT 4862) 17 k-Means – Các nhược điểm (2) Giải thuật k-means phụ thuộc vào việc chọn điểm trung tâm ban đầu (initial centroids) 1st centroid 2ndd centroid t id [Liu, 2006] Học Máy (IT 4862) 18 k-Means – Các hạt nhân ban đầu (1) Sử dụng hạt nhân (seeds) khác → Kết tốt hơn! • Thực giải thuật k k-means means nhiều lần, lần bắt đầu với tập (khác lần trước) hạt nhân chọn ngẫu nhiên [Liu, 2006] Học Máy (IT 4862) 19 k-Means – Các hạt nhân ban đầu (2) Lựa chọn ngẫu nhiên hạt nhân thứ (m1) Lựa chọn hạt nhân thứ (m2) xa tốt so với hạt nhân thứ … Lựa chọn hạt nhân thứ i (mi) xa tốt so với hạt nhân gần số {m1, m2, … , mi-1} Học Máy (IT 4862) 20 k-Means – Các nhược điểm (3) Giải thuật k-means không phù hợp để phát cụm (nhóm) khơng có dạng hình elip hình cầu [Liu, 2006] Học Máy (IT 4862) 21 k-Means – Tổng kết Mặc dù có nhược điểm trên, k-means giải thuật phổ biến dùng để giải tốn phân cụm – tính đơn giản hiệu • Các giải thuật phân cụm khác có nhược điểm riêng Về tổng qt, khơng có lý thuyết chứng minh giải thuật phân cụm khác hiệu k-means • Một số ố giải thuật phân cụm ể phù hợp số ố giải thuật khác số kiểu tập liệu định, số toán ứng dụng định So sánh hiệu giải thuật phân cụm nhiệm vụ khó khăn (thách thức) • Làm để biết cụm kết thu xác? Học Máy (IT 4862) 22 Tài liệu tham khảo •B Liu Web Data Mining: Exploring Hyperlinks, g Data Springer, p g 2006 Contents, and Usage Học Máy (IT 4862) 23 ... biệt) ví dụ x điểm trung tâm mi Học Máy (IT 4862) 10 k-Means – Minh họa ọ (1) ( ) [Liu, 2006] Học Máy (IT 4862) 11 k-Means – Minh họa ọ ((2)) [Liu, 2006] Học Máy (IT 4862) 12 Điểm trung tâm, Hàm... … , mi-1} Học Máy (IT 4862) 20 k-Means – Các nhược điểm (3) Giải thuật k-means không phù hợp để phát cụm (nhóm) khơng có dạng hình elip hình cầu [Liu, 2006] Học Máy (IT 4862) 21 k-Means... Học Máy (IT 4862) 17 k-Means – Các nhược điểm (2) Giải thuật k-means phụ thuộc vào việc chọn điểm trung tâm ban đầu (initial centroids) 1st centroid 2ndd centroid t id [Liu, 2006] Học Máy (IT