[파이썬으로 하는 클러스터링 분석 by 강민구 튜터]
1. 계층적 군집화 (Hierarchical Clustering)
1) 정의
- 각 개별 데이터를 하나의 군집으로 가정하고, 가까이 있는 군집부터 순차적으로 합치는 방식
 └ 다른 말로 하면, 여러 군집들을 모아서 하나의 커다란 군집을 만드는 과정 
- 덴드로그램이라는 트리 형태 그래프로 시각화 가능 

2) 계층적 군집화 방식 
 ① Agglomerative Clustering(상향식 군집화) 
   - 각각의 데이터를 하나의 군집으로 여기고, bottom-up으로 묶어나가는 방식
   - 일반적으로 이야기하는 계층적 군집화는 상향식 군집화에 해당 
 ② Divisive Clustering(하향식 군집화) 
  - 전체 데이터가 포함된 하나의 군집을 top-down 방식으로 영역을 쪼개며 구분하는 방식
  - 절반씩 쪼개면서 세분화 해나가는 것이 일반적 
3) 계층적 군집화의 장점 
 ① 군집의 갯수를 정할 필요 없음
- 다른 알고리즘은 어떤 것이 최적의 클러스터링 개수인지도 모른 채 군집 개수를 임의로 정해야 함
 - 계층적 군집화는 진행한 후, 결과를 바탕으로 원하는 수 만큼의 군집 선택(cutting) 가능 
② 클러스터 간 계층적 관계를 찾아낼 수도 있음 (ex. 택소노미(Taxonomy))

4) 계층적 군집화 방법 및 과정 
① 군집 간 거리 측정 방법 

🌰 계층적 군집화에서는 클러스터 간 Linkage(링키지)라고 부르는데, distance랑 유사한 의미
 (1) Single Linkage: 두 군집 사이 최소 거리를 이용 
 (2) Complete Linkage: 두 군집 사이 최대 거리를 이용 
 (3) Average Linkage: 포인트와 포인트 사이 모든 거리들의 평균 
 (4) Centroid Linkage: 각 군집의 centroid 값 사이 거리 (가장 중간, 즉 무게 중심 간 거리)  
 (5) Ward Linkage: 군집 전후 Centroid과 거리 제곱합의 차이를 이용 

  · 한 군집으로 만들 두 개의 클러스터의 각각의 평균(Centroid)과의 거리 제곱합(SSE)을 계산 
  · 두 클러스터를 하나의 군집으로 만들었을 때의 새로운 평균과의 거리 제곱합을 계산  
· 두 값의 차이인 Ward distance가 가장 작은 경우에 두 클러스터를 합침
② 계층적 군집화 진행 과정 

- 각각의 데이터를 크기 1의 군집으로 정의
- 거리가 가장 가까운 두 개의 군집을 하나로 합쳐나가는 과정 반복
- 최종적으로 하나의 군집(모든 데이터를 포함한 군집)으로 묶이면 멈춤 
 └ 군집의 갯수: (시작) n개 → (끝) 1개 
  └ 각 군집의 크기: (시작) 1개 → (끝) n개 
2. 덴드로그램(Dendrogram)
1) 정의
- 나무(déndron)를 나타내는 다이어그램(grámma)
- 계층적 군집화 결과를 한 눈에 볼 수 있어 시각화 과정에 거의 대부분 사용

2) 덴드로그램 작성 과정 

- 거리가 가장 가까운 두 군집을 ‘ㄷ’ 형태로 잇기 
└ 이때 나무 높이(y축)는 두 군집 사이의 거리에 해당 (짧을 수록 가까운 것)
 └ 데이터와 데이터 사이를 이을 때는 가로축에 나열된 두 점을 잇기 
 └ 데이터와 군집 사이를 이을 때는 데이터와 군집의 가운데 점을 잇기
- 거리가 가까운 순으로 계속해서 모든 데이터가 하나의 군집으로 묶일 때까지 위 작업 반복
'TIL' 카테고리의 다른 글
| [240404] 클러스터링 분석 - ④ K-means 군집화 (0) | 2024.04.04 | 
|---|---|
| [240403] 클러스터링 분석 - ③ 계층적 군집화와 덴드로그램 (실습) (1) | 2024.04.03 | 
| [240401] 파이썬 유저 코호트 분석 (월별/주차별) (0) | 2024.04.01 | 
| [240329] 파이썬 sqlalchmey로 SQL DB 연동해 데이터 불러오기 (0) | 2024.04.01 | 
| [240328] 파이썬: 코드카타 49 & SQL: 코드카타 167 (0) | 2024.03.28 | 
 
                  
                 
                  
                