Documentation
搜索文档…
Pytorch
W&B为PyTorch提供了一流的支持。要自动记录梯度(Gradient)并存储网络拓扑,你可以调用watch并传入你的PyTorch 模型。
1
import wandb
2
wandb.init(config=args)
3
4
# Magic
5
wandb.watch(model)
6
7
model.train()
8
for batch_idx, (data, target) in enumerate(train_loader):
9
output = model(data)
10
loss = F.nll_loss(output, target)
11
loss.backward()
12
optimizer.step()
13
if batch_idx % args.log_interval == 0:
14
wandb.log({"loss": loss})
Copied!
梯度、指标和图(Graph)不会被记录,直到wandb.log在forward和bacward通过后被调用。
请参阅colab笔记本 ,以了解将wandb与PyTorch集成的端到端示例,包括一个视频教程 。你也可以在我们的示例项目部分找到更多示例。

选项

默认,钩子只记录梯度。
参数
选项
log
  • all: 记录梯度和参数直方图
  • gradients (默认)
  • parameters (模型的权重)
  • None
log_freq
整数(默认1000): 记录梯度之间的步(step)数

图像

你可将带有图像数据的PyTorch tensors传入 wandb.Image 和torchvision utils,将用于自动记录它们。
要记录图像并在媒体(Media)面板中查看它们,你可以使用如下语法:
1
wandb.log({"examples" : [wandb.Image(i) for i in images]})
Copied!

多个模型

如果你需要在同一个脚本中跟踪多个模型,你可以分别在每个模型上调用wandb.watch() 。

示例

我们已经为你创建了一些示例,以了解集成的工作原理:
  • 在Google Colab中运行: 一个简单的笔记本示例让你入门
  • Github上的示例: 一个Python脚本中的MNIST示例
  • Wandb 仪表盘: 在W&B上查看结果
最近更新 7mo ago