可视化模块

# 可视化模块

Tensorboard可以将数据、模型计算图等进行可视化,会自动获取最新的数据信息,将其存入日志文件中,并且会在日志文件中更新信息,运行数据或模型最新的状态。

# 常用方法

# add_graph()

add_graph (model, input_to_model=None, verbose=False)

添加网络结构图,将计算图可视化。

参数说明

  • model(torch.nn.Module) 表示需要可视化的网络模型;
  • input_to_model(torch.Tensor or list of torch.Tensor)表示模型的输入变量,如果模型输入为多个变量,则用list或元组按顺序传入多个变量即可;
  • verbose(bool)为开关语句,控制是否在控制台中打印输出网络的图形结构

# add_scalar()/add_scalars()

添加一个标量/批量添加标量,在机器学习中可用于绘制损失函数。

  • add_scalar(tag, scalar_value, global_step=None)

  • add_scalars (main_tag, tag_scalar_dict, global_step=None)

tag:图名

scalar_value:loss值

global_step:理解为x轴,深度学习处为epoch

# 示例

from torch.utils.tensorboard import SummaryWriter#导入相关模块
writer=SummaryWriter()#实例化一个SummaryWriter对象
writer.add_scalar("loss_train",avg_train_loss,epoch)# 添加单个标
量
writer.add_scalar("loss_eval",avg_val_loss,epoch)#添加单个标量
writer.add_scalar("loss", {"avg_train_loss":avg_train_loss,
"avg_val_loss":avg_val_loss},epoch)#添加多个标量
writer.add_graph(model)#添加模型计算图
个

#打开日志文件,需保证日志文件夹runs在bookcode文件夹下
D:\book_code>tensorboard --logdir runs
1
2
3
4
5
6
7
8
9
10
11
12

切记:项目path不能有中文,我真是...