wandb) には、XGBoost によるトレーニングのメトリクス、設定、保存済みの booster をログする WandbCallback コールバックが用意されています。XGBoost の WandbCallback の出力を表示した W&B Dashboard のライブ例をご覧ください。

はじめに
XGBoost のメトリクス、設定、booster モデルを W&B にログするには、XGBoost にWandbCallback を渡します。
WandbCallback リファレンス
機能
WandbCallback を XGBoost モデルに渡すと、次の処理が行われます。
- booster のモデルの設定を W&B にログします。
rmseや精度など、XGBoost が収集した評価メトリクスを W&B にログします。- XGBoost が収集したトレーニングメトリクスをログします (
eval_setにデータを指定した場合) 。 - 最良のスコアと最良の反復処理をログします。
- トレーニング済みモデルを保存し、W&B Artifacts にアップロードします (
log_model = Trueの場合) 。 log_feature_importance=True(デフォルト) の場合、特徴量の重要度のプロットをログします。define_metric=True(デフォルト) の場合、最良の評価メトリクスをwandb.Run.summaryに取得します。
引数
-
log_model: (boolean) True の場合、モデルを保存して W&B Artifacts にアップロードします。 -
log_feature_importance: (boolean) True の場合、特徴量の重要度の棒グラフをログします。 -
importance_type: (str) ツリーモデルの場合は{weight, gain, cover, total_gain, total_cover}のいずれかを指定します。線形モデルの場合はweightを指定します。 -
define_metric: (boolean) True (デフォルト) の場合、トレーニングの最後のステップではなく、最良のステップにおけるモデル性能をrun.summaryに記録します。
Sweeps でハイパーパラメーターをチューニングする
W&B Sweeps は、ハイパーパラメーターを検証する実験の設定、オーケストレーション、分析を行うためのツールキットです。このセクションでは、XGBoost インテグレーションと W&B Sweeps を組み合わせて、さまざまなハイパーパラメーター設定を探索する方法を説明します。 モデル性能を向上させるには、木の深さや学習率などのハイパーパラメーターをチューニングします。 こちらの XGBoost と Sweeps の Python スクリプトもお試しください。