여정의 기록

데이터 들여다보기와 Cluster 클러스터: K-mean 본문

공부/Algorithm

데이터 들여다보기와 Cluster 클러스터: K-mean

Chelsey 2021. 9. 7. 03:09
728x90

표준화의 평균 0

평균(0)보다 표준화한 값이 크면 값의 크기가 큰 것으로 해석할 수 있다. 수치를 보고 데이터를 해석할 수 있어야 한다.

집단에 대해 단정짓지 말 것.

 

표준화된 값을 가지고 클러스트의 특징을 보는 방법과

aggregate를 이용해 원하는 컬럼값이 클러스트에 대해 어떻게 형성되어있는지(해당 클러스트의 특징) 확인할 수 있다. 

 

응집력 최대화 == 거리 최소화 == 거리 값이 작아야 한다.

 

클러스트를 행한 다음 시각화를 통해 데이터가 어떤지 괜찮은지, 이상한지 확인해야 한다.


클러스터링이란?

군집 분석, 특성이 비슷한 데이터끼리 묶어주는 머신러닝 기법. 비지도 학습 방법. 데이터 간의 유사도를 이용. 

사전에 레이블에 대한 정보가 없다.

  • Supervised Learning(감독학습, 지도학습, 교사학습) : 답안지가 있다. 레이블이 정해져있음. 분류.
  • Unsupervised Learning(무감독학습, 비지도학습, 비교사학습) : 클러스터링

클러스터링 != 분류 

분류 : 이미 사전에 레이블이 정의되어 있다.

 

보통 Grouping해서 패턴(규칙)을 찾는다.

차원축소 :여러 컬럼들을 다시 하나의 컬럼으로 묶는다.


K-means 순서

  1. 몇 개의 클러스터(K)값으로 나눌 지 결정한다.
  2. K개의 클러스터는 처음에는 무작위 위치로 선정된다.
  3. 1번째 클러스트의 중심(centeroid of first class)과 각 데이터 간의 거리가 존재하고, 각 클러스트들과 각 데이터간의 거리가 모--두 다! 존재한다. (모두 비교가능하다!)
  4. 랜덤으로 나뉜 각 클로스트를 중심으로 구역을 나눈다. (각 데이터는 가장 가까운 클러스트에 속한다)
  5. 랜덤으로 나뉜 각 클러스트의 중심점을 x , y축 평균으로 다시 업데이트(수정)한다.
  6. 다시 3번으로 가서 클러스트의 중심점이 고정될 때까지 반복한다.

데이터의 NaN값은 데이터에 들어있는 값들 + 나의 상식으로 대체할 수 있다.

K-means 의 한계 : K를 내맘대로 정함

 

 

K-means clustering with 5 clusters of sizes 4161, 21580, 578, 2663, 1018

5개의 그룹(클러스터)가 생성되었고 각 클러스터에 들어있는 학생수 확인가능하다.

Cluster means:
basketball football soccer softball
1 0.0121330 0.09171404 0.05425488 -0.05417724

1행만 나타냈다. 1행 수치 하나하나 좌표로 볼 수 있다. 예를 들어 2번째 클러스트의 중심점의 좌표값은 2행 전부임.

Clustering vector:

모든 학생이 어느 클러스트에 속해있는지 나열해서 보여준다. 해당 위치의 5번 클러스터에 해당되는 학생에게 문자를 보내는 등을 할 수 있다.

Within cluster sum of squares by cluster:
[1] 304213.66 278149.23 28809.13 158016.90 189329.94 (5개)
(between_SS / total_SS = 11.2 %)

between_SS 이 클수록 크게 나온다. 각 클러스트의 중심과 해당 클러스트에 속한 모든 데이터들 거리의 제곱의 합이다.

between_SS : 클러스터간 분산 정도 → 클수록 클러스터링이 잘됐다. 5개의 클러스터가 구분이 잘 안된다.

total_SS = between_SS + within_SS

within_SS : 클러스터 내 데이터의 분산 정도 → 작을수록 클러스팅이 잘된것이다.


728x90