如何在TensorBoard标量图中显示最值及对应步数?
TensorBoard标量图显示最值可行方案
浏览器端脚本方案(支持Chrome、Safari)
- 先安装Tampermonkey扩展(Chrome可从应用商店安装,Safari可从App Store安装扩展),使用自定义脚本实现功能:
- 脚本通过读取TensorBoard暴露在全局的
window.tf对象,直接获取当前加载的所有标量序列原始数据 - 遍历每个序列自动计算最大值、最小值以及对应的步长、数值
- 可实现两种展示效果:一是在折线图对应坐标处插入自定义圆点标记,hover时直接显示最值数值;二是在图表侧边栏追加当前所有曲线的最值表格
- 该方案不需要修改TensorBoard源码,也不需要改动训练日志,刷新页面即可生效
- 脚本通过读取TensorBoard暴露在全局的
本地TensorBoard定制方案
- 修改本地TensorBoard的前端源码,永久生效:
- 找到Python环境下TensorBoard的安装目录,定位到
tb_webapp静态资源文件夹 - 修改标量图的图表库初始化配置,添加标记点规则,直接指定为每个序列标注最值点,数值会默认显示在标记上方
- 找到Python环境下TensorBoard的安装目录,定位到
训练日志预处理方案
- 在训练打日志阶段提前记录最值,无需修改TensorBoard本身:
- 训练代码中维护每个监控指标的历史最值变量,每次输出当前步指标时,同步将当前历史最值作为单独的标量序列写入TensorBoard日志
- 最终TensorBoard中会多出一条对应指标的最值曲线,可直接查看最值的出现节点和最终数值
内容的提问来源于stack exchange,提问作者Dominik Filipiak
相关产品推荐
相关产品推荐

