01. 2분 안에 말하기

LightGBM은 Tree 자료 구조를 기초로 한 gradient boosting framework이다. Decision Tree Algorithm을 기반으로 하며 순위, 분류 및 기타 기계 학습 작업에 사용된다. 개발의 초점은 성능과 확장성에 있다.기존의 다른 Tree 기반 알고리즘과의 차이점은 다음과 같다. LightGBM은 Tree가 수직적으로 확장되는 반면에 다른 알고리즘은 Tree가 수평적으로 확장된다. 즉 Light GBM은 leaf-wise 인 반면 다른 알고리즘은 level-wise 이다. 확장하기 위해서 max delta loss를 가진 leaf를 선택하게 되는 것이다. 동일한 leaf를 확장할 때, leaf-wise 알고리즘은 level-wise 알고리즘보다 더 많은 loss, 손실을 줄일 수 있다.LightGBM이 인기가 많은 이유는 무엇일까? 일단 속도가 빠르기 때문이다. LightGBM은 큰 사이즈의 데이터를 다룰 수 있고 실행시킬 때 적은 메모리를 차지한다. LightGBM이 인기있는 또 다른 이유는 바로 결과의 정확도에 초점을 맞추기 때문이다. LGBM은 또한 GPU 학습을 지원하기 때문에 데이터 사이언티스트가 데이터 분석 어플리케이션을 개발할 때 LGBM을 폭넓게 사용하고 있다.주의할 점은, LGBM을 작은 데이터 세트에 사용하는 것은 추천되지 않는다는 것이다. LightGBM은 overfitting (과적합)에 민감하고 작은 데이터에 대해서 과적합하기 쉽다. row (행) 수에 대한 제한은 없지만 경험상 10,000 이상의 row (행) 을 가진 데이터에 사용하는 것이 권유된다고 한다.

02. 추가 학습 포인트

03. 코드 활용 참고

코드 활용 TIP1. 더 높은 정확도 * max_bin을 크게 * num_iterations는 크게하고 learning_rate는 작게 * num_leaves를 크게 ( 과적합의 원인이 될 수 있음 ) * boosting 알고리즘 'dart' 사용

  1. 과적합을 줄이기
  2. max_bin을 작게
  3. num_leaves를 작게
  4. min_data_in_leaf와 min_sum_hessian_in_leaf 사용하기

04. 참고 문헌

https://en.wikipedia.org/wiki/LightGBMhttps://nurilee.com/2020/04/03/lightgbm-definition-parameter-tuning/https://herjh0405.tistory.com/40