alt

4-2

Shared on April 2, 2026

결정 트리·랜덤 포레스트·그래디언트 부스팅·XGBoost 강의 요약

개요

  • 주제: 회귀와 분류에 사용되는 트리 기반 모델들의 원리, 학습 방식, 장단점
  • 목적: 각 모델의 핵심 아이디어와 핵심 하이퍼파라미터를 이해하고, 실무에서의 적용 포인트를 파악

핵심 개념

모델핵심 아이디어주요 하이퍼파라미터장점단점
결정 트리데이터 분할 → 리프에서 평균 예측max_depth, min_samples_split, min_samples_leaf직관적, 시각화 용이, 전처리 필요 없음과적합 위험, 불안정
랜덤 포레스트부트스트랩 + 랜덤 feature 선택 → 앙상블n_estimators, max_depth, max_features과적합 감소, OOB 검증느리며 개별 트리 해석 어려움
그래디언트 부스팅 (GBM)순차적 트리 학습 → 잔차 보정n_estimators, learning_rate, max_depth높은 정확도, 다양한 손실 함수 지원순차적 학습 → 병렬화 어려움, 튜닝 복잡
XGBoostGBM 개선 버전: 정규화, 자동 결측, 병렬화, early stoppingn_estimators, learning_rate, max_depth, subsample, colsample_bytree, reg_alpha, reg_lambda, early_stopping_rounds빠른 학습, 과적합 방지, 결측값 자동 처리파라미터 수가 많아 튜닝 어려움

상세 내용

1. 결정 트리

  • 학습: 각 노드에서 분산 감소(Δ) 를 최대화하는 분할을 선택(그리디 서치).
  • 분산 계산:
    [ \Delta = \text{Var(parent)} - \frac{N_L}{N}\text{Var}(L)-\frac{N_R}{N}\text{Var}(R) ]
  • 예측: 리프에 도달하면 리프 내 샘플 평균을 반환.
  • 핵심 하이퍼파라미터
    • max_depth: 트리 깊이 제한
    • min_samples_split: 분할 최소 샘플 수
    • min_samples_leaf: 리프 최소 샘플 수

2. 랜덤 포레스트

  • 부트스트랩: 원본 데이터에서 복원 추출 → 각 트리별 다른 데이터셋.
  • 랜덤 feature 선택: 각 분기에서 전체 feature 중 일부만 후보로 사용.
  • OOB (Out‑of‑Bag): 부트스트랩에서 제외된 37% 데이터를 내부 검증에 활용.
  • 예측: 모든 트리 예측값 평균.

3. 그래디언트 부스팅 (GBM)

  • 순차 학습:
    1. 초기 모델 (F_0) = 전체 평균.
    2. 각 단계 (t): 잔차 (r_i = y_i - F_{t-1}(x_i)) 를 학습 → 트리 (h_t).
    3. 업데이트: (F_t = F_{t-1} + \eta , h_t).
  • 학습률(η): 1 → 과적합 위험, 0.1 → 점진적 보정, 0.01 → 많은 트리 필요.
  • early stopping: 검증 오차가 일정 라운드 이상 개선되지 않으면 종료.
  • 장점: 높은 정확도, 손실 함수 선택 자유.
  • 단점: 순차적 → 병렬화 어려움, 튜닝 복잡.

4. XGBoost

  • 개선 포인트
    • 정규화: L1/L2 항(α, λ) 자동 포함 → 과적합 방지.
    • 결측값 처리: 학습 시 자동으로 최적 방향으로 분기.
    • 병렬 처리: 트리 내부 분기 탐색을 병렬화.
    • Early Stopping: 검증 오차가 early_stopping_rounds만큼 개선되지 않으면 학습 중단.
    • 근사 분위수 탐색: 후보 분할점을 전체 데이터가 아닌 대표값(예: 4분위)만 사용 → 빠름.
  • 핵심 하이퍼파라미터
    • n_estimators, learning_rate, max_depth
    • subsample, colsample_bytree (데이터/feature 샘플링 비율)
    • reg_alpha, reg_lambda (정규화 강도)
    • early_stopping_rounds
  • 예측: 모든 트리 예측값을 가중합(학습률 적용).

5. 실무 팁

  • 학습률과 트리 수: 학습률이 작을수록 트리 수를 늘려야 하며, 과적합 방지를 위해 early_stopping_rounds를 설정.
  • 하이퍼파라미터 탐색: GridSearchCV 또는 RandomizedSearchCV 활용.
  • 데이터 전처리: 트리 기반 모델은 정규화 필요 없음, 결측값은 XGBoost가 자동 처리.
  • 모델 해석:
    • 결정 트리: 구조 시각화
    • 랜덤 포레스트: feature importance (OOB)
    • GBM / XGBoost: feature_importances_ 또는 SHAP 값

핵심 기억 포인트

  • 분산 감소가 결정 트리의 분할 기준.
  • 부트스트랩 + 랜덤 feature가 랜덤 포레스트의 과적합 방지 핵심.
  • 잔차 학습이 그래디언트 부스팅과 XGBoost의 차별화 요소.
  • 정규화와 자동 결측 처리가 XGBoost를 실무에서 가장 많이 쓰이는 이유.
  • 학습률트리 수는 서로 상호 보완적이며, early stopping이 과적합 방지에 필수.