LightGBMの解説
関連記事: 決定木分析、ランダムフォレスト、Xgboost、CatBoost 「勾配ブースティング」の開発は順調に進んでいます。 勾配ブースティングは、Kaggleで上位ランキングを取った半数以上もの勝者が勾配ブースティングを利用しました。 この記事では、Microsoft開発の「勾配ブースティング」のlightGBMを解説します。 目次 1. LightGBMとは 2. LightGBMの特徴 3. LightGBMのパラメーター 4. 実験・コード __4.1 データ読み込み __4.2 xgb __4.3 lightgb __4.4 モデル評価 1. LightGBMとは LightGBM(読み:ライト・ジービーエム)決定木アルゴリズムに基づいた勾配ブースティング(Gradient Boosting)の機械学習フレームワークです。LightGBMは米マイクロソフト社2016年にリリースされました。前述した通り勾配ブースティングは複数の弱学習器(LightGBMの場合は決定木)を一つにまとめるアンサンブル学習の「ブースティング」を用いた手法です。 LightGBMは大規模なデータセットに対して計算コストを極力抑える工夫が施されています。この工夫により、多くのケースで他の機械学習手法と比較しても短時間でモデル訓練が行えます。 LightGBMはこの「Leaf-wise」という手法を採用しています。従来の「Level-wise」に比べてLightGBMが採用している「Leaf-wise」は訓練時間が短くなる傾向にあります。 2. LightGBMの特徴 モデル訓練に掛かる時間が短い メモリ効率が高い Leaf-Wiseのため推測精度が高い。 LightGBMは大規模データに適している手法 3. LightGBMのパラメーター ・booster [default=gbtree] モデルのタイプを選択: gbtree: ツリーベースのモデル gblinear: 線形モデル ・silent [default=0]: メッセージのモード:1=メッセージを表示しない 0 = メッセージを表示する ・nthread [デフォルトで利用可能なスレッドの最大数] スレッド数の設定 ・eta [default=0.3 GBMのlearning rate 各ステップの重みを縮小することにより、モデルをより堅牢にする …