一、TensorBoard简介
TensorBoard是TensorFlow提供的一组可视化工具(a suite of visualization tools),可以帮助开发者方便的理解、调试、优化TensorFlow 程序。
TensorBoard算是包含在TensorFlow中的一个子服务。TensorFlow库是一个专门为机器学习应用程序设计的开源库。Google Brain于2011年构建了较早的DistBelief系统。随着其用户群的快速增长,它被简化并重构为我们现在称为Tensorflow的库。TensorFlow随后于2015年向公众发布。TensorBoard刚出现时只能用于检查TensorFlow的指标和TensorFlow模型的可视化,但是后来经过多方的努力其他深度学习框架也可以使用TensorBoard的功能,例如Pytorch已经抛弃了自家的visdom(听到过这个名字的人应该都不多了吧)而全面支持TensorBoard。
TensorBoard 的主要功能包括:
- 可视化模型的网络架构
- 跟踪模型指标,如损失和准确性等
- 检查机器学习工作流程中权重、偏差和其他组件的直方图
- 显示非表格数据,包括图像、文本和音频
- 将高维嵌入投影到低维空间
二、本地启动TensorBoard
安装
找到所在环境pip安装即可:pip install tensorboard
打开终端或命令提示符并运行:
tensorboard --logdir=<directory_name>
directory_name:保存数据的目录,默认是“logs”
运行此命令后,我们将看到以下提示:
说明 TensorBoard 已经成功运行,用浏览器打开http://localhost:6006/查看即可。
三、在远端服务器上启动TensorBoard
此时,这个网址http://localhost:6006/是服务器的域名和端口号。一种查看方式是打开服务器的浏览器,输入网址查看。如果你在自己的电脑上打开这个网址,只会显示无法访问。
我们可以利用MobaXterm建立ssh隧道,实现远程端口到本机端口的转发,方法如下:
打开Tunneling
点击New SSH tunnel,新建ssh隧道
在窗口配置信息
- 选择第一个Local port forwarding(本地转发)
- <Forwarded port>:输入想要映射到本机的端口号,方便起见设置为6006
- SSH server是指SSH服务器,输入远程连接的信息:ip地址、用户名、ssh端口号
- <Remote server>填localhost , <Remote port>填6006,即服务器端被映射的端口信息
我填的信息如下:
save后,点击运行
访问端口
用浏览器打开http://localhost:6006/,即可连接。
如果没有运行目录,页面第一次打开时,我们将看到如下内容:
退出:CTRL+C,即可退出当前端口
tensorboard --logdir ./runs
当我们运行tensorboard可视化时,要进入运行目录,目录一定不能进错,否则看不到结果。
四、参考
TensorBoard最全使用教程:看这篇就够了https://zhuanlan.zhihu.com/p/471198169