远程linux服务器跑代码使用TensorBoard画出训练得出的奖励的图表

个人操作成功,除了ssh还可以用ip

1. 服务器上安装 TensorBoard

pip install tensorboard

2. 使用 TensorBoard

// 导入SummaryWriter
from torch.utils.tensorboard import SummaryWriter

// 初始化 SummaryWriter 类,命名 log_dir 路径名,runs 是已有文件夹名,dqn_experiment 是自定义文件名
writer = SummaryWriter(log_dir="runs/dqn_experiment")

for i in range(100):
// tag 图表名,scalar_value 纵坐标,global_step 横坐标
    writer.add_scalar(tag='Reward/train',  scalar_value=np.random.random(), global_step=i)

// 可以写多个add_scalar,不同的tag,最后会显示多个图表

3. 在上述代码运行之前,先进行如下操作:

3.1 通过ssh转发访问服务器

在本地电脑(要支持ssh)命令行中输入以下命令

ssh -L 16006:127.0.0.1:6006 username@ip

这条命令的含义就是将服务器上6006端口的信息通过SSH转发到本地的16006端口,其中16006是本地的任意端口(无限制),只要不和本地应用有冲突就行;后面则是对应的用户名和服务器IP。

3.2 服务器终端启动tensorboard

进入要运行代码所在目录,服务器命令行输入以下命令启动tensorboard

// runs 是 1 中自定义的存放文件夹路径
tensorboard --logdir=runs

3.3 查看tensorboard网页

运行2中编写的代码
在本地浏览器输入地址,进入网页查看渲染

http://127.0.0.1:16006

image

使用vscode更加简便的使用tensorboard

打开vscode,在远程服务器中,点击F1,选择tensorboard
image
点击选择运行目录
image
就可以运行代码,查看tensorboard图表渲染了

posted @ 2022-08-09 21:29  白缺  阅读(1429)  评论(0编辑  收藏  举报