wandb:Weights & Biases 超越TensorBoard的深度學習訓練Log紀載工具
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上試試看
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})