此工具是将模型结构进行分级可视化展示的 Tensorboard 插件。可将模型的层级关系、精度性能数据进行可视化,并支持将调试模型和标杆模型进行分视图展示和关联比对,方便用户快速定位精度问题。
python >= 3.7 ,tensorboard >= 2.11.2,numpy <= 1.26.3
pip install tb-graph-ascend
pip install tb-graph_ascend_{version}-py3-none-any.whl
从仓库下载源码并切换到 master 分支:
git clone https://gitee.com/ascend/mstt.git -b master
进入目录 plugins/tensorboard-plugins/tb_graph_ascend
下
编译前端代码,根据操作系统选取不同指令
cd fe
// 安装前端依赖
npm install --force
// Windows系统
npm run buildWin
// 其他可使用cp指令的系统,如Linux或Mac
npm run buildLinux
注意: 此步骤需要安装 Node.js 环境
回到上级目录直接安装:
cd ../
python setup.py develop
python setup.py bdist_wheel
plugins/tensorboard-plugins/tb_graph_ascend/dist
目录下取出 whl 包,使用以下指令安装(此处{version}为 whl 包实际版本)pip install tb-graph_ascend_{version}-py3-none-any.whl
将通过msprobe工具构图功能采集得到的文件后缀为.vis 的模型结构文件(文件本身为 json 格式)放置于某个文件夹中,路径名称下文称之为 output_path
---output_path
-----output.vis
-----output2.vis
启动 TensorBoard
tensorboard --logdir output_path
注意:确保默认端口 6006 可连通。
如果需要切换端口号需要在尾部加上指定的端口号,如--port=6007
tensorboard --logdir output_path --port=6007
在浏览器上打开 tensorboard
在浏览器中打开 URL: http://localhost:6006
。
注意:如果--logdir
指定目录下的文件太大或太多,请等候,刷新浏览器查看加载结果。
建议在本地启动 tensorboard,如果网络浏览器与启动 TensorBoard 的机器不在同一台机器上,需要远程启动,可参照远程启动方式,但需用户自行评估安全风险。
注意:本工具不支持同时通过多个浏览器窗口同时访问同一个 TensorBoard 服务,否则会出现页面无法正常显示的情况。
注意:单图场景不存在精度筛选和溢出筛选,下图为双图比对场景。
参考匹配说明 ,不符合匹配规则的节点为无匹配节点,颜色标灰。适用于排查两个模型结构差异的场景。
可通过浏览器界面,通过鼠标选择两个待匹配的灰色节点进行匹配。当前暂不支持真实数据模式。
如果选中"操作选中节点及其子节点":
点击匹配后会将两个节点及其子节点按照 Module 名称依次匹配,取消匹配后会将子节点的匹配关系清除。
否则:
点击匹配后只会将两个节点进行匹配,取消匹配后会将节点的匹配关系清除
注意:匹配结束之后,需要点击保存才能持久化到源文件里面
可保存已经已匹配节点的匹配关系到配置文件中,并支持读取配置文件中的数据,进行匹配操作。
默认保存在当前目录下,文件名为[当前文件名].vis.config
,每次切换文件都会扫描当前录下的后缀名为.vis.config 配置文件,并更新配置文件列表。
注意:匹配结束之后,需要点击保存才能持久化到源文件里面
本工具为基于 TensorBoard 底座开发的插件,使用本插件需要基于 TensorBoard 运行,请自行关注 TensorBoard 相关安全配置和安全风险。
打开本工具时,本工具会对 logdir 目录下的 vis 文件以及其父目录进行安全检查,如果存在安全风险,本工具会展示如下提示信息,询问用户是否继续执行,用户选择继续执行后,可以操作未通过安全检查的文件和目录,用户需要自行承担操作风险。如果用户选择不继续执行,则用户只能操作通过安全检查的文件。
满足相关依赖中要求的 TensorBoard 版本皆可正常使用本插件功能,但为 TensorBoard 本身安全风险考虑,建议使用最新版本 TensorBoard 。
如果网络浏览器与启动 TensorBoard 的机器不在同一台机器上, TensorBoard 提供了远程查看数据的指令启动方式,但此种方式会将服务器对应端口在局域网内公开(全零监听),请用户自行关注安全风险。
在启动指令尾部加上--bind_all
或--host={服务器IP}
参数启用远程查看方式,如:
tensorboard --logdir output_path --port=6006 --host=xxx.xxx.xxx.xxx
或
tensorboard --logdir output_path --port=6006 --bind_all
在打开浏览器访问界面时,需将 URL 内主机名由localhost
替换为主机的 ip 地址,如http://xxx.xxx.xxx.xxx:6006
序号 | 代码仓 | 功能 | 源设备 | 源 IP | 源端口 | 目的设备 | 目的 IP | 目的端口 (侦听) |
协议 | 端口说明 | 端口配置 | 侦听端口是否可更改 | 所属平面 | 版本 | 特殊场景 | 备注 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | tensorboard-plugins | TensorBoard 底座前后端通信 | 访问 TensorBoard 浏览器所在机器 | 访问 TensorBoard 浏览器所在机器 ip | TensorBoard 服务所在机器 | TensorBoard 服务所在服务器的 ip | 6006 | HTTP | tensorboard 服务通信 | --port |
可修改 | 业务面 | 所有版本 | 无 |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。