TensorBoard
SummaryWriter
功能 提供创建event file 的高级接口
主要属性
log_dir event file输出文件夹
comment 不指定log_dir时,文件夹后缀
filename_suffix event file 文件名后缀
1.add_scalar()
功能 记录标量
tag 图像的标签名,图的唯一标识
scalar_value 要记录的标量
global_step x轴
2.add_scalars()
main_tag 该图的标签
tag_scalar_dict key是变量的tag,value是变量的值
3.add_histogram()
功能 统计脂肪乳与多分位数折线图
tag 图像的标签 图的唯一标识
values 要统计的参数
globa_step y轴
bins 取直方图的bins
# -*- coding:utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
from torch.utils.tensorboard import SummaryWriter
from tools.common_tools import set_seed
set_seed(1) # 设置随机种子
# ----------------------------------- 0 SummaryWriter -----------------------------------
flag = 0
# flag = 1
if flag:
# 带有log_dir 的形式
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")
for x in range(100):
writer.add_scalar('y=pow_2_x', 2 ** x, x)
writer.close()
# ----------------------------------- 1 scalar and scalars -----------------------------------
flag = 0
# flag = 1
if flag:
max_epoch = 100
writer = SummaryWriter(comment='test_comment', filename_suffix="test_suffix")
for x in range(max_epoch):
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)}, x)
writer.close()
# ----------------------------------- 2 histogram -----------------------------------
# flag = 0
flag = 1
if flag:
writer = SummaryWriter(comment='test_comment', filename_suffix="test_suffix")
for x in range(2):
# 设置随机种子
np.random.seed(x)
# 两种数据分布
data_union = np.arange(100)
data_normal &#