盆暗の学習記録

データサイエンス 、ソフトウェア開発、ビジネスについて日々学んだことの備忘録としていく予定です。初心者であり独学なので内容には誤りが含まれる可能性が大いにあります。

GBDT

LightGBMの理論のまとめ

今更ながらLightGBMの論文を読んだのでその時のメモを残しておきます。 ※GPUでの計算への適応など、計算機での活用に関する技術については省略しています。 要約 LightGBMが使う既存の技術 pre-pruning early stopping問題 best-first (leaf-wise) tree hist…

LightGBMにおける欠損値の扱い

Githubでの議論などを見てわかったことをメモしておきます。 前提 学習時の欠損値の取り扱い numerical featureの欠損値 categorical featureの欠損値 予測時の欠損値の取り扱い numerical featureの欠損値 categorical featureの欠損値 まとめると 考察 ゼ…

スパースなデータをXGBoost.DMatrixに入れるときはpd.DataFrame/np.arrayを使ってはいけない

XGBoostにはDMatrixという独自のデータ保持用クラスがあります。Documentの説明では optimized for both memory efficiency and training speed と書いてあり、私は「自動で疎行列クラスとかにしてくれるんだろうなぁ」と思っていたのですが、そうでもない様…

XGBoostで自作の目的関数を使う

XGBoostの素敵なポイントの一つは、自分で定義した関数を目的関数に使うことができる点です。 でもどういう関数にしたらよいのかがわからなくて過去に戸惑ったことがあるのでメモしておきます。(詳しいやり方はXGBoostのdocumentationに書いてあります) 定…