init
新しい run を開始し、W&B でトラッキングとログを行います。
init(
    job_type: Optional[str] = None,
    dir: Optional[StrPath] = None,
    config: Union[Dict, str, None] = None,
    project: Optional[str] = None,
    entity: Optional[str] = None,
    reinit: Optional[bool] = None,
    tags: Optional[Sequence] = None,
    group: Optional[str] = None,
    name: Optional[str] = None,
    notes: Optional[str] = None,
    magic: Optional[Union[dict, str, bool]] = None,
    config_exclude_keys: Optional[List[str]] = None,
    config_include_keys: Optional[List[str]] = None,
    anonymous: Optional[str] = None,
    mode: Optional[str] = None,
    allow_val_change: Optional[bool] = None,
    resume: Optional[Union[bool, str]] = None,
    force: Optional[bool] = None,
    tensorboard: Optional[bool] = None,
    sync_tensorboard: Optional[bool] = None,
    monitor_gym: Optional[bool] = None,
    save_code: Optional[bool] = None,
    id: Optional[str] = None,
    fork_from: Optional[str] = None,
    resume_from: Optional[str] = None,
    settings: Union[Settings, Dict[str, Any], None] = None
) -> Union[Run, RunDisabled]
MLトレーニングパイプラインでは、トレーニングスクリプトおよび評価スクリプトの最初に wandb.init() を追加し、各部分を W&B で run としてトラッキングすることができます。
wandb.init() はバックグラウンドプロセスを新しく起動して run にデータをログし、デフォルトで wandb.ai にデータを同期します。これによりリアルタイムの可視化が可能です。
wandb.log() でデータをログする前に、wandb.init() を呼び出して run を開始します。
import wandb
wandb.init()
# ... メトリクスの計算やメディアの生成
wandb.log({"accuracy": 0.9})
wandb.init() は run オブジェクトを返し、wandb.run からもアクセス可能です。
import wandb
run = wandb.init()
assert run is wandb.run
スクリプトの最後で wandb.finish を自動的に呼び出して、run の終了とクリーンアップを行います。ただし、子プロセスから wandb.init を呼び出す場合は、子プロセスの終了時に明示的に wandb.finish を呼び出す必要があります。
wandb.init() の使用方法の詳細な例については、ガイドとFAQをご覧ください。
| 引数 | |
|---|---|
| project | (str, optional) 新しい run を送信するプロジェクトの名前。プロジェクトが指定されない場合、run は "Uncategorized" プロジェクトに配置されます。 | 
| entity | (str, optional) run を送信するユーザー名またはチーム名。この entity は run を送信する前に存在している必要があるため、UIでアカウントまたはチームを作成してください。entity を指定しない場合、run はデフォルト entity に送信されます。デフォルト entity は 設定 で変更できます。 | 
| config | (dict, argparse, absl.flags, str, optional) wandb.configを設定するための辞書形式のオブジェクト。モデルのハイパーパラメータやデータ前処理ジョブの設定などを保存します。この config は UI のテーブルに表示され、グループ化、フィルタリング、ソートが可能です。キーには.を含めず、値は 10 MB 以下である必要があります。dict, argparse, absl.flags の場合:wandb.configオブジェクトにキーバリューペアをロードします。str の場合: その名前の yaml ファイルを探し、そのファイルから config をロードします。 | 
| save_code | (bool, optional) メインスクリプトまたはノートブックを W&B に保存します。実験の再現性を向上させ、UIで実験間のコードの差分を確認するのに役立ちます。デフォルトではオフですが、設定ページ でデフォルトの挙動をオンに変更できます。 | 
| group | (str, optional) 個別の run を大規模な実験に整理するためのグループを指定します。例えば、交差検証を行う場合や、異なるテストセットに対してモデルをトレーニングおよび評価する複数のジョブがある場合などです。詳しくは run のグループ化に関するガイド を参照してください。 | 
| job_type | (str, optional) run のタイプを指定します。例えば、train と eval など、グループ内の類似した run をフィルタリングおよびグループ化するのに役立ちます。 | 
| tags | (list, optional) この run のタグのリスト。タグは run を整理するのに役立ちます。 wandb.init()に渡したタグによって run のタグが書き換えられます。再開した run にタグを追加したい場合は、wandb.init()の後にrun.tags += ["new_tag"]を使用します。 | 
| name | (str, optional) UI でこの run を識別するための短い表示名。デフォルトではランダムな2語の名前が生成され、表とチャートで簡単にクロスリファレンスできます。 | 
| notes | (str, optional) run の長い説明。例: -mコミットメッセージのようなもの。 | 
| dir | (str または pathlib.Path, optional) メタデータが保存されるディレクトリへの絶対パス。デフォルトは ./wandbディレクトリです。 | 
| resume | (bool, str, optional) 再開の挙動を設定します。オプション: "allow","must","never","auto"またはNone。デフォルトはNone。詳しくは run の再開に関するガイド を参照してください。 | 
| reinit | (bool, optional) 同じプロセス内で複数の wandb.init()呼び出しを許可します。デフォルトはFalse。 | 
| magic | (bool, dict, または str, optional) スクリプトを自動インストルメントするかどうかを設定します。デフォルトは False。辞書、json 文字列、または yaml ファイル名も渡すことができます。 | 
| config_exclude_keys | (list, optional) wandb.configから除外するキーのリスト。 | 
| config_include_keys | (list, optional) wandb.configに含めるキーのリスト。 | 
| anonymous | (str, optional) 匿名データのログを制御します。オプション: - "never"(デフォルト): run をトラッキングする前に W&B アカウントにリンクする必要があります。 -"allow": ログインしているユーザーは自分のアカウントで run をトラッキングできますが、W&B アカウントを持っていないユーザーも UI でチャートを見ることができます。 -"must": run を匿名アカウントに送信します。 | 
| mode | (str, optional) "online","offline"または"disabled"に設定できます。デフォルトは online です。 | 
| allow_val_change | (bool, optional) 一度設定されたキーの後に config の値を変更できるかどうか。デフォルトは、config 値が上書きされると例外をスローします。 (スクリプトではデフォルトで False、Jupyter ではTrue) | 
| force | (bool, optional) Trueの場合、W&B にログインしていない場合にスクリプトがクラッシュします。Falseの場合、W&B にログインしていない場合はオフラインモードでスクリプトを実行します。デフォルトはFalse。 | 
| sync_tensorboard | (bool, optional) tensorboard または tensorboardX から wandb のログを同期し、関連するイベントファイルを保存します。デフォルトは Falseです。 | 
| monitor_gym | (bool, optional) OpenAI Gym 環境で動画を自動的にログします。デフォルトは False。詳しくは このインテグレーションに関するガイド を参照してください。 | 
| id | (str, optional) 再開に使用するこの run の一意の ID。プロジェクト内で一意である必要があり、run を削除した場合は再利用できません。 ID に /\#?%:などの特殊文字を含めることはできません。詳しくは run の再開に関するガイド を参照してください。 | 
| fork_from | (str, optional) {run_id}?_step={step} の形式で、以前の run から新しい run をフォークする瞬間を記述した文字列。この形式で新しい run を作成し、指定された瞬間に前の run のログ履歴を引き継ぎます。対象の run は現在のプロジェクトに存在している必要があります。例: fork_from="my-run-id?_step=1234"。 | 
例:
run のログ場所を設定
run のログ場所を変更することができます。Git の組織、リポジトリ、およびブランチを変更するのと同じように:
import wandb
user = "geoff"
project = "capsules"
display_name = "experiment-2021-10-31"
wandb.init(entity=user, project=project, name=display_name)
run に関するメタデータをconfigに追加
ハイパーパラメータなどのメタデータを run に追加するために、config キーワード引数として辞書形式のオブジェクトを渡します。
import wandb
config = {"lr": 3e-4, "batch_size": 32}
config.update({"architecture": "resnet", "depth": 34})
wandb.init(config=config)
| 例外 | |
|---|---|
| Error | run の初期化中に未知のエラーまたは内部エラーが発生した場合。 | 
| AuthenticationError | ユーザーが有効な認証情報を提供できなかった場合。 | 
| CommError | WandB サーバーとの通信に問題があった場合。 | 
| UsageError | ユーザーが無効な引数を提供した場合。 | 
| KeyboardInterrupt | ユーザーが run を中断した場合。 | 
| 戻り値 | |
|---|---|
| Runオブジェクト。 |