2010-02-22 26 views
13

Nhiều thuật toán để phân cụm có sẵn. Thuật toán phổ biến là K-means, dựa trên số lượng cụm nhất định, thuật toán lặp lại để tìm các cụm tốt nhất cho các đối tượng.Bạn sử dụng phương pháp nào để chọn số cụm tối ưu trong k-means và EM?

Bạn sử dụng phương pháp nào để xác định số cụm trong dữ liệu trong cụm k-means?

Có gói nào có sẵn trong R chứa phương pháp V-fold cross-validation để xác định đúng số cụm không?

Một cách tiếp cận được sử dụng tốt khác là thuật toán Tối ưu hóa kỳ vọng (EM) gán phân bố xác suất cho từng trường hợp cho biết xác suất thuộc về từng cụm.

Thuật toán này có được triển khai trong R không?

Nếu có, nó có tùy chọn để tự động chọn số cụm tối ưu bằng xác thực chéo không?

Bạn có thích một số phương pháp phân cụm khác thay thế không?

+0

Tôi cố ý bỏ phân cụm theo thứ bậc vì hclust là một phương thức khá thiếu bộ nhớ, không phù hợp với các tập dữ liệu lớn mà tôi thực sự quan tâm nhất. –

+0

Vui lòng xác định ý nghĩa của bạn bằng cách "tối ưu" – hadley

+0

Câu hỏi hay @Svante, tôi đã suy nghĩ rất nhiều về điều đó. Tôi thậm chí còn có ý định viết một gói với một số thuật toán cho số lượng cụm tối ưu (chỉ các phương thức hclust). @hadley, tôi đã làm quen với: chỉ số C-H (Calinsky & Harabasz), C-index, Goodman-Kruskal gamma coef. và có một cách để "chọn một giải pháp cụm tối ưu" bằng cách sử dụng thử nghiệm F. Đây là một ref: Miligan, G.W. & Cooper, M.C. (1985). Kiểm tra các thủ tục xác định số cụm trong tập dữ liệu, Psychometrika, 50, 159-179 Mặc dù tôi cho rằng bạn thích quyết định "dựa trên đồ thị" trên giải pháp tối ưu ... – aL3xa

Trả lời

5

Đối với bộ dữ liệu "thưa thớt" lớn, tôi thực sự khuyên bạn nên sử dụng phương pháp "Nhân giống mối quan hệ". Nó có hiệu suất cao hơn so với phương tiện k và nó là xác định trong tự nhiên.

http://www.psi.toronto.edu/affinitypropagation/ Nó được xuất bản trong tạp chí "Khoa học".

Tuy nhiên, lựa chọn thuật toán phân cụm tối ưu tùy thuộc vào tập dữ liệu đang được xem xét. K Means là một phương pháp sách văn bản và rất có thể một số người đã phát triển một thuật toán tốt hơn phù hợp hơn cho loại dữ liệu của bạn/

Đây là một hướng dẫn hay của GS. Andrew Moore (CMU, Google) về K Means và Phân cụm theo cấp bậc. http://www.autonlab.org/tutorials/kmeans.html

0

Tuần trước tôi đã mã hóa thuật toán ước lượng số lượng cụm cho một chương trình nhóm K-Means. Tôi sử dụng phương pháp nêu trong:

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.70.9687&rep=rep1&type=pdf

vấn đề thực hiện lớn nhất của tôi là tôi đã phải tìm một phù hợp Cụm Validation Index (tức là lỗi hệ mét) mà sẽ làm việc. Bây giờ nó là một vấn đề của tốc độ xử lý, nhưng kết quả hiện tại nhìn hợp lý.

Các vấn đề liên quan