kmeans 클러스터링을위한 팔꿈치가없는 경우 수행 할 작업


13

여러 군집을 선택할 때 다른 K 값에 대한 팔꿈치 점을 찾아야한다는 것을 배웠습니다 .k 값에 대한 내성의 값을 1에서 10까지 플로팅했지만 명확한 것은 보이지 않습니다. 팔꿈치. 이런 경우 어떻게합니까?

까다로운 KMeans


2
"SS 엘보우"규칙은 최고가 아닌 하나의 클러스터링 기준이 많이 있습니다. 다른 시도하십시오. 데이터에 클러스터가 없을 수도 있습니다.
ttnphns

@ttnphns이 신비로운 다른 사람은 무엇입니까? 데이터에 클러스터를 포함시킬 수없는 방법은 무엇입니까? 내가 어떻게 알아?
Glen

답변:


7

잘못된 방법?

어쩌면 문제에 잘못된 알고리즘을 사용하고있을 것입니다.

전처리가 잘못 되었습니까?

K- 평균은 전처리에 매우 민감합니다. 하나의 속성이 다른 속성보다 훨씬 큰 스케일이면 출력을 지배합니다. 그러면 출력이 효과적으로 1 차원이됩니다

결과 시각화

무엇을 하든지 SSQ와 같은 숫자로 시작하지 않고 결과를 검증해야합니다. 대신 시각화를 고려하십시오 .

시각화 를 통해 데이터에 단일 클러스터 만있을 수 있습니다.


다차원 데이터를위한 좋은 시각화 옵션은 무엇입니까?
Jeremy

1
데이터에 따라 다릅니다. 본질적인 차원이 훨씬 낮기 때문에 일부 데이터는 잘 투영 될 수 있습니다. 시계열을 쉽게 플로팅 할 수 있으며 데이터가 직렬화 된 이미지 인 경우 이미지로 시각화합니까? 어쨌든 시각화는 데이터에 따라 다르 므로 단일 솔루션에 적합한 솔루션은 없습니다.
종료-익명-무스

3

한 가지 방법은 특정 k에 대해 클러스터의 구성원을 수동으로 검사하여 그룹화가 의미가 있는지 확인하는 것입니다 (이들은 구별 가능합니까?). 이것은 우발 상황 테이블과 조건 적 수단을 통해 수행 할 수 있습니다. 다양한 k에 대해이 작업을 수행하면 적절한 값을 결정할 수 있습니다.

덜 주관적인 방법은 Silhouette Value를 사용하는 것입니다.

https : //.com/questions/18285434/how-do-i-choose-k-when-using-k-means-clustering-with-silhouette-function

이것은 선호하는 소프트웨어 패키지로 계산할 수 있습니다. 링크에서 :

이 방법은 그룹 내 유사성을 가장 가까운 그룹 유사성과 비교합니다. 동일한 클러스터의 다른 멤버와의 데이터 멤버 평균 거리가 다른 클러스터 멤버와의 평균 거리보다 높은 경우이 값은 음수이며 클러스터링에 실패합니다. 반면, 1에 가까운 silhuette 값은 성공적인 클러스터링 작업을 나타냅니다. 0.5는 클러스터링의 정확한 척도가 아닙니다.


글렌, 나는 개인적으로 당신의 대답이 불완전하다고 생각합니다. 첫 번째 단락은 분명하지 않습니다. "수동 검사"란 무엇입니까? 절차를 설명해 주시겠습니까? 그렇다면 실루엣은 무엇 보다 "주관적이지 않은가? " 그리고 왜?
ttnphns

@ttnphns 답변이 업데이트되었습니다.
Glen

contingency tables and conditional means이것은 더욱 신비 롭습니다. 좋은 k로 "주관적으로"도착하려면 어떻게해야합니까?
ttnphns

@ttnphns 포스터에 관한 질문이 있으면 후속 조치를 취할 것입니다. 내가 말했듯이 그룹화가 구별 가능한지 확인해야합니다. 나에게 분명해 보인다.
Glen

따라서 낮은 실루엣 값 (~ .35)을 얻으면이 데이터에 실제로 좋은 클러스터가 없다는 것을 나타낼 수 있습니까?
Jeremy

0
  • K- 평균에 팔꿈치가 없다고해서 데이터에 군집이 없음을 의미하지는 않습니다.
  • 팔꿈치가 없다는 것은 사용 된 알고리즘이 클러스터를 분리 할 수 ​​없음을 의미합니다. (동심원에 대한 K- 평균, DBSCAN 비교)

일반적으로 다음을 고려할 수 있습니다.

  • 알고리즘을 조정하십시오.
  • 다른 알고리즘을 사용하십시오.
  • 데이터 전처리를 수행하십시오.

-1

NbClust 패키지를 사용하여 가장 최적의 k 값을 찾을 수 있습니다. 클러스터 수를 결정하기위한 30 개의 지표를 제공하고 최상의 결과를 제안합니다.

NbClust (data = df, 거리 = "euclidean", min.nc = 2, max.nc = 15, 방법 = "kmeans", index = "all")


사이트에 오신 것을 환영합니다! 이 답변을 확장 할 수 있습니까? 도움이 되더라도 조금 더 자세하게 설명하면 더 유용합니다.
mkt-Reinstate Monica
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.