ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ADsP] 3과목 데이터 분석_요약 정리(5.정형 데이터 마이닝)
    ADsP 2021. 2. 27. 20:57
    반응형

    5. 정형 데이터 마이닝

    5_1. 데이터 마이닝의 개요

    * 데이터마이닝

    - 데이터마이닝은 대용량 데이터에서 의미있는 패턴을 파악하거나 예측하여 의사결정에 활용하는 방법이다.

     

    * 통계분석과의 차이점

    - 통계분석은 가설이나 가정에 따른 분석이나 검증을 하지만 데이터마이닝은 다양한 수리 알고리즘을 이용해 데이터베이스의 데이터로부터 의미있는 정보를 찾아내는 방법으로 통칭한다.

     

    * 데이터마이닝의 종류

    1) 정보를 찾는 방법론에 따른 종류

    - 인공지능(Artificial Intelligence), 의사결정나무(Decision Tree), K-평균군집합(K-means Clustering), 연관분석(Association Rule), 회귀분석(Regression), 로짓분석(Logit Analysis), 최근접이웃(Nearest Neighborhood)

    2) 분석대상, 활용목적, 표현방법에 따른 분류

    - 시각화분석(Visualization Analysis), 분류(Classification), 군집화(Clustering), 포케스팅(Forecasting)

     

    * 사용분야

    - 병원에서 환자 데이터를 이용해서 해당 환자에게 발생 가능성이 높은 병을 예측

    - 기존 환자가 응급실에 왔을 때 어떤 조치를 먼저 해야 하는지를 결정

    - 고객 데이터를 이용해 해당 고객의 우량/불량을 예측해 대출적격 여부 판단

    - 세관 검사에서 입국자의 이력과 데이터를 이용해 관세물품 반입 여부를 예측

     

    * 데이터마이닝의 최근 환경

    - 데이터마이닝 도구가 다양하고 체계화되어 환경에 적합한 제품을 선택하여 활용 가능하다.

    - 알고리즘에 대한 깊은 이해가 없어도 분석에 큰 어려움이 없다.

    - 분석 결과의 품질은 분석가의 경험과 역량에 따라 차이가 나기 때문에 분석 과제의 복잡성이나 중요도가 높으면 풍부한 경험을 가진 전문가에게 의뢰할 필요가 있다.

    - 국내에서 데이터마이닝 적용된 시기는 1990년대 중반이다.

    - 2000년대에 비즈니스 관점에서 데이터마이닝이 CRM의 중요한 요소로 부각되었다.

    - 대중화를 위해 많은 시도가 있었으나, 통계학 전문가와 대기업 위주로 진행되었다.

     

    * 데이터마이닝 분석 방법

    1) 지도학습(Supervised Data Prediction)

    - 의사결정나무(Decision Tree), 인공신경망(ANN, Artificial Neural Network), 일반화 선형 모형(GLM, Generalized Linear Model), 회귀분석(Regression Analysis), 로지스틱 회귀분석(Logistic Regression Analysis), 사례기반 추론(Case-Based Reasoning), 최근접 이웃법(KNN, K-Nearest Neighbor)

    2) 비지도학습(Unsupervised Data Prediction)

    - OLAP(On-Line Analytical Processing), 연관성 규칙발견(Association Rule Discovery, Market Basket), 군집분석(K-Means Clustering), SOM(Self Organizing Map)

     

    * 분석 목적에 따른 작업 유형과 기법

    1) 예측(Predictive Modeling)

    - 분류 규칙(Classification) : 가장 많이 사용되는 작업으로 과거의 데이터로부터 고객특성을 찾아내어 분류모형을 만들어 이를 토대로 새로운 레코드의 결과값을 예측하는 것으로 목표 마케팅 및 고객 신용평가 모형에 활용됨

    사용 기법) 회귀분석, 판별분석, 신경망, 의사결정나무

    2) 설명(Descriptive Modeling)

    - 연관 규칙(Association) : 데이터 안에 존재하는 항목간의 종속관계를 찾아내는 작업으로, 제품이나 서비스의 교차판매(Cross Selling), 매장진열(Display), 첨부우편(Attached Mailings), 사기적발(Fraud Detection) 등의 다양한 분야에 활용됨

    사용 기법) 동시 발생 매트릭스

    - 연속 규칙(Sequence) : 연관 규칙에 시간관련 정보가 포함된 형태로, 고객의 구매이력(History) 속성이 반드시 필요하며, 목표 마케팅(Target Marketing) 이나 일대일 마케팅(One to One Marketing)에 활용됨

    사용 기법) 동시 발생 매트릭스

    - 데이터 군집화(Clustering) : 고객 레코드들을 유사한 특성을 지난 몇 개의 소 그룹으로 분할하는 작업으로 작업의 특성이 분류규칙(Classification)과 유사하나 분석대상 데이터에 결과 값이 없으며, 판촉활동이나 이벤트 대상을 선정하는데 활용됨

    사용 기법) 군집분석

     

    * 성과분석 오분류에 대한 추정치

    - 정분류율(Accuracy), 오분류율(Error Rate), 특이도(Specificity), 민감도(Sensitivity), 정확도(Precision), 재현율(Recall) : 민감도와 같음, F1 Score 의 수식

     

    * ROC Curve(Receiver Operating Characteristic Curve)

    - ROC Curve란 가로축을 FPR(False Positive Rate=1-특이도)값으로 두고, 세로축을 TPR(Ture Positive Rate, 민감도)값으로 두어 시각화한 그래프이다.

    - 2진 분류(Binary Classfication)에서 모형의 성능을 평가하기 위해 많이 사용되는 척도이다.

    - 그래프가 왼쪽 상단에 가깝게 그려질수록 올바르게 예측한 비율은 높고, 잘못 예측한 비율은 낮음을 의미한다. 따라서 ROC곡선 아래의 면적을 의미하는 AUROC(Area Under ROC) 값이 크면 클수록(1에 가까울수록) 모형의 성능이 좋다고 평가한다.

    - TPR(Ture Positive Rate, 민감도) : 1인 케이스에 대한 1로 예측한 비율

    - FPR(False Positive Rate, 1-특이도) : 0인 케이스에 대한 1로 잘못 예측한 비율

     

    * 이익도표

    - 이익도표는 분류모형의 성능을 평가하기 위한 척도로, 분류된 관측치에 대해 얼마나 예측이 잘 이루어졌는지를 나타내기 위해 임의로 나눈 각 등급별로 반응검출율, 반응률, 리프트 등의 정보를 산출하여 나타내는 도표이다.

    - 이익도표의 각 등급은 예측확률에 따라 매겨진 순위이기 때문에, 상위 등급에서는 더 높은 반응률을 보이는 것이 좋은 모형이라고 평가할 수 있다.

     

    5_2. 분류분석

    * 분류분석

    - 데이터가 어떤 그룹에 속하는지 예측하는데 사용되는 기법이다.

    - 클러스터링과 유사하지만, 분류분석은 각 그룹이 정의되어 있다.

    - 교사학습(supervised learning)에 해당하는 예측기법이다.

     

    * 예측분석

    - 시계열분석처럼 시간에 따른 값 두 개만을 이용해 앞으로의 매출 또는 온도 등을 예측하는 것

    - 모델링을 하는 입력 데이터가 어떤 것인지에 따라 특성이 다르다.

    - 여러 개의 다양한 설명변수(독립변수)가 아닌, 한 개의 설명변수로 생각하면 된다.

     

    * 분류분석, 예측분석의 공통점과 차이점

    1) 공통점

    - 레코드의 특정 속성의 값을 미리 알아맞히는 점이다.

    2) 차이점

    가) 분류 : 레코드(튜플)의 범주형 속성의 값을 알아맞히는 것이다.

    나) 예측 : 레코드(튜플)의 연속형 속성의 값을 알아맞히는 것이다.

     

    * 분류, 예측의 예

    1) 분류

    가) 학생들의 국어, 영어, 수학 점수를 통해 내신등급을 알아맞히는 것

    나) 카드회사에서 회원들의 가입 정보를 통해 1년 후 신용등급을 알아맞히는 것

    2) 에측

    가) 학생들의 여러 가지 정보를 입력하여 수능점수를 알아맞히는 것

    나) 카드회사 회원들의 가입정보를 통해 연 매출액을 알아맞히는 것

     

    * 분류 모델링

    - 신용평가모형 (우량, 불량)

    - 사기방지모형 (사기, 정상)

    - 이탈모형 (이탈, 유지)

    - 고객세분화 (VVIP, VIP, GOLD, SILVER, BRONZE)

     

    * 분류 기법

    - 회귀분석, 로지스틱 회귀분석 (Logistic Regression)

    - 의사결정나무 (Decision Tree), CART(Classification and Regression Tree), C5.0

    - 베이지안 분류 (Bayesian Classification), Naive Bayesian

    - 인공신경망 (ANN, Artificial Neural Network)

    - 지지도벡터기계 (SVN, Support Vector Machine)

    - K 최근접 이웃 (KNN, K-Nearest Neighborhood)

    - 규칙기반의 분류와 사례기반추론(Case-Based Reasoning)

     

    * 의사결정나무

    - 의사결정나무는 분류함수를 의사결정 규칙으로 이뤄진 나무 모양으로 그리는 방법이다.

    - 나무구조는 연속적으로 발생하는 의사결정 문제를 시각화해 의사결정이 이뤄지는 시점과 성과를 한눈에 볼 수 있게 한다.

    - 계산결과가 의사결정나무에 직접 나타나기 때문에 해석이 간편하다.

    - 의사결정나무는 주어진 입력 값에 대하여 출력 값을 예측하는 모형으로 분류나무와 회귀나무 모형이 있다.

     

    * 의사결정나무의 예측력과 해석력

    - 기대 집단의 사람들 중 가장 많은 반응을 보일 고객의 유치방안을 예측하고자 하는 경우에는 예측력에 치중한다.

    - 신용평가에서는 심사 결과 부적격 판정이 나온 경우 고객에게 부적격 이유를 설명해야하므로 해석력에 치중한다.

     

    * 의사결정나무의 활용

    1) 세분화 : 데이터를 비슷한 특성을 갖는 몇 개의 그룹으로 분할해 그룹별 특성을 발견하는 것이다.

    2) 분류 : 여러 예측변수들에 근거해 관측개체의 목표변수 범주를 몇 개의 등급으로 분류하고자 하는 경우에 사용하는 기법이다.

    3) 예측 : 자료에서 규칙을 찾아내고 이를 이용해 미래의 사건을 예측하고자 하는 경우이다.

    4) 차원축소 및 변수선택 :  매우 많은 수의 예측변수 중에서 목표변수에 큰 영향을 미치는 변수들을 골라내고자 하는 경우에 사용하는 기법이다.

    5) 교호작용효과의 파악

    - 여러 개의 예측변수들을 결합해 목표변수에 작용하는 규칙을 파악하고자 하는 경우이다.

    - 범주의 병합 또는 연속형 변수의 이산화 : 범주형 목표변수의 범주를 소수의 몇 개로 병합하거나 연속형 목표변수를 몇 개의 등급으로 이산화 하고자 하는 경우이다.

     

    * 의사결정나무의 특징

    장점

    - 결과를 누구에게나 설명하기 용이하다.

    - 모형을 만드는 방법이 계산적으로 복잡하지 않다.

    - 대용량 데이터에서도 빠르게 만들 수 있다.

    - 비정상 잡음 데이터에 대해서도 민감함이 없이 분류할 수 있다.

    - 한 변수와 상관성이 높은 다른 불필요한 변수가 있어도 크게 영향을 받지 않는다.

    - 설명변수나 목표변수에 수치형변수와 범주형변수를 모두 사용 가능하다.

    - 모형 분류 정확도가 높다.

    단점

    - 새로운 자료에 대한 과대적합이 발생할 가능성이 높다.

    - 분류 경계선 부근의 자료값에 대해서 오차가 크다.

    - 설명변수 간의 중요도를 판단하기 쉽지 않다.

     

    * 의사결정나무의 분석 과정

    - 의사결정나무의 형성과정은 크게 성장(growing), 가지치기(pruning), 타당성 평가, 해석 및 예측으로 이루어진다.

    1) 성장 단계 : 각 마디에서 적절한 최적의 분류규칙(splitting rule)을 찾아서 나무를 성장시키는 과정으로 적절한 정지규칙(stopping rule)을 만족하면 중단한다.

    2) 가지치기 단계 : 오차를 크게 할 위험이 높거나 부적절한 추론규칙을 가지고 있는 가지 또는 불필요한 가지를 제거하는 단계이다.

    3) 타당성 평가 단계 : 이익도표(gain chart), 위험도표(risk chart), 혹은 시험자료를 이용하여 의사결정나무를 평가하는 단계이다.

    4) 해석 및 예측 단계 : 구축된 나무모형을 해석하고 예측모형을 설정한 후 예측에 적용하는 단계이다.

     

    * 나무의 가지치기(Pruning)

    - 너무 큰 나무모형은 자료를 과대적합하고 너무 작은 나무모형은 과소적합할 위험이 있다.

    - 나무의 크기를 모형의 복잡도로 볼 수 있으며 최적의 나무 크기는 자료로부터 추정하게 된다. 일반적으로 사용되는 방법은 마디에 속하는 자료가 일정 수(가령 5)이하일 때 분할을 정지하고 비용-복잡도 가지치기(cost complexity pruning)를 이용하여 성장시킨 나무를 가지치기하게 된다.

     

    * 의사결정나무 알고리즘

    1) CART (Classification and Regression Tree)

    - 앞에서 설명한 방식의 가장 많이 활용되는 의사결정나무 알고리즘으로 불순도의 측도로 출력(목적) 변수가 범주형일 경우 지니지수를 이용, 연속형인 경우 분산을 이용한 이진분리(binary split)를 사용한다.

    - 개별 입력변수 뿐만 아니라 입력변수들의 선형결합들 중에서 최적의 분리를 찾을 수 있다.

    2) C4.5와 C5.0

    - CART와는 다르게 각 마디에서 다지분리(multiple split)가 가능하며 범주형 입력변수에 대해서는 범주의 수만큼 분리가 일어난다.

    - 불순도의 측도로는 엔트로피지수를 사용한다.

    3) CHAID (CHI-squared Automatic Interaction Detection)

    - 가지치기를 하지 않고 적당한 크기에서 나무모형의 성장을 중지하며 입력변수가 반드시 범주형 범수이어야 한다.

    - 불순도의 측도로는 카이제곱 통계량을 사용한다.

     

    5_3. 앙상블 분석

    * 앙상블(Ensembel)

    - 주어진 자료로부터 여러 개의 예측모형들을 만든 후 예측모형들을 조합하여 하나의 최종 예측 모형을 만드는 방법으로 다중 모델 조합(combining multiple models), 분류기 조합(classifier combination)이 있다.

     

    * 앙상블 기법의 종류

    1) 배깅

    - Breiman(1994)에 의해 제안된 배깅은 주어진 자료에서 여러 개의 붓스트랩(bootstrap) 자료를 생성하고 각 붓스트랩 자료에 예측모형을 만든 후 결합하여 최종 예측모형을 만드는 방법이다. 붓스트랩(bootsrap)은 주어진 자료에서 동일한 크기의 표본을 랜덤 복원추출로 뽑은 자료를 의미한다.

    - 보팅(voting)은 여러 개의 모형으로부터 산출된 결과를 다수결에 의해서 최종 결과를 선정하는 과정이다.

    - 최적의 의사결정나무를 구축할 때 가장 어려운 부분이 가지치기(pruning)이지만 배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무들을 활용한다.

    - 훈련자료의 모집단의 분포를 모르기 때문에 실제 문제에서는 평균예측모형을 구할 수 없다.[ 배깅은 이러한 문제를 해결하기 위해 훈련자료를 모집단으로 생각하고 평균예측모형을 구하여 분산을 줄이고 예측력을 향상시킬 수 있다.

    2) 부스팅

    - 예측력이 약한 모형(weak learner)들을 결합하여 강한 예측모형을 만드는 방법이다.

    - 부스팅 방법 중 Freund&Schapire가 제안한 Adaboost는 이진분류 문제에서 랜덤 분류기보다 조금 더 좋은 분류기 n개에 각각 가중치를 설정하고 n개의 분류기를 결합하여 최종 분류기를 만드는 방법을 제안하였다. (단, 가중치의 합은 1)

    - 훈련오차를 빨리 그리고 쉽게 줄일 수 있다.

    - 배깅에 비해 많은 경우 예측오차가 향상되어 Adaboost의 성능이 배깅보다 뛰어난 경우가 많다.

    3) 랜덤 포레스트(random forest)

    - Breiman(2001)에 의해 개발된 랜덤 포레스트는 의사결정나무의 특징인 분산이 크다는 점을 고려하여 배깅과 부스팅보다 더 많은 무작위성을 주어 약한 학습기들을 생성한 후 이를 선형 결합하여 최종 학습기를 만드는 방법이다.

    - randomForest패키지는 random input에 따른 forest of tree를 이용한 분류방법이다.

    - 랜덤한 forest에는 많은 트리들이 생성된다.

    - 수천 갱의 변수를 통해 변수제거 없이 실행되므로 정확도 측면에서 좋은 성과를 보인다.

    - 이른적 설명이나 최종 결과에 대한 해석이 어렵다는 단점이 있지만 예측력이 매우 높은 것으로 알려져 있다. 특히 입력변수가 많은 경우, 배깅과 부스팅과 비슷하거나 좋은 예측력을 보인다.

     

    5_4. 인공신경망분석

    * 인공신경망이란?

     - 인간 뇌를 기반으로 한 추론 모델이다.

    - 뉴런은 기본적인 정보처리 단위이다.

     

    * 인공신경망의 연구

    - 1943년 매컬럭(McCulloch)과 피츠(Pitts) : 인간의 뇌를 수많은 신경세포가 연결된 하나의 디지털 네트워크 모형으로 간주하고 신경세포의 신호처리 과정을 모형화하여 단순 패턴분류 모형을 개발했다.

    - 헵(Hebb) : 신경세포(뉴런) 사이의 연결강도(weight)를 조정하여 학습규칙을 개발했다.

    - 로젠블럿(Rosenblatt, 1955) : 퍼셉트론(Perceptron)이라는 인공세포를 개발했다.

    - 비선형성의 한계점 발생 -XOR(Exclusive OR) 문제를 풀지 못하는 한계를 발견하였다.

    - 홉필드(Hopfild), 러멜하트(Rumelhart), 맥클랜드(McClelland) : 역전파알고리즘(Backpropagation)을 활용하여 비선형성을 극복한 다계층 퍼셉트론으로 새로운 인공신경망 모형이 등장했다.

     

    * 인간의 뇌를 형상화한 인공신경망

    1) 인간 뇌의 특징

    - 100억개의 뉴런과 6조 개의 시냅스의 결합체이다.

    - 인간의 뇌는 현존하는 어떤 컴퓨터보다 빠르고 매우 복잡하고, 비선형적이며, 병렬적인 정보 처리 시스템과 같다.

    - 적응성에 따라 ‘잘못된 답’에 대한 뉴런들 사이의 연결은 약화되고, ‘올바른 답’에 대한 연결이 강화된다.

    2) 인간의 뇌 모델링

    - 뉴런은 가중치가 있는 링크들로 연결되어 있다.

    - 뉴런은 여러 입력 신호를 받지만 출력 신호는 오직 하나만 생성한다.

     

    * 인공 신경망의 학습

    - 신경망은 가중치를 반복적으로 조정하며 학습한다.

    - 뉴런은 링크(link)로 연결되어 있고, 각 링크에는 수치적인 가중치가 있다.

    - 인공 신경망은 신경망의 가중치를 초기화하고 훈련 데이터를 통해 가중치를 갱신하여 신경망의 구조를 선택하고, 활용할 학습 알고리즘을 결정한 후 신경망을 훈련시킨다.

     

    * 인공신경망의 특징

    1) 구조

    - 입력 링크에서 여러 신호를 받아서 새로운 활성화 수준을 계산하고, 출력 링크로 출력 신호를 보낸다.

    - 입력신호는 미가공 데이터 또는 다른 뉴런의 출력이 될 수 있다.

    - 출력신호는 문제의 최종적인 해(solution)가 되거나 다른 뉴런에 입력 될 수 있다.

    2) 뉴런의 계산

    - 뉴런은 전이함수, 즉 활성화 함수(activation function)를 사용한다.

    - 활성화 함수를 이용해 출력을 결정하며 입력신호의 가중치 합을 계산하여 임계값과 비교한다.

    - 가중치 합이 임계값보다 작으면 뉴런의 출력은 -1, 같거나 크면 +1을 출력한다.

    3) 뉴런의 활성화 함수

    - 뉴런의 활성화 함수는 계단 함수, 부호 함수, 시그모이드 함수, 선형 함수가 있다.

    - softmax 함수 : 표준화지수 함수로도 불리며, 출력값이 여러개로 주어지고 목표치가 다범주인 경우 각 범주에 속할 사후확률을 제공하는 함수이다.

    - Relu 함수 : 입력값이 0이하는 0, 0이상은 x값을 가지는 함수이며, 최근 딥러닝에서 많이 활용하는 활성화 함수이다.

    4) 단일 뉴런의 학습(단층 퍼셉트론)

    - 퍼셉트론은 선형 결합기와 하드 리미터로 구성된다.

    - 초평명(hyperplane)은 n차원 공간을 두개의 영역으로 나눈다.

    - 초평면을 선형 분리 함수로 정의한다.

     

    * 딥러닝(Deep Learning) : 머신 러닝(Machine Learning)의 한 분야로서 인공신경망의 한계를 극복하기 위해 제안된 심화신경망(Deep Neural Network)를 활용한 방법이다.

    * 딥러닝 소프트웨어 : 딥러닝 구동을 위한 SW에는 Tensorflow, caffe, Theano, MXnet 등이 있다.

    * 딥러닝은 최근 음성과 이미지인식, 자연어처리, 헬스케어 등의 전반적이 분야에 활용되고 있다.

     

    5_5. 군집분석

    * 군집분석

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

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

    - 결과는 구체적인 군집분석 방법에 따라 차이가 나타날 수 있다.

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

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

     

    * 요인분석의 차이점

    - 요인분석은 유사한 변수를 함께 묶어주는 것이 목적이다.

    * 판별분석과의 차이점

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

     

    * 거리

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

    1) 연속형 변수의 경우

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

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

    마할라노비스(Mahalanobis) 거리 : 통계적 개념이 포함된 거리이며 변수들의 산포를 고려하여 이를 표준화한 거리(standardized distance)이다. 두 벡터 사이의 거리를 산포를 의미하는 표본공분산으로 나눠주어야 하며, 그룹에 대한 사전 지식 없이는 표본공분산 S를 계산할 수 없으므로 사용하기 곤란하다.

    체비셰프(Chebychev) 거리

    맨하탄(Manhattan) 거리 : 유클리디안 거리와 함께 가장 많이 사용되는 거리로 맨하탄 도시에서 건물에서 건물을 가기 위한 최단 거리를 구하기 위해 고안된 거리이다.

    캔버라(Canberra) 거리

    민코우스키(Minkowski) 거리 : 맨하탄 거리와 유클리디안 거리를 한번에 표현한 공식으로 L1 거리(맨하탄거리), L2 거리(유클리디안 거리)라 불리고 있다.

    2) 범주형 변수의 경우

    - 자카드 거리

    - 자카드 계수

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

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

     

    * 계층적 군집분석

    - 계층적 군집방법은 n개의 군집으로 시작해 점차 군집의 개수를 줄여 나가는 방법이다.

    - 계층적 군집을 형성하는 방법에는 합병형 방법(agglomerative:bottom-up)과 분리형 방법(Divisive:top-down)이 있다.

     

    * 최단연결법(single linkage, nearest neighbor)

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

    - 군집과 군집 또는 데이터와의 거리를 계산 시 최단거리(min)를 거리로 계산하여 거리행렬 수정을 진행한다.

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

     

    * 최장연결법(complete linkage, farthest neighbor)

    - 군집과 군집 또는 데이터와의 거리를 계산할 때 최장거리(max)를 거리로 계산하여 거리행렬을 수정하는 방법이다.

     

    * 평균연결법(average linkage)

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

     

    * 와드연결법(ward linkage)

    - 군집내 편차들의 제곱합을 고려한 방법이다.

    - 군집 간 정보의 손실을 최소화하기 위해 군집화를 진행한다.

     

    * 군집화

    - 거리행렬을 통해 가장 가까운 거리의 객체들간의 관계를 규명하고 덴드로그램을 그린다.

    - 덴드로그램을 보고 군집의 개수를 변화해 가면서 적절한 군집 수를 선정한다.

    - 군집의 수는 분석 목적에 따라 선정할 수 있지만 대부분 5개 이상의 군집은 잘 활용하지 않는다.

    - 군집화 단계

    1) 거리행렬을 기준으로 덴드로그램을 그린다.

    2) 덴드로그램의 최상단부터 세로축의 개수에 따라 가로선을 그어 군집의 개수를 선택한다.

    3) 각 객체들의 구성을 고려해서 적절한 군집수를 선정한다.

     

    * 비계층적 군집분석

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

     

    * K-평균 군집분석(k-means clustering)의 개념

    - 주어진 데이터를 k개의 클러스터로 묶는 알고리즘으로, 각 클러스터와 거리 차이의 분산을 최소화하는 방식으로 동작한다.

     

    * K-평균 군집분석(k-means clustering) 과정

    - 원하는 군집의 개수와 초기 값(seed)들을 정해 seed 중심으로 군집을 형성한다.

    - 각 데이터를 거리가 가장 가까운 seed가 있는 군집으로 분류한다.

    - 각 군집의 seed 값을 다시 계산한다.

    - 모든 개체가 군집으로 할당될 때까지 위 과정들을 반복한다.

     

    * K-평균 군집분석의 특징

    - 거리 계산을 통해 군집화가 이루어지므로 연속형 변수에 활용이 가능하다.

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

    - 초기 중심값을 임의로 선택할 때 일렬(위아래, 좌우)로 선택하면은 군집 혼합되지 않고 층으로 나누어질 수 있어 주의하여야 한다. 초기 중심값의 선정에 따라 결과가 달라질 수 있다.

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

    장점

    - 알고리즘이 단순하며, 빠르게 수행되어 분석 방법 적용이 용이하다.

    - 계층적 군집분석에 비해 많은 양의 데이터를 다룰 수 있다.

    - 내부 구조에 대한 사전정보가 없어도 의미있는 자료구조를 찾을 수 있다.

    - 다양한 형태의 데이터에 적용이 가능하다.

    단점

    - 군집의 수, 가중치와 거리 정의가 어렵다.

    - 사전에 주어진 목적이 없으므로 결과 해석이 어렵다.

    - 잡음이나 이상값의 영향을 많이 받는다.

    - 볼록한 형태가 아닌(non-convex) 군집이(예를 들어 U형태의 군집) 존재할 경우에는 성능이 떨어진다.

    - 초기 군집수 결정에 어려움이 있다.

     

    * 혼합 분포 군집 (mixture distribution clustering)

    - 모형 기반(model-based)의 군집 방법이며, 데이터가 k개의 모수적 모형(흔히 정규분포 또는 다변량 정규분포를 가정함)의 가중합으로 표현된느 모집단 모형으로부터 나왔다는 가정하에서 모수와 함께 가중치를 자료로부터 추정하는 방법을 사용한다.

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

    - 흔히 혼합모형에서의 모수와 가중치의 추정(최대가능도추정)에는 EM 알고리즘이 사용된다.

     

    * SOM(Self Organizing Map)

    - 자가조직화지도(SOM) 알고리즘은 코호넨(Kohonen)에 의해 제시, 개발되었으며 코호넨 맵(Kohonen Maps)이라고도 알려져 있다.

    - SOM은 비지도 신경망으로 고차원의 데이터를 이해하기 쉬운 저차원의 뉴런으로 정렬하여 지도의 형태로 형상화한다. 이러한 형상화는 입력 변수의 위치 관계를 그대로 보존한다는 특징이 있다. 다시 말해 실제 공간의 입력 변수가 가까이 있으면, 지도상에도 가까운 위치에 있게 된다.

     

    * SOM과 신경망 모형의 차이점

    구분

    신경망 모형

    SOM

    학습 방법

    오차역전파법

    경쟁학습방법

    구성

    입력층, 은닉층, 출력층

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

    기계 학습 방법의 분류

    지도학습(Superviesd Learning)

    비지도 학습(Unsupervised Learning)

     

    5_6. 연관분석

    * 연관규칙분석(Association Analysis)

    - 연관성 분석은 흔히 장바구니분석(Market Basket Analysis) 또는 서열분석(squence Anlysis)이라고 불린다.

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

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

    - 서열분석 : ‘A를 산 다음에 B를 산다’

     

    * 연관규칙의 측도

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

    1) 지지도(support) : 전체 거래 중 항목 A와 항목 B를 동시에 포함하는 거래의 비율로 정의한다.

    2) 신뢰도(confidence) : 항목 A를 포함한 거래 중에서 항목 A와 항목 B가 같이 포함될 확률이다. 연관성의 정도를 파악할 수 있다.

    3) 향상도(Lift) : A가 구매되지 않았을 때 품목 B의 구매확률에 비해 A가 구매됐을 때 품목 B의 구매확률의 증가 비이다. 연관규칙 A->B는 품목 A와 품목 B의 구매가 서로 관련이 없는 경우에 향상도가 1이 된다.

     

    * 연관규칙의 장점과 단점

    장점

    - 탐색적인 기법으로 조건 반응으로 표현되는 연관성 분석의 결과를 쉽게 이해할 수 있다.

    - 강력한 비목적성 분석기법으로 분석 방향이나 목적이 특별히 없는 경우 목적변수가 없으므로 유용하게 활용 된다.

    - 사용이 편리한 분석 데이터의 형태로 거래 내용에 대한 데이터를 변환 없이 그 자체로 이용할 수 있는 간단한 자료 구조를 갖는다.

    - 분석을 위한 계산이 간단하다.

    단점(개선방안)

    - 품목수가 증가하면 분석에 필요한 계산은 기하급수적으로 늘어난다.

    -> 이를 개선하기 위해 유사한 품목을 한 범주로 일반화한다.

    -> 연관 규칙의 신뢰도 하한을 새롭게 정의해 실제 드물게 관찰되는 의미가 적은 연관규칙은 제외한다.

    - 너무 세분화한 품목을 갖고 연관성 규칙을 찾으면 의미없는 분석이 될 수도 있다.

    -> 적절히 구분되는 큰 범주로 구분해 전체 분석에 포함시킨 후 그 결과 중에서 세부적으로 연관규칙을 찾는 작업을 수행할 수 있다.

    - 거래량이 적은 품목은 당연히 포함된 거래수가 적을 것이고, 규칙 발견 시 제외하기가 쉽다

    -> 이런 경우, 그 품목이 관련성을 살펴보고자 하는 중요한 품목이라면 유사한 품목들과 함께 범주로 구성하는 방법 등을 통해 연관성 규칙의 과정에 포함 시킬 수 있다.

     

    출처 : ADsP 데이터 분석 준전문가 (출판 : 데이터에듀)

    반응형

    댓글

Designed by Tistory.