View the source code
wandb.init()を使用してrunを作成します:
wandb.Runがあり、wandb.runとしてアクセス可能です:
wandb.logでログに記録したものはすべてそのrunに送信されます。
同じスクリプトまたはノートブックで複数のrunを開始したい場合は、進行中のrunを終了する必要があります。Runはwandb.finishで終了するか、withブロック内で使用することで終了できます:
wandb.initでrunを作成する方法についてはドキュメントを参照するか、
こちらのガイドをご覧ください。
分散トレーニングでは、ランク0のプロセスで単一のrunを作成してそのプロセスからのみ情報をログするか、各プロセスでrunを作成してそれぞれからログを取り、wandb.initのgroup引数で結果をグループ化することができます。W&Bを使用した分散トレーニングの詳細については、
こちらのガイドをご覧ください。
現在、wandb.Apiには並行するRunオブジェクトがあります。最終的にこれら2つのオブジェクトは統合される予定です。
メソッド
alert
ソースを見る
define_metric
ソースを見る
wandb.log()で記録されたメトリクスをカスタマイズします。
detach
ソースを見る
display
ソースを見る
finish
ソースを見る
Runの状態:
- Running: データをログしているおよび/またはハートビートを送信しているアクティブなrun。
- Crashed: 予期せずハートビートの送信を停止したrun。
- Finished: すべてのデータが同期されて正常に完了したrun(
exit_code=0)。 - Failed: エラーで完了したrun(
exit_code!=0)。
finish_artifact
ソースを見る
get_project_url
ソースを見る
get_sweep_url
ソースを見る
get_url
ソースを見る
join
ソースを見る
finish()のための非推奨のエイリアス - 代わりにfinishを使用してください。
link_artifact
ソースを見る
link_model
ソースを見る
ステップ:
- ‘name’モデルアーティファクトがログされているか確認します。そうであれば、‘path’にあるファイルに一致するアーティファクトバージョンを使用するか新しいバージョンをログします。そうでなければ、‘path’の下のファイルを新しいモデルアーティファクト’type’の’type’としてログします。
- ‘model-registry’プロジェクトに’registered_model_name’という名前の登録モデルが存在するか確認します。存在しない場合、‘registered_model_name’という名前の新しい登録モデルを作成します。
- モデルアーティファクト’name’のバージョンを登録モデル’registered_model_name’にリンクします。
- 新しくリンクされたモデルアーティファクトバージョンに’aliases’リストのエイリアスを添付します。
例:
log
ソースを見る
logを使用してrunからデータ(例えば、スカラー、画像、ビデオ、ヒストグラム、プロット、テーブルなど)をログに記録します。
ログ記録ガイドを参照し、
ライブの例、コードスニペット、ベストプラクティスなどを確認してください。
最も基本的な使用法はrun.log({"train-loss": 0.5, "accuracy": 0.9})です。
これは、損失と精度をrunの履歴に保存し、これらのメトリクスのsummaryの値を更新します。
ワークスペースでログしたデータをwandb.aiで可視化したり、自分でホストするW&Bアプリのインスタンスでローカルに可視化したり、データをエクスポートしてローカルで可視化、探索したり、例えば、Jupyter ノートブックで公開APIを使用して行うことができます。
ログした値はスカラーである必要はありません。任意のwandbオブジェクトのログがサポートされています。
例えば、run.log({"example": wandb.Image("myimage.jpg")})は、W&B UIにうまく表示される例の画像のログを記録します。
さまざまにサポートされているタイプについては、参照ドキュメントを参照するか、logging ガイドで、3D分子構造やセグメンテーションマスク、PR曲線、ヒストグラムの例を確認してください。
wandb.Tableを使用して構造化データをログできます。詳細については、テーブルログのガイドをご覧ください。
W&B UIは、メトリクスを名前に含むスラッシュ(/)を含むセクションに整理し、名前の最後のスラッシュ前のテキストでセクション名を使用します。例えば、次の例では、「train」と「validate」という2つのセクションがあります:
run.log({"a/b/c": 1})は「a/b」という名前のセクションを生成します。
run.logは1秒に数回以上呼び出す目的には使用されていません。
最適なパフォーマンスのために、N回のイテレーションごとに一度ログを記録するか、複数のイテレーションにわたってデータを収集し、単一のステップでログを記録することをお勧めします。
W&Bステップ
基本的な使用法では、logを呼び出すたびに新しい「ステップ」が作成されます。
ステップは常に増加する必要があり、過去のステップにログを記録することはできません。
多くの場合、W&Bステップをタイムスタンプと同様に扱う方がトレーニングステップとして扱うより良いです。
stepおよびcommitパラメータを使用して、同じステップにログを記録するために複数のlog呼び出しを使用することができます。
以下はすべて同等です:
例:
詳細でより多くの例は、 このログ記録ガイドをご覧ください。基本的な使用法
インクリメンタルログ
ヒストグラム
NumPyから画像
PILから画像
NumPyからビデオ
Matplotlibプロット
PR曲線
3Dオブジェクト
log_artifact
ソースを見る
log_code
ソースを見る
.pyで終わるすべてのファイルをログに記録します。
例:
基本的な使用法log_model
ソースを見る
例:
mark_preempting
ソースを見る
project_name
ソースを見る
restore
ソースを見る
save
ソースを見る
saveが呼び出された時点でUnix glob(例えば「myfiles/*」)が展開され、policyに関係なく新しいファイルは自動的にピックアップされることはありません。
saveを呼び出した時点でUnix glob(例えば”myfiles/*“)は、policyに関係なく展開されます。特に、新しいファイルは自動的に取得されません。
アップロードされるファイルのディレクトリ構造を制御するためにbase_pathを指定できます。これはglob_strの接頭辞であり、その下のディレクトリ構造は保持されます。例を通じて最適に理解できます:
base_pathがない場合は、上記の例のように1つのディレクトリレベルが保持されます。
status
ソースを見る
to_html
ソースを見る
unwatch
ソースを見る
upsert_artifact
ソースを見る
run.finish_artifact()を呼び出す必要があります。
これは分散ジョブが同じアーティファクトにすべて貢献する必要がある場合に役立ちます。
use_artifact
ソースを見る
downloadまたはfileを呼び出して、コンテンツをローカルに取得します。