트리 기반 모델이란?
- 트리 구조를 이용해 데이터를 분할하면서 예측을 수행하는 모델들
즉, 조건문의 집합으로 문제를 해결하는 방식
대표적인 트리 기반 모델
1.의사결정나무 : 가장 기본적인 트리 모델. 단일 트리 사용
2.랜덤포레스트 : 여러 개의 결정트리를 조합해 예측(앙상블)
3.XGBoost/CatBoost : GBDT를 개선한 고성능 라이브러리들 (속도+정확도)
기본 원리
- 데이터를 조건에 따라 반복적으로 분할함
- 리프 노드에 도달하면 예측값을 출력함
- 분할 기준 : Gini impurity, entropy, MSE 등
장점
- 비선형 관계 처리 가능 -> 선형 회귀처럼 'y = ax + b'일 필요 없음
- 범주형 변수 직접 처리 가능
- 결측치 처리 유연하다
- 스케일링 불필요
단점
- 의사결정트리 단독 : 과적합이 일어나기 쉽다
- 설명력 : 앙상블 모델은 개별 트리가 많아 해석이 어려움
- 고차원 데이터 : feature 수가 많으면 오히려 성능 저하될 수 있음
XGBoost란?
- eXtreme Gradient Boosting
- 부스팅(Boosting)
-> 약한 모델들을 순차적으로 학습시켜 강한 모델을 만드는 방식
-> 빠르고 정확하며, 대회에서 자주 사용됨
특징
- 정형 데이터에 강력
- 과적합 방지 기능
- 결측치 자동 처리
CatBoost란?
- Category + Boosting -> CatBoost
- Yandex에서 개발한 gradient boosting 라이브러리
- 카테고리형 데이터를 인코딩 없이 바로 사용 가능
특징
- 카테고리 처리 매우 강력
- 하이퍼파라미터 튜닝 없이도 좋은 성능
- 결측치 자동 처리