[ML] 머신러닝 - Boosting

GisangLee·2022년 7월 25일
0

ML

목록 보기
96/141

1. Boosting

약 분류기를 순차적으로 학습하는 앙상블 기법

  • 예측을 반복하면서 잘못 예측한 데이터에 가중치를 부여해서 오류 개선

부스팅 종류

  1. AdaBoost
  2. Gradient Boost
  3. XGBoost

2. AdaBoost

간단한 약 분류기들이 상호 보완되도록 순차적 학습

  • underfitting된 학습 데이터의 가중치를 높이면서 (Adaptive)
    새로 학습된 모델이 학습하기 어려운 데이터에 더 잘 적합되도록 하는 방식

학습 방법

  1. 전체 학습 데이터를 이용해 모델 생성

  2. 잘못 예측된 데이터의 가중치를 상대적으로 높임

  3. 가중치를 반영하여 다음 모델을 학습

  4. 2~3 과정을 반복

가중치 계산


3. Gradient Boost

학습 전 단계 모델에서의 잔여 오차 (Residual Error)에 대해 새로운 모델을 학습

  • 잔여 오차를 예측하여 발전하는 약 분류기

학습 방법

  1. 모델을 학습 후 예측 값 계산

  2. 잔여 오차 계산

  3. 잔여 오차를 트리 모델 생성

  4. Learning rate를 이용해 기존 예측값 수정

  5. 2 ~ 4 반복


4. XGBoost

Gradient Boost 기반 모델

  • 트리를 만들 때 병렬 처리를 가능하게 해서 Gradient Boosting의 속도를 개선

특징

  1. 병렬 / 분산 처리

    • cpu 병렬 처리
  2. Split 지점을 고려할 때 일부를 보고 결정

    • 연속형 변수들의 Split 지점을 고려할 때 일부분만 보고 고려함
  3. Sparsity Awareness

    • Zero 데이터를 건너 뛰면서 학습
    • 범주형 데이터를 dunmmy화 시킬 경우 학습 속도를 빠르게 할 수 있다.

profile
포폴 및 이력서 : https://gisanglee.github.io/web-porfolio/

0개의 댓글