使用新的谷歌TensorBoard API,让你的机器学习可视化
2017年09月13日 由 yining 发表
300946
0
谷歌在2015年开源TensorFlow时,包含了一套用于检查理解并运行你的TensorFlow模型的可视化工具TensorBoard。
Tensorboard包含一个小型的、预先确定的可视化集合。它是通用的,适用于几乎所有的深度学习应用程序。
TensorBoard完全配置时的样子
然而,在缺乏可重用的APIs的情况下,添加新的可视化技术对于TensorFlow团队之外的人来说是非常困难的。
因此,为了创建新的并且有用的可视化,谷歌发布了一组API,它们允许开发人员向TensorBoard添加定制的可视化插件。开发人员可以使用这个API来扩展TensorBoard,并确保它涵盖了更广泛的用例。
API获取地址:
https://github.com/tensorflow/tensorboard-plugin-example/blob/master/README.md
谷歌已经更新了TensorBoard中的现有仪表板(选项卡),从而使用新的API,因此它们可以作为插件创建者的示例。对于目前在TensorBoard中包含的插件列表,你可以从GitHub上的TensorBoard/plugins目录找到。
目录地址:
https://github.com/tensorflow/tensorboard/tree/master/tensorboard/plugins
例如,观察这个能生成精确回忆曲线的新插件
precision-recall curves:
原图地址:
https://1.bp.blogspot.com/-Fdx7y_UB2AQ/WbbCVF3zzNI/AAAAAAAACAc/igsxS0ygvfowKZ4j5A06ofOf4ZRzylHEgCLcBGAs/s1600/image1.png
这个插件演示了一个标准的TensorBoard插件的3个部分:
1.一个TensorFlow用于收集数据以便以后进行可视化的summary operation文件。GitHub地址:
https://github.com/tensorflow/tensorboard/blob/master/tensorboard/plugins/pr_curve/summary.py
2.提供自定义数据的Python后端。GitHub地址:
https://github.com/tensorflow/tensorboard/blob/master/tensorboard/plugins/pr_curve/pr_curves_plugin.py
3.内置TypeScript和polymer的TensorBoard仪表盘。GitHub地址:
https://github.com/tensorflow/tensorboard/tree/master/tensorboard/plugins/pr_curve/tf_pr_curve_dashboard
另外,像其他插件一样,“pr_curves”插件提供了一个Demo:(1)用户可以查看如何使用插件,(2)插件作者可以在开发过程中生成示例数据。Demo地址:
https://github.com/tensorflow/tensorboard/blob/master/tensorboard/plugins/pr_curve/pr_curve_demo.py
为了进一步说明插件是如何工作的,谷歌还创建了一个简单的TensorBoard“Greeter”插件。这个简单的插件在模型运行过程中收集并显示它们问候语(例如在简单的字符串前面加上“Hello”)。注意:谷歌建议先探索Greeter插件以及其他现有插件。
Greeter插件:
https://github.com/tensorflow/tensorboard-plugin-example
其他现有的插件:
https://github.com/tensorflow/tensorboard/tree/master/tensorboard/plugins
参与者已经在使用TensorBoard API的一个著名的例子是Beholder,它是由Chris Anderson创建的。
Beholder展示了一个模型训练的实时视频数据(如梯度和卷积滤波器)。下面是演示视频:
完整视频地址:
https://youtu.be/06HjEr0OX5k
原文地址:https://research.googleblog.com/2017/09/build-your-own-machine-learning.html