pytorch:本地使用tensorboard可视化

摘要: tensorboard是tensorflow用来可视化训练和测试过程的模块,而pytorch并没有可视化模块,但是pytoch=1.2.0版本以上开始支持tensorboard。

一、 安装tensorboard

直接pip即可:

pip install tensorboard

这里注意,使用pytorch,并不需要额外安装tensorflow。

二、 使用tensorboard

记录训练的loss和测试的accuracy:

1、首先导入模块:

from torch.utils.tensorboard import SummaryWriter

2、初始化:

writer = SummaryWriter('./log')

记录的内容保存在文件夹log里面。

3、记录内容:

writer.add_scalar('loss', loss, step)
writer.add_scalar('accuracy', accuracy, step)

这里step是指步数,loss为训练误差,accuracy为测试准确率,按自己需求记录即可。

4、关闭:

writer.close()

在文件夹会log里会生成events.out.tfevents的文件,每次运行,如:
在这里插入图片描述

三、可视化

1、打开终端,写命令行

在本地打开终端,进入虚拟环境,写以下命令行:

tensorboard --logdir=./log

这里需要注意一下,log为刚才保存文件的文件夹,可以是相对路径,也可以是绝对路径,只要稍微注意格式即可,以下有几个注意事项:
(1)、路径./log不要加双引号,,如:–logdir=“./log”
(2)、不要使用双等号,有些博客使用了双等号,其实是错误的,如:–logdir==./log
以上写法均是错误的,正确的写法有两种,一种就是上面例子使用单个等号,另外一种是使用空格,如:

tensorboard --logdir ./log

参数除了logdir外,常用的还有:host、port。
host:ip地址
port: 端口
tensorboard的默认是:

tensorboard --logdir=./log --host=127.0.0.1 --port=6006

有些博客说预防端口被占用,常常修改端口,其实一般不需要,host和port默认就好,只需写logdir就好,即按照开头那样写即可,回车后,有:
在这里插入图片描述
注意:这里需要注意一下,不要着急按下”Ctrl+C“,不然无法打开http://localhost:6006/,当不需要打开http://localhost:6006/,才按下”Ctrl+C“,即断开端口。

2、打开浏览器,打开tensorboard可视化

在这里插入图片描述

当不需要可视化了,可以去终端按下”Ctrl+C“,关闭端口。

总结:本人使用pytorch调用tensorboard来可视化,踩了比较多坑,所以写成博客,一来总结一下经验,预防下次使用时忘记了;二来希望帮助别人,少走弯路,谢谢!

使用PyTorch可视化TensorBoard的步骤如下: 1. 安装TensorBoard ``` pip install tensorboard ``` 2. 在PyTorch中创建SummaryWriter对象 ```python from torch.utils.tensorboard import SummaryWriter # 创建SummaryWriter对象 writer = SummaryWriter('runs/experiment_name') ``` 其中,`experiment_name`为实验名称,可以自定义。这里通过`runs`目录来存储实验数据。 3. 在训练或验证的过程中添加可视化代码 在代码中使用`writer.add_scalar()`方法来添加可视化代码,方法的参数包括要可视化的变量名、变量值和步数。例如: ```python # 添加训练损失 writer.add_scalar('Train/Loss', loss.item(), step) # 添加验证准确率 writer.add_scalar('Validation/Accuracy', accuracy, step) ``` 4. 启动TensorBoard 在命令行中使用以下命令启动TensorBoard: ``` tensorboard --logdir runs ``` 其中,`--logdir`参数指定实验数据所在的目录。在上面的代码中,我们将实验数据保存在`runs`目录下。 5. 在浏览器中查看可视化结果 在浏览器中输入以下地址查看TensorBoard可视化结果: ``` http://localhost:6006/ ``` 这里是一个可视化变量曲线的代码示例: ```python import torch from torch.utils.tensorboard import SummaryWriter # 创建SummaryWriter对象 writer = SummaryWriter('runs/experiment_name') # 创建模拟数据 x = torch.linspace(-5, 5, 100) y = torch.sin(x) # 可视化曲线 for i in range(100): writer.add_scalar('Sin(x)', y[i], i) # 关闭SummaryWriter对象 writer.close() ``` 这段代码将生成一条正弦曲线,并将其可视化TensorBoard中。在TensorBoard中,我们可以选择`Scalars`选项卡来查看变量曲线。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值