【Torch工具集:可视化1】visdom安装与配置使用简明教程

visdom安装与配置使用简明教程

  • 安装
    • pip安装
    • 源码安装
  • 配置
    • 免除下载脚本
    • 系统适配
    • 前端文件替换
  • 使用
    • 打开visdom服务器
    • Demo运行
    • one more thing..

安装

pip安装

pip install -i https://mirrors.aliyun.com/pypi/simple visdom

应用阿里源进行加速下载

源码安装

1.下载visdom源码
点击上方链接即可进入github项目页面下载源码,如果受到国内网络限制,下载速度不尽人意可以下载此处我创建的国内镜像,版本为0.1.8.9,如有更新教程会同步。

2.解压文件
将项目文件解压在 主盘符:\Anaconda\Lib\site-packages下。

3.安装
打开cmd切入 主盘符:\Anaconda\Lib\site-packages\visdom并执行命令

pip install -e .

安装成功提示

Successfully installed visdom-0.1.8.9

配置

此处配置是下下之选,如果对自己网络状态很自信可以直接跳过配置进入使用。

免除下载脚本

修改 主盘符:\Anaconda\Lib\site-packages\visdom\py\visdom\server.py

def download_scripts_and_run():
    download_scripts()
    main()

def download_scripts_and_run():
    # download_scripts()
    main()

系统适配

修改 主盘符:\Anaconda\lib\site-packages\tornado\platform\asyncio.py"文件,在

if sys.platform == "win32" and hasattr(asyncio, "WindowsSelectorEventLoopPolicy"):

之前添加

if sys.platform == 'win32':
    asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

前端文件替换

下载百度网盘文件: 提取码:f96l
文件不大,没有会员下载也就两秒。
用此文件夹替换 主盘符:\Anaconda\Lib\site-packages\visdom\py\visdom\static文件夹。

使用

打开visdom服务器

运行指令

python -m visdom.server

输出

(base) F:\Anaconda\Lib\site-packages\visdom>python -m visdom.server
F:\Anaconda\lib\site-packages\visdom\py\visdom\server.py:36: DeprecationWarning: zmq.eventloop.ioloop is deprecated in pyzmq 17. pyzmq now works with defaul
t tornado and asyncio eventloops.
  ioloop.install()  # Needs to happen before any tornado imports!
It's Alive!
INFO:root:Application Started
You can navigate to http://localhost:8097

就说明成功跑起来啦!!
如果下载脚本不成功建议回到配置部分进行一下配置,稍后我会讲解下载成功和不成功的区别。
运行浏览器打开 http://localhost:8097 就可以进入网页可视化界面。

Demo运行

import visdom
import torch
vis = visdom.Visdom()
x = torch.arange(1,100,0.01)
y=torch.sin(x)
vis.line(X=x, Y=y,win='sinx',opts={'title':'y=sin(x)'})

如果服务器在运行状态就会成功运行,服务器关闭状态则这段代码运行会报错
成功状态:

Setting up a new session...

进程已结束,退出代码0

失败状态:

requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=8097): Max retries exceeded with url: /events (Caused by NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))

成功运行效果如下:
【Torch工具集:可视化1】visdom安装与配置使用简明教程_第1张图片

one more thing…

网络状况好的同学建议用pip安装后直接开启服务器,此时会自动下载脚本,用于网页的刷新。网络状况不好的同学可以通过配置使用visdom,缺点是会影响visdom的画面自动刷新,编码的时候要注意

viz.line(X=np.array([x]), Y=np.array([y]), win=win, update='append')

这种方式对经过配置才生效的版本无效,需要手动刷新,可以考虑

test_acc = torch.cat((test_acc.to("cpu"), torch.FloatTensor(total_correct.to("cpu")/len(test_dataset.dataset)*100).to("cpu")), dim=0)
epoch_idx = torch.cat((epoch_idx, epoch_idx[-1] +torch.tensor([1])), dim=0)
vis.line(X=epoch_idx, Y=test_acc, win='acc/test', opts={'title': 'acc/test'})

这种方式将向量组合起来对界面进行更新,比较耗费内存,而且极大影响代码的美观。尽量采取update参数进行更新,这样X和Y都可以只传入最新的数值,省时省力且美观,个人建议挑个良辰吉日选择自动下载的版本。
另外:
由于网络表现可视化与网络性能息息相关,所以我在这里挖个坑,下篇文章会写写需要可视化的参数以及模型的调优一系列相关知识,喜欢的朋友可以点点关注免得迷路,在此谢过!

你可能感兴趣的:(Torch工具集,深度学习,可视化,pytorch,神经网络)