2011-10-05 12 views
12

Tôi đang học thuật toán K-medoids vì vậy tôi xin lỗi nếu tôi đặt câu hỏi không phù hợp. Như tôi biết, thuật toán K-medoids thực hiện một cụm K có nghĩa là nhưng sử dụng các điểm dữ liệu thực tế để được centroid thay vì phương tiện tính toán học.Nơi tìm phần mềm/công cụ nguồn mở K-medoid đáng tin cậy (Không phải k-means)?

Khi tôi googled trực tuyến, tôi tìm thấy rất nhiều công cụ k-có nghĩa là GenePattern, geWengh, ... vv nhưng không phải là k-medoids. Một số người bạn tốt đã cho tôi thấy rằng tại Matlab, cũng có một người được viết bởi một số người dùng. Tuy nhiên, tôi sợ rằng công cụ triển khai cá nhân vẫn có thể có một số lỗi hoặc hạn chế. Do đó, tôi tự hỏi liệu có một số phần mềm/công cụ nguồn mở đáng tin cậy được sử dụng rộng rãi sử dụng các điểm dữ liệu thực tế như các centroids để cluster hay không. Tôi cần phải tìm hiểu thông tin về các centroid thực tế để chỉ trả lại kết quả phân cụm là không đủ. Tôi thích những trang web trực tuyến nhưng nếu điều này không phải là trường hợp, tôi ok để cài đặt nó vào máy địa phương của tôi. Cảm ơn bạn rất nhiều,

Trả lời

10
  1. Một implmentation k-medoid trong C có sẵn trong C Clustering Library (source, Manual). (Lưu ý rằng cụm 3.0 là một phần mở rộng của thư viện này, và có thể không cung cấp k-medoids)

    Từ hướng dẫn:

    Trong Thư viện C Clustering, ba thuật toán phân vùng có sẵn: • k-có nghĩa là clustering • k-trung vị phân nhóm • k-medoids phân nhóm

  2. k-medoids in mlpy, Machine Learning library in Python

  3. k-medoids in Matlab

  4. k-medoids in Java

  5. k-medoids in C++

+1

Cảm ơn trả lời của bạn. Như tôi biết, k-medians khác với k-medoids. Ngoài ra, công cụ Cluster 3.0 không trả về các centroid như các điểm dữ liệu gốc. Nếu tôi sai, xin vui lòng sửa tôi. Về các chương trình và mã số khác, chúng rất tuyệt. Tuy nhiên, vì chúng được viết bởi những cá nhân không phải bởi các phòng thí nghiệm như GenePattern hoặc Cluster3.0, tôi có một chút lo ngại về giới hạn của chúng. Dù sao, nếu không có giải pháp nào khác, tôi sẽ cố gắng sử dụng phần mềm từ các cá nhân. – Cassie

+0

@Cassie, Thư viện Clustering C là một prequel của Cluster 3.0, và nó được cung cấp bởi cùng một tác giả trong cùng một trang. * k-medoids * (và k-medians) được cung cấp ở đó. Ngoài ra, * mlpy * không được viết bởi một cá nhân. – cyborg

+0

Cụm thư viện R cung cấp cả k-means và k-medoids. – Riccardo

2

phần mềm:

  • ELKI bao gồm một số biến thể k-means, bao gồm K-medoids và PAM.
  • GNU R bao gồm các biến thể gói "flexclust" của k-means và trong gói "cluster".
  • Gap Một thư viện mã nguồn mở thích hợp về phân cụm dựa trên khoảng cách.

Nguồn: http://en.wikipedia.org/wiki/K-medoids

0

Đối với Python, tôi đã tìm thấy một gói mà thực hiện PAM và Clara: PyCluster