【PyTorch】训练过程可视化

1. 训练过程中的可视化

主要是监控训练的进度。

1.1. alive_progress

  • 安装
pip install alive_progress
  • 使用
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

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

2. 训练结束后的可视化

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

2.1. tensorboardX

2.1.1. 安装

pip install tensorboardX

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

pip install torch-tb-profiler

安装完成后,在Python源文件中tensorboardX模块导入处,点击“启动TensorBoard会话”按钮,然后选择运行事件所在目录,默认选择当前目录即可,tensorboard会自动在当前目录查找运行事件,由此即可启动TensorBoard。开启TensorBoard页面后不要关闭,数据更新后,直接点击刷新按钮即可导入新数据。
启动TensorBoard会话
logdir
tensorboard
此外,也可以通过以下命令在浏览器查看tensorboard可视化结果:

# 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. 使用

  • 直接创建对象
from tensorboardX import SummaryWriter
writer = SummaryWriter()
# writer.add_scalar():添加监控变量
writer.close()
  • 使用上下文管理器
from tensorboardX import SummaryWriter
with SummaryWriter() as writer:
	# writer.add_scalar():添加监控变量

相关推荐

  1. pytorch单机多卡训练 logger日志记录和wandb

    2023-12-10 23:58:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-10 23:58:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-10 23:58:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-10 23:58:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-10 23:58:01       18 阅读

热门阅读

  1. 网卡学习资料整理

    2023-12-10 23:58:01       49 阅读
  2. Android 11.0 长按按键切换SIM卡默认移动数据

    2023-12-10 23:58:01       39 阅读
  3. MyBatis学习

    2023-12-10 23:58:01       30 阅读
  4. 关于mysql字段类型为text还提示类型太短问题

    2023-12-10 23:58:01       41 阅读
  5. PHP处理字符串

    2023-12-10 23:58:01       36 阅读