tensorboard可视化数据
tensorboard可以将训练中想保存的变量、图、神经网络结构等,以某种文件形式保存到指定文件夹,然后可以通过tensorboard的本地服务可视化的把数据显示出来。
导入库
- 一般使用
tensorboard下的SummaryWriter进行数据存储from torch.utils.tensorboard import SummaryWriter或者是:from tensorboardX import SummaryWriter
基本使用
1.保存数值
这里的# 首先要实例化SummaryWriter对象,传入数据要保存的路径writer = SummaryWriter('./logs')writer.add_scalar(tag, scalar_value, global_step=None, walltime=None)
tag指定可视化时这个变量的名字,scalar_value是你要存的值,global_step可以理解为x轴坐标。
举个例子:
writer = SummaryWriter('./logs')for i in range(100):writer.add_scalar('y=2x', 2i, i)writer.close()
2.保存图片
add_image保存单个图片保存图片时,对图片向量的
通道数、高、宽顺序有要求,默认是CHW,如果自己的向量顺序不是CHW,可以通过dataformats参数指定。C代表channel,通道H代表height,图片的高W代表width,图片的宽
通常我们需要保存一个writer.add_image(tag, img_tensor, global_step=None, walltime=None, dataformats='CHW')
batch的图片,也就是一次保存一批图片,使用add_images:writer.add_images(tag, imgs_tensor, global_step=None, walltime=None,dataformats='CHW')
可视化展现
在命令行运行:tensorboard --logdir=path --port 8123
port可以不指定,默认6006端口logdir后面跟相对路径即可,路径可以不用' '括住- 运行成功后,会如下图所示,显示本地连接,在浏览器打开即可看到图像
Colab上使用tensorboard
- 执行两个魔法命令即可,会直接在
juypter内显示tensorboard%load_ext tensorboard #使用tensorboard 扩展%tensorboard --logdir logs #定位tensorboard读取的文件目录
