tensorboard 版本2.3
tensorboard是一个强大的可视化工具,通常是绘制训练过程的曲线,
因此tensorflow.summary.scalar在绘制曲线 只接受step为整数的情况。
但是,如果我们想绘制一个普通的二维曲线, 并不想绘制训练过程的曲线,例如CDF曲线,那么我们需要横坐标也是小数
但是官方的tensorflow代码是不支持的,因此我们需要修改源码
这里介绍一个绘制方法:
第一步.
使用tensorflow.summary.scalar 绘制曲线,在将step(例如step=0.5)传入方法之前,现将step扩大100000倍(倍数可根据精度要求自取),
这样绘制出的曲线在tensorboard观察,会发现横坐标是很大的整数50000
第二步.
1.找到tensorboard的库文件夹,例如:
cd ~/lib/python3.6/site-packages/tensorboard/
2.打开backend/event_processing/plugin_event_accumulator.py:
vi backend/event_processing/plugin_event_accumulator.py
3.搜索 _ProcessTensor 的定义, 如下:
def _ProcessTensor(self, tag, wall_time, step, tensor):
tv = TensorEvent(wall_time=wall_time, step=