[Home] AI로 돌아가기

🔗 관련 문서: Wikipedia - K-means clustering

K-means (Clustering Algorithm)

K-means는 데이터를 K개의 군집으로 나누는 대표적인 비지도 학습 알고리즘이다. 각 데이터는 중심점(centroid)과의 거리 기준으로 가장 가까운 클러스터에 할당되며, 이 과정을 반복적으로 수행하여 중심점과 군집을 갱신한다.

군집 수(K)는 사전에 정해야 하며, 알고리즘은 중심점이 더 이상 이동하지 않을 때까지 반복된다.

(1) 정의와 특징

K-means는 주어진 데이터를 K개의 군집으로 나누기 위해, 각 데이터를 가장 가까운 중심점에 할당하고, 군집 내 평균을 새 중심점으로 갱신하는 방식으로 동작한다.

주요 특징은 다음과 같다:

(2) 알고리즘 과정

  1. 데이터에서 임의로 K개의 초기 중심점을 선택한다.
  2. 각 데이터를 가장 가까운 중심점에 할당한다.
  3. 각 군집의 평균을 계산하여 새로운 중심점으로 설정한다.
  4. 중심점이 더 이상 이동하지 않을 때까지 2~3단계를 반복한다.

(3) 장점과 한계

장점

한계

(4) 개념도

다음은 K-means 알고리즘이 수렴하는 과정을 시각적으로 나타낸 개념도이다.

K-means 알고리즘 개념도
그림 1. K-means 알고리즘의 반복적 수렴 과정
출처: Wikimedia Commons