【PyTorch】训练过程可视化

文章目录

  • [1. 训练过程中的可视化](#1. 训练过程中的可视化)
    • [1.1. alive_progress](#1.1. alive_progress)
    • [1.2. rich.progress](#1.2. rich.progress)
  • [2. 训练结束后的可视化](#2. 训练结束后的可视化)
    • [2.1. tensorboardX](#2.1. tensorboardX)
      • [2.1.1. 安装](#2.1.1. 安装)
      • [2.1.2. 使用](#2.1.2. 使用)

1. 训练过程中的可视化

主要是监控训练的进度。

1.1. alive_progress

  • 安装
bash 复制代码
pip install alive_progress
  • 使用
python 复制代码
from alive_progress import alive_bar
with alive_bar(num_epochs, theme='classic') as bar:
        for epoch in range(num_epochs):
        	...
        	bar()
  • 效果

1.2. rich.progress

  • 安装
bash 复制代码
pip install rich
  • 使用
python 复制代码
from rich.progress import track
for epoch in track(range(num_epochs)):
	...
  • 效果:右边的时间在运行时显示剩余时间,运行结束显示消耗的总时间。

2. 训练结束后的可视化

主要原理是在运行过程中记录变量值、运行时间等信息到文件中,然后根据该文件绘制图表。

2.1. tensorboardX

2.1.1. 安装

bash 复制代码
pip install tensorboardX

VSCode集成了TensorBoard支持,不过事先要安装torch-tb-profiler,安装命令:

bash 复制代码
pip install torch-tb-profiler

安装完成后,在Python源文件中tensorboardX模块导入处,点击"启动TensorBoard会话"按钮,然后选择运行事件所在目录,默认选择当前目录即可,tensorboard会自动在当前目录查找运行事件,由此即可启动TensorBoard。开启TensorBoard页面后不要关闭,数据更新后,直接点击刷新按钮即可导入新数据。


此外,也可以通过以下命令在浏览器查看tensorboard可视化结果:

bash 复制代码
# logdir为运行事件所在目录
> tensorboard logdir=runs
TensorFlow installation not found - running with reduced feature set.
I1202 20:37:50.824767 15412 plugin.py:429] Monitor runs begin
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.14.0 at http://localhost:6006/ (Press CTRL+C to quit)
# 手动打开命令输出提供的本地服务器地址,如http://localhost:6006/

2.1.2. 使用

  • 直接创建对象
python 复制代码
from tensorboardX import SummaryWriter
writer = SummaryWriter()
# writer.add_scalar():添加监控变量
writer.close()
  • 使用上下文管理器
python 复制代码
from tensorboardX import SummaryWriter
with SummaryWriter() as writer:
	# writer.add_scalar():添加监控变量
相关推荐
伊织code8 小时前
PyTorch API 6
pytorch·api·ddp
范男11 小时前
基于Pytochvideo训练自己的的视频分类模型
人工智能·pytorch·python·深度学习·计算机视觉·3d·视频
伊织code16 小时前
PyTorch API 7
pytorch·api·张量·稀疏
聚客AI19 小时前
深度拆解AI大模型从训练框架、推理优化到市场趋势与基础设施挑战
图像处理·人工智能·pytorch·深度学习·机器学习·自然语言处理·transformer
大力水手(Popeye)21 小时前
Pytorch——tensor
人工智能·pytorch·python
Caven771 天前
【pytorch】reshape的使用
pytorch·python
无规则ai1 天前
动手学深度学习(pytorch版):第四章节—多层感知机(5)权重衰减
人工智能·pytorch·python·深度学习
雷达学弱狗1 天前
backward怎么计算的是torch.tensor(2.0, requires_grad=True)变量的梯度
人工智能·pytorch·深度学习
抠头专注python环境配置2 天前
Pytorch GPU版本安装保姆级教程
pytorch·python·深度学习·conda
爱分享的飘哥2 天前
第七十章:告别“手写循环”噩梦!Trainer结构搭建:PyTorch Lightning让你“一键炼丹”!
人工智能·pytorch·分布式训练·lightning·accelerate·训练框架·trainer