앙상블 학습 - 앙상블 학습 개요
앙상블 학습을 동한 분류는 여러 개의 분류기를 생성하고 그 예측을 결합함 으로써 보다 정확한 최종 예측을 도출 하는 기법을 말합니다.
어려운 문제의 결론을 내기 위해 여러명의 전문가로 위원회로 구성해 다양한 의견을 수렴하고 결정 하듯이 앙상블학습의 목표는 다양한 분류기의 예측결과를 결합함으로써 단일 분류기 보다 신뢰성이 높은 예측값을 얻는 것입니다.
앙상블의 유형
- 앙상블의 유형은 일반적으로는 보팅(Voting), 배깅(Bagging), 부스팅(Boosting) 으로 구분할 수 있으며, 이외에 스태킹 (Stacking)등의 기법이 있습 니 다.
- 대표적인 배깅은 랜덤 포레스트 (Random Forest) 알고리즘이 있으며, 부스팅은 에이다부스팅, 고래디언트 부스팅 XGBoost, LightGBM 등이 있습니다. 정형 데이터의 분류나 회귀에서는 GBM 부스팅 계열의 앙상블이 전반적으로 높은 예즉성능을 나타냅니다.
- 넓은 의미로는 서로 다른 모델을 결합한 것들을 앙상블로 지칭하기도 합니다.
CF) pycaret 투토리얼을 통해서, 다양한 알고리즘을 모델을 선택할 수 있다.
하지만 하이퍼 파라미터 튜닝이 어렵다는 단점이 있다.
Home - PyCaret
With PyCaret, you don’t have to leave your Notebook. Train your model, analyze it, iterate faster than ever before, and deploy it instantaneously as a REST API or even build a simple front-end ML app. All from the comfort of your Notebook.
pycaret.org
앙상블의 특징
- 단일 모델의 약점을 다수의 모델들을 결합하여 보완
- 뛰어난 성능을가진 모델들로만 구성하는 것보다 성능이 떨어지더라도 서로 다른 유형의 모델을 섞는 것이 오히려 전체 성능이 도움이 될 수 있음.
- 랜덤 포레스트 및 뛰어난 부스팅 알고리즘들은 모두 결정 트리 알고리즘을 기반 알고리즘으로 적용함.
- 결정 트리의 단점인 과적합(오버 피팅)을 수십~수전개의 많은 분류기를 결합해 보완하고
장점인 직관적인 분류 기준은 강화됨.
보팅(Voting)과 배깅(Bagging) 개요
- 보팅과 배깅은 여러 개의 분류기가 투표를 통해 최종 예측 결과를 결정하는 방식입니다.
- 보팅과 배깅의 다른 점은 보팅의 겅우 일반적으로 서로 다른 알고리즘을 가진 분류기를 결합하는 것이고, 배깅의 경우각각의 분류기가 모두 같은 유형의 알고리즘 기반이지만, 데이터 샘플링을 서로 다르게 가져가면서 학습을 수행해 보팅을 수행 하는 것입니다
보팅 유형 - 하드 보팅 (Hard Voting)과 소프트 보팅 (Soft Voting)
'Machine Learning > 머신러닝 완벽가이드 for Python' 카테고리의 다른 글
ch. 4.5 앙상블-부스팅 (0) | 2022.10.11 |
---|---|
ch.4.4 앙상블 - 배깅 (1) | 2022.10.06 |
ch4.2 결정 트리(실습) (1) | 2022.10.06 |
ch.4.1~2. 분류의 종류, 결정 트리 (1) | 2022.10.06 |
ch03 요약 (0) | 2022.10.06 |