클러스터링

2020. 9. 6. 16:48

* 클러스터링

클러스터링(군집화, 군집)이란

 - 비지도학습: 출력변수 y가 존재하지 않고, 입력변수 x들간의 관계에 대해 모델링하는 것

 - 비지도학습의 종류: 군집분석(유사한 데이터들끼리 그룹화하는 기법), PCA(독립변수들의 차원을 축소화하는 기법) 등

 - 클러스터링은 비지도학습의 일종이며, 군집화를 의미한다. 소속집단의 정보가 없거나 모르는 상태에서 비슷한 집단으로 묶는 방법을 의미한다.

 - 클러스터링은 y가 없기 때문에 Classification(분류, 지도학습에 해당함)보다는 정확성이 떨어진다.


클러스터링의 종류

 - K-means Clustering: 주어진 데이터를 사용자가 지정한 k개의 군집으로 분류하는 방법

   (주어진 데이터와 사용자가 지정한 k개의 기준간의 거리를 오차로 계산하여, 오차가 가장 적은 기준으로 데이터를 분류하는 방법)

 - Hierarchical clustering(계층적 군집분석): 나무모양의 계층구조(ex: decision tree)를 형성해나가는 방법

 - DBSCAN: k개를 설정할 필요없이 군집화를 하는 방법


K-means Clustering 

 - 각 군집에 할당된 포인트들의 평균좌표를 이용해 중심점을 반복적으로 업데이트하는 방법

 - 진행방법

    1. 각 데이터 포인트 i에 대해 가장 가까운 중심점을 찾고, 그중심점에 해당하는 군집할당(즉 군집을 분류하는 기준점인 중심점을 잡고(사용자가 임의로 혹은 기준에 따라) 각 데이터를 해당 중심점의 군집에 할당한다.)

    2. 할당된 군집을 기반으로 새로운 중심 계산, 중심점은 군집 내부점들 좌표의 평균으로 잡는다(즉 일단 분류된 군집들의 평균지점을 새로운 중심점으로 만든다)

    3. 각 클러스터의 할딩 바뀌지 않을 때 까지 반복(즉, 주어진 데이터들의 소속군집이 바뀌지 않을 때까지 1,2의 과정을 반복한다)

 - 점과 점사이의 거리를 측정하는 방법

    Manhattan distance: 각 축에 대해 수직이로만 이동하여 계산하는 거리측정방식(ex: 0.0과 1.1의 거리는 x축으로 1, y축으로 1이니 2값을 가진다.)

    Euclidean distance: 점과 점사이의 가장 짧은 거리를 계산하는 거리측정방식(ex: 0.0과 1.1의 거리는 최단거리로 루트 2값을 가진다)


 - 최적의 k를 설정하는 방법이 필요하다.

     대표적 방법: Elbow method(각 군집과 전체 분산의 비율이 가장 적어지는 군집개수(k, 클러스터 개수)를 구하는 방식), Silhoutte method(실루엣 메소드, 각 데이터(객체)와 데이터에 속한 군집의 데이터들간의 비유사성을 계산하여 가장 비유사성이 적도록 구성하는 k값을 구하는 방법)

 - k-mean은 사실 잘 안쓰이는 방법이라고 한다. 차원이 증가할수록 거리를 기반으로하는 군집분석(K-means Clustering)이 의미가 없어지기 때문이다. 

    -> 이 단점을 약간 보완한 방식이 k-medoid Clustering 이라고 함

'Study > Deep_Machine learning' 카테고리의 다른 글

딥러닝1  (0) 2020.10.03
불균형 데이터  (0) 2020.09.20
앙상블기법  (0) 2020.09.06
기본적인 머신러닝 모형  (0) 2020.08.22
회귀분석  (0) 2020.08.17

+ Recent posts