pytorch学习笔记(9):可视化 一定坚持学完啊!!

import numpy as np
from torch.utils.tensorboard import SummaryWriter

writer = SummaryWriter(comment='test_tensorboard')

for x in range(100):
    writer.add_scalar('y=2x', x * 2, x)
    writer.add_scalar('y=pow(2,x)', 2 ** x, x)

    writer.add_scalars('data/scalar_group', {"xsinx": x * np.sin(x),
                                             "xcosx": x * np.cos(x),
                                             "arctanx": np.arctan(x)}, x)
writer.close()

SummaryWriter():提供创建event file的高级接口

主要属性:
log_dir=event file输出文件夹 默认不设置 如果不设置会在当前问价夹创建一个runs
comment:不指定log_dir时,文件夹后缀 runs/… comment/en…filename_suffix
filename_suffix:event file文件名后缀

方法:

1.add_scalar() :记录标量

tag:图像的标签名,图的唯一标识
scalar_value:要记录的变量
global_step:x轴

2.add_scalars()

main_tag:改图的标签
tag_scalar_dict:key是变量tag,value是变量的值

3.add_histogram() 统计直方图与多分位数折线图

tag:图像的标签名,图的唯一标识
values:要统计的参数
global_step:y轴
bins:取直方图的bins

4.add_image() :记录图像

tag:图像的标签名,图的唯一标识
img_tensor:图像数据,注意尺度
global_step:x轴
dataformats:数据形式,CHW,HWC,HW

4.1为了把图像放在同一个界面中制作网格图像

torchvision.utils.make_grid:制作网格图像
make_grid()
参数:
tensor:图像数据:BCH*W形式
nrow:行数,列数自动计算
padding:图像间距(像素单位)
normalize:是否将像素值标准化
range:标准化范围
scale_each:是否单张图维度标准化
pad_value:padding的像素值

5.add_graph()可视化模型计算图

model:模型,必须是nn.Module
input_to_model:输出给模型的数据
verbose:是否打印计算图结构信息

6.torchsummary()

model:pytorch模型
input_size:模型输入size
batch_size:
device

人家比我写的认真太多了!!https://blog.csdn.net/qq_24739717/article/details/103070058

你可能感兴趣的:(pytorch学习笔记)