K-means Clustering
# Tag:
- Source/KU_ML
K-means Clustering
각 cluster의 중심(Centroid, mean)와 cluster 내의 element와의 거리의 제곱합을 cost function으로 하여, 이 function value를 최소화하는 방향으로 각 element들의 소속 cluster를 업데이트한다.
algorithm
- : 원하는 클러스터의 개수
- : 번째 클러스터에 번째 데이터 가 속함: (1 or 0: one-hot vector). 알려지지 않고, 추정해야 되는 대상이므로 Latent Variable이 된다.
- Mean Vector ()를 초기화한다.
- 모든 Data point 에 대해 만약 번째 클러스터가, 와 간의 distance function value가 제일 작다면, 에 대해 , 아니라면 0
- 각 에 대해
- 2, 3번 과정을 converge 할 때까지 반복한다.
Similar with EM algorithm?
위 과정은, MVN [[EM]] algorithm과 상당히 동일하며 EM algorithm 역시 Clustering algorithm의 일종이므로 연관이 있어 보인다.
[[../../../Mathematics/Probability/Distribution/Multivariate Distribution/MVN]] EM algorithm(GMM(guassian mixture model))은, K-means algorithm에서
- 모든 Prior()가 동일함.
- Covaraince Matrix 가 모두 Identity Matrix.
- distance function을 n2 norm, Identity Matrix임을 제외하고 생각하면 Mahalonobis distance.
- hard-방식의 와 같은 cluster에 속하는지 여부를 의 각 cluster에 속할지에 대한 확률 기반의 soft방식. 로 변환하였을때 거의 유사하다고 볼 수 있다.
이 때, EM algorithm이 반복됨에 따라 Likelihood가 증가한다는 점에 기반하면 K-means Algorithm 역시 반복됨에 따라 Likelihood가 증가함을 알 수 있다.
Semi-Parametric Methods Density estimation
EM과 비슷하므로, Semi-parametic method에 기반해 density를 estimation 가능하다.
즉, 마찬가지로 log likelihood가 최대가 될 때를 구한다.