Vee*_*ech 11 tensorflow tensorboard
在关于摘要和TensorBoard的本教程之后,我已经能够使用TensorBoard成功保存和查看数据.是否可以用TensorBoard之外的其他东西打开这些数据?
顺便说一句,我的申请是做政策外学习.我目前正在使用SummaryWriter保存每个状态 - 动作 - 奖励元组.我知道我可以手动存储/训练这些数据,但我认为使用TensorFlow的内置日志记录功能来存储/加载这些数据会很不错.
小智 23
截至2017年3月,该EventAccumulator工具已被移动从Tensorflow核心到Tensorboard后端.您仍然可以使用它从Tensorboard日志文件中提取数据,如下所示:
from tensorboard.backend.event_processing.event_accumulator import EventAccumulator
event_acc = EventAccumulator('/path/to/summary/folder')
event_acc.Reload()
# Show all tags in the log file
print(event_acc.Tags())
# E. g. get wall clock, number of steps and value for a scalar 'Accuracy'
w_times, step_nums, vals = zip(*event_acc.Scalars('Accuracy'))
Run Code Online (Sandbox Code Playgroud)
很简单,数据实际上可以导出到.csv
TensorBoard 中 Events 选项卡下的文件中,例如可以加载到 Python 中的 Pandas 数据帧中。确保选中数据下载链接框。
如需更自动化的方法,请查看 TensorBoard自述文件:
如果您想导出数据以在其他地方进行可视化(例如 iPython Notebook),那也是可能的。您可以直接依赖 TensorBoard 用于加载数据的底层类:(用于
python/summary/event_accumulator.py
从单次运行python/summary/event_multiplexer.py
加载数据)或(用于从多次运行加载数据,并保持其有条理)。这些类加载事件文件组,丢弃由 TensorFlow 崩溃“孤立”的数据,并按标签组织数据。作为另一种选择,有一个脚本 (
tensorboard/scripts/serialize_tensorboard.py
) 将像 TensorBoard 一样加载 logdir,但将所有数据作为 json 写入磁盘而不是启动服务器。这个脚本被设置为制作“假 TensorBoard 后端”以进行测试,所以它的边缘有点粗糙。
我认为数据是编码的protobufs RecordReader格式.要从文件中获取序列化字符串,您可以使用py_record_reader或使用TFRecordReader op 构建图形,并将这些字符串反序列化为protobuf使用事件模式.如果你得到一个有效的例子,请更新这个q,因为我们似乎缺少这方面的文档.
归档时间: |
|
查看次数: |
8896 次 |
最近记录: |