앙상블

앙상블 학습이란?
- 여러 개의 분류기를 생성하고, 그 예측을 결합함으로써 보다 정확한 예측을 도출하는 기법
- 강력한 하나의 모델을 사용하는 대신 약한 모델 여러 개를 조합하여 더 정확한 예측에 도움을 주는 방식

앙상블 학습의 핵심은 편향과 분산을 줄인 모델을 구현하는 것
- 편향(Bias) : 예측값과 정답이 떨어져 있는 정도.
정답에 대한 잘못된 가정으로부터 유발되며 편향이 크면 과소적합이 발생한다.
- 분산(Variance) : 입력 샘플의 작은 변동에 반응하는 정도.
정답에 대한 너무 복잡한 모델을 설정하는 경우 분산이 커지며, 분산이 크면 과대적합이 발생한다.
1. 보팅 (Voting)
- 여러 개의 분류기가 투표를 통해 최종 예측결과를 결정하는 방식
- 서로 다른 알고리즘을 여러 개 결합하여 사용

2. 배깅 (Bagging)
– Bootstrap Aggregation의 줄임말 (Bootstrap : 중복허용 리샘플링)
- 데이터 샘플링을 통해 모델을 학습시키고 결과를 집계하는 방법
- 모두 같은 유형의 알고리즘 기반의 분류기를 사용
- 예측값의 최빈값을 최종 예측값으로 선택
- 대표 배깅 방식 : 랜덤 포레스트 알고리즘

데이터를 샘플링 하게 되면 표본의 다양성을 많이 추가하게 되기 때문에, 분산이 줄어드는 효과를 가져옴.

2.1. 랜덤 포레스트 (random forest)
- 배깅 기법을 결정트리의 앙상블에 특화시킨 모델


3. 부스팅 (Boosting)
- 여러 개의 분류기가 순차적으로 학습을 진행
- 이전 분류기가 예측이 틀린 데이터에 대해 올바르게 예측할 수 있도록
다음 분류기에게 가중치를 부여하면서 학습과 예측을 진행
- 계속하여 분류기에게 가중치를 부스팅하며 학습을 진행하기에 부스팅 방식이라고 불림
- 순차적으로 학습하기에 배깅 방식과는 달리 훈련을 동시에 진행할 수 없으므로 훈련시간이 오래걸림
3.1. 에이다부스트 (AdaBoost)
- 하나의 모델을 훈련시킨 후 잘못 예측된 샘플을 보다 강조하면서 해당모델을 다시 훈련시킨다.

3.2. 그래디언트 부스팅 (Gradient Boosting)
- 이전 모델의 예측에 오차가 있다면 그 오차를 보정하는 새로운 예측기를 새롭게 훈련시킨다.
- 에이다부스트 기법은 샘플의 가중치를 조정하는 반면,
그래디언트 부스팅기법은 이전 예측기에 의해 생성된 잔차(residual error)에 대해 새로운 예측기를 학습시킨다.

4. 스태킹 (Stacking)
- 배깅방식의 응용
- 다수결을 이용하는 대신 여러 예측값을 학습데이터로 활용하는 예측기를 학습시킨다.

'#02.천재교육 빅데이터 > +06.머신러닝 기초' 카테고리의 다른 글
| [천재교육] 회귀 (Regression) (0) | 2023.03.15 |
|---|---|
| [천재교육] 결정트리시각화, 배깅, 랜덤포레스트 부스팅 실전 (0) | 2023.03.15 |
| [천재교육] 결정트리, KNN(K-Nearest Neighbor) 알고리즘 (0) | 2023.03.14 |
| [천재교육] 분류(Classification) (0) | 2023.03.14 |
| [천재교육] 판다스(pandas) (0) | 2023.03.14 |