LightGBM을 설치하는데 고전하다가, 프로젝트 기간 안에 설치 및 적용이 어려울 것 같아 XGBoost로 만족하고 공부하기로 했다.
사실 XGBoost, LightGBM 등은 재작년 쯤부터 핫하게 들어왔던 키워드였으나, 캐글을 열심히 하지 않아서인지 실제로 적용해볼 기회는 없었다.
이번에 변수의 영향도, 관계보다 예측력에 목적이 있는 프로젝트를 진행하다보니 관심을 가지고 학습하기로 했다.
1. Bagging vs Boosting
: 둘 모두 앙상블 방법.
랜덤하게 샘플링하여 동일한 방법을 적용하는 것과 다르게
앞 단계에서 발생하는 오차를 모델링하며, 각 단계에서의 최적 가중치를 추적
2. Boosting은 numeric한 feature만 입력해야한다. why?
https://www.kaggle.com/c/avito-demand-prediction/discussion/57094
참고
3. GBM vs XGBoost vs LightGBM
(출처 : https://www.kaggle.com/nschneider/gbm-vs-xgboost-vs-lightgbm/notebook)
Additional Observations
GBM
Advantages:
- None
Disadvantages:
- No early exit
- Slower training
- Less accurate
xgboost
Advantages:
- Proven success (on kaggle)
- Now with Histogram Binning
Disadvantages:
- Traditionally slower than lightGBM, but
tree_method = 'hist'
is a big improvement.
→ LightGBM을 쓰지 않아도, 충분히 속도 개선와 예측력 개선이 가능할 것으로 보인다.
lightGBM
Advantages:
- Fast training efficiency
- Low memory usage
- Better accuracy
- Parallel learning supported
- Deal with large scale data
- Corporate supported
Disadvantages:
- Newer, so less community documentation
'분석 > 머신러닝' 카테고리의 다른 글
LSTM - components (0) | 2019.08.13 |
---|---|
[jupyter notebook] 설치했으나 run 결과 출력이 안되는 오류 (1) | 2019.07.20 |
머신러닝에서 평가 메트릭(continuous) (0) | 2019.03.28 |