- Ensenble methods

 : Ensemble methods (앙상블 기법)은 지도학습의 대표적인 기법 중 하나로 여러 모형을 기반으로 예측을 결합하여 최종 결과를 내는 모형입니다.

   서로 다른 classifiers를 합쳐서 큰 meta-classifier를 만드는 방식으로 목적은 개별 classifier 보다 좋은 일반화 성능을 가지는 것 입니다.

   모델들을 적절히 결합했을 때 대체적으로 기존 모델보다 성능이 좋았습니다.  

 

 

- Simple ensemble methods

 : Voting (used for classification)
   · Majorith Voting 

     (다수의 classifiers 가 예측한 것을 선택 - 다수결)
   · Weighted Voting 

     (개별 classifiers에 차이가 많고, weight (가중치)의 값에 대해 미리 예측이 가능할 경우)


 : Averaging (used for regression)
   · Simple Averaging (단순 평균)
   · Weighted Averaging (가중치 평균)

 

 

- General ensemble approach (일반적인 앙상블 접근법)

 : Start by m classifiers

 : 다른 알고리즘으로 구축 가능합니다. (ex. 의사결정나무, SVM, 로지스틱 회귀 ...)

 : 같은 알고리즘 사용 시, Training data의 부분 집합 (subset)을 달리하여 학습 가능합니다.

 

 

- Tuning ensemble classifier

 : 분류기별 Ensemble 분류기 튜닝 값

 

 

- Decision boundary (결정 경계)

 : 분류기별 결정 결계 값

  (두 개의 계층을 가지고 있는 통계적인 분류 문제에서, 결정 경계는 기본 벡터공간을 각 클래스에 대하여 하나씩 두 개의 집합으로 나누는 초표면 값)

 

 


- Boosting

  : 부스팅은 머신러닝 앙상블 기법 중 하나로 sequential한 weak learner들을 여러개 결합하여 예측 혹은 분류 성능을 높이는 알고리즘입니다.

   여기서 sequential한 weak learner들을 결합한다는 뜻은,

   처음 샘플링한 데이터 셋을 분류하여 잘못 분류된 데이터에 가중치를 부여하여 다시 샘플링한다는 의미입니다.


 : Sequential ensemble

 

 

- Boosting steps

 : 초기 공식은 훈련 데이터 세트에서 가져온 임의의 부분 집합을 사용합니다

   1. Draw a random subset d1 to train a weak learner C1 (점점 좋아짐)

       => 약한 학습자 C1을 훈련하기 위해 임의의 부분 집합 d1을 그립니다.


   2. Draw a second subset d2 and add 50% of the examples that were previously misclassified to train a weak

       learner C2 (잘못 분류된 50% 샘플을 추가 C2로)

       => 두 번째 부분 집합 d2를 그리고 이전에 약한 학습자 C2를 훈련시키기 위해 잘못 분류 된 예제의 50 %를 추가합니다.


   3. Find the training examples d3, which C1 and C2 disagree upon, to train a third weak learner C3 (C1과 C2의 불일치 샘플 추가)

       => C1과 C2가 동의하지 않는 d3 훈련 예제를 찾아서 세 번째 약한 학습자 C3를 훈련합니다.


   4. Combine the weak learners C1, C2 and C3 via majority votin

       => 과반수 투표를 통해 약한 학습자 C1, C2 및 C3 결합합니다.

 

 

- Adaboost

 : 적응형 부스팅은 전체 교육 데이터 세트를 사용하여 약한 학습자를 교육합니다.
   훈련 예제는 이전 약한 학습자로 부터 학습하는 강력한 분류기를 구축하기 위해 단계를 반복합니다.

 

 

 

- Bagging vs. Boosting

 : Bagging
   1. parallel ensemble (각각의 모델이 서로 독립적으로 parallel하게 구성)

   2. variance 줄이기 위해 주로 사용 (여러 개를 합치다 보면 줄어듬)
   3. high variance, low bias 모델이 적합 (over-fitting 모델에 적합)
   4. random forest가 가장 대표적인 예

 : Boosting
   1. sequential ensemble (이전 단계에 모델이 잘못했던 샘플에 대해 더 잘할 수 있게 새로운 모델을 추가하는 방식)
   2. bias 줄이기 위해 주로 사용
   3. low variance, high bias 모델이 적합
   4. gradient boosting or XGBoost 이 가장 대표적인 예

 

 

- Ensemble summary

 1. 앙상블 방법은 서로 다른 분류 모델을 결합하여 개별 약점을 제거합니다. 
 2. 안정적이고 우수한 성능의 모델 생성합니다.
 3. 산업 응용 프로그램 및 기계 학습 대회에 매우 효과적입니다.
 4. but. 앙상블은 계산 복잡성을 증가시킵니다.

 

 

- Perfomance 향상 방법

 : Cross validation
 : GridSearchCV (find optimal set of parameters)
 : Cache your intermediate data (you will do less work next time)
 : User the model appropriate to the problem
 : Feature engineering
 : Combine models

 

 

 아주대학교 정보통신대학원 손경아 교수님의 기계학습 및 데이터 마이닝 강의를 바탕으로 작성하였습니다.

 학습 목적으로 포스팅 합니다.

'Machine Learning' 카테고리의 다른 글

Model selection  (1) 2020.09.29
Regression  (0) 2020.09.27
Performance Metrics  (1) 2020.09.17
Evaluation  (0) 2020.09.17
Decision Tree  (0) 2020.09.12