K-means 알고리즘은 특성이 비슷한 데이터를 같은 그룹으로 묶어주는 클러스터링 알고리즘입니다.
K개의 군집(클러스터) 개수를 만들기 위해 K개의 임의의 중심점을 배치한 뒤, 각 데이터들을 가장 가까운 중심점으로 할당하여 군집을 형성합니다. 군집으로 할당된 데이터들을 기반으로 해당 군집의 중심점을 업데이트 합니다. 이 과정을 중심점이 수렴할 때까지 반복합니다.
K-means 알고리즘의 단점은 다음과 같습니다.
1. 사용자가 초기에 설정해주어야하는 군집의 개수 K의 값에 따라 성능이 달라집니다.
2. 각 데이터들과의 거리를 기준으로 군집의 중심점을 업데이트하므로 데이터의 노이즈에 민감합니다.
+3. 계산량이 많은 이유: 중심점과 각각의 데이터의 거리를 전부 측정해야 하므로 계산량이 많습니다.
+ 클러스터링 알고리즘이 무엇인가요?
→ 클러스터링 알고리즘은 레이블이 없는 데이터 안에서 패턴과 구조를 발견하는 비지도 학습 기술 중 하나입니다.
+ 클러스터링 알고리즘은 어디에 사용될 수 있나요?
→ 추천 엔진: 개인화된 사용자 경험을 제공하기 위한 상품들의 그룹화
→ 시장 세분화: 지역,인구,행동 등을 바탕으로 고객들을 그룹화
+ K-means 알고리즘과 K-NN 알고리즘의 차이점은 무엇인가요?
→ 두 알고리즘 모두 K개의 점을 지정하여 거리를 기반으로 구현되는 알고리즘이지만 K-NN 알고리즘은 지도학습 방법이고 K-Means는 비지도 학습 방법입니다.