Pytorch中TensorBoard及torchsummary的使用详解

作者:Mr_寒路 时间:2023-10-14 11:22:36 

1.TensorBoard神经网络可视化工具

TensorBoard是一个强大的可视化工具,在pytorch中有两种调用方法:

1.from tensorboardX import SummaryWriter

这种方法是在官方还不支持tensorboard时网上有大神写的

2.from torch.utils.tensorboard import SummaryWriter

这种方法是后来更新官方加入的

1.1 调用方法

1.1.1 创建接口SummaryWriter

功能:创建接口

调用方法:


writer = SummaryWriter("runs")

参数:

log_dir:event file输出文件夹

comment:不指定log_dir时,文件夹后缀

filename_suffix:event file文件名后缀

1.1.2 记录标量add_scalars()

功能:记录标量add_scalars()

调用方法:


writer.add_scalars("name",{"dic":val},epoch)

参数:

tag:图像的标签名

scalar_step:要记录的标量

global_step:轮次

1.1.3 统计直方图add_histogram()

功能:统计直方图与多分位数折线图

调用方法:


writer.add_histogram("weight",self.fc.weight,epoch)

参数:

tag:图像的标签名

values:要画直方图的数据

global_step:轮次

bins:取值有 ‘tensorflow'、‘auto'、‘fd' 等

1.1.4 批次显示图像add_image()

功能:批次显示图像

调用方法:


writer.add_image(“Cifar10”, img_batch, epoch,'CHW')

参数:

tag:图像的标签名

img_tensor:图像数据,注意尺寸

global_step:轮次

dataformats:数据形式,CHW,HWC,HW

1.1.5 查看模型图add_graph()

功能:查看模型图

调用方法:


writer.add_graph(model=net,input_to_model=torch.randn(1,3, 224, 224).to(device))

参数:

model:模型,必须是nn.Module

input_to_model:输出给模型的数据

verbose:是否打印计算图结构信息

写完记得要写 writer.close()

2.查看网络层形状、参数torchsummary

功能:查看网络层形状、参数

调用方法:


from torchsummary import summary
summary(net, input_size=(3, 224, 224))

参数:

model:pytorch模型

input_size:模型输入size

batch_size:batch size

device:“cuda” or “cpu”

3.启动tensorboard

在文件路径中cmd打开终端,输入


tensorboard --logdir="./runs"

runs是我保存文件的文件名,打开以下链接

Pytorch中TensorBoard及torchsummary的使用详解

补充:pytorch调用tensorboard方法尝试

tensorboard提供了用于监视训练损失很好的接口,可以帮助我们更好的调整参数。下文介绍如何在pytorch中调用tensorboard。

首先

安装tensorboard、tensorflow以及tensorboardX

第二

在文件开头导入SummaryWriter


from tensorboardX import SummaryWriter

第三

同tensorflow的tensorboard一样,tensorboardX提供多种记录方式如scalar、image等。


writer = SummaryWriter('path')

如果不添加path,则默认以时间命名。

第四

添加监视变量


writer.add_scalar('Train/Acc', Acc, iter)

第五

打开tensorboard


tensorboard --logdir 'path'

第六

在浏览器打开6006端口

Pytorch中TensorBoard及torchsummary的使用详解

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

来源:https://blog.csdn.net/weixin_47873308/article/details/111313102

标签:Pytorch,TensorBoard,torchsummary
0
投稿

猜你喜欢

  • ASP 循环导入导出数据处理 不使用缓存

    2010-07-02 12:31:00
  • 跨平台、多浏览器页面测试

    2008-06-24 11:54:00
  • Python序列对象与String类型内置方法详解

    2023-09-22 13:25:18
  • Firefox下无法正常显示年份的解决方法

    2024-04-18 09:39:50
  • Python 内置函数速查表一览

    2021-10-30 07:43:06
  • asp如何制作一个WAP手机的WML网页?

    2010-06-29 21:21:00
  • JavaScript语法约定和程序调试原理解析

    2024-04-18 09:46:22
  • 介绍Python中的一些高级编程技巧

    2022-09-22 19:23:15
  • python实现简单socket程序在两台电脑之间传输消息的方法

    2021-04-25 21:14:26
  • Python3实现从文件中读取指定行的方法

    2021-01-06 04:18:17
  • 关于Python OS模块常用文件/目录函数详解

    2023-07-04 06:30:06
  • Goland使用Go Modules创建/管理项目的操作

    2024-04-30 10:03:02
  • Python在不同目录下导入模块的实现方法

    2022-03-12 09:34:52
  • PHP PDOStatement::bindParam讲解

    2023-06-05 05:47:28
  • 显示日期格式的几个函数

    2008-09-03 13:20:00
  • 跟老齐学Python之画圈还不简单吗?

    2022-06-07 04:57:11
  • CSS教程:简单理解em

    2008-07-03 12:44:00
  • 修改 CentOS 6.x 上默认Python的方法

    2023-08-07 10:02:59
  • 彻底删除thinkphp3.1案例blog标签的方法

    2023-11-21 12:01:01
  • python 与服务器的共享文件夹交互方法

    2021-02-10 14:29:02
  • asp之家 网络编程 m.aspxhome.com