군집화 K-means
태그 :
- 개념
- - 전체 데이터를 몇 개의 집단으로 그룹화하여 각 집단의 성격을 파악함으로써 데이터 전체의 구조에 대한 이해를 돕고자 하는 분류 알고리즘
Ⅰ. 각각의 군집 데이터의 대표 값으로 전체 데이터 특성을 파악하는 클러스터 탐지의 개요
가. 클러스터 탐지(군집분석)의 정의
- 전체 데이터를 몇 개의 집단으로 그룹화하여 각 집단의 성격을 파악함으로써 데이터 전체의 구조에 대한 이해를 돕고자 하는 분석법
- 모집단 또는 범주에 대한 사전 정보가 없는 경우 주어진 관측 값들 사이의 거리 또는 유사성을 이용하는 분석법
- 주어진 데이터들의 특성을 고려해 데이터 집단(클러스터)을 정의하고 데이터 집단의 대표할 수 있는 대표점을 찾는 것으로 데이터 마이닝의 한 방법
나. 군집화
-N개의 관찰치를 대상으로 p개의 변수를 측정했을 때 관측한 p개의 변수 값을 이용하여 N개의 관찰치 사이의 유사성 또는 비 유사성의 정도를 측정하여 관찰자를 가까운 순서대로 군집화 함.
구분 |
설명 |
군집화의 기준 |
동일한 군집에 속하는 개체는 여러 속성이 비슷하고, 서로 다른 군집에 속한 관찰치는 그렇지 않도록 구성 |
군집화를 위한 변수, 예) 고객세분화 |
- 인구 통계적 변수: 성별, 나이, 거주지, 직업, 소득, 교육, 종교 등 - 구매 패턴 변수: 상품, 주기, 거래액 등 - 생활 패턴 변수: 라이프스타일, 성격, 취미, 가치관 등 |
다. 군집분석의 활용
- 군집분석은 속성이 비슷한 잠재 고객들끼리 그룹화 하여 시장을 세분화 하는 방법에 자주 활용
활용 예)
구분 |
설명 |
기업의 수익에 기여 정도 |
- 우수고객의 인구통계적 요인, 생활패턴 파악 - 개별고객에 대한 맞춤관리 |
구매패턴 |
- 신상품 판촉 - 교차판매를 위한 목표집단 구성 |
라. 군집분석의 특징
구분 |
설명 |
탐색적인 기법 |
주어진 자료에 대한 사전정보 없이 의미 있는 자료구조를 찾아 낼 수 있음 |
다양한 형태의 데이터에 적용가능 |
거리만 잘 정의되면 모든 종류의 자료에 적용 할 수 있음 |
분석자에 의존 |
자료의 사전 정보 없이 자료를 파악하는 방법으로, 분석자의 주관에 결과가 달라짐 |
분석방법 용이 |
분석방법의 적용이 쉬움 |
가중치 및 거리 |
가중치와 거리의 정의가 어려움 |
결과 해석 |
결과의 해석이 어려움 |
초기 군집수 K 결정 |
초기 군집수 K의 결정이 어려움 |
Ⅱ. 클러스터 분석기법
가. 클러스터 분석기법 개요
- 각 개체간의 유사도(similarity) 혹은 비유사도(dissimilarity)를 기반으로 서로 유사한 개체를 동일한 그룹에 할당하여 분석하는 기법
나. 거리
- 군집분석에서는 관측 값들이 서로 얼마나 유사한지 또는 유사하지 않은지를 측정할 수 있는 척도가 필요
- 거리는 값이 작을수록 두 관찰치가 서로 유사한 것을 의미
- 유사성은 값이 클수록 두 관찰치가 서로 유사함을 의미
Ⅲ. 군집분석 알고리즘의 분류
- 군집분석은 프로토타입 기반 군집분석, 계층적 기법, 밀도기반 군집기법, 그리드 기반 기법으로 구분 가능 (여기서 프로토타입은 클러스터의 특징(중심점)을 의미)
Ⅳ. 계층적 군집분석(Hierarchical Cluster Method)
가. 정의
- 가까운 관측 값들끼리 묶는 병합(agglomeration)과 먼 관측 값들을 나누어가는 분할(division)에 의해 전체 군집들간 구조적 관계를 분석하는 기법
계층적 군집분석 |
구분 |
설명 |
병합계층 군집화 |
-Agglomerative Hierarchical Method -단일 개체로부터 시작하여 서로 유사한 개체들끼리 병합하는 방법 |
|
분할계층 군집화 |
-Divisive Hierarchical Method -단일 그룹에서 시작하여, 두 개의 하위 그룹으로 분할하는 방법 |
나. 특징
- 계층적 군집분석에서는 주로 병합 방법 사용
- 결과를 나무구조인 덴드로그램(dendrogram)을 통해 간단하게 나타낼 수 있고, 이를 이용하여 전체 군집들간의 구조적 관계 를 쉽게 살펴볼 수 있음
다. 병합방법
- 처음에 n개의 자료를 각각 하나의 군집으로 취급
- n개의 군집 중 가장 거리가 가까운 두 개의 군집을 병합하여 n-1개의 군집 형성
- n개의 군집 중 가장 가까운 두 군집을 병합하여 군집을 n-2개로 줄임
- 이를 반복하여 계속하여 군집의 수를 줄임
- 이 과정은 시작부분에는 군집의 크기는 작고 동질적이며, 끝부분에서는 군집의 크기는 커지고 이질적이 됨
- 최장거리, 평균거리 방법 등
Ⅴ. 비계층적 군집분석
가. 개념
-관측 값들을 몇 개의 군집으로 나누기 위하여 주어진 판정기준을 최적화
-최적분리 군집분석이라고도 함
-대표적인 비계층적 군집분석 방법이 K-평균 방법임
나. K-평균 군집 (K-means clustering)
-사전에 결정된 군집수 K에 기초
-전체 데이터를 상대적으로 유사한 K개의 군집으로 분할
-군집수 K는 반복적으로 K를 달리 사용해봐서 가장 적합한 K를 결정
- k-평균 군집법은 계층적 군집법에 비하여 계산량이 적음
- 대용량 데이터를 빠르게 처리할 수 있음
다. K-평균 알고리즘
- 군집수 K를 결정
- 랜덤 하게 초기 K개 군집의 중심을 선택
- 각 관측값을 그 중심과 가장 가까운 거리에 있는 군집에 할당하고 군집 중심을 새로 계산
- 위의 과정을 기존의 중심과 새로운 중심의 차이가 없을 때까지 반복
- k-평균 군집 알고리즘에 대한 예시
- 초기 군집의 중심
- 중심의 이동
라. K-평균법의 단점
-군집이 겹치는 경우에 좋지 않음
-이상치에 민감
-각 관측값이 할당된 군집에 속하지 않을 불확실성에 대한 측정치 없음
마. K평균 군집법의 유의사항
-군집분석은 자료 사이의 거리를 이용하기 때문에 각 자료의 단위가 결과에 큰 영향을 미침. 따라서, 각 변수의 단위를 표준화 해야 함.
-좋은 결과란, 각 군집 안에서 분산이 최소화 되는 것
-군집화의 목적은 해당 군집이 어떤 변수에 의해서 형성되었는지 파악하는 것
-찾아진 군집이 무엇을 의미하는지를 데이터만 이용해서는 해석이 어려움
Ⅵ. 군집분석의 고려사항
가. 단위/가중치문제
구분 |
설명 |
표준화 |
-군집분석은 자료사이의 거리를 이용하여 수행되기 때문에 자료의 단위가 결과에 큰 영향을 미침 - 표준화 : 각 변수의 관측값에서 평균을 빼고 표준편차로 나누는 것 - 표준화 된 자료는 모든 변수가 평균이 0이고 표준편차가 1 |
가중치 |
- 각 변수의 중요도가 다를 경우 가중치를 이용하여 각 변수의 중요도를 조절 - 가중치는 대부분의 경우 단위변환(표준화)를 수행한 후 부여 - 가중치에 대한 군집의 영향을 평가 하기 위하여는 여러 가지의 가중치에 대하여 군집분석의 결과를 비교 |
나. 장단점
구분 |
세부사항 |
설명 |
장점 |
탐색적인 기법 |
군집분석은 그 자체가 대용량 데이터에 대한 탐색적인 기법으로서, 주어진 데이터의 내부구조에 대한 사전적인 정보 없이 의미 있는 자료구조를 찾아낼 수 있는 방법 |
다양한 형태의 데이터에 적용 가능 |
분석을 위해서는 기본적으로 관찰치 간의 거리를 데이터형태에 맞게만 정의하면, 거의 모든 형태의 데이터에 대하여 적용이 가능한 방법 |
|
분석방법의 적용 용이성 |
대부분의 군집방법이 분석대상 데이터에 대해 사전정보를 거의 요구하지 않음 적용 유리 즉, 모형화를 위한 분석과 같이 사전에 특정 변수에 대한 역할 정의가 필요하지 않고 다만 관찰치 들 사이의 거리만이 분석에 필요한 입력자료로 사용. |
|
단점 |
가중치와 거리 정의 |
군집분석의 결과는 관찰치 사이의 비 유사성인 거리 또는 유사성을 어떻게 정의하느냐에 따라 크게 좌우, 따라서 관찰치 들 사이의 거리를 정의하고 각 변수에 대한 가중치를 결정하는 것은 매우 어려운 문제다. |
초기 군집수의 결정 |
k-평균 군집분석에서는 사전에 정의된 군집 수를 기준으로 동일한 수의 군집을 찾게 되므로 만일 군집수 k가 원 데이터구조에 적합하지 않으면 좋은 결과를 얻을 수 없다. |
|
결과해석의 어려움 |
탐색적인 분석방법으로의 장점을 가지고 있는 반면에 사전에 주어진 목적이 없으므로 결과를 해석하는데 있어서 어려움 존재 |
Ⅶ. 군집분석(K-means)의 활용 방안
- 시장과 고객 분석, 패턴인식, 공간데이터 분석, Text Mining 등
- 최근에는 패턴인식, 음성인식의 기본 알고리즘으로 활용
- 데이터가 불규칙하고 내부 특징이 알려지지 않은 분류 초기 단계에 적합.
Ⅰ. 밀도 기반의 공간적 군집화, DBSCAN의 개요
가. DBSCAN(Density Based Spatial Clustering with Application Noise)의 정의
- K-Means 군집의 한계인 오목한 형태의 데이터를 군집화하기 위해, 데이터의 밀도를 기준으로 인스턴스들을 공간적으로 군집화하는 기법
나. 특징
- 노이즈 및 아웃라이어 데이터 식별에 강함
- 밀도 있게 연결되어 있는 데이터의 집합
Ⅱ. DBSCAN의 구성도 및 구성요소
가. DBSCAN의 구성도
나. DBSCAN의 구성요소
Ⅲ. DBSCAN의 사례
가. 군집화 사례
나. 상세 설명
1) 먼저 좌표 공간에 학습 데이터를 표시
2) 한 점의 밀도가 MinPts 이상이면 Core, 미만이면 Noise로 정의
3) Cluster 구성 후 이웃 점을 차례로 방문하면서 Core인지를 판단
(P1 → P2 → P3 → P4, 즉 P1과 P4는 같은 Cluster 이다)
다. 참고용어
- 밀도 : 반경 (ε, Epsilon) 안에 있는 다른 좌표 점의 수
- MinPts : 어떤 좌표점이 Cluster를 형성 할 수 있는 최소 좌표 점의 수
Ⅳ. k-means와의 처리 결과 비교
- K-mean 는 동심원 모양으로 데이터가 모여 있거나 반달 모양으로 클러스터를 형성하고 있으면 클러스터의 중심으로부터 거리 기준으로 분류하는데 적합
DBSCAN은 코어 데이터들을 계속 밀도 있게 연결하여 나아가 동일한 클러스터로 판단하기 때문에 직관적 관점에서 레이블이 없는 두 개의 클러스터에 적합