앙상블 모델은 거의 항상 단일 모델보다 정확도가 높다.
모델 여러 개의 예측값을 가중치를 곱해서 앙상블 결과를 얻는다. 각각의 모델의 하이퍼파라미터를 GridSearch로 찾아 전체 앙상블 모델의 예측결과가 어떠한지 찾을 수 있다.
각각의 모델을 합칠 때 파이프라인을 잘 이용하자. 정규화나 표준화가 필요한 모델 같은 경우 파이프라인으로 전처리 과정을 합쳐준다.
Bagging은 Bootstrap Aggregating 의 줄임말로, bootstrap(랜덤하게 복원추출)하여 각 분류기에 전달하여 결과를 앙상블하는 것을 말한다.
대표적으로는 결정트리를 bagging하게 샘플링하는 랜덤포레스트가 있다.
랜덤 포레스트는 분산을 최적화시키기에는 좋지만, 편향을 잡는 데에는 약하다. 모델이 너무 단순하기 때문이다. 이것이 배깅을 수행할때 편향이 낮은 모델, 예를 들어 가지치기하지 않은 결정트리를 분류기로 사용하여 앙상블을 만드는 이유다.
adaboost(Adaptive Boosting)은 부스팅 앙상블 모델이다.
부스팅이란 앙상블 모델에서 하나의 모델을 훈련할 때 이전 모델의 결과를 참고해서 결과를 좋게 나오도록 하는 기법이다.
여기서 사용하는 분류기들은 단순한 모델(약한 분류기, 예를 들면 깊지 않은 결정트리)를 사용한다.
Adaboost는 이전 분류기에서 제대로 분류하지 못한 샘플들에 대해 가중치를 높이고 잘 분류한 샘플들에는 가중치를 낮춰서 결국에는 모두 제대로 분류할 수 있도록 만든다.
AdaBoost는 잘못 분류된 점을 이용하여 약분류기 학습의 가중치를 결정하였다면, GBM은 Gradient Descent 기법을 이용하여 손실함수를 최소화하는 방향으로 학습을 합니다.
GBM의 매개변수에 대해서 간단하게 설명하겠다.
GBM에는 다양한 모델들이 있다.