• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    미해결

K-means의 중심점

20.11.23 19:41 작성 조회수 241

0

K-means 중심점을 클러스터의 개수와 같이 생성하고 시작하는데 K-means 알고리즘을 진행하는데 맨 처음에 중심점은 어떤 기준으로 생성되는 건가요?

답변 1

답변을 작성해보세요.

0

안녕하십니까, 

최초에 중심점을 생성하는 방법은 random과 k-means++가 있으며 default로 k-means++입니다.

KMeans(init='k-means++') 와 같이 설정합니다.

random은 말 그대로 random하게 중심점을 생성합니다(원래 kmeans는 random하게 중심점을 생성합니다)

kmeans++는 random  중심점으로 초기화 시 문제들을 해결하기 위해 도입되었습니다. 이게 설명이 길어서 아래 URL의 내용을 참조 부탁드립니다.

https://eunsukim.me/posts/understanding-K-Means++

요약하자면

  1. 첫 번째 centroid를 임의로 지정합니다.
  2. 남은 각 데이터 포인트에 대해서 가장 가까운 centroids와의 거리를 계산합니다.
  3. 다음 centroid는 각 데이터 포인트와 가장 가까운 centroid와의 거리에 비례하는 확률에 따라 지정됩니다. 이로 인해 다음 centroid가 이미 지정된 centroid에 근접하게 되는 것을 예방할 수 있습니다.
  4. 2 ~ 3 단계를 k 개의 centroids를 모두 지정할 때 까지 반복합니다.

감사합니다.