pytorch中使用tensorboard实现可视化

tensorflow框架下的tensorboard可视化工具可以用到pytorch中用于可视化。

目前我用到的需求就是仅仅显示标量(train/val loss),记录一下,希望也可以给看到这篇文章的你带来帮助。

一、环境安装

anaconda下安装pytorch虚拟环境参考:https://blog.csdn.net/sinat_41563673/article/details/97402059

  • python3.6+
  • pytorch0.4.0+

基于pytorch虚拟环境下安装下面的包:

  • tensorboard (以下两个指令均可)
pip install tensorboard
conda install tensorboard
  • tensorboardX(以下两个指令均可)
pip install tensorboardX
conda install tensorboardX
  • tensorflow(以下两个指令均可)
pip install tensorflow
conda install tensorflow

二、生成数据代码

代码:

from tensorboardX import SummaryWriter
import numpy as np

writer = SummaryWriter()

for epoch in range(100):
    writer.add_scalar('scalar/test', np.random.rand(), epoch)
 
writer.close()

代码解释:

  • 首先导入from tensorboardX import SummaryWriter,然后定义一个SummaryWriter()实例,运行代码,默认生成一个runs文件夹;
  • 其次writer.add_scalar('scalar/test', np.random.rand(), epoch),这句代码的作用就是,将我们所需要的数据保存在文件里供可视化使用。这里的数据是标量,所以使用writer.add_scalar(),第一个参数可以理解为保存图的名称,第二个参数可以理解为y轴数据,第三个参数可以理解为x轴数据。

将上边代码运行,会产生runs文件夹以及文件夹中包含保存好的数据文件,用于后面的可视化。

三、可视化

runs的同级目录下使用命令行:tensorboard --logdir runs
会产生对应的可视化链接,点击链接进入,就可以看到可视化后的结果。
pytorch中使用tensorboard实现可视化_第1张图片

在实际使用的过程中,我们的y坐标基本都是显示loss值变化的,将对应的随机数改成随着epoch变化的loss值即可。

你可能感兴趣的:(pytorch,tensorboard,可视化,pytorch,tensorboard)