TensorBoard 计算图的可视化实现


Posted in Python onFebruary 15, 2020

简介

tensorflow 配套的可视化工具, 将你的计算图画出来.

当训练一个巨大的网络的时候, 计算图既复杂又令人困惑. TensorBoard 提供了一系列的组件, 可以看到 learning rate 的变化, 看到 objective function 的变化.

tfboard 读取 tf 运行时你记下的 events files, 来进行可视化. 这些 events files 包含了你记下的 summary data, 它是 protobuffer 格式, 并非文本文件.

推荐使用 Estimator 风格.

类与方法

在 tf.estimator 框架下, 可以直接用 tf.summary.scalar() 这样的方法, 不必显式地创建writer并调用writer.add_summary()

tensorflow.python.summary.writer.writer.FileWriter(SummaryToEventTransformer)

类.

__init__(self, logdir, graph=None,...)

构造函数, Creates a FileWriter and an event file.

tensorflow.python.summary.summary

模块.

scalar(name, tensor, ..) Outputs a Summary protocol buffer containing a single scalar value.

histogram(name, values, collections=None, family=None) Adding a histogram summary makes it possible to visualize your data's distribution in TensorBoard.

image

作图, 对于grap-scale 图来讲, 0表示全黑, 255表示全白.

api, image(name, tensor, max_outputs=3, collections=None, family=None) Outputs a Summary protocol buffer with images. images are built from tensor which must be 4-D with shape [batch_size, height, width, channels] and where channels can be:

1.1-tensor is interpreted as Grayscale.

2.3-tensor is interpreted as RGB.

3.4-tensor is interpreted as RGBA.

tensor为float: 此时, tf会内部作正规化处理, 转换到[0,255](解析 tf_events 即可验证), float通常对应于 softm 之后的概率, 值域为[0,1].

tensor为uint8, 保持不变, tf 不作任何内部转换.

attention 可视化, attention 的权重会作 soft-max 处理, 通常img显示的效果是, 一行看下来有深有浅, 颜色越白weight越大. 但有时后tf内部正规化不符合预期, 出现一行全白的情况, 稳妥起见自己转unit类型.

打开web页面

在命令行中 敲tensorboard --logdir=D:\tf_models\iris, 根据提示打开URL即可.

比如我的为http://yichu-amd:6006/.

效果截图

TensorBoard 计算图的可视化实现

图3-1 logdir中的文件

TensorBoard 计算图的可视化实现

图3-2 炫酷的可视化效果

TensorBoard 计算图的可视化实现

figure 3-3 计算图的可视化

给出一些建议:

网络也是分模块,有结构的, 合理使用 scope 可以让计算图清晰优雅.

有些tensor来自dataset, 有些来自api中op操作的输出, 本身没有明确的名字, 此时用x=tf.identity(x,'name') 给tensor起名字, 便于计算图中定位. 图3-3 中的 memory 就是 encoder 的输出的tensor.

以上这篇TensorBoard 计算图的可视化实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python使用Socket(Https)Post登录百度的实现代码
May 18 Python
Python实现同时兼容老版和新版Socket协议的一个简单WebSocket服务器
Jun 04 Python
Pyhton中防止SQL注入的方法
Feb 05 Python
python常规方法实现数组的全排列
Mar 17 Python
Python实现计算两个时间之间相差天数的方法
May 10 Python
django DRF图片路径问题的解决方法
Sep 10 Python
使用python将多个excel文件合并到同一个文件的方法
Jul 09 Python
基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能
Jul 15 Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 Python
详解用Python为直方图绘制拟合曲线的两种方法
Aug 21 Python
JupyterNotebook 输出窗口的显示效果调整方法
Apr 13 Python
python实现简单文件读写函数
Feb 25 Python
TensorBoard 计算图的查看方式
Feb 15 #Python
pycharm 更改创建文件默认路径的操作
Feb 15 #Python
PyCharm刷新项目(文件)目录的实现
Feb 14 #Python
浅谈Pycharm最有必要改的几个默认设置项
Feb 14 #Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
Feb 14 #Python
python图形开发GUI库pyqt5的基本使用方法详解
Feb 14 #Python
Python 写了个新型冠状病毒疫情传播模拟程序
Feb 14 #Python
You might like
php生成缩略图的类代码
2008/10/02 PHP
php xml 入门学习资料
2011/01/01 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
2016/07/18 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
js模仿html5 placeholder适应于不支持的浏览器
2013/01/13 Javascript
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
一个字符串反转函数可实现字符串倒序
2014/09/15 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
AngularJs 弹出模态框(model)
2016/04/07 Javascript
纯JS打造网页中checkbox和radio的美化效果
2016/10/13 Javascript
jQuery实现倒计时(倒计时年月日可自己输入)
2016/12/02 Javascript
JS实现微信弹出搜索框 多条件查询功能
2016/12/13 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
python文件读写操作与linux shell变量命令交互执行的方法
2015/01/14 Python
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
利用python操作SQLite数据库及文件操作详解
2017/09/22 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
python修改txt文件中的某一项方法
2018/12/29 Python
pandas中ix的使用详细讲解
2020/03/09 Python
python能开发游戏吗
2020/06/11 Python
Pytorch损失函数nn.NLLLoss2d()用法说明
2020/07/07 Python
澳大利亚正品化妆品之家:Cosmetic Capital
2017/07/03 全球购物
泰坦健身器材:Titan Fitness
2018/02/13 全球购物
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
健康家庭事迹材料
2014/05/02 职场文书
化学教育专业求职信
2014/07/08 职场文书
机电一体化专业求职信
2014/07/22 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
四风对照检查材料范文
2014/09/27 职场文书
家长对孩子的寄语
2015/02/26 职场文书
自主招生专家推荐信
2015/03/26 职场文书
教你怎么用Python监控愉客行车程
2021/04/29 Python
浅谈python数据类型及其操作
2021/05/25 Python
JavaScript实现队列结构过程
2021/12/06 Javascript
mysql幻读详解实例以及解决办法
2022/06/16 MySQL