【VS Code 使用tensorboard功能技巧】

您所在的位置:网站首页 vs怎么打开网页 【VS Code 使用tensorboard功能技巧】

【VS Code 使用tensorboard功能技巧】

2024-07-16 02:30| 来源: 网络整理| 查看: 265

【VS Code 使用tensorboard技巧】 1 安装依赖库2 使用tensorboard功能

1 安装依赖库 pip install teorbaord pip install torch_tb_profiler

安装上面的库后,在代码中点击启动, 在这里插入图片描述 弹出选择log日志文件夹, 在这里插入图片描述 启动成功后,弹出tensorboard页面,查看数据、图表,点击刷新,观察实时变化。 在这里插入图片描述

若启动失败,执行

1. 打开一个环境终端,pip list,查看是否安装了 tb-nightly,若有则卸载: 2. pip uninstall tb-lightly 3. pip uninstall tensorboard 及 tensorboard相关的包, 或者在方法2:进入环境中\Lib\site-packages中删除tensorboard 及tensorboard相关的包 5. 重新打开一个环境终端,重新安装tensorboard相关包 6. pip install teorbaord 7. pip install torch_tb_profiler 2 使用tensorboard功能

(1)Tensorboard常用的四个功能 graphs: 保存网络结构图; scalars: 精确度,学习率,损失曲线; histograms: 训练权重分布; images: 展示图像信息。 (2)画线——add_scalaar

from torch.utils.tensorboard import SummaryWriter # 创建编辑器,保存日志,指令保存路径log_dir writer = SummaryWriter(log_dir="./logs") # 指定保存位置 # y = 2 * x for i in range(100): # 添加标题,x轴,y轴 # tag: 标题名, scalar_value: y轴, global_step: x轴 writer.add_scalar(tag="y=2x",scalar_value=2*1,global_step=i) # writer.add_scalar('training loss',train_total_loss,epoch) # 关闭 writer.close()

在这里插入图片描述

在VS Code里执行以上代码,就会在生成的logs文件夹里保存相关文件。 在虚拟环境终端中进入到logs的上级目录,输入启动指令(如下),点击生成的链接即可查看结果。

# 使用默认端口 tensorboard --logdir=logs # 使用指定端口 tensorboard --logdir=logs --port=6007 或者 tensorboard --logdir 完整路径 --host=127.0.0.1

终端键入Ctrl + C结束进程。

(3)展示单/多张张图像——add_image/add_images

from torch.utils.tensorboard import SummaryWriter import numpy as np from PIL import Image # 创建编辑器,保存日志,指令保存路径log_dir writer = SummaryWriter(log_dir="./logs") # 指定保存位置 # 图像地址 image_path = "/home/chenshili/图片/food_01.jpeg" # 打开图像 img_PIL = Image.open(image_path) # 用PIL打开的图像,其文件格式是PIL的特有类 # 转化成numpy数据,因为add_image只能传入array或者tensor数据,所以要做类型转化。 img_array = np.array(img_PIL) # 开始画图,tag: 标题,img_tensor: tensor或者numpy类型的数据, dataformats: H高W宽C通道,指定HWC类型 writer.add_image(tag="train",img_tensor=img_array,global_step=1,dataformats="HWC") img=torch.stack([img_array,img_array,img_array],dim=0) writer.add_images('train_example_image',img) # 关闭 writer.close()

在这里插入图片描述

(4)画模型——add_graph

from torch.utils.tensorboard import SummaryWriter import torch from torch.nn import Linear,ReLU,Sequential # 创建编辑器,保存日志,指令保存路径log_dir writer = SummaryWriter(log_dir="./logs") # 指定保存位置 model = Sequential( Linear(1,10), ReLU(), Linear(10,1) ) data = torch.ones(10,1) writer.add_graph(model=model,input_to_model=data) # 关闭 writer.close()

在这里插入图片描述

(5)存放不同文件夹,对比参数

from torch.utils.tensorboard import SummaryWriter import os import datetime # 按时间构建生成文件保存的文件夹 log_dir = os.path.join("./logs",datetime.datetime.now().strftime("%Y%m%d_%H%M%S")) print(log_dir) # 创建编辑器,保存日志,指令保存路径log_dir writer = SummaryWriter(log_dir=log_dir) # 指定保存位置 for i in range(100): writer.add_scalar(tag="loss",scalar_value=1*i,global_step=i) # 多执行几次把scalar_value的值做修改,如2*i,i等 # 关闭 writer.close()


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3