3. Ensemble
Bagging - e.g: Random forest
↗
Ensemble
↘
Boosting - e.g: Gradient Boosting
*Ensemble; 여러 모델을 이용하여 training, 모든 모델의 예측 결과를 평균하여 예측하는 방법.
*Bagging; "Bootstrap Aggregation". 병렬적인 Ensemble 모델로써,
Random sampling을 통해 여러 예측 모형 만들어 이용하여 학습하는,
"Variance"를 감소하기 위해 쓴다.
ex) "Random forest"
*XGBoost; CART 개념도입, 각 tree와 lead에 CART를 넣고 lead 별로 점수를 주고 이를 이용해 학습.
*Voting Classifier:
{_________}
여러개 M.L 알고리즘 모델 학습 → 새로운 데이터에 모델 예측 값을 가지고
"다수결 투표("hard voting")를 통해 최종 클래스 예측.
앙상블 기법에서 독립적인 모델을 만들어 주기 위해서 다른 M.C 알고리즘으로 학습시키는 것이 좋다.
↓
모델별로 서로 다른 종류의 오차를 가짐으로 상관관계가 작아지기 때문.
from sklearn. ensemble import votingClassifier.
여기서,
voting='hard'인 경우, 각 classifier의 "레이블"을 가지고 voting.
voting='soft'인 경우, 각 classifier의 "확률"을 가지고,
평균이 가장 높은 클래스를 최종 ensemble 예측.
(간접투표)
*Stacking: 투표기반 분류 간의 "hard voting", "soft voting"이 아닌,
앙상블 학습에서 예측값을 가지고,
새로운(Metamodel) 것을 학습시켜 최종 예측 모델을 만드는 방법.
'Articles' 카테고리의 다른 글
[Articles] 클러스터링 알고리즘들 (Unsupervised Learning이란?) (0) | 2020.02.09 |
---|---|
Git 사용하기 (0) | 2020.01.13 |
머신러닝 기초 (0) | 2020.01.05 |
2. Statistical Methods (0) | 2019.12.27 |
1. XG Boost (0) | 2019.12.24 |
댓글