본문 바로가기
AI&ML/ML algorithms

군집화

by ornni 2022. 8. 1.
728x90
반응형

군집화(clustering)

비지도학습의 일종으로, 데이ㅓ의 특징만으로 비슷한 데이터들끼리 모아 군집된 클래스로 분류

ex) 큰 키 그룹, 작은 키 그룹

 


 

K 평균 알고리즘

데이터 간의 거리를 사용해 가까운 거리에 있는 데이터끼리 하나의 클래스로 묶는 간단하면서도 강력한 군집화 알고리즘

 

진행 순서

1. 데이터 준비

2. 몇 개의 클래스로 분류할 것인지 설정

3. 클러스터 최초 중심 설정

4. 데이터를 가장 가까운 클러스터로 지정

5. 클러스터 중심을 클러스터에 속한 데이터들의 가운데 위치로 변경

6. 클러스터 중심이 바뀌지 않을 때까지 4번부터 5번 과정을 반복적으로 수행

 

데이터 준비

수치화된 데이터여야 함

 

몇 개의 클래스로 분류할 것인지 설정

K는 몇 개의 클래스로 분류할 것인지를 나타내는 변수

 

클러스터의 최초 중심 설정

- 무작위로 설정

- 최초 중심값 부여

- kmean++

 

데이터를 가장 가까운 클러스터로 설정

클러스터의 중심이 설정되면 첫번째 데이터부터 마지막 데이터까지 순회하면서 데이터로부터 가장 가까운 클러스터로 데이터를 소속

마지막까지 순회하면 모든 데이터들이 어느 한 클러스터에 속하게 됨

 

클러스터 중심을 클러스터에 속한 데이터들의 가운데 위치로 변경

각 클러스터의 중심값을 실제 클러스터 내부의 데이터들의 중앙값으로 변경

 

클러스터 중심이 바뀌지 않을 때까지 4번부터 5번 과정을 반복적으로 수행

클러스터의 중심이 바뀌어 일부 데이터들은 소속된 클러스터가 바뀌게 됨

데이터의 순회가 완료되면 다시 클러스터의 중심을 소속된 데이터들의 중앙으로 옮김

이 과정을 소속된 데이터가 변경되지 않을 때까지 or 클러스터의 중심이 변경되지 않을 때까지 반복


K mean cluster

https://github.com/ornni/ML_algorithm/blob/main/cluster/kmean_cluster_code.md

반응형

'AI&ML > ML algorithms' 카테고리의 다른 글

앙상블  (0) 2022.08.26
Naive Bayes  (0) 2022.08.15
KNN  (0) 2022.07.29
의사결정나무  (0) 2022.07.25
선형 회귀  (0) 2022.07.18