tensorboardX详解
- tensorboardX介绍
- 安装
- 创建SummaryWriter实例
* - 1.提供一个路径,将使用该路径来保存日志
- 2.无参数,默认将使用
runs/日期时间
路径来保存日志 - 3.提供一个 comment 参数,将使用
runs/日期时间-comment
路径来保存日志 - 各种add方法使用
* - add_scalar
- - add_graph
-
tensorboardX介绍
Tensorboard 是 TensorFlow 的一个附加工具,可以记录训练过程的数字、图像等内容,以方便研究人员观察神经网络训练过程。但是对于 PyTorch 等其他神经网络训练框架并没有功能像 Tensorboard 一样全面的类似工具,一些已有的工具功能有限或使用起来比较困难 (tensorboard_logger, visdom等) 。TensorboardX 这个工具使得 TensorFlow 外的其他神经网络框架也可以使用到 Tensorboard 的便捷功能。
.安装了tensorflow会自动安装tensorboard
tensorboardx依赖于tensorboard和ternsorflow
tensorflow依赖于tensorboard
安装
pip install tensorboardX
创建SummaryWriter实例
以下展示了三种初始化 SummaryWriter 的方法:
1.提供一个路径,将使用该路径来保存日志
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter('runs/another_scalar_example/11')
目录结构:
2.无参数,默认将使用 runs/日期时间
路径来保存日志
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter()
目录结构:
3.提供一个 comment 参数,将使用 runs/日期时间-comment
路径来保存日志
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter(comment="abc")
目录结构:
接下来,我们就可以调用 SummaryWriter 实例的各种 add_something
方法向日志中写入不同类型的数据了。
各种add方法使用
add_scalar
方法各参数介绍
add_scalar(tag, scalar_value, global_step=None, walltime=None)
- tag (string): 数据名称,不同名称的数据使用不同曲线展示
- scalar_value (float): 数字常量值
- global_step (int, optional): 训练的 step
- walltime (float, optional): 记录发生的时间,默认为 time.time()
举例
1.例子1
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter()
for i in range(10):
writer.add_scalar('quadratic', i**2, global_step=i)
writer.add_scalar('exponential', 2**i, global_step=i)
在浏览器可视化界面中效果如下:
不同名称的数据使用不同曲线展示
2.例子2
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter()
for i in range(10):
writer.add_scalar('quadratic', i**2, global_step=i)
writer.add_scalar('quadratic', i**4, global_step=i)
在浏览器可视化界面中效果如下:
本质过程就是描点,然后用直线按照描点顺序把各点链接起来
再例如
代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter()
for i in range(10):
writer.add_scalar('quadratic', i, global_step=i)
writer.add_scalar('quadratic', i**2, global_step=i)
for i in range(10):
writer.add_scalar('quadratic', -i**3, global_step=i)
在浏览器可视化界面中效果如下:
3.例子3
第一次执行程序代码:
from tensorboardX import SummaryWriter
writer = SummaryWriter("runs/exp")
for i in range(10):
writer.add_scalar('quadratic', i**2, global_step=i)
第二次执行程序代码(第二次执行不删除第一次生成的目录文件夹):
[En]
Execute the program code for the second time (the second execution does not delete the directory folder generated for the first time):
from tensorboardX import SummaryWriter
writer = SummaryWriter("runs/exp")
for i in range(10):
writer.add_scalar('quadratic', -i**2, global_step=i)
最终的目录结构:
在浏览器可视化界面中效果如下:
要启动tensorboard,必须指定它的logdir(默认为runs): tensorboard会在你指定的这个log-dir里面做路径搜索,寻找所有的events文件以及子文件夹中的events文件。在同一个目录下的两个events文件,数据名称相同,最终可视化结果是两个阶段的描点按照顺序的组合。也就是第一阶段最后一个点和第二阶段第一个点也有直线连接。
4.例子4
目录结构:
在浏览器可视化界面中效果如下:
tensorboard会在你指定的这个log-dir里面做路径搜索,寻找所有的events文件以及子文件夹中的events文件。路径相同的events文件可视化的图形线条颜色一样,如果文件路径不同但是数据名称相同,则会被用不同线条颜色画到同一个图里面。
add_graph
使用 add_graph
方法来可视化一个神经网络。
参数介绍
add_graph(model, input_to_model=None, verbose=False, **kwargs)
- model (torch.nn.Module): 待可视化的网络模型
- input_to_model (torch.Tensor or list of torch.Tensor, optional): 待输入神经网络的变量或一组变量。输入的是一个元组,且各变量的维度一定要满足网络的实际输入需求,因为网络的输入变量个数大于等于1.
Original: https://blog.csdn.net/baidu_39211350/article/details/120487820
Author: baidu_39211350
Title: tensorboardX详解
相关阅读
Title: python金融数据分析及可视化
目录
1、数据来源——Wind金融终端
在Wind数据库中下载到的宁德时代(代码300750.SZ)从2020-01-03到2021-12-31共485个数据,包括开盘价,最高价,最低价,收盘价以及交易量。
(需要数据进行操作的同学可以在我的资源上下载,由于Wind资讯金融终端不是免费的,而且作为喜欢白嫖的我们,有什么办法得到免费的数据呢,下次找到了一定分享给大家zll[doge])
; 2、数据读取及其基本描述
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_excel('....../300750SZ.xls')
此处注意新版pandas.read_excel()函数并不支持.xlsx文件的读取,因此需要将数据文件类型转化为xls(或者可以用其他库函数,不过我觉得这个办法是最简单的)
df = pd.DataFrame(data)
df.head()
将数据data转化为DataFrame类型,并打印出前五行:
df.describe()
3、收盘价与成交量关系图
df['close'].plot()
df[['close','volume']].plot(subplots=True)
基本上我们就可以得到收盘价与成交量之间的关系图了,但是从两张图中来看,其x轴均不是日期,并且成交量一般使用的是柱状图,所以,我们加一点点细节让图变得好看一些。
list_date = list(df['Date'])
df.index = list_date
price = df['close']
volumes = df['volume']
top = plt.subplot2grid((4,4), (0,0), rowspan=3, colspan=4)
top.plot(price.index, price, label='close')
plt.title('300750.SZ Close Price from 2020-2021')
plt.legend(loc=2)
bottom = plt.subplot2grid((4,4), (3,0), rowspan=1, colspan=4)
bottom.bar(volumes.index, volumes)
plt.title('300750.SZ Daily Trading Volume')
plt.gcf().set_size_inches(12,8)
plt.subplots_adjust(hspace=0.75)
4、收益率曲线
(>......
Original: https://blog.csdn.net/weixin_47974364/article/details/123408886
Author: 貮叁
Title: python金融数据分析及可视化
![[图解]cv2.HoughLines() 和 cv2.HoughLinesP()原理和代码](https://www.itcode1024.com/wp-content/themes/begin/prune.php?src=https://www.itcode1024.com/wp-content/themes/begin/img/loading.png&w=280&h=210&a=&zc=1)
[图解]cv2.HoughLines() 和 cv2.HoughLinesP()原理和代码

【研究日记】虚拟歌姬自动调教之歌曲音频切割的问题

基于DMS的数仓智能运维服务,知多少?

使用Tensorflow训练BP神经网络实现鸢尾花分类

背景: 设计和实现一个轻量化的深度学习库

TensorFlow安装和下载详细教程-内附多种解决方案

anaconda+pycharm环境下tensorflow-gpu(windows11)安装记录

嵌入式端音频开发(基础篇)之2021-2022年国内主流语音识别芯片科普(1)

XCTF_MOBILE12_你是谁

GUI 快捷键的实现思路

Tensorflow 2 实战(kears)- 双层RNN/LSTM/GRU

Anaconda中如何安装Tensorflow

Transformer中的encoder和decoder在训练和推理过程中究竟是如何工作的

dom4j解析xml字符串实例
