728x90
반응형
안녕하세요, 이번 포스팅에서 배워볼 앙상블 학습 방법은 Stacking입니다.
Stacking은 1992년에 David Wolpert가 개발한 알고리즘입니다.
알고리즘은 boosting과 비슷하지만, 차별적인 특징은 meta-level learner 를 사용한다는 것입니다.
meta-level learner가 무엇인지를 설명하기에 앞서, 전반적인 알고리즘을 배워봅시다.
(1) 우선 전체 training 데이터 셋을 겹치는 데이터가 없게, 2 그룹으로 나눕니다.
(2) 그리고, 여러가지 다양한 N개의 Base Learner들을 첫 번째 데이터 그룹에 학습시킵니다.
(3) 학습 시킨 Base learner를 통해, 2 번째 데이터 그룹을 Test set으로 받아들여, 예측값을 출력합니다.
(4) 출력된 N개의 예측값들을 Input으로 하고, 2 번째 데이터 그룹의 실제값을 output으로 하여 meta-level learner를 학습합니다.
위의 알고리즘을 그림으로 도식화하면 다음과 같습니다.
예측값들로 실제값을 예측한다니, 정말 새로운 방법이지 않습니까?
하지만, 이 방법은 Bagging이나 Boosting에 비해서 인기가 별로 없다고합니다.
그래도 성능은 이 둘과 비교해서 부족한 부분은 없으니 한 번 사용해보시는것을 권장합니다!
반응형
'데이터 다루기 > 머신러닝 이론' 카테고리의 다른 글
[머신러닝] Feature Selection (0) | 2019.07.03 |
---|---|
[머신러닝] 랜덤 포레스트 (Random Forest) (0) | 2019.07.03 |
[머신러닝] Ensemble Learning (3) Boosting (AdaBoost) (0) | 2019.07.02 |
[머신러닝] Ensemble Learning (2) Bagging (0) | 2019.07.02 |
[머신러닝] Ensemble Learning (1) (0) | 2019.06.19 |