새소식

데이터분석준전문가(ADsP)/3과목

[정형데이터 마이닝] 분류분석

  • -

목차

    1. 분류분석과 예측분석

    1-1 분류분석의 정의

    데이터가 어떤 그룹에 속하는지 예측하는데 사용되는 기법이다.
    클러스터링과 유사하지만, 분류분석은 각 그룹이 정의되어 있다.
    교사학습(Supervised learning)에 해당하는 예측기법이다.

    1-2 예측분석의 정의

    - 시계열 분석처럼 시간에 따른 값 두 개만을 이용해 앞으로의 매출 또는 온도 등을 예측하는 것
    - 모델링을 하는 입력 데이터가 어떤 것인지에 따라 특성이 다르다.
    - 여러 개의 다양한 설명변수(독립변수)가 아닌, 한 개의 설명변수로 생각하면 된다.

    1-3 분류분석,예측분석의 공통점과 차이점

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

    2) 차이점
    분류: 레코드(튜플)의 범주형 속성의 값을 알아맞히는 것이다.
    예측: 레코드(튜플)의 연속형 속성의 값을 알아맞히는 것이다.

    1-4 분류,예측의 예

    1) 분류 (있는 정보 분류함)
    학생들의 국어, 영어, 수학 점수를 통해 내신등급을 알아맞히는 것
    카드회사에서 회원들의 가입 정보를 통해 1년후 신용등급을 알아맞히는 것
    2) 예측(정보를 입력해 새로운 정보를 예측)
    학생들의 여러가지 정보를 입력하여 수능점수를 알아맞히는 것
    카드회사 회원들의 가입 정보를 통해 연 매출액을 알아맞히는 것

    1-5 분류 모델링

    - 신용평가모델(우량,불량)
    - 사기방지모델(사기, 정상)
    - 이탈모형(이탈,유지)
    - 고객세분화(VVIP, VIP, GOLD, SILVER, BRONZE)

    1-6 분류 기법

    - 회귀분석, 로지스틱 회귀분석(Logistic Regression)
    - 의사결정나무(Decision Tree) , CART(Classified and Regression Tree), C5.0
    - 베이지안 분류( Baysian classfication), Naive Bayesian
    - 인공신경망(ANN, Arificial Neural Network)
    - 지지도벡터기계(SVM, Support Vector Machine)
    - K 최근접 이웃(KNN, K-Newarest Neighborhood)
    - 규칙기반의 분류와 사례기반 추론(Case-Based Reasoning)

    2. 로지스틱 회귀분석(Logistic Regression) - 분류기법

    - 반응변수가 범주형인 경우에 적용되는 회귀분석모형이다.
    - 새로운 설명변수(또는 예측변수)가 주어질 때 반응변수의 각 범주(또는 집단)에 속할 확률이 얼마인지를 추정(예측모형)하여, 추정 확률을 기준치에 따라 분류하는 목적(분류모형)으로 활용된다.
    - 이때 모형의 적합을 통해 추정된 확률을 사후확률(Posterior Probability)이라고 한다.
    - exp(β1)의 의미는 나머지 변수 (x1,...,xk)가 주어질 때, x1이 한 단위 증가할 때마다 성공(Y=1)의 오즈가 몇 배 증가하는지를 나타내는 값이다.
    - 위 식은 다중로지스틱 회귀모형이며, 그래프의 형태는 설명변수가 한 개( x1)인 경우 해당 회귀 계수 β1의 부호에 따라 S자 모형( β1>0)또는 역S자 모형( β1<0)을 가진다.
    -표준 로지스틱 분포의 누적분포함수(c,d,f)를 f(x)라 할 때
    p(y)=F(a+B1x1+ ...+Bkxk)
    위 식과 동일한 표현이며, 표준 로지스틱 분포의 누적분포함수로 성공의 확률을 추정한다.

    오즈비(odds ratio)
    오즈(odds)는 성공할 확률이 실패할 확률의 몇 배인지를 나타내는 확률이며, 오즈비(odds ratio)는 오즈의 비율이다. 성공확률을 1로 두고 실패확률을 0으로 비율을 둔다.

    구분 16강 성공확률 16강 실패 확률
    Brazil 0.8 0.2
    Korea 0.1 0.9

    Odds(Brazil) = 0.8/(1-0.8)=0.8/0.2 = 4, Odds(korea) = 0.1/(1-0.1)=0.1/0.9=1/9j
    Odds Ratio = odds(brazil)/ odds(korea) (1/9)/4= 36
    오즈비가 36이 나타나 브라질이 16강에 진출할 확률이 한국의 16강 진출 확률보다 36배 높다고 볼 수 있다.


    선형회귀분석과 로지스틱 회귀분석의 비교

    목적 선형회귀분석 로지스틱회귀분석
    종속변수 연속형 변수 (0,1)
    계수 추정법 최소제곱법 최대우도법
    모형 검정 F-검정, T-검정 카이제곱 검정

     

    최대우도법 정의 (definition)

    더보기

     

    최대우도법(Maximum Likelihood Estimation, MLE)은 모수적인 데이터 밀도 추정 방법으로써 

    파라미터 θ =( θ 1,...,θ m)으로 구성된 

    어떤 확률밀도함수p(x|θ )에서 관측된 

    표본 데이터 집합을 x = (x1, x2, ..., xn)이라 할 때, 

    이 표본들에서 파라미터 θ = (θ 1, ..., θ m)를 추정하는 방법이다. 로지스틱 회귀분석에서 계수 추정법으로 쓴다.

     

    예를들어 x = {1,4,5,6,9}의 데이터를 얻었다고 가정해 보자. 아래의 그림을 봤을 때, x는 주황색 곡선과 파란색 곡선 중 어떤 곡선으로 추출되었을 가능성이 더 높을까?

    1,4,5,6,9의 분포는 어디서 얻었을까? 첫번째 라인에서 얻었을 가능성이 높다. 

     그림상에서 붉은 점 표본X(관측치)를 보고 θ를 추정하는 기법이다. 

    likelihood function은 p(x|θ)이 나온다. 

    이것을 보통은 likelihood function을 대체하여 loglikelihood function을 사용한다. 

    우도(likelihood)는 이미 주어진 표본x 들에 비추어봤을 때 모집단의 모수 θ 에 대한 추정이 그럴듯한 정도를 말한다. 

    우도 는 L(θ|x)가 전제되었을 때 표본 x가 등장할 확률인 p(x|θ )에 반비례한다.



    R프로그램 결과 해석
    glm()함수를 활용하여 로지스틱 회귀분석을 실행한다.
    R코드 : glm(종속변수~독립변수1+ ...+독립변수k family=binomial ,data = 데이터셋명)


    a<-iris[iris$Species=="setosa"|iris$Species== " versicolor", ]
    b<-glm(Species ~ Sepal.Length, data = a, family = binomial)
    summary(b)
    
    ##로지스틱 회귀분석##
    
    Call:
    glm(formula = Species ~ Sepal.Length, family=binomial, data= a )
    
    
    Deviance Residuals : 
        Min     1Q          Median    3Q        Max
    -2.05501    -0.47395   -0.02829   0.39788   2.32915  
    
    
    
    Coefficients : 
                   Estimate  Std.  Error.   z value   Pr( > |z|)
    (intercept)    -27.831         5.434    -5.122    3.02e-07 *** 
    Sepal.Length   5.140           1.007    5.107.    3.28e-07 *** 
    
    -
    Signif . cords : 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1' ' 1
    
    (Dispersion parameter for binomial family taken to be 1)
    
    Null deviance : 138.628 on 99 degrees of freedom
    Residual deviance : 64.211 on 98 degree of freedom
    AIC : 68.211
    Number of Fisher Scoring interations : 6

    종속변수: Species 독립변수: Sepal.Length
    Sepal.Length가 한 단위 증가함에 따라 Species(Y)가 1에서 2로 바뀔 때 오즈(Odds)가 exp(5.140)≈170배 증가한다. exp(x)
    Null deviance는 절편만 포함하는 모형의 완전 모형으로부터의 이탈도(deviance)를 나타내며
    p-값=p(x² (99)>138.629≈0.005으로 통계적으로 유의하므로 적합결여를 나타낸다.
    Residual deviance(예측의 적합도를 나타냄) 는 예측변수 Sepal.Length가 추가된 적합 모형의 이탈도를 나타낸다. Null deviance에 비해 자유도 1 기준에 이탈도의 감소가 74.4정도의 큰 감소를 보이며 p-값 =p(x² (98)>64.211)≈0.997으로 통계적으로 유의하지 못해 귀무가설을 기각하지 못한다.

    따라서 적합값이 관측된 자료를 잘 적합한다고 말할 수 있다. 


    ≈: 근사값




    3. 의사결정나무

    3-1 정의

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

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

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

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

     

     

    의사결정나무의 구성요소 

    뿌리마디(root node) 시작되는 마디로 전체의 자료를 포함
    자식마디(Child node) 하나의 마디로부터 분리되어 나간 2개 이상의 마디들
    부모마디(parent node)  주어진 마디의 상위 마디 
    끝마디(terminal node) 자식마디가 없는 마디 
    가지(branch) 뿌리마디로부터 끝마디까지 연결된 마디들
    깊이(depth) 뿌리마디로부터 끝마디까지의 중간마디들의 수 

     

    3-2 예측력과 해석력

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

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

    3-3 의사결정나무의 활용

    세분화

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

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

    자료에서 규칙을 찾아내고 이를 이용해 미래의 사건을 예측하고자 하는 경우이다. 
    차원축소 및 변수 선택

    매우 많은 수의 예측변수 중에서 목표변수에 큰 영향을 미치는 변수들을 골라내고자 하는 경우에 사용하는 기법이다. 
    교호작용효과의 파악

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

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

    3-4 의사결정나무의 특징

    장점

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

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

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

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

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

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

    모형 분류 정확도가 높다. 

     

    단점

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

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

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

     

    3-5 의사결정나무 분석 과정

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

    1)성장단계

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


    2)가지치기 단계

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

     

    3)타당성 평가 단계

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

     

    4)해석 및 예측 단계

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

    3-6 나무의 성장

    분리규칙(Splitting rule)


    분리기준(Splitting criterion)

    이산형 목표변수 

    기준값 분리기준
    카이제곱 통계량 p값 p값이 가장 작은 예측변수와 그 때의 최적분리에 의해서 자식마디를 형성
    지니 지수  지니 지수를 감소시켜주는 예측변수와 그 때의 최적분리에 의해서 자식마디를 선택

    연속형 목표변수 

    기준값 분리기준 
    분산분석에서 F 통계량 p값이 가장 작은 예측변수와 그 때의 최적분리에 의해서 자식 마디를 형성 
    분산의 감소량  분산의 감소량을 최대화 하는 기준의 최적분리에 의해서 자식마디를 형성 


    정지규칙(Stopping rule)

    더 이상 분리가 일어나지 않고, 현재의 마디가 끝마디가 되도록 하는 규칙이다. 정지기준(stopping criterion): 의사결정나무의 깊이(depth)를 지정, 끝마디의 레코드 수의 최소 개수를 지정한다.

    3-6 나무의 가지치기

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

    나무의 크기를 모형의 복잡도로 볼 수 있으며 최적의 나무 크기는 자료로부터 추정하게 된다. 

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

     

    4. 불순도의 여러가지 측도

    목표변수가 범주형 변수인 의사결정나무의 분류규칙을 선택하기 위해서는 카이제곱 통계량, 지니지수, 엔트로피 지수를 활용한다.

    4-1 카이제곱 통계량

    카이제곱 통계량은 각 셀에 대한 ((실제도수-기대도수)의 제곱/ 기대도수) 의 합으로 구할 수 있다.

    기대도수: 열의 합계X 합의 합계 / 전체합계 

     

    k: 범주의 수, 0i: 실제도수, Bi:기대도수

     

    4-2 지니지수

    노드의 불순도를 나타내는 값이다. 

    지니지수의 값이 클수록 이질적(diversity)이며 순수도(Purity)가 낮다고 볼 수 있다. 

     

    4-3 엔트로피 지수

    열역학에서 쓰는 개념으로 무질서 정도에 대한 측도이다.

    인트로피 지수의 값이 클수록 순수도(Purity)가 낮다고 볼 수 있다. 

    엔트로피 지수가 가장 작은 예측 벼수와 이때의 최적분리 규칙에 의해 자식마디를 형성한다.

    entropy(t) = -(PiXlog제곱 Pi) x 모든 사건개수 

    5. 의사결정나무 알고리즘

    5-1 CART(Classification and Regression Tree)

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

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

     

    5-2 C4.5와 C5.0

    - CART와는 다르게 각 마디에서  다지분리(multiple split)이 가능하며 범주형 입력변수에 대해서는 범주의 수만큼 분리가 일어난다. - 불순도의 측도로는 엔트로피 지수를 사용한다.

    5-3 CHAID(CHi-squared Automatic Interaction Detection) 

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

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

    6. 의사결정나무 예시

    6-1 Party 패키지를 이용한 의사결정나무

    Party 패키지는 의사결정나무를 사용하기 편한 다양한 분류 패키지 중 하나이다.

    분실값을 잘 처리하지 못하는 문제를 갖고 있는 것이 단점이다. 

    tree에 투입된 데이터가 표시가 되지 않거나 predict가 실패하는 경우 문제가 발생할 수 있다. 

     

    1) iris data 를 이용한 분석

    iris data의 30%sms test data, 70% training data로 생성한다. 
    train.data를 이용하여 모형생성 

     

    반응형
    Contents

    포스팅 주소를 복사했습니다

    이 글이 도움이 되었다면 공감 부탁드립니다.