欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/132227253
WandB (Weights & Biases) 是在线的模型训练可视化工具,可以帮助跟踪机器学习项目,记录运行中的超参数和输出指标,可视化结果并共享结果,支持多种深度学习框架,如 PyTorch、TensorFlow、Keras 等,也可以与 AWS、GCP、Kubernetes、Azure等云平台配合使用。
WandB:https://wandb.ai/,注册即可使用。
统计已运行 epoch 数量,预估训练时间,查看 WandB,支持选择 epoch 或 step 或 trainer/global_step 等维度进行查看。
1. 时间计算
例如,运行时间 26h:
kubectl get podstrain-20230808-worker-0 1/1 Running 0 26h
train-20230808-worker-1 1/1 Running 0 26h
单步 step 运行时间,10 个 step,耗时1 min 20 s
,80s / 10 = 8s
,即 8 s/step
计算:
[1,1]<stderr>:2023-08-10 03:30:58,157 INFO 40 [train_openfold.py:206] step=11450
[1,0]<stderr>:2023-08-10 03:30:58,191 INFO 40 [train_openfold.py:206] step=11450
[1,0]<stderr>:2023-08-10 03:32:18,548 INFO 40 [train_openfold.py:206] step=11460
[1,1]<stderr>:2023-08-10 03:32:18,708 INFO 40 [train_openfold.py:206] step=11460
每个 epoch 需要训练 train_epoch_len=5000
个 step,2 个并行,即每个 epoch 耗时:
(5000 / 2) * 8 = 20000s
20000s / 3600s = 5.5h
那么累计运行,约 26h / 5.5h = 4.7 epoch,约 4~5 个 epoch 点,符合预期,即:
2. 步数计算
累计运行 step 是 11460 步,2卡并行合计,即:
11460 * 2 = 22920
每 5000 步是 1个 epoch,则绘制的点数是 4 个点,即:
22920 / 5000 = 4.5
3. WandB 配置
在日志中,查看 WandB 配置:
cat train_20230808.log | grep wandb
配置 WandB 在线,命令如下:
wandb online
# key 来自于官网注册
wandb login --relogin --cloud [your key]
信息中包括 2 个日志,同时进行缓存,1个是机器信息,1个是训练信息,即:
[1,0]<stderr>:wandb: Tracking run with wandb version 0.12.21
[1,0]<stderr>:wandb: Run data is saved locally in wandb/run-20230809_012556-2007pb1b
[1,0]<stderr>:wandb: Run `wandb offline` to turn off syncing.
[1,0]<stderr>:wandb: Syncing run dandy-pine-11
[1,0]<stderr>:wandb: ⭐️ View project at https://wandb.ai/[project]
[1,0]<stderr>:wandb: 🚀 View run at https://wandb.ai/[project]/runs/2007pb1b
4. 手动上传日志
遇到网络异常,即显示:
[1,0]<stderr>:wandb: Network error (ConnectTimeout), entering retry loop.
[1,1]<stderr>:wandb: Network error (ReadTimeout), entering retry loop.
则需要手动上传日志,找到日志中的 saved
地址,使用 sync 命令,同步日志,即:
[1,0]<stderr>:wandb: Run data is saved locally in wandb/run-20230809_012556-2007pb1bwandb sync wandb/run-20230809_012556-2007pb1b
日志访问路径,即:
[1,0]<stderr>:wandb: 🚀 View run at https://wandb.ai/[project]/runs/2007pb1b
再刷新网页,即可显示。