Tensorboard:SummaryWriter类

Tensorboard:SummaryWriter类

Tensorboard在训练模型时很有用,可以看训练过程中loss的变化。之前用于Tensorflow框架,自Pytorch1.1之后,Pytorch也加了这个功能。

SummaryWriter类可以在指定文件夹生成一个事件文件,这个事件文件可以对TensorBoard解析。

安装

找到所在环境pip安装即可:pip install tensorboard

导入
from torch.utils.tensorboard import SummaryWriter
实例化
writer=SummaryWriter()
def __init__(self, log_dir=None, comment='', purge_step=None, max_queue=10,
             flush_secs=120, filename_suffix=''):

官方示例:

# create a summary writer with automatically generated folder name.
writer = SummaryWriter()
# folder location: runs/May04_22-14-54_s-MacBook-Pro.local/

# create a summary writer using the specified folder name.
writer = SummaryWriter("my_experiment")
# folder location: my_experiment

# create a summary writer with comment appended.
writer = SummaryWriter(comment="LR_0.1_BATCH_16")
# folder location: runs/May04_22-14-54_s-MacBook-Pro.localLR_0.1_BATCH_16/

第1个示例是说默认的存储文件夹:runs/…

第2个示例是保存在指定文件夹中,参数为文件夹名;

第3个实例是保存在默认文件夹中,然后对comment参数进行了设置,功能是在文件夹后加后缀,一般其他参数都不常用。

writer.add_scalar()方法:
def add_scalar(
    self,
    tag,
    scalar_value,
    global_step=None,
    walltime=None,
    new_style=False,
    double_precision=False,
):

上面是官方定义的参数,这个方法是添加标量的意思。

Args:
    tag (string): Data identifier
    scalar_value (float or string/blobname): Value to save
    global_step (int): Global step value to record
    walltime (float): Optional override default walltime (time.time())
      with seconds after epoch of event
    new_style (boolean): Whether to use new style (tensor field) or old
      style (simple_value field). New style could lead to faster data loading.

tag:所画图标的title,str类型,注意引号

scalar_value:需要保存的数值,对应y轴的y值

global_step:全局的步数,对应x轴

事件文件打开方法:

在PyCharm中,找到项目所在的terminal,

tensorboard --logdir=事件文件所在的文件夹名

在弹出的网址上打开即可。

保存loss曲线

选中左边“Show data download links”按钮,曲线下就有下载的按钮,保存的曲线为.svg文件,然后网页在线SVG转png或者jpg就可以了。

平滑原始loss曲线

tensorboard界面展示的曲线可以调整平滑度,如果下载下来的是原始曲线,要用到论文中可以再对svg文件处理,提取tensorboard的loss曲线平滑重画。

平滑曲线的代码网上有,后面如果自己用到我也会整理发布。

  • 26
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值