반응형
LGBM(Light GBM)
- 데이터셋 작으면 과적합하기 쉽다. 문서상 10,000개 데이터 이상인 데이터셋에 적합
- 하지만 많은 데이터셋에서는 XGBoost보다 빠른 학습속도, 적은 메모리사용량
- 카테고리형 데이터에 대해서 원핫인코딩이 필요없이 알아서 인식
- 기존 GBM과 다른점은 GBM은 균형 트리분할(Level Wise) 방식, LGBM은 리프중심 트리분할(Leaf Wise) 방식
- 균형 트리분할 : 최대한 균형 잡힌 트리를 유지하며 분할하여 트리의 깊이를 최소화하여
오버피팅에 강한구조이지만 균형을 맞추기 위한 시간이 필요 - 리프중심 트리분할 : 최대 손실 값을 가지는 리프노드를 지속적으로 분할하면서
트리가 깊어지고 비대칭적으로 생성하며 이로써 예측 오류 손실을 최소화.
- 균형 트리분할 : 최대한 균형 잡힌 트리를 유지하며 분할하여 트리의 깊이를 최소화하여
XGBoost(eXtra Gradient Boost)
- GBM에 기반, 하지만 GBM의 느린 수행시간, 과적합등을 해결한 알고리즘
- 결손값 자체 처리 가능
- 어떻게 처리할까? 최대한 loss값이 적어지는 방향으로 결손값을 처리한다고함
- stats.stackexchange.com/questions/235489/xgboost-can-handle-missing-data-in-the-forecasting-phase
- 자체 내장된 교차검증, 트리 가지치기
- 아무래도 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 |