2014-04-10 3 views
0

나는 k-means 클러스터링의 수단을 얻어야한다. 현재 저는 k-means 플러스 플러스 클러스터링 알고리즘을 구현하는 아파치 공유 라이브러리를 사용하고 있습니다. 만약이 라이브러리로 클러스터링 한 후에 수단을 얻거나 직접 구현할 수있는 간단한 방법이 있다면 누구라도 알겠습니까?
그렇지 않다면 어떻게 계산하는지 또는 코드 예제를 설명해 줄 수 있습니까?k-means는 아파치 평민 수학의 방법론을 포함하고 있습니다.

답변

1

클러스터링 알고리즘의 출력에는 최소한 클러스터 할당, 즉 각 포인트가 속한 클러스터가 있어야합니다. 당신이 가지고 있다면, k-means 클러스터링 센터는 각 클러스터에 속한 포인트의 평균에 의해 간단하게 주어진다.

+0

ok 점이 여러 차원으로 구성된 경우 평균은 다음과 같이 모든 클러스터에 대해 계산됩니다. 클러스터의 모든 점 얻기 -> col (차원)의 모든 값 합계 -> 점 수로 나누기? – chef

+0

정확히, 평균 벡터의 각 차원은 모든 클러스터 포인트에 대한 해당 차원의 값의 평균입니다. 즉, 클러스터에 속한 포인트에 대한 해당 차원의 모든 포인트 값의 합계를 전체 클러스터 포인트 수로 나눈 값입니다. 클러스터. – user2566092

+0

그게 내 문제를 해결! – chef

0

KMeansPlusPlusClusterer (패키지 org.apache.commons.math3.ml.clustering, 버전 3.2 이상)은 CentroidCluster 개체 목록을 반환합니다. CentroidCluster에서 getCenter() 메소드를 호출하여 클러스터 센터 (클러스터 지점의 평균)를 가져올 수 있습니다.