【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():添加监控变量
相关推荐
hboot4 天前
AI工程师第四课 - 深度学习入门
pytorch·python·神经网络
weiwei228447 天前
神经网络模型导出及开放标准格式ONNX
pytorch·onnx
程序猿追16 天前
那个右下角的小数字怎么“卡”住我打字——我用 HarmonyOS 自己写了一个字数限制输入框
pytorch·华为·harmonyos
闵孚龙16 天前
《PyTorch 深度修炼》Dataset 和 DataLoader:数据如何喂给模型
人工智能·pytorch·python
bryant_meng16 天前
【VAE】From Pixels to Faces: Building a VAE from Scratch
pytorch·vae·log-sigma2·重参数
装不满的克莱因瓶16 天前
了解多标签图像分类方法——从Sigmoid输出到真实世界复杂视觉理解
人工智能·pytorch·python·深度学习·机器学习·分类·数据挖掘
冷小鱼16 天前
TensorFlow 2.21 进阶实战:从训练优化到生产部署的完整指南
人工智能·pytorch·python·tensorflow
冷小鱼16 天前
PyTorch 2.12 完全指南:从动态图到编译优化的深度学习框架演进
人工智能·pytorch·深度学习
IRevers16 天前
【大模型】Gemma4在ROCm和vLLM部署
人工智能·pytorch·深度学习·大模型·datawhale·vllm·amdev
盼小辉丶16 天前
PyTorch强化学习实战(14)——优先经验回放机制
pytorch·python·深度学习·强化学习