PyTorch可视化-在PyTorch训练时使用TensorBoard记录Metrics
导入必要的依赖包:
from pathlib import Path
import glob
import re
import numpy as np
from torch.utils.tensorboard import SummaryWriter
生成文件夹。在指定路径下遍历,以后缀自增的形式创建新的文件夹,避免重复
# https://github.com/ultralytics/yolov5/blob/c1bed601e9b9a3f5fa8fb529cfa40df7a3a0b903/utils/general.py#L805
def increment_path(path, exist_ok=False, sep='', mkdir=False):# Increment file or directory path, i.e. runs/exp --> runs/exp{sep}2, runs/exp{sep}3, ... etc.path = Path(path) # os-agnosticif path.exists() and not exist_ok:suffix = path.suffixpath = path.with_suffix('')dirs = glob.glob(f"{path}{sep}*") # similar pathsmatches = [re.search(rf"%s{sep}(\d+)" % path.stem, d) for d in dirs]i = [int(m.groups()[0]) for m in matches if m] # indicesn = max(i) + 1 if i else 2 # increment numberpath = Path(f"{path}{sep}{n}{suffix}") # update pathdir = path if path.suffix == '' else path.parent # directoryif not dir.exists() and mkdir:dir.mkdir(parents=True, exist_ok=True) # make directoryreturn path
训练并记录:
epochs = 10
steps = 100save_dir = increment_path('runs1/exp')
print(save_dir)writer = SummaryWriter(save_dir)
iteration = 0
for epoch in range(epochs):for step in range(steps):# trainwriter.add_scalar('Loss/train', np.random.random(), iteration)writer.add_scalar('Accuracy/train', np.random.random(), iteration)# valwriter.add_scalar('Loss/val', np.random.random(), iteration)writer.add_scalar('Accuracy/val', np.random.random(), iteration)iteration += 1writer.close()
上面代码多次运行之后的结果:
在命令行中运行TensorBoard查看:
tensorboard --logdir=runs1
每运行一次,会创建一个文件夹,左侧蓝色框
代码中add_scalar
的第一个参数,也就是tag,如'Accuracy/train'
和'Accuracy/val'
,相同的tag会把两个图表放在同一个sectionAccuracy
下
不同的文件夹中的相同tag会画在同个图表中,如右侧4个图表的橙色和蓝色曲线
如果是在同一个文件夹中,具有相同tag的则会画到同一条曲线上,因此在训练时,不同参数的训练要放到不同的文件夹中,否则两次训练会首尾相连,但是如果是中断继续训练,则要放到同一个文件夹中,并且横坐标要从上次中断位置继续。
PyTorch可视化-在PyTorch训练时使用TensorBoard记录Metrics相关推荐
- PyTorch可视化工具-Tensorboard在线查看训练曲线、网络结构图等
1 安装 2 如何调用 3 如何查看 4 实战 4.1 代码调用 4.2 查看 1 SCALARS 训练曲线 2 多次训练曲线对比 3 IMAGES 4 CRSPHS 模型图 5 问题与解决 6 工程 ...
- pytorch学习笔记(4):tensorboard可视化
参考文档:https://mp.weixin.qq.com/s/UYnBRU2b0InzM9H1xl4b4g 在之前的第二篇笔记中,我们实现了一个 CNN 网络,在 mnist 上通过两个卷积层完成分 ...
- pytorch(4)Pytorch模型训练时从CPU与GPU之间的转换
1.如何进行迁移 使用Pytorch写的模型: 对模型和相应的数据使用.cuda()处理.通过这种方式,我们就可以将内存中的数据复制到GPU的显存中去.从而可以通过GPU来进行运算了. 另外一种方式, ...
- Pytorch使用DistributedDataParallel单机多卡训练时遇到ValueError: sampler option is mutually exclusive with shuff
Pytorch使用DistributedDataParallel单机多卡训练时遇到 ValueError: sampler option is mutually exclusive with shuf ...
- Pytorch可视化工具 —— TensorBoard
1.TensorBoard简介 TensorBoard:TensorFlow中强大的可视化工具: 支持标量.图像.文本.音频.视频和Embedding等多种数据可视化: 在学习TensorBoard之 ...
- .mb是什么文件_神经网络长什么样不知道? 这有一份简单的 pytorch可视化技巧(1)
神经网络长什么样不知道?这有一份简单的 pytorch可视化技巧(1) 深度学习这几年伴随着硬件性能的进一步提升,人们开始着手于设计更深更复杂的神经网络,有时候我们在开源社区拿到网络模型的时候,做客可 ...
- 详解PyTorch可视化工具visdom(一)
一.介绍 在深度学习领域,模型训练是一个必须的过程,因此常常需要实时监听并可视化一些数据,如损失值loss,正确率acc等.在Tensorflow中,最常使用的工具非Tensorboard莫属:在Py ...
- add函数 pytorch_Pytorch学习记录-Pytorch可视化使用tensorboardX
Pytorch学习记录-Pytorch可视化使用tensorboardX 在很早很早以前(至少一个半月),我做过几节关于tensorboard的学习记录. https://www.jianshu.co ...
- 卷积神经网络、比较MLPS和CNNS、滤波器、CNN各层的作用、在Pytorch可视化CNN
1.33.卷积神经网络 1.33.1.卷积 和 神经网络 1.33.1.1.比较MLPS和CNNS 1.33.1.2.计算机如何看图像? 1.33.1.3.建立自己的滤波器 1.33.2.完整的卷积神 ...
最新文章
- linux文件系统dentry_NFS 文件系统源代码剖析
- 企业架构:现代数据架构的特征
- 简单工厂模式(Simple Factory)
- 如何在微信公众帐号开发模式下,通过程序代码向用户发送符号表情。
- 以太坊核心开发者正在制定ETH2.0合并最低技术规范
- linux应用之Lamp(apache+mysql+php)的源码安装(centos)
- 1.3 正则表达式和Python语言-1.3.5使用 search()在一个字符串中查找模式(搜索与匹配 的对比)...
- Qt浅谈之三十二二维码条形码解析
- HTML页面跳转及传递参数
- java Ofd 转图片_一文教你搞懂如何将ofd格式的文件转为图片
- 对话诊断(X)2022IJCAI-My nose is running.Are you also coughing?:Building a Medical Diagnosis Agent with
- unity模型制作(终章):柔体布料绘制
- LLDP 链路发现协议
- 【微信小程序-初级实战】商品/表单编辑
- 【英语-同义词汇词组】common,general,normal,ordinary,usual | often 与 usually的用法及区别
- 个人网站的设计与实现
- 你是我生命中最美丽的温暖
- pptp中的pac与pns
- 人际交往中,你的真诚相待一定会换来疏远
- 《长三角区域大数据发展报告(2018)》在杭发布
热门文章
- 游戏策划学习:乱敏、mmo、跳跃表现
- CAN总线详解 整车的控制只需要一条线(怪不得那些汽车厂商的嵌入式岗位基本都是要求会CAN的)
- c语言交通违章编程代码,C语言程序设计之交通处罚单管理系统报告材料内含代码...
- android3g运存,为什么iphoneX只有3G运存还比安卓的6G运存快?
- 电脑 ctf占用过高
- 微信共享自习室预约小程序源码开发方案
- 解决虚拟机无法复制粘贴
- 关键词搜索API接口之1688平台
- 阿米巴经营模式,以及阿米巴模式改进
- CVPR 2019 论文汇总(按方向划分,0409 更新中)[转载]