Dưới đây là tóm tắt của một số thuật toán phân cụm có thể giúp trả lời câu hỏi
"tôi nên sử dụng kỹ thuật phân cụm nào?"
Không có một cách khách quan "đúng" thuật toán phân nhóm Ref
Các thuật toán phân cụm có thể được phân loại dựa trên "mô hình cụm" của chúng. Một thuật toán được thiết kế cho một loại mô hình cụ thể thường sẽ thất bại trên một loại mô hình khác. Ví dụ, k-nghĩa là không thể tìm thấy các cụm không lồi, nó chỉ có thể tìm thấy các cụm hình tròn.
Do đó, việc hiểu các "mô hình cụm" này trở thành chìa khóa để hiểu cách lựa chọn giữa các thuật toán / phương pháp phân cụm khác nhau. Các mô hình cụm điển hình bao gồm:
[1] Mô hình kết nối: Xây dựng mô hình dựa trên kết nối khoảng cách. Ví dụ: phân cụm phân cấp. Được sử dụng khi chúng ta cần phân vùng khác nhau dựa trên chiều cao cắt cây. Hàm R: hclust trong gói thống kê.
[2] Các mô hình Centroid: Xây dựng các mô hình bằng cách biểu diễn mỗi cụm bằng một vectơ trung bình duy nhất. Được sử dụng khi chúng ta cần phân vùng rõ nét (trái ngược với phân cụm mờ được mô tả sau). Hàm R: kmeans trong gói thống kê.
[3] Mô hình phân phối: Xây dựng các mô hình dựa trên các phân phối thống kê, chẳng hạn như phân phối bình thường đa biến được sử dụng bởi thuật toán tối đa hóa kỳ vọng. Được sử dụng khi hình dạng cụm có thể tùy ý không giống như k-nghĩa là giả định cụm tròn. Hàm R: emcluster trong gói emcluster.
[4] Các mô hình mật độ: Xây dựng các mô hình dựa trên các cụm như các vùng dày đặc được kết nối trong không gian dữ liệu. Ví dụ: DBSCAN và QUANG HỌC. Được sử dụng khi hình dạng cụm có thể tùy ý không giống như k-nghĩa là giả định cụm tròn .. Hàm R dbscan trong gói dbscan.
[5] Các mô hình không gian con: Xây dựng các mô hình dựa trên cả các thành viên cụm và các thuộc tính có liên quan. Ví dụ: biclustering (còn được gọi là co-clustering hoặc hai chế độ phân cụm). Được sử dụng khi cần phân cụm hàng và cột đồng thời. R chức năng biclust trong gói biclust.
[6] Mô hình nhóm: Xây dựng mô hình dựa trên thông tin nhóm. Ví dụ: lọc cộng tác (thuật toán giới thiệu). Chức năng R recommender trong gói recommenderlab.
[7] Mô hình dựa trên đồ thị: Xây dựng mô hình dựa trên cụm. Các thuật toán phát hiện cấu trúc cộng đồng cố gắng tìm các sơ đồ con dày đặc trong các đồ thị có hướng hoặc không có hướng. Ví dụ: hàm R cluster_walktrap trong gói igraph.
[8] Bản đồ tính năng tự tổ chức của Kohonen: Xây dựng các mô hình dựa trên mạng lưới thần kinh. Hàm R som trong gói kohonen.
[9] Phân cụm phổ: Xây dựng các mô hình dựa trên cấu trúc cụm không lồi hoặc khi một thước đo của tâm không phải là mô tả phù hợp của cụm hoàn chỉnh. Hàm R specc trong gói kernlab.
[10] phân cụm không gian con: Đối với dữ liệu chiều cao, các hàm khoảng cách có thể có vấn đề. mô hình cụm bao gồm các thuộc tính có liên quan cho cụm. Ví dụ, hàm hddc trong gói HD classif.
[11] Phân cụm trình tự: Trình tự nhóm có liên quan. gói rBlast.
[12] Lan truyền mối quan hệ: Xây dựng các mô hình dựa trên thông điệp truyền giữa các điểm dữ liệu. Nó không yêu cầu số lượng cụm được xác định trước khi chạy thuật toán. Nó là tốt hơn cho tầm nhìn nhất định máy tính và nhiệm vụ sinh học tính toán, ví dụ như phân nhóm của hình ảnh của khuôn mặt con người và xác định các bảng điểm quy định, hơn k-means, Ref Rpackage APCluster.
[13] Phân cụm luồng: Xây dựng các mô hình dựa trên dữ liệu đến liên tục như hồ sơ điện thoại, giao dịch tài chính, v.v. Ví dụ: gói R BIRCH [ https://cran.r-project.org/src/contrib/Archive/birch/]
[14] Phân cụm tài liệu (hoặc phân cụm văn bản): Xây dựng các mô hình dựa trên SVD. Nó đã được sử dụng trong khai thác chủ đề. Ví dụ: Carrot [ http://search.carrot2.org] là một công cụ phân cụm kết quả tìm kiếm nguồn mở có thể phân cụm các tài liệu thành các danh mục theo chủ đề.
[15] Mô hình lớp tiềm ẩn: Nó liên quan một tập hợp các biến đa biến quan sát với một tập hợp các biến tiềm ẩn. LCA có thể được sử dụng trong lọc cộng tác. Chức năng R recommender trong gói recommenderlab có chức năng lọc cộng tác.
[16] Tạo bóng đèn: Được sử dụng để đồng thời phân cụm các hàng và cột của dữ liệu hai chế độ. Ví dụ R chức năng biclust trong gói biclust.
[17] Phân cụm mềm (phân cụm mờ): Mỗi đối tượng thuộc về mỗi cụm ở một mức độ nhất định. Ví dụ: hàm R Fclust trong gói fclust.