LightGBM

Light Gradient Boosting Machine

LightGBM(Light Gradient Boosting Machine)とは、Microsoftが開発した勾配ブースティングフレームワークです。大規模データセットにおいて高速かつメモリ効率の良い学習を実現し、表形式データの機械学習で最も人気のあるライブラリの一つです。

LightGBMの技術革新

LightGBMは2つの革新的な技術を導入しています。GOSS(Gradient-based One-Side Sampling)は勾配の大きなサンプルを重点的に使用し、EFB(Exclusive Feature Bundling)は排他的な特徴量をまとめることで、学習速度を大幅に向上させています。

表:LightGBMの要点まとめ
ひとことで言うとXGBoostよりさらに高速・省メモリな勾配ブースティングのライブラリ。
何がうれしいか大量データでも速く、カテゴリ変数をそのまま扱える。
注意点データが少ないと過学習しやすい。葉の数の上限設定が重要。

Leaf-wiseな木の成長

従来の手法がLevel-wise(層ごと)に木を成長させるのに対し、LightGBMはLeaf-wise(葉ごと)に損失の減少が最も大きい葉を分割します。これにより効率的な学習が可能ですが、過学習のリスクも高まるため最大深さの制限が重要です。

図:LightGBMが速い理由
1値をビンにまとめる連続値を階級に離散化
▶
2葉単位で成長効果の大きい枝を優先
▶
3分割探索が高速候補が大幅に減る
▶
4省メモリで大量処理数百万行でも実用的

カテゴリ特徴量の直接サポート

LightGBMはカテゴリ変数をワンホットエンコーディングなしで直接扱えるため、前処理の手間が省け、メモリ効率も向上します。