当前位置: 首页 > article >正文

【PyTorch】训练过程可视化

文章目录

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

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():添加监控变量

http://www.kler.cn/news/160691.html

相关文章:

  • c语言上机小练(有点难)
  • 【力扣】206.反转链表
  • 浅谈什么是语音芯片的白噪音支持功能:打造舒适家居与优质音频体验
  • 扔掉sql语句,用 QxOrm 让你的数据库操作从来没有这么简单过!
  • rename--统一的PRF
  • c# OpenCV 读取、显示和写入图像(二)
  • SAP ABAP 开发ALV的基本流程(ALV资料二)
  • 前端实现手机短信验证码倒计时效果
  • 【PyTorch】模型选择、欠拟合和过拟合
  • Linux命令之ps
  • QT+Unity3D 超详细(将unity3D与QT进行连接,并实现信息传递)
  • SpringSecurity6 | 默认用户生成(下)
  • Linux设置Docker自动创建Nginx容器脚本
  • IDEA如何配置Git 遇到问题的解决
  • Java 敏感信息脱敏类
  • 【开源项目】Windows串口通信组件 -- Com.Gitusme.IO.Ports.SerialPort
  • 【c语言指针详解】指针的高级应用
  • 被动式安全扫描器
  • WebGL笔记:矩阵平移的数学原理和实现
  • 内衣洗衣机和手洗哪个干净?高性价比内衣洗衣机推荐
  • 【C语言】用户空间使用非缓存内存
  • 【Flink on k8s】- 3 - Kubernetes 中的关键概念
  • composer配置国内镜像
  • MySQL:update set的坑
  • HXDSP2441-Demo板
  • 智能优化算法应用:基于卷尾猴算法无线传感器网络(WSN)覆盖优化 - 附代码
  • 外包干了2个多月,技术明显有退步了。。。。。
  • 第十五期长江沙龙:小蜘蛛,大生态落地大坪大融城
  • 开源软件license介绍与检测
  • 本项目基于Spring boot的AMQP模块,整合流行的开源消息队列中间件rabbitMQ,实现一个向rabbitMQ