02-03) Gradient Boosting

slow_starter·2025년 7월 24일
0
post-thumbnail

앙상블 기법(Bagging, Boosting) 중 Boosting에서 유래한 모델들에 대해
배워보도록 하자. Gradient Boosting, XG-Boost에 대해 정리해 보았다.

01. Gradient Boosting

  • Gradient Boosting은 여러 개의 약한 모델(weak learner, 보통은 shallow decision tree)을 순차적으로 학습시키는 Boosting 계열의 앙상블 기법

  • 이전 단계 모델이 만든 오차(잔차)를 줄이는 방향으로 다음 모델을 훈련

    • 이 과정에서 경사 하강법(Gradient Descent)을 사용한다는 점이 핵심
  • 핵심 아이디어

    • 초기 모델은 전체 데이터에 대해 단순하게 예측
    • 그 예측값과 실제값의 오차(잔차)를 계산
    • 이 오차를 줄이기 위한 새 모델을 학습
    • 새 모델을 기존 모델에 가중치를 두고 더함
    • 이 과정을 반복 → 최종 예측 성능 개선
  • 수식적 개념(회귀 문제 기준)

  • 일반적인 특징

항목설명
학습 방식순차적(Sequential)
기반 모델보통은 depth-1~3의 결정 트리
오차 보정 방식이전 모델의 예측 오차를 gradient로 계산해 보정
과적합 제어learning rate, early stopping, tree depth 제한
장점높은 예측 성능, 유연한 손실 함수 지원
단점느림, 병렬화 어려움, 하이퍼파라미터 민감
대표 알고리즘XGBoost, LightGBM, CatBoost
사용 분야Kaggle, 대회 우승 모델 다수, 금융·마케팅·리스크 분석 등

02. XG-boost

  • XGBoost는 Gradient Boosting의 한 형태로,
    정밀한 정규화, 빠른 학습 속도, 병렬 처리를 포함하여 성능과 효율성을 대폭 향상시킨 Boosting 알고리즘

    • 이름: eXtreme Gradient Boosting (Gradient Boosting을 “극대화”)
  • 기존 Gradient Boosting의 문제점

    • 느린 학습
    • 과적합 가능성
    • 병렬화 어려움
  • 수학적 개념

  • 주요 특징

항목설명
알고리즘 종류Gradient Boosting 기반
정규화L1 + L2 정규화 (과적합 억제)
병렬 처리트리 분할 기준을 특성 단위 병렬 탐색
Missing Value 처리자동으로 최적 경로 설정
Tree Pruning사후 가지치기 (depth-wise가 아닌 loss 기준)
Early Stopping 지원Validation loss 기준 조기 종료
Feature Importance 시각화가능 (gain, cover, frequency 기반 등)
  • 대표 하이퍼파라미터
profile
2025화이팅!

0개의 댓글