pytorch 训练过程acc_visdom可视化pytorch训练过程

Python

Python开发

Python语言

visdom可视化pytorch训练过程

一、前言

在深度学习模型训练的过程中,常常需要实时监听并可视化一些数据,如损失值loss,正确率acc等。在Tensorflow中,最常使用的工具非Tensorboard莫属;在Pytorch中,也有类似的TensorboardX,但据说其在张量数据加载的效率方面不如visdom。visdom是FaceBook开发的一款可视化工具,其实质是一款在网页端的web服务器,对Pytorch的支持较好。

二、安装和启动

visdom的安装比较简单,可以直接使用pip命令。

#visdom 安装指令

pip install visdom

执行安装命令后,可以执行以下命令启动visdom。

#启动 visdom web服务器

python -m visdom.server

若安装成功,则会返回一个网页地址;若报错,则安装失败,可以自行去github上下载源码安装。

将网址复制后在浏览器中打开,就可以看到visdom的主界面。

三、简单使用

这里以监听损失值loss数据,准确率acc数据及可视化图像等方面简要介绍visdom的使用。

3.1 监听单一数据loss

在模型训练过程中,loss是最常监听的数据,这里就以loss的监听为例,使用visdom可视化loss的变化过程。为了使代码更加简洁,这里以for循环代替模型逐轮训练的过程,loss值则在每个循环内部随机产生。

from visdom importVisdomimportnumpy as npimporttime#将窗口类实例化

viz =Visdom()#创建窗口并初始化

viz.line([0.], [0], win='train_loss', opts=dict(title='train_loss'))for global_steps in range(10):#随机获取loss值

loss = 0.2 * np.random.randn() + 1

#更新窗口图像

viz.line([loss], [global_steps], win='train_loss', update='append')

time.sleep(0.5)

3.2 同时监听loss和acc

from visdom importVisdomimportnumpy as npimporttime#将窗口类实例化

viz =Visdom()#创建窗口并初始化

viz.line([[0.,0.]], [0], win='train', opts=dict(title='loss&acc', legend=['loss', 'acc']))for global_steps in range(10):#随机获取loss和acc

loss = 0.1 * np.random.randn() + 1acc= 0.1 * np.random.randn() + 0.5

#更新窗口图像

viz.line([[loss, acc]], [global_steps], win='train', update='append')#延时0.5s

time.sleep(0.5)

3.3 可视化图像

在处理图像任务时,还可以用visdom对图像进行可视化。

from visdom importVisdomimportnumpy as npimportcv2importtorch#使用opencv读取数据

img = cv2.imread('pkq.jpg')#opencv按照BGR读取,而visdom默认按照RGB显示,因此要进行通道转换

img =cv2.cvtColor(img, cv2.COLOR_BGR2RGB)#visdom类似于pytorch中的卷积模型,接收的数据都要求通道数在前

img = np.transpose(img, (2, 0, 1))

img=torch.from_numpy(img)#可视化图像

viz.image(img, win='pkq')

visdom可以同时在主面板中打开多个窗口,执行上面3个可视化程序后,主面板如下所示:

内容来源于网络,如有侵权请联系客服删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值