본문 바로가기

ADsP/3장

ADsP 데이터 분석 준전문가 PART 03 - 5장 _3 정형 데이터마이닝

반응형

< 군집 분석 >

- 각 객체의 유사성을 측정 -> 유사성이 높은 대상 집단을 분류 -> 군집에 속한 개체들의 유사성과 서로 다른 군집에 속한 객체 간의 상이성 규명하는 분석 방법

- 특성에 따라 고객을 여러 개의 배타적인 집단으로 나누는 것

- 결과는 구체적인 군집분석 방법에 따라 차이남

- 군집의 개수나 구조에 대한 가정 없이 데이터들 사이의 거리를 기준으로 군집화 유도

- 마케팅 조사에서 소비자들의 상품 구매행동이나 life style에 따른 소비자군을 분류하여 시장 전략 수립 등에 활용

# 특징

1) 요인 분석과의 차이점

- 요인분석 : 유사한 변수를 함께 묶어주는 것

2) 판별분석과의 차이점

- 판별분석 : 사전에 집단이 나누어져 있는 자료를 통해 새로운 데이터를 기존의 집단에 할당하는 것이 목적

< 거리 >

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

# 연속형 변수인 경우

* 유클리디안 거리 : 데이터 간의 유사성을 측정할 때 많이 사용하는 거리, 통계적 개념 내포 X -> 변수들의 산포 정도가 전혀 감안되어 있지 않음

* 표준화 거리 : 해당 변수의 표준편차로 척도 변환 후 유클리드안 거리를 계산하는 방법. 척도, 분산의 차이로 인한 왜곡 피할 수 있음

* 마할라노비스 거리 : 통계적 개념이 포함된 거리, 변수들의 산포 고려 -> 표준화한 거리, 그룹에 대한 사전 지식 필요

* 체비셰프 거리

* 맨하탄 거리 : 유클리디안 거리와 함게 가장 많이 사용되는 거리, 맨하탄 도시에서 건물을 가기 위한 최단 거리 구할 때 사용

* 캔버라 거리

* 민고우스키 거리 : 맨하탄거리와 유클리디안 거리를 한번에 표현한 공식

# 범주형 변수인 경우

* 자카드 거리

* 자카드 계수

* 코사인 거리 : 문서를 유사도를 기준으로 분류 혹은 그룹핑할 때 유용하게 사용

* 코사인 유사도 : 두 개체의 백터 내적의 코사인 값을 이용하여 측정된 벡터 간의 유사한 정도

< 계층적 군집 분석 >

n개의 군집으로 시작해 점차 군집의 개수를 줄여 나가는 방법

계층적 군집을 형성하는 방법 : 합병형 방법, 분리형 방법

1. 최단 연결법

- n*n 거리행렬에서 거리가 가장 가까운 데이터를 묶어 군집 형성

- 군집과 군집 또는 데이터와의 거리를 계산 시 최단 거리를 거리고 계산 -> 거리행렬 수정

- 수정된 거리행렬에서 거리가 가까운 데이터 또는 군집을 새로운 군집으로 형성

2. 최장 연결법

- 군집과 군집 또는 데이터와의 거리를 계산할 때, 최장거리를 거리로 계산 -> 거리행렬 수정하는 방법

3. 평균 연결법

- 군집과 군집 또는 데이터와의 거리를 계산할 때 평균을 거리로 계산하여 거리행렬을 수정하는 방법

4. 와드 연결법

- 군집 내 편차들의 제곱합을 고려한 방법, 군집 간 정보의 손실을 최소화하기 위해 군집화 진행

5. 군집화

- 거리행렬을 통해 가장 가까운 거리의 객체들 간의 관계를 규명하고 덴드로그램 그린다. -> 덴드로그램을 통해 군집의 개수를 변화해가면서 적절한 군집 수 선정 -> 군집의 수는 분석 목적에 따라 선정할 수 있지만 대부분 5개 이상의 군집은 활용 X

1) 거리행렬을 기준으로 덴드로그램 2) 덴드로그램의 최상단부터 세로축의 개수에 따라 가로선을 그어 군집의 개수 선택 3) 적절한 군집의 수 선정

< 비계층적 군집 분석 >

n개의 개체를 g개의 군집으로 나눌 수 있는 모든 가능한 방법을 점검해 최적화한 군집을 형성하는 것

1. K-평균 군집 분석

- 주어진 데이터를 k개의 클러스터로 묶는 알고리즘

- 각 클러스터와 거리 차이의 분산을 최소화하는 방식

[과정]

- 원하는 군집의 개수와 초기값(seed)을 정해 seed 중심으로 군집 형성 -> 각 데이터를 거리가 가장 가까운 seed가 있는 군집으로 분류 -> 각 군집의 seed 값 다시 계산 -> 모든 개체가 군집으로 할당될 때까지 위 과정 반복

[특징]

- 연속형 변수에 활용 가능

- K개의 초기 중심값은 임의로 선택 가능! 가급적이면 멀이 떨어지는 것이 바람직함

-> 초기 중심값의 선정에 따라 결과가 달라질 수 있음

- 초기 중심으로부터의 오차 제곱합을 최소화하는 방향으로 군집이 형성되는 탐욕적 알고리즘 -> 안정된 군집은 보장하나 최적이라는 보장 X

장점

단점

* 알고리즘 단순, 빠르게 수행되어 분석 방법 적용이 용이
* 계층적 군집 분석에 비해 많은 양의 데이터를 다룰 수 있음
* 사전 정보가 없어도 의미 있는 자료구조 찾을 수 있음
* 다양한 형태의 데이터에 적용 가능

* 군집의 수, 가중치와 거리 정의가 어려움
* 사전에 주어진 목적이 없으므로 결과 해석 어려움
* 잡음이나 이상 값의 영향을 많이 받음
* 볼록한 형태가 아닌 군집이 존재할 경우 성능 떨어짐
* 초기 군집수 결정에 어려움 있음

< 혼합 분포 군집 >

# 개요

- 모형 기반의 군집 방법

- 데이터가 k개의 모수적 모형의 가중합으로 표현되는 모집단 모형으로부터 나왔다는 가정하에서 모수와 함께 가중치를 자료로부터 추정하는 방법 사용

- K개의 각 모형은 군집 의미, 각 데이터는 추정된 k개의 모형 중 어느 모형으로부터 나왔을 확률이 높은지에 따라 군집의 분류 이루어짐

# EM 알고리즘의 진행 과정

임의의 파라미터 값을 정함 -> Z기대치 계산 => Z의 기대치를 이용하여 파라미터 추정 -> Likelihood가 최대화인가?

- yes: 파라미터 추정 값 도출

- no : 추정된 파리미터

[특징]

- K-평균 군집의 절차와 유사하지만, 확률분포를 도입하여 군집 수행

- 군집을 몇 개의 모수로 표현할 수 있으며, 서로 다른 크기나 모양의 군집을 찾을 수 있음

- K-평균 군집과 같이 이상치 자료에 민감함

< SOM >

자가 조직화 지도 알고리즘은 코호넨에 의해 제시

SOM: 비지도 신경망으로 고차원의 데이터를 이해하기 쉬운 저 차원의 뉴런으로 정렬하여 지도의 형태로 형상화

-> 입력 변수의 위치 관계를 그대로 보존한다는 특징

-> 실제 공간의 입력 변수가 가까이 있으면, 지도상에도 가까운 위치에 있게 됨

#구성

1) 입력층(입력 벡터를 받는 층)

- 입력 변수의 개수와 동일하게 뉴런 수 존재

- 입력층의 자료는 학습을 통하여 경쟁층에 정렬 -> MAP(지도)

- 입력층에 있는 각각의 뉴런은 경쟁층에 있는 각각의 뉴런들과 연결되어 있음, 이때 완전 연결되어 있다.

2) 경쟁층(2차원 격차로 구성된 층)

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

- SOM: 경쟁학습으로 각각의 뉴런이 입력 벡터와 얼마나 가까운가를 계산하여 연결 강도를 반복적으로 재조정하여 학습 -> 연결 강도는 입력 패턴과 가장 유사한 경쟁층 뉴런이 승자가 된다

- BMU : 입력 층의 표본 벡터에 가장 가까운 프로토타입 벡터

- 코호넨의 승자 독점의 학습 규칙에 따라 위상학적 이웃에 대한 연결 강도 조정

- 승자 독식 구조로 인해 경쟁층에는 승자 뉴런만이 나타나며, 승자와 유사한 연결 강도를 갖는 입력 패턴이 동일한 경쟁 뉴런으로 배열됨

# 특징

- 고차원의 데이터를 저차원의 지도 형태로 형상화 -> 시각적으로 이해 쉬움

- 입력 변수의 위치 관계를 그대로 보존 -> 실제 데이터가 유사하면 지도상에서 가깝게 표현 => 패턴 발견, 이미지 분석에 뛰어난 성능 보임

- 역전파 알고리즘 등을 이용하는 인공 신경망과 달리 단 하나의 전방 패스를 사용함 -> 속도 매우 빠름 => 실시간 학습 처리 가능

구분

신경망 모형

SOM

학습 방법

오차 역전파법

경쟁학습방법

구성

입력층, 은닉층, 출력층

입력층, 2차원 격자 형태의 경쟁층

기계 학습 방법의 분류

지도 학습

비지도 학습

< 연관 규칙 >

# 연관 규칙 분석의 개념

기업의 데이터베이스에서 상품의 구매, 서비스 등 일련의 거래 또는 사건들 간의 규칙을 발견하기 위해 적용함

- 장바구니 분석 : '장바구니에 무엇이 같이 들어 있는지에 대한 분석'

- 서열분석 : 'A를 산 다음에 B를 산다.'

# 연관 규칙의 형태

조건과 반응의 형태로 이루어짐

[ If A then B : 만일 A가 일어나면 B가 일어난다 ]

# 연관 규칙의 측도

산업의 특성에 따라 지지도, 신뢰도, 향상도 값을 잘 보고 규칙을 선택해야 한다.

1) 지지도

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

2) 신뢰도

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

- 지지도 / P(A)

3) 향상도

- A가 구매되지 않았을 때 품목 B의 구매 확률에 비해 A가 구매됐을 때 품목 B의 구매 확률의 증가 비

- 연관 규칙 A-> B는 품목 A와 품목 B의 구매가 서로 관련이 없는 경우에 향상도가 1이 됨

- 신뢰도 / P(B)

# 연관 규칙의 절차

- 최소 지지도보다 큰 집합만을 대상으로 높은 지지도를 갖는 품목 집합을 찾는 것

- 처음에는 5%로 잡고, 규칙이 충분히 도출되는지를 보고 다양하게 조절하여 시도

- 처음부터 너무 낮은 최소 지지도를 선정하는 것은 많은 리소스가 소모되므로 적절 X

1) 최소 지지도 결정 2) 품목 중 최소 지지도를 넘는 품목 분류 3) 2가지 품목 집합 생성 4) 반복적으로 수행해 빈발 품목 집합을 찾음

장점

단점

* 조건반응으로 표현되는 연관성 분석의 결과를 쉽게 이해
* 분석 방향이나 목적이 특별이 없는 경우 유용하게 활용
* 강력한 비목적성 분석 기법
* 사용이 편리한 분석 데이터의 형태, 간단한 자료 구조
* 분석을 위한 계산 간단

* 분석 품목 수가 증가하면 분석에 필요한 계산은 기하급수적으로 증가
-> 유사한 품목을 한 범주로 일반화, 의미가 적은 연관 규칙 제외
* 너무 세분화한 품목으로 연관성 규칙 찾으면 의미 없는 분석
-> 적절히 구분되는 큰 범주로 구분해 전체 분석에 포함시킨 후 세부적으로 연관 규칙을 찾는 작업 수행
* 거래량이 적은 품목은 규칙 발견 시 제외되기 쉬움 -> 유사한 품목들과 함께 범주로 구성하는 방법을 통해 연관성 규칙 과정에 포함

# 순차 패턴

- 동시에 구매 가능성이 큰 상품군을 찾아내는 연관성 분석에 시간이라는 개념 포함 -> 순차적으로 구매 가능성이 큰 상품군 찾아내는 것

- 고객으로부터 발생한 구매시점에 대한 정보가 포함됨

# 기존 연관성 분석의 이슈

대용량 데이터에 대한 연관성 분석 불가능 --> 시간 많이 소요, 시스템 다운되는 현상 발생

# 최근 연관성 분석 동향

- 1세대 알고리즘 Aprior -> 2세대 FP-Growth -> 3세대 FPV=> SKU 레벨의 연관성 분석 성공적으로 적용

1) Apriori 알고리즘

- 품목 부분 집합의 개수를 줄이는 방식으로 작동

- 빈발 항목 집합 : 최소 지지도보다 큰 지지도 값을 갖는 품목의 집합

- 모든 품목 집합에 대한 지지도 전부 계산 X, 최소 지지도 이상의 빈발 항목 집합을 찾은 후 그것들에 대해서만 연관 규칙 계산

- 구현과 이해하기 쉽다는 장점, BUT 아이템의 개수가 많았지만 계산 복잡도 증가

2) FP-Growth 알고리즘

- 거래내역 안에 포함된 품목의 개수를 줄여 비교하는 횟수를 줄이는 방식으로 작동

- 후보 빈발 항목 집합을 생성하지 않고, FP-Tree를 만든 후 분할 정복 방식을 통해 빈발항목집합 추출하는 방법

- Apriori 알고리즘의 약점 보완하기 위해 고완 된 것, 데이터 베이스를 스캔하는 횟수 적고 빠른 속도로 분석 가능

 

반응형