[R언어] 군집 중심점 찾기
K-means 알고리즘은 데이터를 K개의 군집으로 그룹화하는 비지도 학습 알고리즘입니다. 각 군집은 중심점을 기준으로 형성되며, 중심점은 해당 군집 내 데이터 포인트들과의 거리를 최소화하는 역할을 합니다.
K-means 알고리즘의 주요 단계
- 초기 중심점 설정: 무작위로 K개의 중심점을 선택합니다.
- 데이터 포인트 할당: 각 데이터 포인트를 가장 가까운 중심점에 할당합니다.
- 중심점 업데이트: 각 군집에 속한 데이터 포인트들의 평균을 계산하여 새로운 중심점으로 업데이트합니다.
- 할당과 업데이트 단계를 반복하며 중심점을 조정합니다.
R을 사용한 K-means 군집 분석 예제
# 필요한 라이브러리 로드
library(ggplot2)
# 데이터셋 생성
set.seed(123)
x <- rnorm(100, mean=0, sd=1)
y <- rnorm(100, mean=0, sd=1)
df <- data.frame(x, y)
# K-means 알고리즘을 사용하여 군집 분석
kmeans_result <- kmeans(df, centers=3)
# 시각화
ggplot(df, aes(x, y, color=factor(kmeans_result$cluster))) + geom_point()
위의 예제 코드는 R을 사용하여 K-means 알고리즘을 이용한 군집 분석을 보여줍니다. 주어진 데이터셋을 3개의 군집으로 그룹화하고 시각적으로 나타내는 과정을 보여줍니다.
이처럼 K-means 알고리즘은 데이터의 패턴을 군집화하여 중심점을 찾는 데에 유용하게 활용될 수 있습니다.
참고문헌:
- R Documentation: https://stat.ethz.ch/R-manual/R-devel/library/stats/html/kmeans.html
- K-means Clustering: https://en.wikipedia.org/wiki/K-means_clustering