본문 바로가기
데이터분석 이야기/데이터 분석 이야기

의사결정나무(Decision Tree)

by 미래대비자 2022. 5. 12.

오늘은 의사결정나무에 대해 공부해보자.

ML에서 가장 쉬운(?) 분석이라고 할 수 있는 의사결정나무는 깊게 들어가면 어렵다..

 

⏺ 목표변수에 대한 의사결정 규칙(rule)들을 나무구조로 그래프화하여 분류와 예측을 수행하는 기법

⏺ 목적

  • 분류(Classification): binary, multiway
  • 예측(Prediction): regression

⏺ 구조(3)

  • 노드(Node) - 각 노드마다 피처(설명변수)를 위치(탑재)시킴
  • 가지(branch) - 하나의 마디로부터 끝 마디까지 연결된 마디들
  • 깊이(Depth) - 가지를 이루는 마디 개수

⏺ 분리기준

  • 불순도(impurity) : 지니지수, 엔트로피 등(분류)
  • F통계량, 분산 감소량 등(예측)

⏺ 알고리즘 종류

  • CART(binary) : 분리기준(Y(이산형: 지니지수), Y(연속형:분산의 감소량)
  • C4.5 / C5.0(binary/multiway) : 분리기준(엔트로피 지수)
  • QUEST(binary) : 분리기준(F통계량, 카이제곱 통계량),Y(명목형 only)
  • CHAID(muliway) : 분리기준(F통계량, 카이제곱 통계량) Y(범주형, 연속형), X(범주형 only)

⏺ Decision Tree 형성 과정 ; 분석 단계(4)

1단계 : 성장(Growing)

: 분석 목적, 자료구조에 따라 적절한 (1)분리 기준(불순도,분산감소량)에 따라 의사결정나무를 성장시킴

 

 

☀ 분류나무 (Y:이산형)

  • (1) 분리기준은 불순도 측도(카이제곱 통계량, 지니지수, 엔트로피 지수)에 따라 성장

ex) [Chaid : 카이제곱 통계량, CART : 지니지수, C4.5, C5.0 : 엔트로피 지수] 

 

☀ 회귀나무 (Y:연속형)

  • (1) 분리기준은 종속변수의 평균과 표준편차에 기초하여 분리가 일어나며 F통계량, 분산감소량에 따라 성장

ex) [Chiad : 분산분석 F통계량의 p-value, CART : 분산감소량](분산의 감소량은 예측오차를 최소화하는 것과 동일한 개념)

 

2단계 : 가지치기(pruning)

가. 사전가지치기(Pre-Pruning) : 정지규칙(stopping rule) 을 설정하여 성장의 중간 과정에서 정지시킴

  • 정지규칙을 만족하면 성장 중단
  • 성장의 기본적인 정지규칙은 모든 레코드가 같은 클래스를 갖을 때
  • (1) 노드에 분류된 레코드 숫자가 사용자가 정한 숫자보다 작다면 정지하거나, (2) 분기를 했지만 더이상 불순도가 개선되지 않을 때(gini, IG 등에 따라)

나. 사후가지치기(Post-Pruning): 성장이 끝난 나무중 적절하지 않은 가지를 제거하여 적당한 크기를 갖는 나무 모형을 최종적인 예측 모형으로 선택(나무의 크기가 클 수록 모형의 복잡도(complexity)가 높아지며 cost-complexity pruning을 이용하여 가지치기,alpha is complexity parameter완전한 트리 생성 후 가지치기 수행

 

3단계: 타당성 평가 :

: 이익도표, 위험도표 또는 교차타당성 이용하여 의사결정나무를 평가

 

4단계: 해석 및 예측

 : 의사결정나무를 해석하고 예측 모형을 설정

5단계: 성능평가
  • 회귀나무 : MSE, RMSE, MAE
  • 분류나무 : F1-SCORE, ROC-Curve, AUC, Accuacy, Precision ,Recall, Sensitivity

 

⏺ 장점

  • 해석의 용이성 : 모형의 이해가 쉽고, 새로운 자료의 모형에 적합하며, 어떤 입력변수가 중요한지 쉽게 파악
  • 교호효과의 해석 : 두 개 이상의 변수가 결합하여 목표변수에 어떠한 영향을 주는지 알기 쉬움
  • 비모수적 모형 : 선형성, 정규성, 등분산성 등 가정이 필요가 없음, 이상치에 민감하지 않음

⏺ 단점

  • 비연속성 : 연속형 변수를 비연속적인 값으로 취급하기 때문에 분리 경계점 근방에서 예측 오류 가능성 큼
  • 선형성 또는 주효과의 결여 : 선형 또는 주 효과 모형에서와 같은 결과를 얻을 수 없다는 한계점 존재
  • 비 안정성 : 분석용 자료에만 의존하므로 새로운 자료의 예측에 불안정하다., 그래서 test데이터에 의한 교차타당성 평가, 가지치기에 의해 안정성 있는 결과를 얻는 것이 바람직

 

다음편에는 분류문제, 회귀문제에 대해 직접 파이썬으로 실습을 하면서 의사결정나무에 대해서 알아보도록 하겠다.

 

댓글