LightGBMは、Light Gradient Boosting Machine の略で、機械学習用のフリーかつオープンソースの分散型勾配ブースティングフレームワークであり、マイクロソフトが開発した 。決定木アルゴリズムをベースにしており、ランク付け、分類、その他の機械学習タスクに使用される。パフォーマンスとスケーラビリティに重点を置いて開発されている。
概要
LightGBM フレームワークは、GBT、GBDT、GBRT、GBM、MART 、RF など、さまざまなアルゴリズムをサポートしている。LightGBM は、スパース最適化、並列学習、複数の損失関数、正則化、バギング、早期停止など、 XGBoost の利点を多く備えているが、ツリーの構造が大きく異なる。多くの実装ではツリーをレベル(行)ごとに成長させるが、LightGBM ではツリーをリーフ(葉)ごとに育て、損失が最も減少すると思われるリーフを選択する。また、LightGBM では、XGBoost その他の実装で採用されているソートベースの決定木アルゴリズム(ソートされた特徴量に基づいて最適な分割点を探索するアルゴリズム)ではなく、高度に最適化されたヒストグラムベースの決定木学習アルゴリズムを実装しており、効率性とメモリ消費の両面で大きなメリットがある。LightGBM アルゴリズムは、GOSS(Gradient-Based One-Side Sampling)とEFB(Exclusive Feature Bundling)という 2 つの新しい技術を採用しており、高い精度を維持しながらアルゴリズムを高速に実行することができる。
LightGBMは、Linux、Windows、macOS で動作し、C 、Python、R、C# をサポートしている。ソースコードは MIT License でライセンスされており、GitHubで公開されている。
GOSS
Gradient-Based One-Side Sampling(GOSS)は、GBDT のデータインスタンスにネイティブウェイトがないことを利用した手法。異なる勾配を持つデータインスタンスは、情報利得の計算において異なる役割を果たすため、より大きな勾配を持つインスタンスが情報利得に大きく貢献することになる。そのため、GOSS は情報の精度を保つために、勾配の大きいインスタンスを残し、勾配の小さいインスタンスを無作為に削除する。
EFB
Exclusive Feature Bundling(EFB)は、有効な特徴量の数を削減するための、ほぼロスレスな手法である。スパースな特徴量空間では、多くの特徴量はほぼ排他的であり、同時にゼロ以外の値を取ることはほとんどない。ワンホットエンコードされた特徴量は、排他的な特徴量の典型例である。EFB では、これらの特徴量を束ねて次元を下げることで、高い精度を維持しつつ効率化を図っている。このように、排他的な特徴を 1 つの特徴量として束ねたものを EFB と呼ぶ。
関連項目
- 機械学習
- ML.NET
- データビニング
- 勾配ブースティング
- XGBoost
- scikit-learn
- CatBoost
脚注
参考文献
- Guolin Ke, Qi Meng, Thomas Finely, Taifeng Wang, Wei Chen, Weidong Ma, Qiwei Ye, Tie-Yan Liu (2017). LightGBM: A Highly Efficient Gradient Boosting Decision Tree. https://papers.nips.cc/paper/6907-lightgbm-a-highly-efficient-gradient-boosting-decision-tree.pdf 2021年6月15日閲覧。.
- Quinto, Butch. Next-Generation Machine Learning with Spark – Covers XGBoost, LightGBM, Spark NLP, Distributed Deep Learning with Keras, and More. Apress. ISBN 978-1-4842-5668-8. https://www.apress.com/gp/book/9781484256688 2021年6月15日閲覧。
外部リンク
- GitHub-microsoft / LightGBM
- LightGBM-Microsoft Research




