본문 바로가기
머신러닝

앙상블(Ensemble) - 배깅(Bagging), 부스팅(Boosting), 스태킹

by 프로그래밍하겠습니다 2025. 1. 30.
728x90
반응형

🎶 앙상블 이하 Ensemble Method에 대해 알아보자.

 

앙상블이란,

머신러닝의 민주주의라고도 부르며, 여러 분류기가 각자의 분류 결과를 투표하듯이 내어 놓으면 가장 많은 표를 얻은 결과를 최종 결과로 선택하는 방법이다. 

(🎃 Majority Voting 라고도 부른다.)

Ensemble
[사진 1] 앙상블 모델 - 출처 : IBM 앙상블 학습이란 무엇인가요?

 

어느 수준의 성능에 도달하면 분류기를 개선하는 일이 매우 어려워지기 때문에, 여러 가지 종류의 분류기를 개별적으로 개선하는 데에 한계가 있을 때 이들의 협력을 이용하는 것이 바로 앙상블인 것이다.

 

앙상블의 각 모델들은 성격이 서로 다른 것, 즉 개별 분류기의 다양성이 좋아야 앙상블의 성능도 좋아진다. 이 분류기의 다양성을 확보하는 방법이

  1. 서로 다른 모델로 각각의 분류기를 만들고,
  2. 각각의 분류기에 대해 서로 다른 학습 데이터를 제공해 훈련하는 것이다.

 

앙상블의 종류로는 다음과 같은 것들이 있다.

 

1. 배깅(Bagging) - 동종 병렬 방법

배깅은 주어진 데이터를 Bootstrap 하는데, Bootstrap sampling 하는 과정에서 replacement 를 활용한다. 즉, 복원 랜덤 샘플링 과정을 통해 bootstrap 한 데이터들로 각 모델을 학습시킨 후, 학습된 모델의 결과를 집계하여 최종 결과 값을 리턴한다.

Bagging
[사진 2] 배깅 모델 - 출처 : IBM 앙상블 학습이란 무엇인가요?

 

배깅의 가장 대표적인 예로는 랜덤 포레스트로, 무작위 Decision Trees의 앙상블로 구성돼 있다.

 

2. 부스팅(Boosting) - 순차적 앙상블 방법

부스팅은 배깅과 매우 유사한 방식으로 작동하지만, 가중치를 활용한다는 가장 큰 차이점이 존재하는 앙상블 방법이다. 모델이 예측을 진행하면 그 예측 결과에 따라 데이터에 가중치가 부여되고, 부여된 가중치가 다음 모델에 영향을 주게 된다. 즉, 잘못 분류된 데이터에 집중하여 새로운 분류 규칙을 만드는 단계를 반복하는 것이다.

Boosting
[사진 3] 부스팅 모델 - 출처 : IBM 앙상블 학습이란 무엇인가요?

 

부스팅의 대표적인 예로는 AdaBoost와 Gradient Boost 가 있다. 

 

3. 스태킹

스태킹(또는 스택 일반화)은 각 학습 데이터에 대해 다른 알고리즘을 사용해 동일한 데이터 셋에 대해 각각 다른 모델들을 구체적으로 훈련시킨 후, 다른 모델들로부터 나오는 예측 값들을 메타 모델인 최종 모델의 훈련 데이터셋으로 활용하는 방법이다.

스태킹
[사진 4] 스태킹 모델 - 출처 : IBM 앙상블 학습이란 무엇인가요?

 

 

더 자세한 설명을 원하면 다음 IBM 자료를 참고하길 바란다.

앙상블 학습이란 무엇인가요? | IBM

 

앙상블 학습이란 무엇인가요? | IBM

앙상블 학습이란 무엇인가요? 이 ML 방법이 모델을 집계하여 예측을 개선하는 방법 알아보기

www.ibm.com

 

728x90
반응형