一个为深度学习设计的实验跟踪与可视化工具:
- 记录训练过程中的指标(Loss 等)
- 监控 CPU/GPU 使用率,显存占用等系统指标
使用方法
在本地安装 wandb:
pip install wandb第一次使用时需先在网站 wandb.ai 上注册账号。
然后在本地登录账号:
wandb login输入 API key 即可。
在代码中使用:
import wandb
import random
# 1. 初始化实验
# project: 项目名称(会自动在网页端创建)
# name: 本次实验的名称(可选,不填会自动生成随机名)
wandb.init(
project="my-first-wandb-project",
name="experiment_1",
# 2. 记录超参数 (Configuration)
# 将所有超参数存在 config 中,方便后续在网页端按参数筛选或对比
config={
"learning_rate": 0.01,
"epochs": 10,
"batch_size": 32,
"architecture": "CNN",
"dataset": "CIFAR-10"
}
)
# 获取 config 对象(如果后续代码需要用到超参数,直接从 wandb.config 读取)
config = wandb.config
# 模拟训练循环
for epoch in range(config.epochs):
# 模拟计算 loss 和 accuracy
loss = 1.0 / (epoch + 1) + random.random() * 0.1
acc = 0.6 + epoch * 0.03 + random.random() * 0.05
# 3. 记录指标 (Log Metrics)
# 核心方法!将字典传入,键是图表标题,值是数据
wandb.log({
"loss": loss,
"accuracy": acc,
"epoch": epoch
})
print(f"Epoch {epoch}: Loss={loss}, Acc={acc}")
# 4. 结束实验
wandb.finish()运行代码后会输出实验对应数据的网址。