Một ví dụ trong đó đầu ra của thuật toán k-medoid khác với đầu ra của thuật toán k-mean


10

Tôi hiểu sự khác biệt giữa k medoid và k có nghĩa. Nhưng bạn có thể cho tôi một ví dụ với một tập dữ liệu nhỏ trong đó đầu ra k medoid khác với k có nghĩa là đầu ra.

Câu trả lời:


13

k-medoid dựa trên medoid (là một điểm thuộc bộ dữ liệu) tính toán bằng cách giảm thiểu khoảng cách tuyệt đối giữa các điểm và tâm được chọn, thay vì thu nhỏ khoảng cách vuông. Kết quả là, tiếng ồn và tiếng ồn mạnh hơn phương tiện k.

Dưới đây là một ví dụ đơn giản, dễ hiểu với 2 cụm (bỏ qua các màu đảo ngược) Kmeans so với Kmedoids

Như bạn có thể thấy, các medoid và centroid (của k-mean) hơi khác nhau trong mỗi nhóm. Ngoài ra, bạn nên lưu ý rằng mỗi khi bạn chạy các thuật toán này, vì các điểm bắt đầu ngẫu nhiên và bản chất của thuật toán tối thiểu hóa, bạn sẽ nhận được kết quả hơi khác nhau. Đây là một hoạt động khác:

nhập mô tả hình ảnh ở đây

Và đây là mã:

library(cluster)
x <- rbind(matrix(rnorm(100, mean = 0.5, sd = 4.5), ncol = 2),
           matrix(rnorm(100, mean = 0.5, sd = 0.1), ncol = 2))
colnames(x) <- c("x", "y")

# using 2 clusters because we know the data comes from two groups cl <- kmeans(x, 2) kclus <- pam(x,2)
par(mfrow=c(1,2)) plot(x, col = kclus$clustering, main="Kmedoids Cluster") points(kclus$medoids, col = 1:3, pch = 10, cex = 4) plot(x, col = cl$cluster, main="Kmeans Cluster") points(cl$centers, col = 1:3, pch = 10, cex = 4)


1
@frc, nếu bạn nghĩ câu trả lời của ai đó không chính xác, đừng chỉnh sửa nó để sửa nó. Bạn có thể để lại nhận xét (khi đại diện của bạn> 50), & / hoặc downvote. Lựa chọn tốt nhất của bạn là đăng câu trả lời của riêng bạn với thông tin chính xác (cf, tại đây ).
gung - Phục hồi Monica

2
K-medoidids giảm thiểu khoảng cách được lựa chọn tùy ý (không nhất thiết là khoảng cách tuyệt đối) giữa các yếu tố được nhóm và medoid. Trên thực tế, pamphương thức (một ví dụ triển khai K-medoid trong R) được sử dụng ở trên, theo mặc định sử dụng khoảng cách Euclide làm số liệu. K-nghĩa luôn luôn sử dụng Euclide bình phương. Các medoid trong K-medoid được chọn trong số các thành phần của cụm, không nằm ngoài toàn bộ không gian điểm như centroid trong K-mean.
hannafrc

1
Tôi không đủ danh tiếng để bình luận, nhưng muốn đề cập rằng có một lỗi trong cốt truyện của câu trả lời của Ilanman: anh ta đã chạy toàn bộ mã, sao cho dữ liệu bị sửa đổi. Nếu bạn chỉ chạy phần phân cụm của mã, thì các cụm này khá ổn định, ổn định hơn đối với PAM so với phương tiện k.
Julien Colombia

6

Một medoid phải là một thành viên của tập hợp, một centroid thì không.

Centroid thường được thảo luận trong bối cảnh các vật thể rắn, liên tục, nhưng không có lý do gì để tin rằng việc mở rộng cho các mẫu rời rạc sẽ yêu cầu centroid phải là thành viên của bộ gốc.


1

Cả hai thuật toán k-mean và k-medoid đều chia bộ dữ liệu thành các nhóm k. Ngoài ra, cả hai đều cố gắng giảm thiểu khoảng cách giữa các điểm của cùng một cụm và một điểm cụ thể là trung tâm của cụm đó. Trái ngược với thuật toán k-mean, thuật toán k-medoid chọn các điểm làm trung tâm thuộc về dastaset. Việc triển khai phổ biến nhất của thuật toán phân cụm k-medoid là thuật toán phân vùng xung quanh Medoids (PAM). Thuật toán PAM sử dụng một tìm kiếm tham lam có thể không tìm thấy giải pháp tối ưu toàn cầu. Medoids mạnh hơn so với centroid, nhưng chúng cần tính toán nhiều hơn cho dữ liệu chiều cao.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.