LoginSignup
5

More than 5 years have passed since last update.

LightGBMについて

Posted at

概要理解

LightGBMとは、以下と捉えることができる。

LightGBM = GBDT(Gradient boosting decision tree) + GOSS(Gradient-based One-Side Sampling) + EFB(Exclusive Feature Bundling)

GBDTの問題点

従来GDBTの問題点の1つとして、学習時間があげられる。
そしてその学習時間の多くが、分岐点を探す際にかかる時間である。

改善Point

上記の問題点を踏まえ、改善観点として大きく2つ考えられる。

1.データ量を減らす(GOSS)

データをサンプリングして学習する。
ただし、以下2点に注意。
・勾配が小さいデータに関しては学習しなくてもよい。(勾配が小さい=よく学習できている)
・単にサンプリングするだけでは精度への影響が懸念されるため、元データとの変更がないようにわり割り戻して整合性を保つ

2.特徴量を減らす(EFB)

疎なデータ(データがNULLだらけな様子。スパースともいう。)に関してはデータをいくつかにまとめ、そのまとめた単位毎に学習をおこなう。(データ1つ1つ学習するより速そう、というのか感覚的にも理解できる。)

結果

論文の結果からすると精度も速度もLightGBMが1番良かったっぽい
qiita.png

今後理解が必要な箇所

・GOSS/EFBのアルゴリズム理解
・P/NP/NP-Hard/NP-Completeについての理解

[参考]
https://www.slideshare.net/tkm2261/nips2017-lightgbm-a-highly-efficient-gradient-boosting-decision-tree
http://developer.hatenastaff.com/entry/ml_reading_party_201804#LightGBM-A-Highly-Efficient-Gradient-Boosting-Decision-Tree
https://lightgbm.readthedocs.io/en/latest/Installation-Guide.html
(論文)
https://papers.nips.cc/paper/6907-lightgbm-a-highly-efficient-gradient-boosting-decision-tree.pdf

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5