2024.5.21 ハイパーパラメータの保持【wandb】
Weights & Biasis社が提供する機械学習の支援システム
モデルの学習過程の記録や性能評価、モデル・データセットのバージョン管理、可視化などを行うことができる。
まずは公式サイトにログインし、APIキーを取得する。Googleアカウントが利用できる。
https://wandb.ai/site
簡単な例
code:wandb_config01.py
import wandb
x = 10
y = 1,2,3
z = 'Moji'
wandb.login()
wandb.init(project='train_takalab')
wandb.config.X = x
wandb.config.Y = y
wandb.config.Z = z
wandb.finish()
login関数で実行中のpytonプログラムからWEB上のシステムにログインする。
initメソッドでプロジェクト名を指定する。既存のプロジェクトを指定することもできるし、存在しないプロジェクト名が指定されれば、新規に作成される。
プロジェクトの一覧
https://scrapbox.io/files/664c09e72fcd0b001d0b472f.png
プロジェクトを選択した様子、左のペインにプログラムの実行結果がRunという単位で保持されている。
https://scrapbox.io/files/664c0a01d8ed34001d24c596.png
上のサンプルではハイパーパラメータのみを記録しているので、ログが無いと表示されている。
https://scrapbox.io/files/664c0b202268de001d468d41.png
ハイパーパラメータはoverviewから確認できる。
https://scrapbox.io/files/664c0d80f1b29a001cca837f.png
ハイパーパラメータはinitする際に与えることもできる。名前付き引数configに辞書として与えればよい。
code:wandb_config02.py
import wandb
x = 10
y = 1,2,3
z = 'Moji'
cfg = {'X':x, 'Y':y, 'Z':z}
wandb.login()
wandb.init(
project = 'train_takalab',
config = cfg
)
wandb.finish()