클러스터링을위한 시각화 소프트웨어


14

~ 22000 포인트를 클러스터하고 싶습니다. 많은 클러스터링 알고리즘은 고품질 초기 추측으로 더 잘 작동합니다. 거친 데이터 형태에 대한 좋은 아이디어를 제공 할 수있는 도구는 무엇입니까?

나는 자신의 거리 측정법을 선택할 수 있기를 원하므로 한 쌍의 거리 목록을 제공 할 수있는 프로그램은 괜찮을 것입니다. 디스플레이에서 영역이나 클러스터를 강조 표시하고 해당 영역에있는 데이터 포인트 목록을 얻는 것과 같은 작업을 수행하고 싶습니다.

자유 소프트웨어를 선호하지만 이미 SAS와 MATLAB을 가지고 있습니다.

답변:


11

R 패키지 rggobi와 함께 GGobi (http://www.ggobi.org/)는이 작업에 완벽하게 적합합니다.

예제는 관련 프리젠 테이션을 참조하십시오. http://www.ggobi.org/book/2007-infovis/05-clustering.pdf


@Shane의 제안에 감사드립니다. ggobi는 유망 해 보이며, 지금 설치하고 시도해 볼 것입니다 :)

1
다른 플랫폼에서는 잘 작동하지만 gtk는 OSX에서 잘 작동하지 않습니다.

3
gtk는 OSX에서 괜찮습니다.
hadley

5

clusterflygcExplorer 패키지를 사용하여 R 에서 높은 차원의 클러스터링 결과를 탐색 할 수 있습니다 . 자세한 내용은 여기 를 참조 하십시오 .


고마워하지만 ggobi를 직접 호출하는 대신 clusterfly를 사용하면 어떤 이점이 있습니까? 웹 사이트에는 클러스터링 방법 만 언급되어 있지만 흥미 롭지 만 아직 주요 목표는 아닙니다. gcexplorer는 정보가 적은 웹 사이트를 가지고 있지만 이미 클러스터로 분할 된 후 데이터를 시각화하기위한 것 같습니다. 그 시점에 도달하면 시도해 보지만 지금 당장 필요한 것은 아닙니다.

4

(월 후) k- 클러스터를 그림으로 나타내고 다양한 k의 효과를 보는 좋은 방법은 최소 스패닝 트리를 만들고 가장 긴 가장자리를 보는 것입니다. 예를 들어

대체 텍스트

여기에서 가장 긴 에지 9 855 899 942 954 1,003 1,005 1,069 1,134 1267. 10 개 클러스터있다
9 개 클러스터 시안을 855 가장자리 붕괴; 8의 경우 자주색 899; 등등.

단일 링크 k- 클러스터링 알고리즘은 정확하게 Kruskal의 알고리즘입니다. MST를 찾고 k-1의 가장 비싼 에지를 삭제하는 것과 같습니다.

— 웨인, 욕심 알고리즘 .

22000 포인트, 242M 쌍 거리, ~ 1 기가 바이트 (float32) : 적합 할 수 있습니다.

2 차원에서 고차원 트리 나 그래프를 보려면 다차원 스케일링 (Kruskal) 및 차원 축소에 대한 거대한 문헌을 참조하십시오. 그러나 20보다 희미한 경우 대부분의 거리가 중앙값에 가깝기 때문에 치수 축소 작동 하지 않는다고 생각합니다 .


2

프로젝트 중 하나에서 KNIME에 대한 경험이 풍부 합니다. 빠른 탐색 채굴 및 그래프 작성을위한 탁월한 솔루션입니다. 또한 R 및 Weka 모듈과의 완벽한 통합을 제공합니다.


유용한 프로그램처럼 보이지만, 그들의 웹 페이지는 저를 설득력있게하는 좋은 일을하지 않아서이 정확한 문제를 해결할 것입니다. 너무 광범위하고 신경 쓰지 않는 기능이 너무 많아 단순한 일을하기가 어려워 보입니다. 다른 선택이 효과가 없다면 다시 한 번 살펴볼 것입니다.


1

Cluster 3.0을 살펴보십시오 . 그것이 당신이 원하는 모든 것을 할 것인지 확신 할 수 없지만, 잘 문서화되어 있으며 몇 가지 거리 측정법 중에서 선택할 수 있습니다. 시각화 부분은 Java TreeView ( 스크린 샷 ) 라는 별도의 프로그램을 통해 이루어 집니다.


제안에 감사하지만 내 거리 측정을 선택할 수있는 기능이 매우 중요하므로이 방법이 효과가 없습니다. 그러나 다른 누군가가 유용하다고 생각할 수도 있습니다.

1

GGobi는 이것에 흥미 롭습니다. 다른 접근법은 유사성 / 역 거리 행렬을 네트워크 인접 행렬로 취급하고이를 네트워크 분석 루틴 (예를 들어, R의 igraph 또는 Pajek)에 공급하는 것일 수있다. 이 접근법을 사용하여 다양한 컷 포인트에서 노드 거리를 이진 타이로 절단하는 실험을 해 보았습니다.


나는 이것을 생각했지만 합리적 인 컷 포인트가없는 것 같으며 도메인 전문가는 둘 중 하나를 정당화 할 수 없습니다.

솔직히 말하면 바이너리로자를 필요가 없으며 넥타이 값 레이블을 1의 스케일로 관리 가능한 숫자로 다시 코딩 한 다음 점차적으로 관계를 숨기거나 표시해야 할 수도 있습니다. 다양한 레벨 (선택적으로 길을 따라 펜던트 및 고아를 숨기거나 제거). 서면으로 귀하의 요청에 직접 응답하지는 않지만 더 일반적인 접근 방식을 취하고 초기 중심을 사용하여 예비 군집을 식별하지 않는 하이브리드 클러스터링 방법을 사용하고 그 결과에서 중심을 새로운 분석에 제공하는 이유는 무엇입니까?
쉘비

좋은 결과가 나올 때까지 다양한 컷오프를 시도해야한다고 생각하십니까? 나는 표준 다중 비교 이유로 이것을 피하고 싶습니다. 다시 : 두 번째 제안 나는 그 알고리즘보다 자신을 더 잘 믿는 것 같아요. 나는 컴퓨터를 사용하여 생각을 대신하지 않고 손으로하기에는 너무 지루한 대량의 데이터를 처리합니다.

1
가설 테스트 언어를 사용하고 있지만 동시에 탐색 적이며 알고있는 접근 방식에 대해 이야기하고 있으므로 분석의이 부분에 대한 목표가 실제로 무엇인지 명확하지 않습니다. 나중에 테스트 할 가설이있는 경우 (예 : 클러스터 멤버십 예측 또는 clust 멤버십을 예측 자로 사용) 바이어스를 유혹하는 일을하지 않도록 선택할 수 있습니다. 그러나 "다중 비교"문제는 설명하려는 탐색 문제를 실제로 파악하지 못합니다. Viz 컷오프는 현재 상황을 파악하는 데 도움이되지만 신뢰가 여전히 잘못 될 수 있습니다.
쉘비

1

Weka 는 데이터 마이닝 (Java로 작성 및 확장 가능)을 위한 오픈 소스 프로그램이며 , Orange 는 데이터 마이닝 및 기계 학습 (Python으로 작성)을위한 오픈 소스 프로그램 및 라이브러리입니다. 다차원 데이터를 편리하고 효율적으로 시각적으로 탐색 할 수 있습니다.


Orange의 기능 페이지에는 '구축 중'이라고 표시되며 내가하고있는 것과 같은 스크린 샷은 표시되지 않습니다. weka에는 기능 목록이 없습니다. 그들은 내가 원하는 것을 할 수 있지만 기능을 홍보하지 않으면 어떻게 말할 수 있습니까? 나는 다른 선택에 더 확신합니다.

0

DataMelt 프리 숫자 소프트웨어 에는 JMinHep라는 Java 라이브러리가 포함되어 있습니다. "데이터 클러스터링"섹션의 매뉴얼을 참조하십시오. XY에서 다차원 데이터 포인트를 시각화하고 여러 데이터 클러스터링 알고리즘을 실행할 수있는 GUI를 제공합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.