Bắt đầu ngayBắt đầu miễn phí

Phân tích silhouette

Phân tích silhouette cho phép bạn tính mức độ tương đồng của từng quan sát với cụm được gán so với các cụm khác. Chỉ số này (silhouette width) dao động từ -1 đến 1 cho mỗi quan sát trong dữ liệu và được hiểu như sau:

  • Giá trị gần 1 cho thấy quan sát phù hợp tốt với cụm được gán
  • Giá trị gần 0 cho thấy quan sát đang ở ranh giới giữa hai cụm
  • Giá trị gần -1 cho thấy quan sát có thể bị gán sai cụm

Trong bài tập này, bạn sẽ dùng các hàm pam()silhouette() từ thư viện cluster để thực hiện phân tích silhouette nhằm so sánh kết quả của các mô hình với k = 2 và k = 3. Bạn sẽ tiếp tục làm việc với bộ dữ liệu lineup.

Hãy chú ý kỹ biểu đồ silhouette: với k = 3, mỗi quan sát có thực sự thuộc rõ ràng về cụm được gán không?

Bài tập này là một phần của khóa học

Phân cụm bằng R

Xem khóa học

Hướng dẫn bài tập

  • Tạo mô hình k-means pam_k2 bằng pam() với k = 2 trên dữ liệu lineup.
  • Vẽ phân tích silhouette bằng plot(silhouette(model)).
  • Lặp lại hai bước đầu cho k = 3, lưu mô hình là pam_k3.
  • Trước khi tiếp tục, hãy xem kỹ sự khác nhau giữa các biểu đồ (đặc biệt là quan sát 3) cho pam_k3.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

library(cluster)

# Generate a k-means model using the pam() function with a k = 2
pam_k2 <- pam(___, k = ___)

# Plot the silhouette visual for the pam_k2 model
plot(silhouette(___))

# Generate a k-means model using the pam() function with a k = 3
pam_k3 <- ___

# Plot the silhouette visual for the pam_k3 model

Chỉnh sửa và Chạy Mã