참고
[ML] 결정트리(Decision Tree) - 기본구조와 CART, ID3 알고리즘
의사결정 나무 (Decision Tree) 기본 설명
결정 트리 학습법 - 위키백과, 우리 모두의 백과사전
결정 트리 학습법은 머신러닝 지도학습에서 가장 유용하게 사용되고 있는 기법 중 하나이다.
결정트리는 데이터에 있는 규칙을 통해 데이터셋을 분류/예측하는 지도학습(supervised) 모델이다.
목표 변수가 유한한 수의 값을 가지는 것을 분류트리라 하고,
결정 트리 중 목표 변수가 연속하는 값, 일반적으로 실수를 가지는 것은 회귀트리라 한다.
![]()
그렇다면 트리를 어떻게 쪼개나갈 것인가?
최대한 균일한(순도가 높은) 데이터 세트를 구성할 수 있도록 분할하는 것이 중요하다.
결정 노드는 정보 균일도가 높은 데이터 세트를 먼저 선택할 수 있도록 규칙 조건을 만든다.
→ 이 판단을 불순도를 기준으로 한다.
→ 즉 가장 낮은 지니계수를 가진 피처가 결정트리에서의 루트 노드가 된다.
의사결정 나무 알고리즘은 간단하면서 효과적인 알고리즘이지만, 과적합 (Overfitting)에 취약하다는 단점이 있다.
이러한 과적합을 막기 위해, 가지치기 (pruning) 과정을 수행 (사전 가지치기 (pre-pruning) & 사후 가지치기 (post-pruning))
결정트리를 만드는데 여러 가지 알고리즘이 사용될 수 있다. 가장 대표적인 것은 CART 알고리즘과 ID3 알고리즘이다.
ID3 의 경우 모든 클래스 (e.g., Sunny, Overcast, Rain) 로 가지 생성 CART는 ‘하나의 클래스와 나머지’와 같이 가지가 생성

x<0.3 과 x<0.6 지표로 하고 x값이 들어올 경우, training data (파란 점)의 평균값 (빨간 실선)을 예측값으로 내놓습니다.
실제값과 예측값의 오차는 RSS나 MSE 와 같은 값으로 나타낸다.