Stats & AI tech blog - '일단 시도함'

[ML/DL] Decision Tree Algorithm (의사결정나무 알고리즘) 본문

Statistics & AI/Classification

[ML/DL] Decision Tree Algorithm (의사결정나무 알고리즘)

justdoit ok? 2024. 1. 10. 13:30

2024.01.10 - [Data Analysis/Statistics] - [통계] Decision Tree (의사결정나무)

 

[통계] Decision Tree (의사결정나무)

Decision Tree (의사결정나무) 1) 의사결정나무(Decision Tree)란? 입력 값들의 조합으로 출력 값을 분류, 예측하는 모형으로 트리 구조(Tree)의 그래프로 표현된다. 의사결정나무는 분류(classification)와 회

meowstudylog.tistory.com

 

의사결정나무의 개념에 대한 내용을 이전 포스팅을 참고하면 된다.

이번 포스팅에서는 의사결정나무의 여러 알고리즘의 특징 대해 알아보겠다.

 

 

1. CART (Classification And Regression Tree)

  • 가지 분기 시에 여러 개의 노드가 아닌 두 개의 노드로 이진분리(Binary Split)
  • Classification And Regression Tree 이름처럼 분류(Classification)와 회귀(Regression) 모두 사용 가능
  • 분류 문제에서는 불순도(Impurity)를 지니계수(Gini Index)로 계산하여 분기
  • 회귀 문제에서는 분산의 감소량(RSS or MSE)을 사용하여 분기

 

 

2. ID3 (Iterative Dichotomiser 3)

  • 불순도를 엔트로피(Entropy)를 이용한 정보 이득(Information gain)으로 계산
    * Information Gain : 분기 전후 엔트로피의 차이값
  • 독립변수가 모두 범주형(categorical)일 때만 사용 가능

 

 

3. C4.5

 : ID3을 보완한 알고리즘

  • ID3보다 정교한 불순도 지표 (Information gain ratio) 활용
  • 범주형 변수 뿐 아니라 연속형 변수를 사용 가능
  • 범주형 변수 다지분리(Multiway Split) 
  • 수치형 변수 이진분리(Binary Split)
  • 결측치가 포함된 데이터도 사용 가능
  • 과적합을 방지하기 위한 사후 가지치기(Post-pruning) 수행

 

 

4. C5.0

: C4.5을 보완한 알고리즘

  • 명목형 목표 변수를 지원하는 가장 정확한 알고리즘
  • 범주형 변수다지분리(Multiway Split) 
  • 수치형 변수 이진분리(Binary Split)

 

 

5. CHAID (Chi-squared Automatic Interaction Detection)

  • 카이제곱 검정(범주형 목표변수) 또는 F-검정(연속형 목표변수)을 이용하여 분기
  • 다지분리(Multiway Split) 
  • 과적합(overfitting) 되기 전 트리 생성을 멈춤 = 사전 가지치기(Pre-pruning)
  • 설명변수의 범주들이 반응변수의 각 범주들을 구분하는 판별력의 크기에 따라 분리
  • 유의한 차이가 없는 설명변수의 범주들은 병합