TensorBoard
一、TensorBoard介绍
TensorBoard:TensorFlow中强大的可视化工具
运行机制
- 在python脚本中记录可视化的数据,就是要监控的数据
import numpy as np
from torch.utils.tensorboard import SummaryWriter
# SummaryWriter最根本的类,创建一个writer
writer = SummaryWriter(comment='test_tensorboard')
# writer 记录需要可视化的数据
for x in range(100):
writer.add_scalar('y=2x', x * 2, x)
# 记录一个标量,参数:名称、Y轴、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()
-
数据记录到硬盘中,event file形式保存
event file文件在当前目录下runs文件夹中
-
在终端使用tensorboard这个工具读取event file
进入runs所在文件夹
通过命令tensorboard --logdir=./runs
得到网址端口
-
TensorBoard在web端进行可视化
直接点 http://localhost:6006/ 进入到默认网址进行可视化展示
安装注意事项
pip install tensorboard的时候会报错:
ModuleNotFoundError: No module named 'past’
通过pip install future解决
二、SummaryWriter学习
SummaryWriter
功能:提供创建event file的高级接口
主要属性:
• log_dir:event file输出文件夹
• comment:不指定log_dir时, 文件夹后缀
• filename_suffix:event file文件名后缀
设置了log_dir,comment就不起作用
log_dir = "./train_log/test_log_dir"
writer = SummaryWriter(log_dir=log_dir, comment='_scalars', filename_suffix="12345678")
# writer = SummaryWriter(comment='_scalars', filename_suffix="12345678")
其实就是设置三层文件夹的名字或后缀名
具体方法:
-
add_scalar()
功能:记录标量
• tag:图像的标签名,图的唯一标识
• scalar_value:要记录的标量
• global_step:x轴
-
add_scalars()
可以绘制多个曲线
• main_tag:该图的标签
• tag_scalar_dict: