Notice
Recent Posts
Recent Comments
Link
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Tags
more
Archives
Today
Total
관리 메뉴

AI와 데이터 사이언스의 이론과 실전

배깅과 부스팅의 원리와 주요 알고리즘 본문

카테고리 없음

배깅과 부스팅의 원리와 주요 알고리즘

큐트아리 2024. 4. 10. 22:35

배깅(Bagging)

  • 기본 원리: 배깅(Bagging, Bootstrap Aggregating의 줄임말)은 다수의 분류기가 훈련 데이터셋의 서로 다른 무작위 샘플에 대해 각각 학습을 수행하고, 이 분류기들의 예측을 평균화하여 최종 결과를 결정합니다.
  • 목적: 배깅의 주 목적은 훈련 데이터의 무작위 샘플링을 통해 분류기의 분산을 감소시켜 과적합을 줄이는 것입니다.
  • 작동 방식: 주로 부트스트랩 샘플링(복원 추출)을 사용하여 원래 데이터셋의 크기와 동일한 여러 서브셋을 생성합니다. 각 서브셋으로 모델을 개별적으로 훈련시키고, 이 모델들의 결과를 결합합니다.
  • 대표적 모델: 랜덤 포레스트(Random Forest)가 대표적인 배깅 기반 모델입니다. 랜덤 포레스트는 다수의 결정 트리들로 구성되며, 각 트리는 데이터셋의 서로 다른 샘플로 훈련됩니다.

부스팅(Boosting)

  • 기본 원리: 부스팅은 약한 학습기(Weak Learner)를 순차적으로 훈련시키면서, 잘못 예측된 데이터에 대해 가중치를 부여하여, 다음 학습기가 더 잘 예측할 수 있도록 하는 방식입니다.
  • 목적: 부스팅은 약한 학습기의 성능을 개선하여 강한 학습기를 만드는 것에 중점을 둡니다. 오류를 줄이기 위해 학습기 간의 연속적인 학습을 강조합니다.
  • 작동 방식: 초기에는 모든 데이터에 동일한 가중치가 부여되지만, 각 반복 과정에서 잘못 분류된 데이터에 대한 가중치가 증가합니다. 이렇게 각기 다른 가중치가 적용된 데이터셋에 대해 새로운 학습기가 학습을 수행하고, 이 과정을 반복합니다.
  • 대표적 모델:
    • AdaBoost(Adaptive Boosting): 오류 데이터에 가중치를 부여해가며 순차적으로 모델을 구축합니다.
    • Gradient Boosting: 손실 함수의 기울기에 따라 모델을 업데이트합니다. XGBoost, LightGBM, CatBoost 등이 Gradient Boosting의 확장된 형태입니다.

배깅과 부스팅의 차이점

  1. 학습 방식: 배깅은 병렬로 각 모델이 독립적으로 학습되는 반면, 부스팅은 순차적으로 학습하여 이전 모델의 오류를 개선합니다.
  2. 주 목적: 배깅은 분산 감소(과적합 방지)에, 부스팅은 편향 감소(성능 향상)에 초점을 맞춥니다.
  3. 샘플 가중치: 배깅에서는 각 모델이 동일한 확률로 데이터를 샘플링하지만, 부스팅에서는 오류를 더 많이 범한 데이터에 더 큰 가중치를 부여합니다.