앙상블은 여러 개의 개별모델(분류기)을 생성하고 그 예측을 조합함으로써 보다 정확한 최종 예측을 도출하는 기법
(weak classifier들을 결합하여 strong classifier를 만드는 것)
※ 앙상블을 상대적으로 약한 여러개의 머신러닝 알고리즘을 결합해 단일 분류기보다 신뢰성이 높은 예측값을 얻는 것을 목표로한다.
1. 보팅(Voting): 서로 다른 알고리즘을 가진 분류기를 결합하여 여러 개의 분류기가 투표를 통해 최종 예측결과 결정
- 하드(Hard)보팅: 예측한 결과값들 중 다수의 분류기가 결정한 예측값을 최종 보팅 결과값으로 선정(다수결의 원칙)
- 소프트(Soft)보팅: 분류기들의 레이블 값 결정 확률을 모두 더해 이를 평균내서 확률이 가장 높은 레이블 값을 최종 보팅 결과값으로 선정
2. 배깅(Bagging): 서로 같은 알고리즘을 이용한 분류기가 데이터 샘플링을 서로 다르게 가져가면서 학습을 수행해 보팅 수행
- Bootstrap + Aggregation으로 샘플을 랜덤으로 여러번 뽑아서(Bootstrap) 각각 독립적인 모델로 만들고 각 모델을 학습시킨 다음 결과물을 집계(Aggregation)하는 방법
EX) A,B,C,D,E →[ [A,A,B,D,E], [A,B,B,D,D], [B,B,C,D,E], [A,C,D,D,E], ....]
- 각각의 모델이 독립적으로 학습(병렬학습)
- 과대적합에 강함
- Low Bias, High Variance 에 효과적
EX) RandomForest
3. 부스팅(Boosting): 여러개의 분류기가 순차적으로 학습을 수행하되, 예측이 틀린 데이터에 대해 올바르게 예측하도록 가중치를 부여하면서 학습과 예측을 진행
- 이전 모델의 학습이 다음 모델의 학습에 영향을 미침(오답에 대해서는 높은 가중치 부여, 정답에 대해서는 낱은 가중치 부여)(순차적학습)
- 오답에 더 집중할 수 있기 때문에 높은 정확도(과적합 가능성있음)
- 이상치, 결측치에 취약
- High Bias, Low Variance에 효과적
EX) Gradient Boost, XGBoost, LightGBM, AdaBoost
'데이터사이언스 > 인공지능' 카테고리의 다른 글
(빅분기)혼동행렬(Confusion Matrix)이란? (민감도, 특이도, 정확도 등) (0) | 2022.09.06 |
---|---|
CNN으로 사진 분류하기 (0) | 2022.08.29 |
간단한 신경망 만들기(보스턴 집값 예측하기) (0) | 2022.08.26 |
간단한 신경망 만들기(사인함수 예측하기) (0) | 2022.08.26 |
인공신경망 ANN 이해하기(인공지능 핵심용어 등) (0) | 2022.08.24 |