[ADSP] 3과목 - 5장 5-6. 군집분석, 연관분석
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)군집
- 분포기반 : 혼합 분포 군집
- 밀도기반 : 중심밀도 군집, 격자기반 군집
- 비계층적 군집화의 장점
- 주어진 데이터의 내부구조에 대한 사전정보 없이 의미있는 자료구조를 찾을 수 있다.
- 다양한 형태의 데이터에 적용이 가능하다.
- 분석방법 적용이 용이하다.
- 비계층적 군집화의 단점
- 가중치와 거리정의가 어렵다.
- 초기 군집수를 결정하기 어렵다.
- 사전에 주어진 목적이 없으므로 결과 해석이 어렵다.
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보다 작으면 두 품목이 서로 음의 상관관계임