Pytorch环境配置Tensorboard对训练进行实时可视化

本文详细介绍了在Pytorch环境下配置Tensorboard的过程,包括所需版本的确认、依赖包的安装及常见问题解决,如使用清华源镜像避免安装失败,以及如何通过命令行启动Tensorboard进行模型训练的可视化。
部署运行你感兴趣的模型镜像

Pytorch环境配置Tensorboard对训练进行实时可视化

这里主要介绍一下自己踩过的坑。

我自己的pytorch版本:

torchvision 0.6.1
pytorch 1.5.1 【GPU版本】

在该版本下,训练过程如果需要可视化,需要安装两个东西。推荐使用pip安装。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorboardx
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorboard

从清华源镜像完成安装完成后,tensorboard 版本为 2.3.0,tensorboardx 版本为 2.1。

这里注意,如果报错了建议卸载重新安装;注意一定使用清华源镜像;注意在一个网速好的环境不然会出现“read time out” 的错误。

安装完成后,如何进行基础操作的理解与测试呢?这里推荐
https://github.com/lanpa/tensorboardX

这里有一个demo程序。复制粘贴下来。
对照Github作者写的一些基础包,都安装好。【这些包很小,安装很快】
运行该demo。
更改conda路径至当前程序所在文件夹,然后在conda的cmd栏键入“tensorboard --logdir runs”命令,按照提示在浏览器中打开Tensorboard即可。

关于一些基础操作可以见:
https://www.pytorchtutorial.com/pytorch-builtin-tensorboard/

到了这里,如果出现了

Tensorboard 既不是内部命令也不是外部命令

提示,那么需要将“Tensorboard.exe”所在的路径加入到系统的环境变量中。也就是“PATH”中。运行窗口(WIN+R)输入“sysdm.cpl”,打开“系统属性”选择“高级”选择“环境变量”即可。

后记:
Tensorboard装了一下午。有的人说Tensorflow,tensorboard,tensorboardX都需要,有的人说只需要其中一个。这就很晕。加上网速不好,下个包有时候就报一堆红错,心情很差,搞了半天。

最近压力比较大,实在是头秃的八月。总感觉自己孤立无援,整个实验室也就我这么一个人在做这个方向。整个人陷入不断的怀疑与自我否定,精神状态也不是很好。

phd is a journey…

在这里插入图片描述

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

### PyTorch 中使用 TensorBoard 进行模型训练可视化的教程 在 PyTorch 中,TensorBoard 是一种强大的工具,用于可视化模型的训练过程、数据分布以及网络结构。以下是关于如何配置和使用 TensorBoard 的详细说明。 #### 配置环境 为了使用 TensorBoard,在项目中需要安装 `torch.utils.tensorboard` 模块。可以通过以下命令安装必要的依赖项: ```bash pip install torch tensorboard ``` #### 初始化 SummaryWriter TensorBoard 的核心组件是 `SummaryWriter`,它可以记录日志并将其保存到指定路径供后续查看。初始化方式如下所示: ```python from torch.utils.tensorboard import SummaryWriter writer = SummaryWriter('runs/experiment_1') # 'runs/' 是默认的日志存储目录 ``` 此处创建了一个名为 `experiment_1` 的实验日志文件夹[^1]。 #### 记录标量值 在模型训练过程中,通常会关注损失函数的变化趋势以及其他指标的表现。可以利用 `add_scalar()` 方法将这些数值写入 TensorBoard 日志中: ```python for epoch in range(num_epochs): loss = train_one_epoch(model, optimizer, criterion, data_loader) writer.add_scalar('Loss/train', loss, epoch) # 添加每轮次的训练损失 if validate: val_loss = validate_model(model, criterion, val_data_loader) writer.add_scalar('Loss/validation', val_loss, epoch) # 添加验证集上的损失 ``` 上述代码片段展示了如何分别记录训练集和验证集上每次迭代后的损失情况[^2]。 #### 绘制图像与网格图片 除了简单的标量外,还可以通过 TensorBoard 展示输入样本或者中间层特征图的形式。例如绘制单张或多张图像至面板: ```python import torchvision.transforms.functional as F img_grid = make_grid(data_batch[:64]) # 假设 batch size 至少为 64 writer.add_image('images', img_grid, global_step=0) # 或者逐帧加入单独的图像 for i, image_tensor in enumerate(data_batch[:10]): writer.add_image(f'image_{i}', F.to_pil_image(image_tensor), global_step=i) ``` 此部分实现了批量处理原始数据并将它们作为一组展示给用户的功能[^3]。 #### 显示计算图 对于理解复杂的神经网络架构非常有帮助的是能够看到整个前向传播流程中的变量关系。借助于 `add_graph()` 函数可轻松完成这一目标: ```python dummy_input = torch.randn(1, input_channels, height, width).to(device) writer.add_graph(model, dummy_input) ``` 这里构建了一组虚拟的数据送入模型之中,并把得到的结果连同定义好的操作一起提交给了 TensorBoard 来渲染成图形界面。 #### 启动 TensorBoard 并访问 Web UI 最后一步就是启动本地服务器以便观察所有的统计数据和其他信息。运行下列任一指令开启服务端口监听模式: ```bash tensorboard --logdir=runs/ # 如果遇到冲突可以选择其他开放端口号比如8097代替6006 tensorboard --logdir=runs/ --port=8097 ``` 打开浏览器进入地址 http://localhost:6006 即可见到完整的交互式仪表盘页面[^4]。 --- ###
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值