某些神经网络的训练代码中含有可视化visdom,需要通过visdom进行训练过程追踪。如果是云端服务器,则需要通过一些方式监听云端服务器visdom的信息,这个过程我们把它叫做 “映射”,即:port。
否则,你会发现在浏览器输入visdom给出的网址后,出现找不到IP地址的警告!
这里,我们利用Xshell创建tunnel,监听服务器。避免了ssh拒绝publickey的情况。
下面介绍步骤:
1. 下载Xshell #这个下载过程可以自己去搜,一般没有什么雷,我下载的是7。下载过程为了避免缴费,会有一些麻烦,要有耐心
2. 进入Xshell页面
第一步操作:
第二步操作:
第三步操作,创建tunnel :
走到这里,已经链接完毕。恭喜。
3. 在Xshell命令行输入:python -m visdom.server #一般来说会直接进行下载,等待几分钟就好了。(租的服务器应该都可以‘sci-surf’,所以针真的很方便)出现以下文字:
Checking for scripts.
It's Alive!
INFO:root:Application Started
You can navigate to http://localhost:8097
复制上面的网址,进入浏览器打开,有没有梯子都可以查看。我查看的是nerf进程,中间等待了一会儿,终于出现了对应的环境,如下:
等待过程中,我以为是蓝屏;或者是因为我用的conda虚拟环境,导致visdom接受不了。但其实只要出现了上图中灰色的菜单栏,都不叫蓝屏。可能的原因只有环境不对和等待时间不够。
希望大家都能解决!欢迎评论提问!
附:下面给出一个简单的测试代码:
import visdom
import torch
vis = visdom.Visdom(env=u'test_env', use_incoming_socket=True)
x = torch.arange(1,100,0.01)
y=torch.sin(x)
vis.line(X=x, Y=y,win='sinx',opts={'title':'y=sin(x)'})