머신러닝에서 부스팅(Boosting)은 여러 약한 학습기(weak learner)를 순차적으로 학습시켜 하나의 강한 학습기(strong learner)를 만드는 앙상블 기법입니다.
핵심은 이전 모델의 실수를 다음 모델이 보완하면서 성능을 점진적으로 끌어올리는 데 있습니다.

배깅(Bagging)이 병렬 학습으로 분산을 낮추는 데 강하다면, 부스팅은 오차 보정 중심의 순차 학습으로 높은 예측력을 얻는 데 강합니다.

1. AdaBoost (Adaptive Boosting)

초기 대표 부스팅 알고리즘입니다.

특징:

  • 이전 학습기가 틀린 샘플에 더 큰 가중치를 부여
  • 다음 학습기가 어려운 샘플에 집중하도록 유도
  • 보통 깊이 1의 결정트리(stump)를 약한 학습기로 사용
  • 지수 손실(exponential loss) 기반

장점:

  • 약한 학습기 여러 개 결합으로 정확도 향상
  • 비교적 단순하고 빠르게 성능 개선 가능

2. 발전된 부스팅 계열 (GBM 기반)

AdaBoost 이후에는 잔차(Residual)를 직접 학습하는 그래디언트 부스팅 계열이 주류가 되었습니다.

XGBoost (Extreme Gradient Boosting)

특징:

  • 경사 부스팅 + 다양한 최적화 기법
  • 컬럼 샘플링으로 과적합 완화와 속도 개선
  • 결측치 처리 기능이 강한 트리 기반 모델

장점:

  • 분류/회귀 모두 높은 성능
  • 실전 대회/산업 환경에서 검증됨

단점:

  • 고차원/대용량 설정에서 계산 부담이 커질 수 있음

LightGBM (Light Gradient Boosting Machine)

특징:

  • GBM 계열 경량화
  • 속도와 메모리 효율에 강점

장점:

  • 빠른 학습 + 높은 성능
  • 대규모 데이터에 유리

CatBoost (Categorical Boosting)

특징:

  • 범주형 피처 처리에 최적화

장점:

  • 범주형 데이터 비중이 높은 문제에서 강력
  • 전처리 부담을 줄이는 데 유리

3. 기타 부스팅 관련 모델

  • Histogram-based Gradient Boosting (HGB): 히스토그램 기반 분할로 속도 최적화
  • GBDT (Gradient Boosted Decision Trees): 잔차를 순차 학습하는 일반적 부스팅 틀
  • Extra Trees 계열 결합 방식: 무작위성을 섞어 다양성/일반화 개선을 시도하는 접근

4. 정리

부스팅은 다음 특성으로 요약할 수 있습니다.

  • 오차/잔차 중심의 순차 학습
  • 약한 학습기를 강한 모델로 결합
  • 일반적으로 매우 높은 예측 성능
  • 데이터/문제 특성에 따라 AdaBoost, XGBoost, LightGBM, CatBoost를 선택

결론적으로, 부스팅은 실무에서 성능을 끌어올릴 때 가장 강력한 선택지 중 하나입니다.