wandb——pytorch可视化工具在运行中出现的问题

这篇博客介绍了在使用wandb进行模型可视化时遇到的网络错误问题,主要是由于服务器资源紧张导致的ReadTimeout。解决方案是在代码中设置环境变量,使模型离线运行wandb,避免在运行过程中上传数据。待模型完成后再手动上传结果,不影响使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

wandb是pytorch中常用的一种可视化工具,可以将我们模型中的一些参数(比如,loss函数值、AUC面积以及训练、验证和测试时一些数据)以图表的形式表示出来,能够方便大家直观地观察数据。但是使用wandb稍微有点麻烦,需要注册(这里可以直接授权用自己的GitHub账号登陆),每一次使用wandb在线运行模型的数据都将保存在wandb网址上,方便查看。

相信使用wandb的同学们大概率会遇到这个问题:

wandb: W&B API key is configured (use `wandb login --relogin` to force relogin)
wandb: Network error (ReadTimeout), entering retry loop.
wandb: Network error (ReadTimeout), entering retry loop

出现这个问题的原因是,使用wandb在线模式运行代码,服务器是一边运行我们的代码一边向wandb官网上传我们的数据,导致服务器显卡占用比特别大。尤其是学校里的服务器,一旦有其他同学在使用,运行带有wandb模块的代码(尤其这个模型数据集很大的情况)就很容易报这样的错。

解决办法:

在主函数下添加两行代码,使得模型离线运行wandb模块。

os.environ["WANDB_API_KEY"] = '+++++++++++' # 将引号内的+替换成自己在wandb上的一串值
os.environ["WANDB_MODE"] = "offline"   # 离线  (此行代码不用修改)

修改保存后,再运行就能正常了,此时模型就只会单纯地运行,不会一边运行一边上传数据。模型运行完,再按照提示输入指令即可将运行结果上传到wandb,不会产生任何影响。

希望能给大家一点帮助。

### 如何使用 WandB 工具 WandB 是一种强大的工具,专门设计用于帮助研究人员和开发者跟踪、可视化以及协作处理机器学习实验。以下是关于其功能和使用的详细介绍。 #### 安装与配置 为了开始使用 WandB,首先需要安装该库并完成基本配置。可以通过 Python 的包管理器 pip 来安装它: ```bash pip install wandb ``` 随后,在命令行界面执行 `wandb login` 命令来登录账户[^5]。这一步骤会引导用户通过浏览器获取一个 API token 并将其粘贴回终端中以完成身份验证过程。 #### 初始化项目 一旦成功登录后,可以在脚本或者 notebook 中初始化一个新的 WandB 运行实例: ```python import wandb # 启动一个新的训练 session, 将project参数设置为你想要的名字. run = wandb.init(project="my-test-project", entity="your_entity_name") ``` 这里需要注意的是,“entity” 参数代表团队名称或者是个人用户名;如果省略此选项,则默认采用当前用户的实体名[^2]。 #### 记录数据 在模型训练期间记录指标非常简单。只需调用 `log()` 方法即可上传任何你想保存的数据到云端服务器上供后续分析之用: ```python for epoch in range(epochs): loss = compute_loss() # Log metrics with wandb wandb.log({"loss": loss}) ``` 上述代码片段展示了如何每轮迭代结束之后都将损失值发送给 WandB[^1]。 #### 可视化结果 除了能够存储日志外,WandB 提供了一系列内置图表用来展示这些数值随时间变化的趋势图等等。而且还可以创建自定义面板满足特定需求下的多维度观察视角。 另外值得一提的功能就是即使处于离线模式下也能正常使用大部分特性——这意味着即便没有互联网连接也可以继续工作直到重新上线同步为止[^3]。 #### 结合框架集成 对于主流深度学习框架如 TensorFlow 和 PyTorch ,都有相应的插件可以直接无缝衔接起来减少额外编码量的同时提升效率 。更多细节可参照官方文档中的具体实现案例。 --- ###
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值