使用我自己的笔记本电脑在实验室的远程服务器上运行Tensorflow
我用
tensorboard --logdir=./log
尝试查看运行结果的曲线
我得到:
Starting TensorBoard on port 6006
(You can navigate to http://0.0.0.0:6006)
然后我尝试在浏览器中连接它,但失败了...
有人知道如何配置才能在我自己的笔记本电脑上查看远程服务器的张量板吗?
如果您使用您提到的命令在实验室实例上启动tensorboard服务器,它将在实验室服务器上运行并从labserverIP:6006托管tensorboard网页。
我使用运行 SLURM 的集群(管理每个人的作业提交),并且能够在集群节点上启动 Tensorboard 服务器,然后通过 SSH 连接到运行 Tensorboard 服务器的特定节点,并将站点从 labserverIP:6006 转发到我的笔记本电脑在本地主机:6006。我在 github here 上的脚本显示了我用于为 SLURM 执行此操作的命令。本质上就是这三个步骤:
启动远程服务器并运行
tensorboard --logdir=./log --host $SERVER_IP --port $SERVER_PORT
使用笔记本电脑上的 SSH
ssh [email protected] -L $LOCAL_PORT:$SERVER_IP:$SERVER_PORT
您可以将 [email protected] 替换为服务器公共 IP。
http://localhost:$LOCAL_PORT
访问tensorboard页面。另一个选项是将所有日志文件复制到本地计算机或共享驱动器,然后在笔记本电脑上启动tensorboard,并将本地或共享目录作为日志目录。
这就是我将远程服务器上的端口转发到本地家庭计算机的方法
ssh -NfL 6006:localhost:6006 username@remote_server_address
如果您能够使用公共 IP 从笔记本电脑通过 SSH 连接到您的实验室实例,无论显示什么消息,您都可以使用
http://<publicIP>:6006
查看 TensorBoard。
否则,如果没有与实验室机器服务器关联的公共 IP,您可以尝试在通过 SSH 连接到实验室机器时转发端口 6006。 请参阅OpenSSH端口转发手册以了解相同内容。
这就是我们解决它的方法(Linux SLURM 服务器)
IP=`hostname -I`
python -m tensorboard.main --logdir=/your/dir --host $IP
http://$IP:6006
您可以使用以下选项
tensorboard --logdir logs --bind_all
然后,将链接复制并粘贴到本地浏览器