Certificate/ADSP

[ADSP] 3과목 - 5장 5-6. 군집분석, 연관분석

Istj_eff 2022. 10. 14. 23:27

5절. 군집분석

1. 군집분석

  • 각 개체(대상)의 유사성을 측정하여 유사성이 높은 대상 집단을 분류하고, 군집에 속한 객체들의 유사성과 서로 다른 군집에 속한 개체간의 상이성을 규명하는 분석 방법이다.
  • 특성에 따라 고객을 여러 개의 배타적인 집단으로 나누는 것이다.
  • 결과는 구체적인 군집분석 방법에 따라 차이가 나타날 수 있다.
  • 군집의 개수나 구조에 대한 가정 없이 데이터들의 사이의 거리를 기준으로 군집화를 유도한다.
  • 마케팅 조사에서 소비자들의 상품구매활동이나 life style에 따른 소비자군을 분류하여 시장 전략 수집 등에 활용한다.

 

1-1. 요인분석의 차이점

  • 요인분석은 유사한 변수를 함께 묶어주는 것이 목적이다.
  • 판별분석은 사전에 집단이 나누어져 있는 자료를 통해 새로운 데이터를 기존의 집단에 할당하는 것이 목적이다.

2. 거리

군집분석에서는 관측 데이터 간 유사성이나 근접성을 측정해 어느 군집으로 묶을 수 있는지 판단해야 한다.

 

연속형 변수의 경우

1. 유클리디안(Euclidean) 거리 ★

  • 데이터간의 유사성을 측정할 때 많이 사용하는 거리, 통계적 개념이 내포되어 있지 않아 변수들의 산포 정도가 전혀 감안되어 있지 않다.
  • 두 점을 잇는 가장 짧은 직선거리 (가장 직관적이고 일반적인 거리 개념) 
  • 공통으로 점수를 매긴 항목의 거리를 통해 판단하는 측도이다. 

2. 맨하탄(Manhattan) 거리 ★

  • 유클리디안 거리와 함께 가장 많이 사용되는 거리 맨하탄 도시에서 건물에서 건물을 가기 위한 최단 거리를 구하기 위해 고안된 거리이다.
  • 절대값 취해서 다 더하기
  • ex) a,b간의 맨해튼 거리는  |90-80| + |60-75| = 25
  a b
score 90 80
time 60 75

3. 표준화 (Statistical) 거리

  • 해당 변수의 표준편차로 척도 변환 후 유클리디안 거리를 계산★ (통계적 거리의 개념)
  • 표준화를 하게 되면 척도의 차이, 분산의 차이로 인해 왜곡을 피할 수 있다. 

 

4. 마할라노비스 거리 (2번출제 표 상)

  • 통계적 개념이 포함된 거리, 변수들의 산포를 고려하여 표준화한 거리 ★
  • 변수의 표준화와 상관성을 동시에 고려한 통계적 거리 ★★
  • 두 벡터 사이의 거리를 산포를 의미하는 표본 공분산으로 나눠주어야 하며 그룹에 대한 사전지식 없이는 표본 공분산을 계산할 수 없으므로 사용하기 어렵다. ★

5. 민코프스키(Minkowski) 거리

6. 캔버라 거리  

 


범주형 변수의 경우

  • 자카드 거리
    • Boolean 속성으로 이루어진 두 객체 간의 유사도 측정에 사용한다. 
    • 자카드 계수
  • 코사인 거리 : 문서를 유사도를 기준으로 분류 혹은 그룹핑 할 때 유용하게 사용한다.
  • 코사인 유사도 : 두 개체의 백터 내적의 코사인 값을 이용하여 측정된 백터간의 유사한 정도이다.

 

 

군집 간 거리 (연속형, 범주형 변수)

  • 연속형 변수 : 유클리디안 거리, 맨하탄 거리, 표준화 거리, 마할노비스거리, 체비셰프 거리, 캔버라 거리, 민코우스키 거리
     dist 함수 지원★ (ditst 함수 아닌 것 찾기)
  • 범주형 변수 : 카드 거리, 자카드 계수, 코사인 거리, 코사인 유사도

 

 

군집 간 거리 (수학적, 통계적 거리)

 1) 수학적 거리: 유클리드 거리, 맨하튼 거리, 민코우스키 거리

 2) 통계적 거리: 표준화 거리, 마할라노비스 거리


3. 계층적 군집간 거리 측정 방법 (연결법)

1. 응집형(Agglomerative) Bottom-up

  • 단일(최단)연결법
    • 두군집 사이의 거리를 관측값을 뽑았을 때 거리의 최솟값을 측정, 고립된 군집을 찾는데 중점을 둔 방식
    • 사슬모양 생길수 있다.
    • 고립된 군집을 찾는데 중점을 둔다.

  • 완전(최장)연결법
    • 두군집 사이의 거리를 관측값을 뽑았을떄 거리의 최대값을 측정.
    • 군집들의 내부 응집성에 중점을 둔다.

  • 중심연결법 : 군집이 결합될 때, 중심간의 거리를 측정함

  • 평균연결법 : 모든 항목에 대한 거리 평균을 구하면서 군집화, 계산양이 많아질수있음
  • 와드연결법 (Ward Linkage) ★ (오차제곱합 나오면 와드!)
    • 크기가 비슷한 군집끼리 병합하는 경향이 있다.
    • 군집이 병합되면 오차제곱합★은 증가하는데, 증가량이 가장 작아지도록 군집을 형성.
    • 계층적 군집분석 수행시 두 군집을 병합하는 방법 가운데 병합된 군집의 오차제곱합이 병합 이전 군집의 오차제곱합에 비해 증가한 정도가 작아지도록 군집형성★

 

2. 분리형(Divisive)Top-Down : 다이아나 방법(Diana Method)


4. 비계층적(분할적) 군집방법

  • 프로토타입 기반 : k-평균 군집, k-중앙값 군집, k-메도이드 군집, 퍼지(Fuzzy)군집
  • 분포기반 : 혼합 분포 군집
  • 밀도기반 : 중심밀도 군집, 격자기반 군집
  1. 비계층적 군집화의 장점
    • 주어진 데이터의 내부구조에 대한 사전정보 없이 의미있는 자료구조를 찾을 수 있다.
    • 다양한 형태의 데이터에 적용이 가능하다.
    • 분석방법 적용이 용이하다.
  2. 비계층적 군집화의 단점
    • 가중치와 거리정의가 어렵다.
    • 초기 군집수를 결정하기 어렵다.  
    • 사전에 주어진 목적이 없으므로 결과 해석이 어렵다.

 

4-1. K-means Clustering 과정 ★★

 1) 사전에 원하는 군집의 갯수(K)와 초기값(seed)들을 정해 seed 중심으로 군집을 형성 

 2) 각 데이터를 거리가 가장 가까운 seed가 있는 군집으로 분류 ★ (오차제곱합이 최소가 되도록)

 3) 각 군집내의 자료들의 평균을 계산하여 군집의 중심을 갱신

 4) 모든 개체가 군집으로 할당될 때까지(변화가 없을때까지) 위와 같은 과정 계속 반복

4-2.  K-평균 군집 분석의 장점과 단점

K-means Clustering의 장점  K-means Clustering의 단점 ★
- 알고리즘이 단순하며, 빠르게 수행되어 분석 방법 적용에 용이
- 계층적군집보다 많은 양의 데이터 다룰 수 있음
- 내부 구조에 대한 사전정보 없이도 
의미 있는 자료구조를 찾을 수 있음
- 다른 군집으로 이동해 재배치 가능

- 평균 대신 중앙값을 사용하는 k-medoids군집을 사용할 수 있음
- U형태 군집 존재할 경우에는 성능이 떨어짐★ 
- 이상값(Outlier)에 민감하여 군집 경계의 설정이 어렵다

- 군집의 수, 가중치와 거리 정의가 어려움
- seed값에 따라 결과가 달라질 수 있음 (항상 일정한 결과 X)
- 사전에 주어진 목적이 없으므로 결과해석 어려움
- 잡음이나이상값의 영향을 많이 받는다.
  • 군집의 수(k)는 미리 정해야함
  • 안정적 군집이 보장되지만, 최적을 보장하지는 못함
  • 초기 중심점들은 멀리 떨어져있는 것이 바람직

5. DBSCAN

  • 밀도기반 클러스터링으로 점이 세밀하게 몰려 있어 밀도가 높은 부분을 클러스터링 함
  • 어느점을 기준으로 반경내에 점이 n개 이상 있으면 하나의 군집으로 인식하는 방식 ★
  • Gaussian 분포가 아닌 임의적 모양의 군집분석에 적합
  • k값을 정할 필요 있음
  • 이상치(outlier)에 의한 성능 하락을 완화할 수 있음
  • U형태 군집이여두 괜찮

 

6. 혼합 분포 군집

  • 데이터가 봉우리가 2개인 분포, 도넛형태의 분포 등 복잡한 형태를 가진 분포의 경우 분포를 확률적으로 선형 결합한 혼합분포로 설명될 수 있음
  • 데이터가 k개의 모수적 모형(정규분포 혹은 다변량 분포를 가정)의 가중합으로 표현되는 모집단 모형으로 부터 나왔다는 가정하에서, 모수와 함께 가중치를 자료로부터 추정하는 방법
  • k개의 각 모형은 군집을 의미, 각 데이터는 추정된 k개의 모형 중 어느 모형으로부터 나왔을 확률이 높은지에 따라 군집의 분포가 이뤄
  • 모수와 가중치 추정에 EM 알고리즘이 사용됨

6-1. K-means vs 혼합 분포 군집

  • 두 방법 모두 1개의 클러스터로 출발
  • k-mean은 클러스터를 중심거리로, EM은 MSL로 거리측정
  • 클러스터를 늘리면 이전보다 클러스터 중심에서 평균 거리는 짧아지고 EM은 우도가 커짐
  • 혼합분포군집은 확률분포를 도임하여 군집을 수행하는 점이 다름
  • EM알고리즘을 이용한 모수 추정에서 데이터가 커지면 수렴하는데 시간이 오래 걸리고,군집의 크기가 작으면 추정의 정도가 떨어짐
  • k-mean 평균과 같이 이상값에 민감하다.

7. EM (Expectation Maximizaion) 알고리즘의 진행 과정 

  • 혼합모형에서 모수와 가중치의 추정을 위해 사용되는 알고리즘
  • 모수(평균,분산,혼합계수)에 대해 임의의 초기값을 정함
  • 잠재변수(latent variable) : 어느 집단에 속하는지에 대한 정보를 갖는 변수
E-단계 k개의 모형 군집에 대해 모수를 사용해 각 군집에 속할 사후확률을 구함
M-단계 사후확률을 이용해 최대우도추정으로 모수를 다시 추정하고, 이를 반복
  • E단계 : 각 자료에 대해 Z의 조건부분포(어느 집단에 속할지에 대한)로부터 조건부 기댓값을 구할 수 있음
  • M단계
    • 관측변수X와 잠재변수Z를 포함하는 로그-가능도함수에 Z 대신 상수값인 Z의 조건부 기댓값을 대입하면, 로그-가능도함수를 최대로 하는 모수를 쉽게 찾을 수 있다.
    • 갱신된 모수 추정치에 대해 위 과정을 반복한다면 수렴하는 값을 얻게 되고, 이는 최대 가능도 추정치로 사용될 수 있다.

8. PAM(partitioning around medoids)

이상값(Outlier)에 민감하여 군집 경계의 설정이 어렵다는 단점을 극복하기 위해 등장한 비계층적 군집 방법

이상치에 대하여 강건한(robust) 군집분석 방법

 

9. min-max 정규화 

정규화 방법 중 원(raw)데이터의 분포를 유지하면서 정규화가 가능한 방법

 

10. Dunn Index(DI)

  • DI = 군집과 군집 사이 거리중 최솟값 / 군집 내 데이터들 거리 중 최댓값
  • 분자가 클수록 군집 간 거리가 멀고, 분모가 작을수록 군집 내 데이터가 모여있음
  • DI가 클수록 군집화가 잘되었다고 평가

 

11. 실루엣 계수(Silhouette  Index) 

  • 군집간의 거리를 기준으로 군집 분할 성과를 측정
  • 한 군집 내 데이터들이 다른 군집과 비교할 때 얼마나 비슷한지를 나타냄 ★★
  • 실루엣 지표가 1에 가까울수록 군집화가 잘되었다고(완벽히 분리되었다고) 판단
  • 실루엣 지표가 0.5보다 크면 결과가 타당한 것으로 판단

12. SOM (Self-Organizing Maps, 자기조직화지도)

  • 고차원 데이터를 저차원의 뉴런으로 정렬화하여 지도형태로 형성화하는 클러스터링 방법 ★
  • 인공신경망의 한 종류로 차원축소와 군집화를 동시에 수행하는 기법이다. ★
  • 대표적인 비지도학습이다. ★
  • 입력 변수의 위치 관계를 그대로 보존한다는 특징이 있다. ★
  • 시각적인 이해가 쉽고, 실제 데이터가 유사하면 지도상에서 가깝게 표현돼 패턴 발견, 이미지 분석 등에서 뛰어난 성능 보임.
  • 입력층과 2차원의 격자 형태의 경쟁층으로 이루어져 있음(2개의 층으로 구성)

 

12-1. SOM 과정

1) SOM노드에 대한 연결강도(weight)초기화

2) 입력벡터와 경쟁층 노드간 거리계산  입력벡터와 가까운 노드선택  경쟁

3) 경쟁에서 선택된 노드와 이웃노드의 가중치(연결강도) 갱신하여 학습  협력 및 적응

4) 단계를 반복하면서 연결 강도는 입력 패턴과 가장 유사한 경쟁층 뉴런이 승자가 됨 

   - 승자 독식 구조로 인해 경쟁층에서는 승자 뉴런만이 나타남 

 

12-3. SOM의 경쟁층 

- 입력 벡터와 경쟁층 노드간의 유클리드 거리를 계산, 입력 벡터와 가장 가까운 노드 선택

- 입력 벡터의 특성에 따라 입력 벡터가 한 점으로 클러스터링되는 층

 

12-4. 신경망 모형 vs. SOM

신경망 모형 SOM
연속적인 층으로 구성
에러 수정을 학습
- 역전파 알고리즘 
- 2차원의 그리드(격자)로 구성
- 경쟁 학습을 시킴
- 단 하나의 전방패스를 사용하여 속도가 매우 빠름 

 

13. 군집 타당성 지표에서 고려사항

  • 군집 간 거리(멀수록 좋음)
  • 군집의 지름
  • 군집의 분산(작을수록 좋음)

 

# 무조건 암기!

유클리디안 거리 식 (빼고 제곱해서 루트)

맨하탄 거리 식(빼고 절대값취해서 다 더하기)

마할라노비스 거리 (표준화, 상관성 나오면 무조건 마할라노비스!)

단일연결법

와드연결법(오차제곱 나오면 와드연결법!)

k-means(재배치 가능, 초기 군집개수 정해야함)

 


6절. 연관분석

1. 연관분석(Association Analysis)

  • 연관규칙 : 항목들간의 ‘조건-결과’ 식으로 표현되는 유용한 패턴 ★
  • 이러한 패턴규칙을 발견해내는 것을 연관분석이라고 함. 장바구니 분석이라고도 함.
  • 상품의 구매, 서비스 등 일련의 거래·사건들 간의 규칙을 발견하기 위해 적용. 
  • Apriori 알고리즘 : 데이터들에 대한 발생빈도를 기반으로 각 데이터간의 연관관계 밝힘
  • FP Growth : Apriori단점 보완.
  • FP-tree와 node, link라는 특별한 자료 구조 사용

 

2. 연관분석의 장단점

연관분석의 장점 연관분석의 단점
조건반응(if-then)으로 표현되는 연관분석의 결과를 이해하기 쉬움
- 강력한 비목적성 분석기법
- 사용 편리한 분석 데이터 분석
계산의 용이성
- 분석 품목 수가 증가하면 분석 계산이 기하급수적으로 증가
- 너무 세부화된 품목으로 연관규칙을 
찾으려면 의미 없는 결과 도출
- 상대적으로 거래량이 적으면 규칙 발견시 
제외되기 쉬움

 

3.  연관분석의 측도 3가지 ★★★ (식 외우기)

규칙표기 A → B : if A then B → A가 팔리면 B가 같이 팔린다.

 

(1) 신뢰도

- 항목 A를 포함한 거래 중에서 항목 A, B가 같이 포함될 확률

(2) 지지도

- 전체 거래 중 항목 A, B를 동시에 포함하는 거래의 비율

(3) 향상도

- 두 품목의 상관관계를 기준으로 도출된 규칙의 예측력, 우수성을 평가하는 지표

- A B 사이에 아무런 상호관계가 없으면(독립) 향상도는 1 ★★ (헷갈리지 말기!)

- 향상도가 1보다 높을수록 연관성이 높다. 

- 1보다 크면 양의 관계, 품목B 구매확률보다 품목A 구매 후 B 구매할 확률이 더 높음

- 1보다 작으면 두 품목이 서로 음의 상관관계임