wandb:Weights & Biases 超越TensorBoard的深度學習訓練Log紀載工具

Yanwei Liu
6 min readMar 8, 2021

--

2021/03/21更新來自CS329S課程的介紹投影片

介紹

本段落之介紹取自於Wandb:模型訓練最強輔助,僅作筆記快速複習,非本人撰寫。

復現模型:Wandb更有利於復現模型。
這是因為Wandb不僅記錄指標,還會記錄超參數和代碼版本。
自動上傳雲端:
如果你把項目交給同事或者要去度假,Wandb可以讓你便捷地查看你製作的所有模型,你就不必花費大量時間來重新運行舊實驗。
快速、靈活的集成:
只需5分鐘即可把Wandb加到自己的項目。(可用於Keras, PyTorch, TensorFlow)
下載Wandb免費的開源Python包,然後在代碼中插入幾行,以後你每次運行模型都會得到記錄完備的指標和記錄。
集中式指示板:
Wandb提供同樣的集中式指示板。不管在哪裡訓練模型,不管是在本地機器、實驗室集群還是在雲端實例;
這樣就不必花時間從別的機器上複製TensorBoard文件。
強大的表格:
對不同模型的結果進行搜索、篩選、分類和分組。
可以輕而易舉地查看成千上萬個模型版本,並找到不同任務的最佳模型。
而TensorBoard本身不適合大型項目。

參考資料

費用

個人使用免費;團隊使用需付費

使用流程

先到官方網站註冊帳號

$ pip install wandb
$ wandb login
#此時會要求貼上api,到https://wandb.ai/authorize取得即可

在Google Colab上試試看

https://colab.research.google.com/github/wandb/examples/blob/master/colabs/intro/Intro_to_Weights_%26_Biases.ipynb

Keras

# Import W&B
import wandb
from wandb.keras import WandbCallback

# Step1: Initialize W&B run
wandb.init(project='project_name')

# 2. Save model inputs and hyperparameters
config = wandb.config
config.learning_rate = 0.01

# Model training code here ...

# Step 3: Add WandbCallback
model.fit(X_train, y_train, validation_data=(X_test, y_test),
callbacks=[WandbCallback()])

PyTorch

import wandb

# 1. Start a new run
wandb.init(project="gpt-3")

# 2. Save model inputs and hyperparameters
config = wandb.config
config.dropout = 0.01

# 3. Log gradients and model parameters
wandb.watch(model)
for batch_idx, (data, target) in enumerate(train_loader):
...
if batch_idx % args.log_interval == 0:
# 4. Log metrics to visualize performance
wandb.log({"loss": loss})

--

--

No responses yet