Bất kỳ đề xuất cho phương pháp phân cụm cho số lượng cụm không xác định và khoảng cách không phải Euclide?


8

Tôi cần một số gợi ý cho phương pháp phân cụm (phân loại không giám sát) cho một dự án tư vấn. Tôi đang tìm kiếm một phương pháp hy vọng có các thuộc tính sau:

  1. Đối tượng nghiên cứu của tôi có ba tính chất. Một được biểu diễn bằng ma trận khoảng cách (không phải Euclide) và hai ma trận còn lại ở dạng vectơ trong không gian Euclide. Ma trận khoảng cách đến từ các chuỗi và có thể ở dạng phần trăm của sự không giống nhau hoặc phép đo khoảng cách khác của các chuỗi. Thuật toán sẽ có thể lấy cả hai vectơ trong không gian euclide và khoảng cách phi euclide làm đầu vào. Ví dụ, K-medoid có thể hoạt động với ma trận khoảng cách nhưng K-nghĩa là không thể.

  2. Tôi muốn thuật toán chọn số cụm và trọng số cho ba thuộc tính tự động (với kiến ​​thức và ràng buộc trước).

  3. Tôi có thông tin về các trung tâm cụm được xác định trước đó của cụm cụm. Tôi muốn kết hợp nó như các giá trị trước hoặc ban đầu.

  4. Là một nhà thống kê, tôi thích phương pháp này có chức năng rõ ràng hoặc mất chức năng.

Điều gần nhất tôi có thể nghĩ đến là điều chỉnh mô hình hỗn hợp trong khung Bayes sử dụng MCMC nhảy ngược để xác định số lượng cụm. Các vectơ trong R ^ d có thể dễ dàng được tạo thành khả năng bình thường nhưng làm thế nào để đối phó với ma trận khoảng cách là không rõ ràng đối với tôi. Tôi có thể hạn chế giá trị trung bình của khả năng bình thường ở mỗi lần quan sát để MCMC chạy nhưng điều đó không có ý nghĩa toán học / thống kê rõ ràng.

Có ai có kinh nghiệm với một vấn đề tương tự? Đề xuất tham khảo sẽ được đánh giá cao!


Tại sao không chiếu các vectơ phi eidian vào không gian eidianidian?
Zach

Câu trả lời:


4

Tôi nghĩ rằng sử dụng tiêu chí MAP / Bayes kết hợp với hỗn hợp Gaussian là một lựa chọn hợp lý. Điểm

Tất nhiên bạn sẽ phản đối rằng các MOG yêu cầu dữ liệu đầu vào Euclide . Câu trả lời là tìm một tập hợp các điểm làm phát sinh ma trận khoảng cách bạn được cung cấp. Một kỹ thuật ví dụ cho việc này là chia tỷ lệ đa chiều: trong đó là khoảng cách của điểm đến điểm .argmin{xTôi}ΣTôi,j(||xTôi-xj||2-DTôij)2DTôijTôij


Cảm ơn. Tôi đang sử dụng một cách tiếp cận tương tự! Tôi nghĩ rằng có một lỗi đánh máy trong bài viết của bạn: không nên có hình vuông trên . (xTôi-xj)
Vulpecula

Tại sao không? Đó là một khoảng cách Euclide, do đó nó phải được bình phương. Tuy nhiên, nó là một chuẩn mực, do đó tôi sẽ cố gắng làm cho điều đó rõ ràng hơn.
bayerj

1

Tôi đã giải quyết một vấn đề cho luận án của mình khi tôi phải phân cụm trên một tập dữ liệu mà tôi chỉ có ma trận tương tự (= khoảng cách nghịch đảo). Mặc dù tôi 100% đồng ý rằng một kỹ thuật Bayes sẽ là tốt nhất, nhưng cái tôi đã làm là một mô hình phân biệt đối xử được gọi là Mã hóa đối xứng đối xứng ( liên kết ). Tôi nhớ nó hoạt động khá độc đáo.

Trên mặt trận Bayes, có lẽ bạn có thể xem xét một cái gì đó tương tự như phân cụm, nhưng không? Tôi đang suy nghĩ theo dòng Phân bổ Dirichlet tiềm ẩn - một thuật toán thực sự tuyệt vời. Hoàn toàn khái quát, được phát triển trong bối cảnh mô hình hóa nội dung chủ đề trong văn bản tài liệu văn bản. Nhưng nó tìm thấy rất nhiều ứng dụng trong các loại vấn đề máy học không được giám sát khác. Tất nhiên, chức năng khoảng cách thậm chí không liên quan ở đó ...


1

DBSCAN hoạt động mà không biết số lượng cụm trước thời hạn và nó có thể áp dụng một loạt các số liệu khoảng cách.


Cảm ơn câu trả lời của bạn BTK, mặc dù nó là một nhận xét nhiều hơn. Để làm cho câu trả lời nhiều hơn, bạn có thể muốn thêm một chút chi tiết về DBSCAN và cách áp dụng cho câu hỏi cụ thể trong tay.
DL Dahly

1

Bạn có thể sử dụng tuyên truyền ái lực hoặc lan truyền ái lực thích ứng tốt hơn. Đây là liên kết Wikipedia .

Có hai ưu điểm chính cho trường hợp của bạn và thứ ba khác mà tôi nghĩ là một lợi thế nhưng có thể không quan trọng đối với bạn.

  1. Bạn không cung cấp số lượng cụm. Số cụm cuối cùng phụ thuộc vào giá trị ưu tiên và giá trị ma trận tương tự. Cách dễ nhất để làm việc với các giá trị ưu tiên là sử dụng giá trị tối thiểu của ma trận tương tự (không bằng 0) để có được số cụm nhỏ nhất, sau đó thử ví dụ: tối đa cho hầu hết các cụm có thể và tiếp tục với trung vị giá trị và vv ... HOẶC Sử dụng thuật toán lan truyền ái lực thích ứng và có ưu tiên được xác định bởi thuật toán.

  2. Bạn có thể cung cấp bất kỳ thước đo tương tự nào bạn có thể đưa ra hoặc lấy nghịch đảo của thước đo khoảng cách (có thể bảo vệ chống chia cho 0 khi bạn làm điều đó).

3. (điểm bổ sung) Thuật toán chọn một ví dụ đại diện cho từng cụm và ví dụ nào thuộc về nó. Điều này có nghĩa là thuật toán không cung cấp cho bạn mức trung bình tùy ý mà là điểm dữ liệu thực tế. Tuy nhiên, bạn vẫn có thể tính trung bình sau này tất nhiên. VÀ điều này cũng có nghĩa là thuật toán không sử dụng trung bình không liên tục!

Phần mềm: Có một số gói được liệt kê cho Java, Python và R trên trang Wikipedia. Nếu bạn yêu thích MATLAB, giống như tôi, thì đây là một triển khai.

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.