不带tensorflow的日志tensorboard事件
tensorboard_logger的Python项目详细描述
Tensorboard_记录器
记录没有tensorflow
的tensorboard事件TensorBoard 是一个可视化工具(不是这个项目,它是 TensorFlow框架) 这样就很容易检查训练进度,比较 不同的跑步方式,还有很多其他酷的功能。
tensorboard_loggerlibrary允许在不使用tensorflow的情况下编写tensorboard事件:
from tensorboard_logger import configure, log_value configure("runs/run-1234") for step in range(1000): v1, v2 = do_stuff() log_value('v1', v1, step) log_value('v2', v2, step)
注意:如果您已经在项目中使用tensorflow, 你可能不需要这个图书馆。
安装
TensorFlow仅用于查看记录的事件:请检查安装指南 在official site上 (您可能需要一个仅限CPU的版本)。
tensorboard_logger可以与pip一起安装:
pip install tensorboard_logger
使用量
可以将默认记录器与^{tt3}一起使用$ 和tensorboard_logger.log_value函数,或使用tensorboard_logger.Logger类。
此库可用于以tensorboard格式记录某些变量的数值,因此您可以 使用tensorboard可视化它们是如何变化的,并比较不同运行之间的相同变量。 日志文件被写入一个目录,因此每次运行都需要一个单独的目录 (您可以将其他日志或输出文件放在同一目录中)。 要比较的来自不同运行的目录应该具有相同的父目录 (也可以有其他文件或目录有相同的父目录,tensorboard会发现 哪些目录包含日志)。
除了变量名及其值之外,另一个重要的事情是step:这必须 是一个整数,表示某个增加的步骤-它可以是训练中的一个步骤,也可以是 其他号码。这些值在tensorboard中是按步骤排列的,尽管您可以查看它们 也按时间或相对步骤排序。
一个简单的用法示例:
from tensorboard_logger import configure, log_value configure("runs/run-1234", flush_secs=5) for step in range(1000): v1, v2 = do_stuff() log_value('v1', v1, step) log_value('v2', v2, step)
您可以立即启动TensorBoard:
tensorboard --logdir runs
在http://localhost:6006检查tensorboard ui的度量 (请注意,它默认绑定到0.0.0.0)。 指标在切换到浏览器选项卡时刷新,并且还有一个刷新按钮 在右上角。
运行时开销相当大,对于记录的单个值,大约为0.1-0.2毫秒 (大约每秒5000-10000次操作)。
api
tensorboard_logger.configure(logdir, flush_secs=2)
配置日志记录:文件将写入logdir,并每flush_secs刷新一次。 注意:在每次写入事件后立即刷新文件。
tensorboard_logger.log_value(name, value, step=None)
在给定的step上为给定的name记录新的value。 value应为实数(将转换为浮点数), 并且name应该是字符串(它将被转换为有效的 TensorFlow摘要名称)。step应该是非负整数, 用于可视化:您可以记录几个不同的 变量在一个步骤中,但不应记录不同的值 同一步骤上的同一变量(未选中)。 也可以完全省略步骤。
tensorboard_logger.Logger
用于在目录中写入日志的类。 如果上面两个函数中使用的默认记录器不足以满足您的需要,请使用它 (例如,您想要登录到几个不同的目录,或者不喜欢 全局变量)。 构造函数的签名与tensorboard_logger.configure相同, 它有一个log_value方法,其签名与 tensorboard_logger.log_value。
发展
编译python protobuf文件:
protoc --python_out . tensorboard_logger/tf_protobuf/summary.proto protoc --python_out . tensorboard_logger/tf_protobuf/event.proto
历史记录
0.1.0(2018-02-08)
- 能够记录直方图和图像(18)
0.0.4(2017-07-31)
- 安装TensorFlow后修复(11)
0.0.3(2016-11-17)
- 修复PYPI打包
0.0.2(2016-11-03)
- 不再需要TensorFlow(1)
- Travis构建已修复(2)
0.0分.1(2016-11-01)
- 第一个版本是pypi。