본문 바로가기

Data/Data Science

[머신러닝] LGBM, XGBoost, GBM

반응형

LGBM(Light GBM)

  • 데이터셋 작으면 과적합하기 쉽다. 문서상 10,000개 데이터 이상인 데이터셋에 적합
  • 하지만 많은 데이터셋에서는 XGBoost보다 빠른 학습속도, 적은 메모리사용량
  • 카테고리형 데이터에 대해서 원핫인코딩이 필요없이 알아서 인식
  • 기존 GBM과 다른점은 GBM은 균형 트리분할(Level Wise) 방식, LGBM은 리프중심 트리분할(Leaf Wise) 방식
    • 균형 트리분할 : 최대한 균형 잡힌 트리를 유지하며 분할하여 트리의 깊이를 최소화하여
      오버피팅에 강한구조이지만 균형을 맞추기 위한 시간이 필요
    • 리프중심 트리분할 : 최대 손실 값을 가지는 리프노드를 지속적으로 분할하면서
      트리가 깊어지고 비대칭적으로 생성하며 이로써 예측 오류 손실을 최소화.

XGBoost(eXtra Gradient Boost)

  • GBM에 기반, 하지만 GBM의 느린 수행시간, 과적합등을 해결한 알고리즘
  • 결손값 자체 처리 가능
  • 자체 내장된 교차검증, 트리 가지치기
  • 아무래도 Boostring 계열이라 뛰어난 예측 성능을 보여줌 (그렇다고 LGBM보다 뛰어난건 아닌듯, 둘다 성능은 비슷하다고 함)

GBM(Gradient Boost Machine)

  • AdaBoost와 유사하지만, 가중치 업데이트를 경사하강법을 이용하여 최적화된 결과를 얻는 알고리즘
  • 예측성능은 좋지만, 탐욕 알고리즘 사용으로 과적합이 되고, 시간이 오래걸린다는 단점이 있음
반응형

'Data > Data Science' 카테고리의 다른 글

[ML] Clustering 정리 및 DBSCAN  (0) 2021.04.22
[ML] 짜투리정리  (0) 2021.02.14
[Gradient Descent] 경사하강법  (0) 2021.01.13
[Pytorch] Autoencoder Base code  (0) 2020.11.29
[Pytorch] Basic Neural Network  (0) 2020.11.23