Light GBM 모형

LightGBM은 그 이름 Light에서도 알 수 있듯이 computational cost를 줄이기 위해 여러 가지 고급기술?을 도입하였다고 합니다.

 

그 중 하나인 Gradient based one sided sampling에 대해 직관적으로 이해해봅시다.

 

위에서 gradient boosting 기법을 다시 한번 생각해보면 data row마다 residual을 계산하여 learning rate를 이용한 예측값을 갱신하는 과정이 있었습니다.

 

이것은 마치 data row가 가지는 gradient로부터 gradient descent를 하는 과정을 연상시키죠.

 

그런데 Gradient based one sided sampling은 이름에서도 알 수 있듯이 gradient를 기반으로 필요없는 데이터는 버리겠다는 것입니다.

 

기본적인 gradient boosting이 모든 data row에 대해 residual을 업데이트하는 과정을 거치는데 이것이 비효율적인 cost를 낳는다고 생각한 것이죠

 

gradient가 클수록 더 많은 정보를 반영하고 있다는 것을 딥러닝을 많이 공부하셨다면 직관적으로? 어느정도 이해하고 있다고 생각합니다.

 

gradient가 클수록 gradient descent update과정에서 weight에 더 크게 반영이 돼서 그렇습니다. (반드시 그렇냐고 묻는다면 조금 애매한 부분이 있는 것 같습니다만은..)

 

LightGBM은 이 아이디어에 기반하여 gradient가 큰 데이터는 예측값을 갱신하여 tree를 생성해나가고 적은 데이터는 버려서 효율적으로 gradient boosting을 수행하겠다는 알고리즘입니다.

'정형데이터' 카테고리의 다른 글

의사결정나무(decision tree)의 생성 원리  (0) 2021.12.06
CatBoost 모형  (0) 2021.11.03
XGBoost 모델  (0) 2021.11.02
Gradient boosting 모형  (0) 2021.11.01
Adaboost 모형  (0) 2021.11.01
TAGS.

Comments