반응형

[ADsp 정리] 3-5-5. 군집 분석(Clustering Analysis)

 

1. 정의
- 유사성이 높은 대상을 분류하는 기법
- classification과의 차이점은 정답이 미리 정해져 있지 않는다는 점에서 차이가 존재
- 요인 분석 : 유사한 변수를 묶는 것
- 판별 분석 : 사전에 집단이 나누어져 있는 자료를 통해 새로운 데이터를 집단에 할당  
2. 거리
2-1. 연속형 변수
A. 유클리디안 거리(Euclidean Distance)
- 일반적인 거리 공식으로 변수들의 산포 정도를 포함하고 있지 않음 

B. 표준화 거리(Statistical Distance)
- 표준 편차로 척도 변환 후, 유클리디안 거리 사용

C. 마할라노비스거리(Mahalanobis)
- 데이터의 산포를 고려한 표준화 거리 기법이다. 두 벡터 사이의 거리를 표준공분산으로 나우어야 함

D. 체비셰프 거리 (Chebychev)
- 가장 절대갑 거리가 큰 것을 이르는 것max(abs(x-y))

E. 맨해탄 거리 (Manhattan)
- abs거리의 총 합

F.   캔버라 거리(Canberra)
- 거리의 차이/ 거리의 합

G.  민코우스키 거리(Minkowski)
- 맨하탄과 유클리디안을 한번에 표현
- L2 - 유클리디안 거리 (root(sqrt))
- L1 - 맨하탄 거리 (ABS)

2-2. 범주형 변수
A. 자카드 계수
IoU와 마찮가지로 교집합/ 합집합을 의미한다.

B. 자카드 거리
1- 자카드 계수 

C. 코사인 유사도(Cosine Similarity)
- np.dot(a,b)/ sqrt(root(a)) x sqrt(root(b))

D. 코사인 거리
- 1 - 코사인 유사도
3. 계층적 군집 분석 
3.1 정의
- 계층적 군집 방법은 n개의 군집으로 시작해 점차 군집의 개수를 줄여가는 방법

3.2 방법
- 합병형 방법(Agglomerative / Bottom Up) : 여러개의 군비에서 점차 줄여나감
- 분리형 방법(Divisive / Top Down) : 한개에서 여러개로 군집수를 늘림

3.3 종류
A. 최단 연결법(Single Linkage / Nearest Neighbor)
- 군집과 군집 혹은 굱집과 데에터와의 거리를 계산 시, 최단거리로 계산하여 거리행렬 수정 진행

B.  최장 연결법(Complete Linkage/ Farthest Neighbor)
- 군집과 군집 혹은 굱집과 데에터와의 거리를 계산 시, 최장거리로 계산하여 거리행렬 수정 진행


C. 평균 연결법(Average Linkage)
- 군집과 군집 혹은 굱집과 데에터와의 거리를 계산 시, 평균거리로 계산하여 거리행렬 수정 진행


D. 와드 연결법(Ward Linkage)
- 군집내 편차의 제곱을 고려/ 군집간 손실을 최소

3.4. 군집화 방법
- 텐드로그램 을 그리고 가로 선을 그어 군집의 갯수를 선택할 수  있다. 
4. 비게층적 군집 분석
k개의 군집으로 나누느 방법

A. K-평균 군집 분석(K-Means Clustering) 
- k개의 클러스터로 묶는 알고리즘으로, 클러스터와 거리의 차이를 최소화하는 방식으로 동작
- 원하는 군집의 개수와 초기 값(Seed)를 정하여 군집을 형성하며 계속해서 Seed의 값을 업데이트 하는 것이다. 

B. K-평균 군집분석의 장단점
B-1 장점
- 단순하여 빠르게 수행
- 많은 양의 데이터 가능
- 사전 정보가 업어도 의미있는 정보 가능
- 다양한 데이터에 가능

B-2 단점
- 군집의 수와 SEED 초기 위치, 가중치 정의가 어려움
- 잡음에 영향이 큼
5. 혼합 분포 군집(Mixture Distribution Clustering
5-1. 정의
- 모델 기반(Model Based) 군집화 방법으로 k개의 모형 중 어느 모형에서 나왔는지 확률에 따라 분류
- 가중치의 추정에는 EM 알고리즘 사용

5-2. 데이터의 형태
- 여러개의 정규분포의 결합 형태를 띄는 것에 적합

5-3. EM(Expectation - Maximmization)  알고리즘
- 각 자료의 z 조건부분포로 부터 조건부 기댓값 계산
- E 단계 : z 의 기대치 계산
- M 단계 : E단계를 이용하여 파라미터 추정
- 확률 분포를 도입하여 군집을 수행하며, 서로 다른 크기의 모양과 크기의 군집을 찾을 수 있음
- 군집의 크기가 너무 작으면 추정의 정도가 떨어지며, 너무 크면 수렴에 시간이 걸림
- K-Means처럼 이상치에 민감함
6. SOM(Self Organizing Map)
A. 정의
- 자가 조직화 지도(SOM)은 코호넨 맵이라고도 함
- 비지도 신경망으로 고차원 데이터를 저차원 뉴런으로 정렬 

B. 구성
B-1. 입력층(Input Layer)
- 입력 개수와 동일한 뉴런의 개수
- 입력층 자료가 학습을 통하여 경쟁층에 정렬되며 이를 map이라 함
- 입력층과 경쟁층은 Fully Connected 되어 있음 

B-2. 경쟁층(Competitive Layer)
- 2차원 격자로 구성됨

B-3 학습 방법
- 경쟁학습을 통해 각 뉴런이 입력 벡터와 얼마나 가까운지 연결 강도(Connective Weight)를 반복 재조정하여 연결 강도(Connective Weight)가 입력 과 가장 유사한 경쟁층 뉴련 형성
- 입력층에 가장 가까운 프로토타입 벡터를 선택하여 BMU(Best-Matcghing Unit) 라고 하며, 학습 규칙에 따라 (topological negihbors)에 대한 연결 강도를 조정
- 승자 뉴런만이 나타나, 승자와 유사한 연결 강도를 갖는 입력 패턴이 동일한 경쟁 뉴련으로 배열됨 

C. 인공 신경망 vs SOM(Self Organizing Map)
인공 신경망 
학습 방법 : Backpropagation 사용
구성 : 입력층, 은닉층, 출력층
학습 분류 : 지도학습

SOM(Self Organizing Map)
학습 방법 : 경쟁학습아법
구성 : 입력층, 2차원 격자 형태의 경쟁층
학습 분류 : 비지도 학습

D. 특징
- 지도 형태로 형상화하여 시각화 및 이해 쉬움
- 입력 변수의 위치 관계를 보존하여 실제 데이터가 유사하면 지도상에 가깝게 표현됨
- 패턴 발견, 이미지 분석에 뛰어남 
- Backpropagation을 사용하지 않고, 전방패스(Feed Foward Flow) 를 사용하여 속도가 빠르며, 실시간 학습 가능 
반응형

+ Recent posts