Machine Learning/Unsupervised Learning

[Unsupervised Learning] [Clustering] Agglomerative Clustering(병합 군집)

데이터 세상 2022. 10. 5. 22:46

Agglomerative Clustering(병합 군집)

시작할 때 각 포인트를 하나의 클러스터로 지정하고, 종료 조건을 만족할 때까지 가장 비슷한 두 클러스터를 합침

종료 조건: 클러스터 갯수, 지정된 갯수의 클러스터가 남을 때까지 비슷한 클러스터를 합침

 

Hierarchical Clustering(계층적 군집)

계층적 트리 모형을 이용하여 개별 데이터 포인트들을 순차적, 계층적으로 유사한 클러스터로 통합하여 군집화를 수행하는 알고리즘

 

Agglomerative Clustering(병합 군집)

  • 개개의 포인트를 순차적으로 병합하는 상향식 군집

 

Divisive Clustering(분할 군집)

  • 전체를 하나의 클러스터로 하여 그것을 분할해 나가는 하향식 군집

 

이미 병합된 클러스터와 합쳐야 되는 경우

linkage

  • 가장 비슷한 클러스터를 측정하는 방법 지정
  • 이 측정은 항상 두 클러스터 사이에서 발생

 

ward 옵션

  • 모든 클러스터 내 분산을 가장 작게 증가시키는 두 클러스터 합치기
  • 크기가 비교적 비슷한 클러스터가 만들어짐

 

average 옵션

  • 클러스터 포인트 사이의 평균 거리가 가장 짧은 두 클러스터 합치기

 

complete 옵션

  • 클러스터 포인트 사이의 최대 거리가 가장 짧은 두 클러스터 합치기

 

 

시각화

Hierarchical Clustering

hierarchical clustering

 

Dendrogram (덴드로그램)

  • 덴드로그램은 계층 군집을 시각화하는 도구
  • 다차원 데이터 세트를 처리할 수 있음
  • 계층적 군집(Hierarchical clustering)에서 클러스터의 개수를 지정해주지 않아도 학습을 수행할 수 있는 것은 개체들이 결합되는 순서를 나타내는 트리 형태의 구조인 덴드로그램 덕분
  • 덴드로그램에서 가지의 길이는 합쳐진 클러스터가 얼마나 멀리 떨어져 있는지를 보여줌 

dendrogram

  • 어떤 과정으로 클러스터들이 합쳐지는지 알 수 있음
  • 클러스터 간 거리가 얼마나 되는지 알 수 있음
  • 몇 개의 클러스터를 사용해야 하는지 알 수 있음

 

장점

K-means의 단점을 극복

  • 무작위 초기화를 사용해 난수 초기값에 따라 알고리즘 출력이 달라짐
  • 클러스터의 모양을 가정하고 있어 활용 범위가 제한적
  • 클러스터의 개수를 지정해줘야 함

vs agglomerative

  • 무작위 초기화를 사용하지 않고, 그냥 가까운 클러스터를 병합
  • 클러스터의 모양과는 상관없이 가까운걸로 구분
  • 덴드로그램을 보면 몇 개의 클러스터를 사용할지 알 수 있음

 

단점

복잡한 모양일 땐 구분하기 어려움

 


References

반응형