통계 톺아보기/01. 분류모델

[02_02_01] Ensenble (앙상블) 이란?

늉이늉이 2020. 8. 23. 15:50

1 . Ensenble 개념

  • weak learner 들을 잘 조합해서 strong learner로 만드는 것
  • 성능이 그리 좋지 않은 모델들을 모아서 성능이 좋은 모델 하나를 만드는 것
  • 여러 분류 모델이 만든 결과를 집계하여 예측 혹은 분류하는 방법

2. General Idea

Step1: Training DataMultiple Data Set으로 분류

Step2: 각각의 Multiple Data Set에서 분류모델 생성

Step3: 각각 생성된 분류모델을 결합

 

3. Ensenble 모델

1) Voting

    - 여러 개의 분류기가 투표를 통해 최종 예측 결과를 투표를 통해 결과 도출

    - 서로 다른 알고리즘을 여러개 결합하여 사용

    - 하드 보팅(Hard Voting) , 소프트 보팅(Soft Voting) 이 있음

 

2) Bagging

    - Bootstrap Aggregating (샘플을 다양하게 중복 생성)

    - 데이터 샘플링을 통해 모델을 학습시키고 결과를 집계하는 방법

    - 같은 유형의 알고리즘을 사용

    - Over-fitting 방지

    - 대표적인 Bagging : Random Forest

 

3) Boosting

    - 여러 개의 분류 모델이 순차적으로 학습 수행

    - 이전 분류기에서 예측이 틀린 데이터에 대해 잘 분류 되도록 가중치를 부여하여 다음 분류기에 적용하는 방식으로 학습과 예측을 진행 (이전 오차를 보완하며 가중치 부여)

    - 계속하여 분류기에 가중치를 부스팅하며 진행함

    - 대표적인 Boosting : XGBoost, LightGBM

    - 배깅에 비해 성능이 좋지만, 느리고 Over-fitting 발생 가능성이 존재함

 

4) Stacking

    - 여러 모델을 기반으로 meta 모델

 

 

 

[참고]

1) http://www.dinnopartners.com/__trashed-4/