Phần mềm trực quan để phân cụm


14

Tôi muốn cụm ~ 22000 điểm. Nhiều thuật toán phân cụm hoạt động tốt hơn với dự đoán ban đầu chất lượng cao hơn. Những công cụ tồn tại có thể cho tôi một ý tưởng tốt về hình dạng thô của dữ liệu?

Tôi muốn có thể chọn số liệu khoảng cách của riêng mình, vì vậy một chương trình tôi có thể cung cấp danh sách các khoảng cách theo cặp sẽ rất tốt. Tôi muốn có thể làm một cái gì đó như làm nổi bật một vùng hoặc cụm trên màn hình và nhận được một danh sách các điểm dữ liệu nằm trong khu vực đó.

Phần mềm miễn phí được ưa thích, nhưng tôi đã có sẵn SAS và MATLAB.

Câu trả lời:


11

GGobi (http://www.ggobi.org/), cùng với gói Rggobi, hoàn toàn phù hợp với nhiệm vụ này.

Xem bản trình bày liên quan để biết ví dụ: http://www.ggobi.org/book/2007-infovis/05-clustering.pdf


Cảm ơn lời đề nghị, @Shane. ggobi có vẻ đầy hứa hẹn, tôi đang cài đặt nó ngay bây giờ và sẽ dùng thử :)

1
Hoạt động tốt trên các nền tảng khác, nhưng gtk không chơi tốt với OSX.

3
gtk vẫn ổn trên OSX.
hadley

5

Khám phá kết quả phân cụm trong các kích thước cao có thể được thực hiện trong R bằng cách sử dụng các gói clusostongcExplorer . Tìm kiếm thêm ở đây .


Cảm ơn, nhưng có lợi ích gì khi sử dụng clusoston thay vì gọi trực tiếp ggobi không? Trang web chỉ đề cập đến các phương pháp phân cụm, rất thú vị, nhưng chưa phải là mục tiêu chính của tôi. gcexplorer có trang web ít thông tin hơn, nhưng có vẻ như nó là để hiển thị dữ liệu sau khi nó đã được chia thành các cụm. Tôi sẽ cho họ thử một lần khi tôi đạt đến điểm đó, nhưng không phải là thứ tôi cần ngay bây giờ.

4

(Nhiều tháng sau,) một cách hay để hình dung các cụm k và để thấy hiệu quả của nhiều k khác nhau là xây dựng một Cây kéo dài tối thiểu và nhìn vào các cạnh dài nhất. Ví dụ,

văn bản thay thế

Ở đây có 10 cụm, với 9 cạnh dài nhất 855 899 942 954 1003 1005 1069 1134 1267.
Đối với 9 cụm, thu gọn cạnh màu lục lam 855; cho 8, 899 màu tím; và như thế.

Thuật toán phân cụm k liên kết đơn ... chính xác là thuật toán của Kruskal ... tương đương với việc tìm kiếm MST và xóa các cạnh đắt nhất k-1.

- Thuật toán Wayne, Tham lam .

22000 điểm, khoảng cách cặp 242M, mất ~ 1 gigabyte (float32): có thể phù hợp.

Để xem cây hoặc đồ thị có chiều cao trong 2d, hãy xem Chia tỷ lệ đa chiều (cũng từ Kruskal) và tài liệu khổng lồ về giảm kích thước. Tuy nhiên, trong mờ> 20 nói, hầu hết các khoảng cách sẽ ở gần trung vị, vì vậy tôi tin rằng giảm kích thước không thể hoạt động ở đó.


2

Tôi đã có kinh nghiệm tốt với KNIME trong một dự án của mình. Đó là một giải pháp tuyệt vời để khai thác và vẽ đồ thị nhanh. Trên hết, nó cung cấp các mô đun R và Weka tích hợp liền mạch.


Trông giống như một chương trình hữu ích, nhưng trang web của họ không làm tốt việc thuyết phục tôi, nó sẽ giải quyết vấn đề chính xác này. Có vẻ như nó có thể quá rộng, quá nhiều tính năng tôi không quan tâm, khiến cho việc thực hiện những điều đơn giản trở nên khó khăn. Tôi sẽ cung cấp cho nó một cái nhìn khác nếu các lựa chọn khác không thành công.


1

Hãy nhìn vào Cụm 3.0 . Tôi không chắc liệu nó có làm được tất cả những gì bạn muốn không, nhưng nó được ghi lại khá tốt và cho phép bạn chọn từ một vài số liệu khoảng cách. Phần trực quan hóa thông qua một chương trình riêng biệt có tên Java TreeView ( ảnh chụp màn hình ).


Cảm ơn lời đề nghị, nhưng khả năng chọn khoảng cách của riêng tôi là rất quan trọng, vì vậy điều này sẽ không hiệu quả với tôi. Một số người khác có thể thấy nó hữu ích, mặc dù.

1

GGobi có vẻ thú vị cho điều này. Một cách tiếp cận khác có thể là xử lý các ma trận khoảng cách tương tự / nghịch đảo của bạn như các ma trận kề kề mạng và đưa nó vào một thói quen phân tích mạng (ví dụ: igraph trong R hoặc có lẽ là Pajek). Với phương pháp này, tôi sẽ thử nghiệm việc cắt khoảng cách nút thành một ràng buộc nhị phân tại các điểm cắt khác nhau.


Tôi đã nghĩ về điều này nhưng dường như không có một điểm cắt hợp lý nào và các chuyên gia tên miền cũng không thể biện minh được.

Tôi nghĩ rằng điều này có thể khá độc đoán cho mục đích đã nêu của bạn - thành thật mà nói, bạn thậm chí không cần phải thực sự cắt thành nhị phân, chỉ cần mã hóa lại nhãn giá trị ràng buộc theo tỷ lệ từ 1 đến một số có thể quản lý được, sau đó ẩn dần / hiển thị các mối quan hệ tại nhiều cấp độ khác nhau (tùy ý cũng ẩn / loại bỏ bất kỳ mặt dây chuyền & trẻ mồ côi nào trên đường đi). Không trực tiếp trả lời yêu cầu của bạn như bằng văn bản, nhưng tại sao không thực hiện một cách tiếp cận điển hình hơn và sử dụng phương pháp phân cụm lai không sử dụng các khối u ban đầu để xác định các cụm sơ bộ, sau đó đưa các khối u từ kết quả đó vào phân tích mới của bạn?
Shelby

Tôi đoán bạn có nghĩa là thử nhiều lần cắt khác nhau cho đến khi tôi thấy một số kết quả tốt đẹp? Tôi muốn tránh điều đó vì nhiều lý do so sánh tiêu chuẩn. re: đề nghị thứ hai của bạn Tôi đoán tôi chỉ tin tưởng bản thân mình hơn những thuật toán đó. Tôi sử dụng máy tính để xử lý một lượng lớn dữ liệu quá tẻ nhạt để làm bằng tay, không thay thế suy nghĩ của tôi.

1
Bạn đang sử dụng ngôn ngữ kiểm tra giả thuyết nhưng vẫn nói về một cách tiếp cận rất khám phá, biết khi bạn nhìn thấy nó cùng một lúc - vì vậy không rõ mục tiêu của bạn thực sự là gì trong phần phân tích này. Nếu bạn có giả thuyết bạn sẽ kiểm tra sau này (ví dụ: dự đoán tư cách thành viên của cụm hoặc sử dụng tư cách thành viên clust làm dự đoán) thì bạn có thể chọn không làm những việc sẽ cám dỗ thiên vị ở đó. Nhưng các vấn đề "nhiều so sánh" không thực sự tìm ra vấn đề khám phá mà bạn mô tả. Việc cắt giảm viz chỉ là để giúp bạn nhìn thấy những gì ở đó - nhưng niềm tin của bạn vẫn có thể bị đặt sai chỗ.
Shelby

1

Weka là một chương trình mã nguồn mở để khai thác dữ liệu (wirtten và có thể mở rộng bằng Java), Orange là một chương trình và thư viện mã nguồn mở để khai thác dữ liệu và học máy (viết bằng Python). Cả hai đều cho phép khám phá trực quan thuận tiện và hiệu quả dữ liệu đa chiều


Trang tính năng của Orange cho biết 'đang được xây dựng' và họ không liệt kê các ảnh chụp màn hình như những gì tôi đang làm. weka không có danh sách tính năng nào cả. Họ có thể làm những gì tôi muốn, nhưng nếu họ không quảng bá tính năng này, làm sao tôi biết được. Tôi bị thuyết phục hơn bởi các lựa chọn khác.

0

Phần mềm số miễn phí DataMelt bao gồm thư viện Java có tên là JMinHep. Vui lòng xem hướng dẫn trong phần "Phân cụm dữ liệu". Nó cung cấp GUI để trực quan hóa các điểm dữ liệu đa chiều trong XY và chạy một số thuật toán phân cụm dữ liệu.

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.