教你如何在Pytorch中使用TensorBoard
作者:weixin_38385446 发布时间:2022-02-22 17:55:46
什么是TensorboardX
Tensorboard 是 TensorFlow 的一个附加工具,可以记录训练过程的数字、图像等内容,以方便研究人员观察神经网络训练过程。可是对于 PyTorch 等其他神经网络训练框架并没有功能像 Tensorboard 一样全面的类似工具,一些已有的工具功能有限或使用起来比较困难 (tensorboard_logger, visdom等) 。TensorboardX 这个工具使得 TensorFlow 外的其他神经网络框架也可以使用到 Tensorboard 的便捷功能。TensorboardX 的 github仓库在这里。
TensorboardX 的文档相对详细,但大部分缺少相应的示例。本文是对TensorboardX 各项功能的完整介绍,每项都包含了示例,给出了可视化效果,希望可以方便大家的使用。笔者水平有限,还请读者们斧正,相关问题可以在留言区提出,我尽量解答。
TensorBoard是TensorFlow中强大的可视化工具
安装TensorBoard
pip install tensorboard
pip install future
代码演示
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()
运行完,会保存在当前目录的runs文件底下。
查看结果
# cd 到当前的工作目录下,如:
cd 19RNN\predrnn-pytorch-master\predrnn-pytorch-master
# 运行 tensorboard
tensorboard --logdir "./"
浏览器中输入查看的地址
http://127.0.0.1:6006/
额外知识点:
(1)writer.add_scalar()
功能:将标量添加到 summary
参数:
tag (string):数据标识符
scalar_value (float or string/blobname):要保存的数值
global_step (int):全局步值
walltime (float):可选参数,用于记录发生的时间,默认为 time.time()
(2)writer.add_scalars()
功能:添加多个标量数据到 summary 中
参数:
main_tag (string):tag 的父级名称
tag_scalar_dict (dict):保存 tag 及相应的值的键值对
global_step (int):全局步值
walltime (float) 可选参数,可选参数,用于记录发生的时间,默认为 time.time()
两者区别
writer.add_scalar() 添加一个标量到 summary
writer.add_scalars() 可以同时添加多个标量到 summary 中,多个标量需要使用键值对的形式输入
两者共同点
第一个参数可简单理解为保存到 tensorboard 日志文件中的标量图像的名称
第二个参数可简单理解为图像的 y 轴数据
第三个参数可简单理解为图像的 x 轴数据
第四个参数都是可选参数,用于记录发生的时间,默认为 time.time()
来源:https://blog.csdn.net/weixin_38385446/article/details/119382712


猜你喜欢
- 1.项目目录及文件说明:manage.pydjango中的一个命令行工具,管理django项目;__init__.py空文件,告诉pytho
- 学习目标1.掌握pytorch模型转换到onnx模型2.顺利运行onnx模型3.比对onnx模型和pytorch模型的输出结果学习大纲pyt
- 正在看的ORACLE教程是:Oracle不同数据库间对比分析脚本。Oracle数据库开发应用中经常对数据库管理员有这样的需求,对比两个不同实
- python3字符串操作 x = 'abc' y = 'defgh' print(x + y)
- 本文实例为大家分享了python实现复制大量文件的具体代码,供大家参考,具体内容如下本来是去项目公司拷数据,结果去了发现有500G,靠系统的
- Windows10本机环境:win10未安装node,安装了nvm工具,尝试使用nvm安装我开发环境的node版本(10.9.0 or la
- 前言这篇文章介绍一下 递归,递归的本质是将原来的问题转化为更小的同一个问题,解决这些更小问题的过程。下面通过两个递归的例子帮助学习对递归的理
- 当我写下如下sql语句时,我得到了输入@c参数时想得到的结果集。select * from @tb t where t.id in (sel
- 问题:有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么。参赛者可以选择一扇门,在开启它之前,主持人会开启另
- python用正则表达式提取中文Python re正则匹配中文,其实非常简单,把中文的unicode字符串转换成utf-8格式就可以了,然后
- 前言今天,在网上发现一款很棒的python画图工具库。很简单的api调用就能生成漂亮的图表。并且可以进行一些互动。pyecharts 是一个
- 故障表现一方面 :在阿里云控制台云数据库PolarDB对应的集群管理页面上,在诊断与优化模块里面的一键诊断会话管理中,发现某条update
- 源由刚开始是帮朋友做一个按键精灵操作旺信的脚本,写完后各种不稳定;后来看到python可以操作win32相关的api,恰好这一段时间正在学习
- 1.创建图在tensorflow中,一个程序默认是建立一个图的,除了系统自动建立图以外,我们还可以手动建立图,并做一些其他的操作。下面我们使
- 了然于胸 - collectModules时序图经过loadConfig和applyConfigDefaults,我们已经将用户自定义信息和
- 环境Win10Python3.6.6Django2.1.3中间件作用 中间件用于全局修改Django的输入或输出。中间件常见用途 缓存会话认
- #coding:utf-8 #批量修改文件名 import os import re import datetime re_st = r
- 当需要实现html页面部分模块截图并具有保存图片功能时,前台直接生成截图并下载会方便的多。多的不说,直接看代码首先我们需要引入2个js文件:
- 今天在用uploadify上传插件时遇到了一个问题,由于我后台做了权限管理,每个请求都有去读session判断权限,但用这个插件时发现登录后
- 概述从今天开始, 小白我将带领大家一起来补充一下 数据库的知识.MySQL 安装下载地址:https://dev.mysql.com/dow