728x90
K-means
비지도학습의 한 종류인 클러스터링을 위한 알고리즘 중 하나
- 비지도학습(Unsupervised Learning)
데이터들과 각 클러스터와의 거리 차이의 분산을 최소화
- 클러스터링(군집)
라벨 데이터 없이 데이터 각각의 특성을 고려해 주어진 데이터를 가장 잘 설명하는 집단을 찾아 속하게 하는 것
K-means
주어진 데이터로 K개의 클러스터를 묶는 알고리즘
데이터들과 각 클러스터와의 거리차이의 분산을 최소화함
유사도를 기반으로 데이터들 간의 유사성을 판단함
K-means 알고리즘 원리
클러스터 내 응집도 최소화
클러스터 간 분리도 최대화
거리측정법
유클리드 거리 측정법
유클리드 거리가 큰 값을 가지면 사용자 간의 거리가 멀다는 의미, 사용자 간 유사성이 떨어짐
K-means 알고리즘 수행 단계
전체 클러스터의 개수 K값을 설정
초기 중심값 선택 -> 클러스터 할당 -> 새로운 중심 값 선택
- k개의 그룹으로 군집한 n개의 점을 가지고 있고, 여기서 임의로 k개의 점을 선택, k개의 클러스터의 초기 중심값을 정한다.
- k개의 클러스터의 중심 값과 각 개별 점(데이터)간의 거리 측정, 가장 가까운 클러스터에 해당 데이터 할당
- 각 클러스터마다 그 안에 배정된 모든 점들 간의 거리 평균값을 구하여 새로운 중심값으로 정함
1,2,3번을 k개의 중심점이 변하지 않을 때까지 반복,
어느정도 오차범위 안에 들어오게 되면 반복 중단
728x90
'AI > 기계학습' 카테고리의 다른 글
Random Forest (0) | 2021.02.24 |
---|---|
KNN (0) | 2021.02.11 |
텍스트 데이터 분석 (0) | 2021.02.05 |
Naive Bayes (0) | 2021.02.04 |
SVM(1) (0) | 2021.02.03 |