Skip to main content
このページでは、W&B を Ray Tune と併用して、ハイパーパラメーター調整の試行をトラッキングし、メトリクスをログし、Runs 間で実験結果を比較する方法を説明します。W&B では Ray 向けに 2 つの軽量なインテグレーションを提供しており、トレーニングワークフローに最適なものを選択できます。
  • WandbLoggerCallback 関数は、Tune にレポートされたメトリクスを自動的に W&B にログします。
  • setup_wandb() 関数は function API と組み合わせて使用でき、Tune のトレーニング情報を使って W&B Python SDK (wandb) を自動的に初期化します。run.log() を呼び出してトレーニングプロセスをログするなど、通常どおり W&B API を使用できます。

インテグレーションを設定する

このセクションでは、Tune の試行メトリクスを W&B に送信する最も直接的な方法である WandbLoggerCallback の設定方法を説明します。
W&B を設定するには、tune.run() の config パラメーターに wandb キーを渡します。使い方については、 を参照してください。 このインテグレーションでは、wandb 設定エントリの内容をキーワード引数として wandb.init() に渡します。ただし、WandbLoggerCallback 自体を設定する設定項目は除きます。

パラメーター

WandbLoggerCallback は次のパラメーターを受け取ります。
  • project (str): W&B の project 名。必須。
  • api_key_file (str): W&B APIキーを含む file へのパス。
  • api_key (str): W&B APIキー。api_key_file を設定する代わりに使用します。
  • excludes (list): ログから除外するメトリクスのリスト。
  • log_config (bool): results 辞書の config パラメーターをログするかどうか。デフォルトは False です。
  • upload_checkpoints (bool): True の場合、モデル チェックポイントをアーティファクトとしてアップロードします。デフォルトは False です。

setup_wandb

トレーニング関数内から W&B のログを直接制御したい場合は setup_wandb() を使用します。たとえば、Tune の report とあわせて、カスタムメトリクスを指定して run.log() を呼び出す場合です。
このユーティリティ関数は、Ray Tune で W&B を使用する際の初期化に役立ちます。基本的な使い方としては、トレーニング関数内で setup_wandb() を呼び出します。

コード例

エンドツーエンドの参考資料として、このインテグレーションの動作を示す次の例をご覧ください。