【人工智能概论】 PyTorch可视化工具Tensorboard安装与简单使用

【人工智能概论】 PyTorch可视化工具Tensorboard安装与简单使用


一. 安装Tensorboard

1.1 安装Tensorboard

  • Tensorboard原本是Tensorflow的可视化工具,但自PyTorch1.2.0版本开始,PyTorch正式内置Tensorboard的支持,尽管如此仍需手动安装Tensorboard。否则会报错。

ModuleNotFoundError: No module named ‘tensorboard’

  • 进入相应虚拟环境后,输入以下指令即可安装。
pip install tensorboard

1.2 验证安装

  • 输入以下指令,不报错即说明安装成功。
from torch.utils.tensorboard import SummaryWriter

二.Tensorboard功能简介

  1. Tensorboard常用的四个功能
  • graphs: 保存网络结构图;
  • scalars: 精确度,学习率,损失曲线;
  • histograms: 训练权重分布;
  • images: 展示图像信息。
  1. 画线——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.close()
  • 在PyCharm里执行以上代码,就会在生成的logs文件夹里保存相关文件。
  • 在PyCharm的虚拟环境终端中进入到logs的上级目录,输入启动指令(如下),点击生成的链接即可查看结果。
# 使用默认端口
tensorboard --logdir=logs
# 使用指定端口
tensorboard --logdir=logs --port=6007
  • 终端键入Ctrl + C结束进程。
  1. 展示单张图像——add_image
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")

# 关闭
writer.close()
  1. 画模型——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()
  1. 模型对比
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()
  • 8
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
使用PyTorch可视化TensorBoard的步骤如下: 1. 安装TensorBoard ``` pip install tensorboard ``` 2. 在PyTorch中创建SummaryWriter对象 ```python from torch.utils.tensorboard import SummaryWriter # 创建SummaryWriter对象 writer = SummaryWriter('runs/experiment_name') ``` 其中,`experiment_name`为实验名称,可以自定义。这里通过`runs`目录来存储实验数据。 3. 在训练或验证的过程中添加可视化代码 在代码中使用`writer.add_scalar()`方法来添加可视化代码,方法的参数包括要可视化的变量名、变量值和步数。例如: ```python # 添加训练损失 writer.add_scalar('Train/Loss', loss.item(), step) # 添加验证准确率 writer.add_scalar('Validation/Accuracy', accuracy, step) ``` 4. 启动TensorBoard 在命令行中使用以下命令启动TensorBoard: ``` tensorboard --logdir runs ``` 其中,`--logdir`参数指定实验数据所在的目录。在上面的代码中,我们将实验数据保存在`runs`目录下。 5. 在浏览器中查看可视化结果 在浏览器中输入以下地址查看TensorBoard可视化结果: ``` http://localhost:6006/ ``` 这里是一个可视化变量曲线的代码示例: ```python import torch from torch.utils.tensorboard import SummaryWriter # 创建SummaryWriter对象 writer = SummaryWriter('runs/experiment_name') # 创建模拟数据 x = torch.linspace(-5, 5, 100) y = torch.sin(x) # 可视化曲线 for i in range(100): writer.add_scalar('Sin(x)', y[i], i) # 关闭SummaryWriter对象 writer.close() ``` 这段代码将生成一条正弦曲线,并将其可视化在TensorBoard中。在TensorBoard中,我们可以选择`Scalars`选项卡来查看变量曲线。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值