【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():添加监控变量
相关推荐
xx_xxxxx_2 小时前
AI基本结构12-lstm实现nlp
人工智能·pytorch·rnn·lstm
工业机器视觉设计和实现3 小时前
cifar10训练突破80分(三,摸到pytorch尾灯!)
人工智能·pytorch·cudnn微积分
想会飞的蒲公英3 小时前
PyTorch reshape、view、transpose、广播到底怎么选?
人工智能·pytorch·python
风痕天际1 天前
Pytorch开发教程2——张量核心操作完全指南
人工智能·pytorch·python
m沐沐1 天前
【深度学习】循环神经网络RNN——结构、原理与长期依赖问题解析
人工智能·pytorch·python·rnn·深度学习·算法·机器学习
FriendshipT1 天前
Ultralytics:简要解读YOLOv8 → YOLO11 → YOLO26网络架构
人工智能·pytorch·python·深度学习·yolo·目标检测
工业机器视觉设计和实现2 天前
动量的好处与困扰(二,摸到pytorch尾灯!)
人工智能·pytorch·cudnn微积分
盼小辉丶2 天前
PyTorch强化学习实战(20)——优势演员-评论家(Advantage Actor-Critic, A2C)
pytorch·深度学习·强化学习·优势演员-评论家算法
魔镜er3 天前
03-张量
人工智能·pytorch·python
Black_Rock_br3 天前
打通 PyTorch Monarch 与 ROCm:单 Controller 架构的异构算力实战
人工智能·pytorch·python·开源