본문 바로가기

ML&DL

앙상블 학습 (Ensemble Learning) 1 - 배깅 (Bagging)

앙상블 학습이란?

  • 여러 개의 모델을 결합하여 더 나은 예측 성능을 얻는 기법
  • 단일 모델보다 더 높은 정확도 제공 가능
  • 데이터가 부족하거나 노이즈가 많은 경우에 유용
  • 배깅, 부스팅 (Boosting), 스태킹 (Stacking) 등
  • 예시: RandomForest, Gradient Boosting (XGBoost, LightGBM 등)

앙상블 학습 중 하나인 배깅(Bagging)에 대해 자세히 알아보겠습니다.

 

배깅이란?

  • Bootstrap Aggregation의 약자
  • 한 가지 분류 모델을 여러 개 만들어 서로 다른 학습 데이터로 학습 시킨 후 (Bootstrap), 동일한 테스트 데이터에 대한 서로 다른 예측값들을 투표를 통해 (Aggregating) 가장 높은 예측값으로 최종 결론을 내리는 방법
  • 투표의 종류
    •  
      • : 손글씨 숫자를 1~9로 분류하는 decision tree 6개를 학습 후, 숫자 7보여줬을 때 tree 1~2는 각 1, 2를 찍고 tree 3~6은 다 7을 찍었으면 7로 예측
    • Hard voting: 배깅에 포함된 분류 모델에서 최대 득표를 받은 값으로 결론 도출 (다수결)
    • Soft voting: 모든 분류값의 확률을 체크해서, 분류값 별 확률을 더해준 값을 점수로 사용해 최대 점수를 가진 분류값을 결론으로 내림
      • : 7이 가장 높은 확률을 획득하였기 때문에, 7로 예측

배깅과 부스팅의 차이점

  • 배깅: 병렬 처리 방식으로 여러 개의 독립적인 모델을 사용
  • 부스팅: 순차적 처리 방식으로 이전 모델이 잘못 분류한 데이터를 다음 모델에서 더 중점적으로 학습

 

배깅의 장단점

장점:

  • 과적합 방지: 다양한 샘플로 인해 일반화 능력이 향상됨
  • 안정성 증가: 여러 모델 간 평균화로 인해 노이즈에 강해짐

단점:

  • 계산 비용 증가: 많은 수의 모델을 훈련해야 하므로 시간이 소요
  • 해석의 어려움: 복잡한 구조로 인해 결과 해석이 어려울 수 있음