著者:毛利拓也
本書は実践知を基にLightGBMの仕組みや実務への活用方法をハンズオン形式で学ぶ技術書です。LightGBMはレコード数が1,000万件を越える大規模データでも数時間でモデル学習でき、予測精度が高く、実装がシンプルという開発運用に適した特徴を兼ね揃えた機械学習アルゴリズムです。 本書の目標は以下の2つです。目標1 LightGBMの理解ためには、逆説的ですが「LightGBM以外」の仕組みを具体的に理解する必要があると、筆者は考えています。そこで、本書は機械学習の基礎となる「線形回帰」、勾配ブースティングの基礎となる「決定木(回帰木)」の仕組みを最初に整理し、続いて、回帰木→勾配ブースティング→XGBoost→LightGBMとアルゴリズムごとの工夫(前提条件)を数式を交えて理解する構成にしています。目標2 実務活用は探索的データ解析(EDA)、クロスバリデーション、特徴量エンジニアリング、ハイパーパラメータ最適化の精度改善の実装を通じて、実務で役立つ考え方や運用で注意すべき点を学べるようにハンズオンします。また、実務は精度の改善と並んで、予測値の説明性が大事になります。そこで、予測値を特徴量の貢献度で分解し、予測値の原因を分析します。 |
正則化:正則化はパラメータの値が大きくなると、目的関数の値が最小値から遠ざかるような制約を課します。この制約はパラメータが自由に大きな値を取ることかを押さえるため、モデルが複雑になることを防ぎます。
L2正則化:Ridge回帰
L1正則化:Lasso回帰
L2正則化とL1正則化はXGBoostやLightGBMの勾配ブースティングでも利用でき、モデルの学習時にハイパーパラメータλとαの強さを指定します。(p.59)
SHAP(SHapley Additive exPlannations)はレコード1件ごとの予測値と平均的な予測値の差分を計算し、差分を特徴量ごとに分解することで、どの特徴量が予測値に貢献するかを教えてくれます。(p.110)
ホールドアウト法でデータセットを学習データ、検証データ、テストデータに3分割できると、検証データをハイパーパラメータ最適化に使用できます。その結果、LightGBMは検証データの誤差が低下しなくなったら学習を自動的に停止するアーリーストッピングという手法が使えます。アーリーストッピングは、勾配ブースティングやニューラルネットワークなどを繰り返して学習するアルゴリズムで有効です。学習が自動的に停止するので、ブースティング回数などのイテレーション回数のハイパーパラメータを最適化できます。(pp.176-177)
2変数を組合せて新規特徴量を追加する場合、データ型の組合せで、次の3パターンに整理できます。(p.242)
・数値変数×数値変数
・数値変数×カテゴリ変数
・カテゴリ変数×カテゴリ変数
久しぶりに機械学習系の本を読みましたが、モデル作成のためのプロセスが丁寧に書かれていて、それなりに経験の積んだ機械学習エンジニアの方でも何かしら、見落としてきたことや再発見もあるかもしれません。